diff --git a/clients/client-accessanalyzer/src/index.ts b/clients/client-accessanalyzer/src/index.ts index 2537bb9514d2a..5b20b120bfa8a 100644 --- a/clients/client-accessanalyzer/src/index.ts +++ b/clients/client-accessanalyzer/src/index.ts @@ -3,3 +3,4 @@ export * from "./AccessAnalyzerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AccessAnalyzerServiceException } from "./models/AccessAnalyzerServiceException"; diff --git a/clients/client-accessanalyzer/src/models/AccessAnalyzerServiceException.ts b/clients/client-accessanalyzer/src/models/AccessAnalyzerServiceException.ts new file mode 100644 index 0000000000000..8a10122ef6ba3 --- /dev/null +++ b/clients/client-accessanalyzer/src/models/AccessAnalyzerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AccessAnalyzer service. + */ +export class AccessAnalyzerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AccessAnalyzerServiceException.prototype); + } +} diff --git a/clients/client-accessanalyzer/src/models/models_0.ts b/clients/client-accessanalyzer/src/models/models_0.ts index fd09feab1284d..606fefa2c6c1f 100644 --- a/clients/client-accessanalyzer/src/models/models_0.ts +++ b/clients/client-accessanalyzer/src/models/models_0.ts @@ -1,21 +1,33 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AccessAnalyzerServiceException as __BaseException } from "./AccessAnalyzerServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

A conflict exception error.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource.

*/ @@ -25,6 +37,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The resource type.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -98,24 +124,35 @@ export namespace CreateArchiveRuleRequest { /** *

Internal server error.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; /** *

The seconds to wait to retry.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource.

*/ @@ -125,15 +162,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

Service quote met error.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The resource ID.

*/ @@ -143,22 +193,48 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The resource type.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

Throttling limit exceeded error.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: { - throttling: true; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; - message: string | undefined; /** *

The seconds to wait to retry.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -195,10 +271,9 @@ export enum ValidationExceptionReason { /** *

Validation exception error.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The reason for the exception.

*/ @@ -208,6 +283,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

A list of fields that didn't validate.

*/ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } /** diff --git a/clients/client-accessanalyzer/src/protocols/Aws_restJson1.ts b/clients/client-accessanalyzer/src/protocols/Aws_restJson1.ts index 5b05abeb388d9..d4cb4522bee52 100644 --- a/clients/client-accessanalyzer/src/protocols/Aws_restJson1.ts +++ b/clients/client-accessanalyzer/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -71,6 +70,7 @@ import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../comman import { UpdateArchiveRuleCommandInput, UpdateArchiveRuleCommandOutput } from "../commands/UpdateArchiveRuleCommand"; import { UpdateFindingsCommandInput, UpdateFindingsCommandOutput } from "../commands/UpdateFindingsCommand"; import { ValidatePolicyCommandInput, ValidatePolicyCommandOutput } from "../commands/ValidatePolicyCommand"; +import { AccessAnalyzerServiceException as __BaseException } from "../models/AccessAnalyzerServiceException"; import { AccessDeniedException, AccessPreview, @@ -1039,65 +1039,34 @@ const deserializeAws_restJson1ApplyArchiveRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelPolicyGenerationCommand = async ( @@ -1122,57 +1091,31 @@ const deserializeAws_restJson1CancelPolicyGenerationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAccessPreviewCommand = async ( @@ -1201,81 +1144,40 @@ const deserializeAws_restJson1CreateAccessPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.accessanalyzer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.accessanalyzer#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAnalyzerCommand = async ( @@ -1304,73 +1206,37 @@ const deserializeAws_restJson1CreateAnalyzerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.accessanalyzer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.accessanalyzer#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateArchiveRuleCommand = async ( @@ -1395,81 +1261,40 @@ const deserializeAws_restJson1CreateArchiveRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.accessanalyzer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.accessanalyzer#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAnalyzerCommand = async ( @@ -1494,65 +1319,34 @@ const deserializeAws_restJson1DeleteAnalyzerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteArchiveRuleCommand = async ( @@ -1577,65 +1371,34 @@ const deserializeAws_restJson1DeleteArchiveRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccessPreviewCommand = async ( @@ -1664,65 +1427,34 @@ const deserializeAws_restJson1GetAccessPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAnalyzedResourceCommand = async ( @@ -1751,65 +1483,34 @@ const deserializeAws_restJson1GetAnalyzedResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAnalyzerCommand = async ( @@ -1838,65 +1539,34 @@ const deserializeAws_restJson1GetAnalyzerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetArchiveRuleCommand = async ( @@ -1925,65 +1595,34 @@ const deserializeAws_restJson1GetArchiveRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingCommand = async ( @@ -2012,65 +1651,34 @@ const deserializeAws_restJson1GetFindingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGeneratedPolicyCommand = async ( @@ -2103,57 +1711,31 @@ const deserializeAws_restJson1GetGeneratedPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccessPreviewFindingsCommand = async ( @@ -2186,73 +1768,37 @@ const deserializeAws_restJson1ListAccessPreviewFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.accessanalyzer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccessPreviewsCommand = async ( @@ -2285,65 +1831,34 @@ const deserializeAws_restJson1ListAccessPreviewsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnalyzedResourcesCommand = async ( @@ -2376,65 +1891,34 @@ const deserializeAws_restJson1ListAnalyzedResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnalyzersCommand = async ( @@ -2467,57 +1951,31 @@ const deserializeAws_restJson1ListAnalyzersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListArchiveRulesCommand = async ( @@ -2550,57 +2008,31 @@ const deserializeAws_restJson1ListArchiveRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingsCommand = async ( @@ -2633,65 +2065,34 @@ const deserializeAws_restJson1ListFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPolicyGenerationsCommand = async ( @@ -2724,57 +2125,31 @@ const deserializeAws_restJson1ListPolicyGenerationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2803,65 +2178,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartPolicyGenerationCommand = async ( @@ -2890,73 +2234,37 @@ const deserializeAws_restJson1StartPolicyGenerationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.accessanalyzer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.accessanalyzer#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartResourceScanCommand = async ( @@ -2981,65 +2289,34 @@ const deserializeAws_restJson1StartResourceScanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3064,65 +2341,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3147,65 +2393,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateArchiveRuleCommand = async ( @@ -3230,65 +2445,34 @@ const deserializeAws_restJson1UpdateArchiveRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFindingsCommand = async ( @@ -3313,65 +2497,34 @@ const deserializeAws_restJson1UpdateFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.accessanalyzer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ValidatePolicyCommand = async ( @@ -3404,88 +2557,54 @@ const deserializeAws_restJson1ValidatePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.accessanalyzer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.accessanalyzer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.accessanalyzer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.accessanalyzer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3496,21 +2615,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3518,21 +2634,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3543,21 +2656,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3568,23 +2678,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: { - throttling: true, - }, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3592,21 +2697,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fieldList !== undefined && data.fieldList !== null) { contents.fieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context); @@ -3617,7 +2719,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AclGrantee = (input: AclGrantee, context: __SerdeContext): any => { diff --git a/clients/client-account/src/index.ts b/clients/client-account/src/index.ts index d95d5ecff4684..d10d2d6d09beb 100644 --- a/clients/client-account/src/index.ts +++ b/clients/client-account/src/index.ts @@ -2,3 +2,4 @@ export * from "./Account"; export * from "./AccountClient"; export * from "./commands"; export * from "./models"; +export { AccountServiceException } from "./models/AccountServiceException"; diff --git a/clients/client-account/src/models/AccountServiceException.ts b/clients/client-account/src/models/AccountServiceException.ts new file mode 100644 index 0000000000000..5bfb2d0f8b540 --- /dev/null +++ b/clients/client-account/src/models/AccountServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Account service. + */ +export class AccountServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AccountServiceException.prototype); + } +} diff --git a/clients/client-account/src/models/models_0.ts b/clients/client-account/src/models/models_0.ts index f6d70796fdd3c..aba7f499e9dad 100644 --- a/clients/client-account/src/models/models_0.ts +++ b/clients/client-account/src/models/models_0.ts @@ -1,14 +1,26 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AccountServiceException as __BaseException } from "./AccountServiceException"; /** *

The operation failed because the calling identity doesn't have the minimum required * permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AlternateContactType { @@ -59,42 +71,82 @@ export namespace DeleteAlternateContactRequest { *

The operation failed because of an error internal to Amazon Web Services. Try your operation again * later.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The operation failed because it specified a resource that can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The operation failed because it was called too frequently and exceeded a throttle * limit.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - $retryable: { - throttling: true; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** *

The operation failed because one of the input parameters was invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface GetAlternateContactRequest { diff --git a/clients/client-account/src/protocols/Aws_restJson1.ts b/clients/client-account/src/protocols/Aws_restJson1.ts index 4f430a218266e..e5c51767ea9fc 100644 --- a/clients/client-account/src/protocols/Aws_restJson1.ts +++ b/clients/client-account/src/protocols/Aws_restJson1.ts @@ -1,15 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -24,6 +23,7 @@ import { PutAlternateContactCommandInput, PutAlternateContactCommandOutput, } from "../commands/PutAlternateContactCommand"; +import { AccountServiceException as __BaseException } from "../models/AccountServiceException"; import { AccessDeniedException, AlternateContact, @@ -138,65 +138,34 @@ const deserializeAws_restJson1DeleteAlternateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.account#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.account#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.account#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.account#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.account#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAlternateContactCommand = async ( @@ -225,65 +194,34 @@ const deserializeAws_restJson1GetAlternateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.account#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.account#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.account#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.account#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.account#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAlternateContactCommand = async ( @@ -308,146 +246,111 @@ const deserializeAws_restJson1PutAlternateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.account#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.account#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.account#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.account#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $retryable: { - throttling: true, - }, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AlternateContact = (output: any, context: __SerdeContext): AlternateContact => { diff --git a/clients/client-acm-pca/src/index.ts b/clients/client-acm-pca/src/index.ts index e12ca60b39d72..1b66c371bf831 100644 --- a/clients/client-acm-pca/src/index.ts +++ b/clients/client-acm-pca/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ACMPCAServiceException } from "./models/ACMPCAServiceException"; diff --git a/clients/client-acm-pca/src/models/ACMPCAServiceException.ts b/clients/client-acm-pca/src/models/ACMPCAServiceException.ts new file mode 100644 index 0000000000000..bc5075df65da6 --- /dev/null +++ b/clients/client-acm-pca/src/models/ACMPCAServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ACMPCA service. + */ +export class ACMPCAServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ACMPCAServiceException.prototype); + } +} diff --git a/clients/client-acm-pca/src/models/models_0.ts b/clients/client-acm-pca/src/models/models_0.ts index a7f2950c06dcb..7fdf318db7b11 100644 --- a/clients/client-acm-pca/src/models/models_0.ts +++ b/clients/client-acm-pca/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ACMPCAServiceException as __BaseException } from "./ACMPCAServiceException"; /** *

Contains information about the certificate subject. The Subject field in @@ -796,40 +799,80 @@ export namespace CreateCertificateAuthorityResponse { /** *

One or more of the specified arguments was not valid.

*/ -export interface InvalidArgsException extends __SmithyException, $MetadataBearer { - name: "InvalidArgsException"; - $fault: "client"; - message?: string; +export class InvalidArgsException extends __BaseException { + readonly name: "InvalidArgsException" = "InvalidArgsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgsException.prototype); + } } /** *

The resource policy is invalid or is missing a required statement. For general * information about IAM policy and statement structure, see Overview of JSON Policies.

*/ -export interface InvalidPolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidPolicyException"; - $fault: "client"; - message?: string; +export class InvalidPolicyException extends __BaseException { + readonly name: "InvalidPolicyException" = "InvalidPolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPolicyException.prototype); + } } /** *

The tag associated with the CA is not valid. The invalid argument is contained in the * message field.

*/ -export interface InvalidTagException extends __SmithyException, $MetadataBearer { - name: "InvalidTagException"; - $fault: "client"; - message?: string; +export class InvalidTagException extends __BaseException { + readonly name: "InvalidTagException" = "InvalidTagException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagException.prototype); + } } /** *

An ACM Private CA quota has been exceeded. See the exception message returned to determine the * quota that was exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export enum AuditReportResponseFormat { @@ -892,47 +935,97 @@ export namespace CreateCertificateAuthorityAuditReportResponse { *

The requested Amazon Resource Name (ARN) does not refer to an existing * resource.

*/ -export interface InvalidArnException extends __SmithyException, $MetadataBearer { - name: "InvalidArnException"; - $fault: "client"; - message?: string; +export class InvalidArnException extends __BaseException { + readonly name: "InvalidArnException" = "InvalidArnException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArnException.prototype); + } } /** *

The state of the private CA does not allow this action to occur.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; - message?: string; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + } } /** *

The request has failed for an unspecified reason.

*/ -export interface RequestFailedException extends __SmithyException, $MetadataBearer { - name: "RequestFailedException"; - $fault: "client"; - message?: string; +export class RequestFailedException extends __BaseException { + readonly name: "RequestFailedException" = "RequestFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestFailedException.prototype); + } } /** *

Your request is already in progress.

*/ -export interface RequestInProgressException extends __SmithyException, $MetadataBearer { - name: "RequestInProgressException"; - $fault: "client"; - message?: string; +export class RequestInProgressException extends __BaseException { + readonly name: "RequestInProgressException" = "RequestInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestInProgressException.prototype); + } } /** *

A resource such as a private CA, S3 bucket, certificate, audit report, or policy * cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum ActionType { @@ -983,19 +1076,39 @@ export namespace CreatePermissionRequest { /** *

The designated permission has already been given to the user.

*/ -export interface PermissionAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "PermissionAlreadyExistsException"; - $fault: "client"; - message?: string; +export class PermissionAlreadyExistsException extends __BaseException { + readonly name: "PermissionAlreadyExistsException" = "PermissionAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PermissionAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PermissionAlreadyExistsException.prototype); + } } /** *

A previous update to your private CA is still ongoing.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } export interface DeleteCertificateAuthorityRequest { @@ -1081,10 +1194,20 @@ export namespace DeletePolicyRequest { * subsequent actions. Verify that the specified parameters would not result in the caller * being denied access to the resource.

*/ -export interface LockoutPreventedException extends __SmithyException, $MetadataBearer { - name: "LockoutPreventedException"; - $fault: "client"; - message?: string; +export class LockoutPreventedException extends __BaseException { + readonly name: "LockoutPreventedException" = "LockoutPreventedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LockoutPreventedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LockoutPreventedException.prototype); + } } export interface DescribeCertificateAuthorityRequest { @@ -1479,10 +1602,20 @@ export namespace GetPolicyResponse { *

The certificate authority certificate you are importing does not comply with * conditions specified in the certificate that signed it.

*/ -export interface CertificateMismatchException extends __SmithyException, $MetadataBearer { - name: "CertificateMismatchException"; - $fault: "client"; - message?: string; +export class CertificateMismatchException extends __BaseException { + readonly name: "CertificateMismatchException" = "CertificateMismatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateMismatchException.prototype); + } } export interface ImportCertificateAuthorityCertificateRequest { @@ -1524,19 +1657,39 @@ export namespace ImportCertificateAuthorityCertificateRequest { /** *

The request action cannot be performed or is prohibited.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

One or more fields in the certificate are invalid.

*/ -export interface MalformedCertificateException extends __SmithyException, $MetadataBearer { - name: "MalformedCertificateException"; - $fault: "client"; - message?: string; +export class MalformedCertificateException extends __BaseException { + readonly name: "MalformedCertificateException" = "MalformedCertificateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedCertificateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedCertificateException.prototype); + } } export enum PolicyQualifierId { @@ -1955,20 +2108,40 @@ export namespace IssueCertificateResponse { /** *

The certificate signing request is invalid.

*/ -export interface MalformedCSRException extends __SmithyException, $MetadataBearer { - name: "MalformedCSRException"; - $fault: "client"; - message?: string; +export class MalformedCSRException extends __BaseException { + readonly name: "MalformedCSRException" = "MalformedCSRException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedCSRException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedCSRException.prototype); + } } /** *

The token specified in the NextToken argument is not valid. Use the token * returned from your previous call to ListCertificateAuthorities.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; - message?: string; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } export enum ResourceOwner { @@ -2247,10 +2420,20 @@ export namespace RestoreCertificateAuthorityRequest { /** *

Your request has already been completed.

*/ -export interface RequestAlreadyProcessedException extends __SmithyException, $MetadataBearer { - name: "RequestAlreadyProcessedException"; - $fault: "client"; - message?: string; +export class RequestAlreadyProcessedException extends __BaseException { + readonly name: "RequestAlreadyProcessedException" = "RequestAlreadyProcessedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestAlreadyProcessedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestAlreadyProcessedException.prototype); + } } export enum RevocationReason { @@ -2334,10 +2517,20 @@ export namespace TagCertificateAuthorityRequest { *

You can associate up to 50 tags with a private CA. Exception information is contained * in the exception message field.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } export interface UntagCertificateAuthorityRequest { diff --git a/clients/client-acm-pca/src/protocols/Aws_json1_1.ts b/clients/client-acm-pca/src/protocols/Aws_json1_1.ts index 9224bd85f5f4f..82d31e28b3875 100644 --- a/clients/client-acm-pca/src/protocols/Aws_json1_1.ts +++ b/clients/client-acm-pca/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -78,6 +77,7 @@ import { UpdateCertificateAuthorityCommandInput, UpdateCertificateAuthorityCommandOutput, } from "../commands/UpdateCertificateAuthorityCommand"; +import { ACMPCAServiceException as __BaseException } from "../models/ACMPCAServiceException"; import { AccessDescription, AccessMethod, @@ -482,57 +482,31 @@ const deserializeAws_json1_1CreateCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgsException": case "com.amazonaws.acmpca#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "InvalidPolicyException": case "com.amazonaws.acmpca#InvalidPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acmpca#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acmpca#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCertificateAuthorityAuditReportCommand = async ( @@ -560,73 +534,37 @@ const deserializeAws_json1_1CreateCertificateAuthorityAuditReportCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgsException": case "com.amazonaws.acmpca#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acmpca#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePermissionCommand = async ( @@ -651,73 +589,37 @@ const deserializeAws_json1_1CreatePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acmpca#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "PermissionAlreadyExistsException": case "com.amazonaws.acmpca#PermissionAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1PermissionAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PermissionAlreadyExistsExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCertificateAuthorityCommand = async ( @@ -742,57 +644,31 @@ const deserializeAws_json1_1DeleteCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.acmpca#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePermissionCommand = async ( @@ -817,57 +693,31 @@ const deserializeAws_json1_1DeletePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePolicyCommand = async ( @@ -892,73 +742,37 @@ const deserializeAws_json1_1DeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.acmpca#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LockoutPreventedException": case "com.amazonaws.acmpca#LockoutPreventedException": - response = { - ...(await deserializeAws_json1_1LockoutPreventedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LockoutPreventedExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCertificateAuthorityCommand = async ( @@ -986,41 +800,25 @@ const deserializeAws_json1_1DescribeCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCertificateAuthorityAuditReportCommand = async ( @@ -1048,49 +846,28 @@ const deserializeAws_json1_1DescribeCertificateAuthorityAuditReportCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgsException": case "com.amazonaws.acmpca#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCertificateCommand = async ( @@ -1118,65 +895,34 @@ const deserializeAws_json1_1GetCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acmpca#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCertificateAuthorityCertificateCommand = async ( @@ -1204,49 +950,28 @@ const deserializeAws_json1_1GetCertificateAuthorityCertificateCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCertificateAuthorityCsrCommand = async ( @@ -1274,65 +999,34 @@ const deserializeAws_json1_1GetCertificateAuthorityCsrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acmpca#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPolicyCommand = async ( @@ -1360,57 +1054,31 @@ const deserializeAws_json1_1GetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportCertificateAuthorityCertificateCommand = async ( @@ -1435,97 +1103,46 @@ const deserializeAws_json1_1ImportCertificateAuthorityCertificateCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateMismatchException": case "com.amazonaws.acmpca#CertificateMismatchException": - response = { - ...(await deserializeAws_json1_1CertificateMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CertificateMismatchExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.acmpca#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.acmpca#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "MalformedCertificateException": case "com.amazonaws.acmpca#MalformedCertificateException": - response = { - ...(await deserializeAws_json1_1MalformedCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedCertificateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acmpca#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1IssueCertificateCommand = async ( @@ -1553,73 +1170,37 @@ const deserializeAws_json1_1IssueCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgsException": case "com.amazonaws.acmpca#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acmpca#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedCSRException": case "com.amazonaws.acmpca#MalformedCSRException": - response = { - ...(await deserializeAws_json1_1MalformedCSRExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedCSRExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCertificateAuthoritiesCommand = async ( @@ -1647,33 +1228,22 @@ const deserializeAws_json1_1ListCertificateAuthoritiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.acmpca#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPermissionsCommand = async ( @@ -1701,65 +1271,34 @@ const deserializeAws_json1_1ListPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.acmpca#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -1787,49 +1326,28 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPolicyCommand = async ( @@ -1854,81 +1372,40 @@ const deserializeAws_json1_1PutPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.acmpca#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidPolicyException": case "com.amazonaws.acmpca#InvalidPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LockoutPreventedException": case "com.amazonaws.acmpca#LockoutPreventedException": - response = { - ...(await deserializeAws_json1_1LockoutPreventedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LockoutPreventedExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreCertificateAuthorityCommand = async ( @@ -1953,49 +1430,28 @@ const deserializeAws_json1_1RestoreCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RevokeCertificateCommand = async ( @@ -2020,97 +1476,46 @@ const deserializeAws_json1_1RevokeCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.acmpca#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.acmpca#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acmpca#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RequestAlreadyProcessedException": case "com.amazonaws.acmpca#RequestAlreadyProcessedException": - response = { - ...(await deserializeAws_json1_1RequestAlreadyProcessedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestAlreadyProcessedExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.acmpca#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acmpca#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagCertificateAuthorityCommand = async ( @@ -2135,65 +1540,34 @@ const deserializeAws_json1_1TagCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acmpca#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.acmpca#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagCertificateAuthorityCommand = async ( @@ -2218,57 +1592,31 @@ const deserializeAws_json1_1UntagCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acmpca#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCertificateAuthorityCommand = async ( @@ -2293,73 +1641,37 @@ const deserializeAws_json1_1UpdateCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.acmpca#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgsException": case "com.amazonaws.acmpca#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.acmpca#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidPolicyException": case "com.amazonaws.acmpca#InvalidPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acmpca#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acmpca#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CertificateMismatchExceptionResponse = async ( @@ -2368,13 +1680,11 @@ const deserializeAws_json1_1CertificateMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CertificateMismatchException(body, context); - const contents: CertificateMismatchException = { - name: "CertificateMismatchException", - $fault: "client", + const exception = new CertificateMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -2383,13 +1693,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgsExceptionResponse = async ( @@ -2398,13 +1706,11 @@ const deserializeAws_json1_1InvalidArgsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgsException(body, context); - const contents: InvalidArgsException = { - name: "InvalidArgsException", - $fault: "client", + const exception = new InvalidArgsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArnExceptionResponse = async ( @@ -2413,13 +1719,11 @@ const deserializeAws_json1_1InvalidArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArnException(body, context); - const contents: InvalidArnException = { - name: "InvalidArnException", - $fault: "client", + const exception = new InvalidArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -2428,13 +1732,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPolicyExceptionResponse = async ( @@ -2443,13 +1745,11 @@ const deserializeAws_json1_1InvalidPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPolicyException(body, context); - const contents: InvalidPolicyException = { - name: "InvalidPolicyException", - $fault: "client", + const exception = new InvalidPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -2458,13 +1758,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -2473,13 +1771,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagExceptionResponse = async ( @@ -2488,13 +1784,11 @@ const deserializeAws_json1_1InvalidTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagException(body, context); - const contents: InvalidTagException = { - name: "InvalidTagException", - $fault: "client", + const exception = new InvalidTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2503,13 +1797,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LockoutPreventedExceptionResponse = async ( @@ -2518,13 +1810,11 @@ const deserializeAws_json1_1LockoutPreventedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LockoutPreventedException(body, context); - const contents: LockoutPreventedException = { - name: "LockoutPreventedException", - $fault: "client", + const exception = new LockoutPreventedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MalformedCertificateExceptionResponse = async ( @@ -2533,13 +1823,11 @@ const deserializeAws_json1_1MalformedCertificateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MalformedCertificateException(body, context); - const contents: MalformedCertificateException = { - name: "MalformedCertificateException", - $fault: "client", + const exception = new MalformedCertificateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MalformedCSRExceptionResponse = async ( @@ -2548,13 +1836,11 @@ const deserializeAws_json1_1MalformedCSRExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MalformedCSRException(body, context); - const contents: MalformedCSRException = { - name: "MalformedCSRException", - $fault: "client", + const exception = new MalformedCSRException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PermissionAlreadyExistsExceptionResponse = async ( @@ -2563,13 +1849,11 @@ const deserializeAws_json1_1PermissionAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PermissionAlreadyExistsException(body, context); - const contents: PermissionAlreadyExistsException = { - name: "PermissionAlreadyExistsException", - $fault: "client", + const exception = new PermissionAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestAlreadyProcessedExceptionResponse = async ( @@ -2578,13 +1862,11 @@ const deserializeAws_json1_1RequestAlreadyProcessedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestAlreadyProcessedException(body, context); - const contents: RequestAlreadyProcessedException = { - name: "RequestAlreadyProcessedException", - $fault: "client", + const exception = new RequestAlreadyProcessedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestFailedExceptionResponse = async ( @@ -2593,13 +1875,11 @@ const deserializeAws_json1_1RequestFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestFailedException(body, context); - const contents: RequestFailedException = { - name: "RequestFailedException", - $fault: "client", + const exception = new RequestFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestInProgressExceptionResponse = async ( @@ -2608,13 +1888,11 @@ const deserializeAws_json1_1RequestInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestInProgressException(body, context); - const contents: RequestInProgressException = { - name: "RequestInProgressException", - $fault: "client", + const exception = new RequestInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2623,13 +1901,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -2638,13 +1914,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccessDescription = (input: AccessDescription, context: __SerdeContext): any => { diff --git a/clients/client-acm/src/index.ts b/clients/client-acm/src/index.ts index f6b8458c15fcb..ff45788a769c0 100644 --- a/clients/client-acm/src/index.ts +++ b/clients/client-acm/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ACMServiceException } from "./models/ACMServiceException"; diff --git a/clients/client-acm/src/models/ACMServiceException.ts b/clients/client-acm/src/models/ACMServiceException.ts new file mode 100644 index 0000000000000..06c220f506748 --- /dev/null +++ b/clients/client-acm/src/models/ACMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ACM service. + */ +export class ACMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ACMServiceException.prototype); + } +} diff --git a/clients/client-acm/src/models/models_0.ts b/clients/client-acm/src/models/models_0.ts index 204f736933c27..c8662b77f7a0b 100644 --- a/clients/client-acm/src/models/models_0.ts +++ b/clients/client-acm/src/models/models_0.ts @@ -1,14 +1,28 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ACMServiceException as __BaseException } from "./ACMServiceException"; /** *

You do not have access * required to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -66,67 +80,137 @@ export namespace AddTagsToCertificateRequest { /** *

The requested Amazon Resource Name (ARN) does not refer to an existing resource.

*/ -export interface InvalidArnException extends __SmithyException, $MetadataBearer { - name: "InvalidArnException"; - $fault: "client"; - message?: string; +export class InvalidArnException extends __BaseException { + readonly name: "InvalidArnException" = "InvalidArnException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArnException.prototype); + } } /** *

An input parameter was invalid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

One or both of the values that make up the key-value pair is not valid. For example, you * cannot specify a tag value that begins with aws:.

*/ -export interface InvalidTagException extends __SmithyException, $MetadataBearer { - name: "InvalidTagException"; - $fault: "client"; - message?: string; +export class InvalidTagException extends __BaseException { + readonly name: "InvalidTagException" = "InvalidTagException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagException.prototype); + } } /** *

The specified certificate cannot be found in the caller's account or the caller's account * cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

A specified tag did not comply with an existing tag policy and was rejected.

*/ -export interface TagPolicyException extends __SmithyException, $MetadataBearer { - name: "TagPolicyException"; - $fault: "client"; - message?: string; +export class TagPolicyException extends __BaseException { + readonly name: "TagPolicyException" = "TagPolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagPolicyException.prototype); + } } /** *

The request was denied * because it exceeded a quota.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The request contains too many tags. Try the request again with fewer tags.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } export enum RecordType { @@ -711,10 +795,20 @@ export namespace DeleteCertificateRequest { *

The certificate is in use by another Amazon Web Services service in the caller's account. Remove the * association and try again.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export interface DescribeCertificateRequest { @@ -817,10 +911,20 @@ export namespace ExportCertificateResponse { *

The certificate request is in process and the certificate in your account has not yet been * issued.

*/ -export interface RequestInProgressException extends __SmithyException, $MetadataBearer { - name: "RequestInProgressException"; - $fault: "client"; - message?: string; +export class RequestInProgressException extends __BaseException { + readonly name: "RequestInProgressException" = "RequestInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestInProgressException.prototype); + } } /** @@ -966,19 +1070,39 @@ export namespace ImportCertificateResponse { /** *

An ACM quota has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

One or more of of request parameters specified is not valid.

*/ -export interface InvalidArgsException extends __SmithyException, $MetadataBearer { - name: "InvalidArgsException"; - $fault: "client"; - message?: string; +export class InvalidArgsException extends __BaseException { + readonly name: "InvalidArgsException" = "InvalidArgsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgsException.prototype); + } } /** @@ -1149,10 +1273,20 @@ export namespace ListTagsForCertificateResponse { * update a resource or configuration that is already being created or updated. Wait for the * previous operation to finish and try again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface PutAccountConfigurationRequest { @@ -1186,10 +1320,20 @@ export namespace PutAccountConfigurationRequest { *

The supplied input * failed to satisfy constraints of an Amazon Web Services service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface RemoveTagsFromCertificateRequest { @@ -1245,10 +1389,20 @@ export namespace RenewCertificateRequest { *

One or more values in the DomainValidationOption structure is * incorrect.

*/ -export interface InvalidDomainValidationOptionsException extends __SmithyException, $MetadataBearer { - name: "InvalidDomainValidationOptionsException"; - $fault: "client"; - message?: string; +export class InvalidDomainValidationOptionsException extends __BaseException { + readonly name: "InvalidDomainValidationOptionsException" = "InvalidDomainValidationOptionsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDomainValidationOptionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDomainValidationOptionsException.prototype); + } } /** @@ -1423,10 +1577,20 @@ export namespace RequestCertificateResponse { /** *

Processing has reached an invalid state.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; - message?: string; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + } } export interface ResendValidationEmailRequest { diff --git a/clients/client-acm/src/protocols/Aws_json1_1.ts b/clients/client-acm/src/protocols/Aws_json1_1.ts index 6add46765a676..b30fc3f60656c 100644 --- a/clients/client-acm/src/protocols/Aws_json1_1.ts +++ b/clients/client-acm/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -54,6 +53,7 @@ import { UpdateCertificateOptionsCommandInput, UpdateCertificateOptionsCommandOutput, } from "../commands/UpdateCertificateOptionsCommand"; +import { ACMServiceException as __BaseException } from "../models/ACMServiceException"; import { AccessDeniedException, AddTagsToCertificateRequest, @@ -327,81 +327,40 @@ const deserializeAws_json1_1AddTagsToCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.acm#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acm#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.acm#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.acm#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.acm#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCertificateCommand = async ( @@ -426,49 +385,28 @@ const deserializeAws_json1_1DeleteCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.acm#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCertificateCommand = async ( @@ -496,41 +434,25 @@ const deserializeAws_json1_1DescribeCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExportCertificateCommand = async ( @@ -558,49 +480,28 @@ const deserializeAws_json1_1ExportCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acm#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAccountConfigurationCommand = async ( @@ -628,41 +529,25 @@ const deserializeAws_json1_1GetAccountConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.acm#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.acm#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCertificateCommand = async ( @@ -690,49 +575,28 @@ const deserializeAws_json1_1GetCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "RequestInProgressException": case "com.amazonaws.acm#RequestInProgressException": - response = { - ...(await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportCertificateCommand = async ( @@ -760,81 +624,40 @@ const deserializeAws_json1_1ImportCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.acm#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acm#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.acm#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.acm#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCertificatesCommand = async ( @@ -862,33 +685,22 @@ const deserializeAws_json1_1ListCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgsException": case "com.amazonaws.acm#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForCertificateCommand = async ( @@ -916,41 +728,25 @@ const deserializeAws_json1_1ListTagsForCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAccountConfigurationCommand = async ( @@ -975,57 +771,31 @@ const deserializeAws_json1_1PutAccountConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.acm#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.acm#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.acm#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.acm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromCertificateCommand = async ( @@ -1050,73 +820,37 @@ const deserializeAws_json1_1RemoveTagsFromCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.acm#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acm#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.acm#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.acm#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RenewCertificateCommand = async ( @@ -1141,41 +875,25 @@ const deserializeAws_json1_1RenewCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RequestCertificateCommand = async ( @@ -1203,81 +921,40 @@ const deserializeAws_json1_1RequestCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidDomainValidationOptionsException": case "com.amazonaws.acm#InvalidDomainValidationOptionsException": - response = { - ...(await deserializeAws_json1_1InvalidDomainValidationOptionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDomainValidationOptionsExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.acm#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.acm#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.acm#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.acm#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResendValidationEmailCommand = async ( @@ -1302,57 +979,31 @@ const deserializeAws_json1_1ResendValidationEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidDomainValidationOptionsException": case "com.amazonaws.acm#InvalidDomainValidationOptionsException": - response = { - ...(await deserializeAws_json1_1InvalidDomainValidationOptionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDomainValidationOptionsExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCertificateOptionsCommand = async ( @@ -1377,57 +1028,31 @@ const deserializeAws_json1_1UpdateCertificateOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.acm#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.acm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.acm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.acm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -1436,13 +1061,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -1451,13 +1074,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgsExceptionResponse = async ( @@ -1466,13 +1087,11 @@ const deserializeAws_json1_1InvalidArgsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgsException(body, context); - const contents: InvalidArgsException = { - name: "InvalidArgsException", - $fault: "client", + const exception = new InvalidArgsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArnExceptionResponse = async ( @@ -1481,13 +1100,11 @@ const deserializeAws_json1_1InvalidArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArnException(body, context); - const contents: InvalidArnException = { - name: "InvalidArnException", - $fault: "client", + const exception = new InvalidArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDomainValidationOptionsExceptionResponse = async ( @@ -1496,13 +1113,11 @@ const deserializeAws_json1_1InvalidDomainValidationOptionsExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDomainValidationOptionsException(body, context); - const contents: InvalidDomainValidationOptionsException = { - name: "InvalidDomainValidationOptionsException", - $fault: "client", + const exception = new InvalidDomainValidationOptionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -1511,13 +1126,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -1526,13 +1139,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagExceptionResponse = async ( @@ -1541,13 +1152,11 @@ const deserializeAws_json1_1InvalidTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagException(body, context); - const contents: InvalidTagException = { - name: "InvalidTagException", - $fault: "client", + const exception = new InvalidTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1556,13 +1165,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestInProgressExceptionResponse = async ( @@ -1571,13 +1178,11 @@ const deserializeAws_json1_1RequestInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestInProgressException(body, context); - const contents: RequestInProgressException = { - name: "RequestInProgressException", - $fault: "client", + const exception = new RequestInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -1586,13 +1191,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -1601,13 +1204,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagPolicyExceptionResponse = async ( @@ -1616,13 +1217,11 @@ const deserializeAws_json1_1TagPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagPolicyException(body, context); - const contents: TagPolicyException = { - name: "TagPolicyException", - $fault: "client", + const exception = new TagPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -1631,13 +1230,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -1646,13 +1243,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -1661,13 +1256,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsToCertificateRequest = ( diff --git a/clients/client-alexa-for-business/src/index.ts b/clients/client-alexa-for-business/src/index.ts index 36ec0583ec129..71e670c254748 100644 --- a/clients/client-alexa-for-business/src/index.ts +++ b/clients/client-alexa-for-business/src/index.ts @@ -3,3 +3,4 @@ export * from "./AlexaForBusinessClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AlexaForBusinessServiceException } from "./models/AlexaForBusinessServiceException"; diff --git a/clients/client-alexa-for-business/src/models/AlexaForBusinessServiceException.ts b/clients/client-alexa-for-business/src/models/AlexaForBusinessServiceException.ts new file mode 100644 index 0000000000000..bc1b0372ca487 --- /dev/null +++ b/clients/client-alexa-for-business/src/models/AlexaForBusinessServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AlexaForBusiness service. + */ +export class AlexaForBusinessServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AlexaForBusinessServiceException.prototype); + } +} diff --git a/clients/client-alexa-for-business/src/models/models_0.ts b/clients/client-alexa-for-business/src/models/models_0.ts index 0e2da99e60820..2bf707c98aa91 100644 --- a/clients/client-alexa-for-business/src/models/models_0.ts +++ b/clients/client-alexa-for-business/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AlexaForBusinessServiceException as __BaseException } from "./AlexaForBusinessServiceException"; /** *

An address book with attributes.

@@ -89,28 +91,64 @@ export namespace ApproveSkillResponse { /** *

There is a concurrent modification of resources.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

You are performing an action that would put you beyond your account's limits.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The resource is not found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface AssociateContactWithAddressBookRequest { @@ -180,10 +218,22 @@ export namespace AssociateDeviceWithNetworkProfileResponse { /** *

The request failed because this device is no longer registered and therefore no longer managed by this account.

*/ -export interface DeviceNotRegisteredException extends __SmithyException, $MetadataBearer { - name: "DeviceNotRegisteredException"; - $fault: "client"; +export class DeviceNotRegisteredException extends __BaseException { + readonly name: "DeviceNotRegisteredException" = "DeviceNotRegisteredException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeviceNotRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeviceNotRegisteredException.prototype); + this.Message = opts.Message; + } } export interface AssociateDeviceWithRoomRequest { @@ -285,10 +335,22 @@ export namespace AssociateSkillWithSkillGroupResponse { /** *

The skill must be linked to a third-party account.

*/ -export interface SkillNotLinkedException extends __SmithyException, $MetadataBearer { - name: "SkillNotLinkedException"; - $fault: "client"; +export class SkillNotLinkedException extends __BaseException { + readonly name: "SkillNotLinkedException" = "SkillNotLinkedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SkillNotLinkedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SkillNotLinkedException.prototype); + this.Message = opts.Message; + } } export interface AssociateSkillWithUsersRequest { @@ -321,10 +383,22 @@ export namespace AssociateSkillWithUsersResponse { /** *

The resource being created already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** @@ -984,19 +1058,43 @@ export namespace CreateNetworkProfileResponse { /** *

The Certificate Authority can't issue or revoke a certificate.

*/ -export interface InvalidCertificateAuthorityException extends __SmithyException, $MetadataBearer { - name: "InvalidCertificateAuthorityException"; - $fault: "client"; +export class InvalidCertificateAuthorityException extends __BaseException { + readonly name: "InvalidCertificateAuthorityException" = "InvalidCertificateAuthorityException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCertificateAuthorityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCertificateAuthorityException.prototype); + this.Message = opts.Message; + } } /** *

The service linked role is locked for deletion.

*/ -export interface InvalidServiceLinkedRoleStateException extends __SmithyException, $MetadataBearer { - name: "InvalidServiceLinkedRoleStateException"; - $fault: "client"; +export class InvalidServiceLinkedRoleStateException extends __BaseException { + readonly name: "InvalidServiceLinkedRoleStateException" = "InvalidServiceLinkedRoleStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidServiceLinkedRoleStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidServiceLinkedRoleStateException.prototype); + this.Message = opts.Message; + } } export enum DistanceUnit { @@ -1405,14 +1503,27 @@ export namespace CreateUserResponse { /** *

The resource in the request is already in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; /** *

A unique, user-specified identifier for the request that ensures idempotency.

*/ ClientRequestToken?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + this.ClientRequestToken = opts.ClientRequestToken; + } } export interface DeleteAddressBookRequest { @@ -1616,10 +1727,22 @@ export namespace DeleteGatewayGroupResponse { /** *

Another resource is associated with the resource in the request.

*/ -export interface ResourceAssociatedException extends __SmithyException, $MetadataBearer { - name: "ResourceAssociatedException"; - $fault: "client"; +export class ResourceAssociatedException extends __BaseException { + readonly name: "ResourceAssociatedException" = "ResourceAssociatedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAssociatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAssociatedException.prototype); + this.Message = opts.Message; + } } export interface DeleteNetworkProfileRequest { @@ -2754,10 +2877,22 @@ export namespace GetNetworkProfileResponse { /** *

A password in SecretsManager is in an invalid state.

*/ -export interface InvalidSecretsManagerResourceException extends __SmithyException, $MetadataBearer { - name: "InvalidSecretsManagerResourceException"; - $fault: "client"; +export class InvalidSecretsManagerResourceException extends __BaseException { + readonly name: "InvalidSecretsManagerResourceException" = "InvalidSecretsManagerResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSecretsManagerResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSecretsManagerResourceException.prototype); + this.Message = opts.Message; + } } export interface GetProfileRequest { @@ -4332,19 +4467,43 @@ export namespace PutSkillAuthorizationResponse { /** *

The caller has no permissions to operate on the resource involved in the API call.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.Message = opts.Message; + } } /** *

The device is in an invalid state.

*/ -export interface InvalidDeviceException extends __SmithyException, $MetadataBearer { - name: "InvalidDeviceException"; - $fault: "client"; +export class InvalidDeviceException extends __BaseException { + readonly name: "InvalidDeviceException" = "InvalidDeviceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeviceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeviceException.prototype); + this.Message = opts.Message; + } } export interface RegisterAVSDeviceRequest { @@ -5625,10 +5784,22 @@ export namespace SendAnnouncementResponse { /** *

The attempt to update a user is invalid due to the user's current status.

*/ -export interface InvalidUserStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidUserStatusException"; - $fault: "client"; +export class InvalidUserStatusException extends __BaseException { + readonly name: "InvalidUserStatusException" = "InvalidUserStatusException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUserStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUserStatusException.prototype); + this.Message = opts.Message; + } } export interface SendInvitationRequest { @@ -5791,10 +5962,22 @@ export namespace UntagResourceResponse { /** *

The name sent in the request is already in use.

*/ -export interface NameInUseException extends __SmithyException, $MetadataBearer { - name: "NameInUseException"; - $fault: "client"; +export class NameInUseException extends __BaseException { + readonly name: "NameInUseException" = "NameInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NameInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NameInUseException.prototype); + this.Message = opts.Message; + } } export interface UpdateAddressBookRequest { diff --git a/clients/client-alexa-for-business/src/protocols/Aws_json1_1.ts b/clients/client-alexa-for-business/src/protocols/Aws_json1_1.ts index 54bdcecd339c5..2ba885f72f044 100644 --- a/clients/client-alexa-for-business/src/protocols/Aws_json1_1.ts +++ b/clients/client-alexa-for-business/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -228,6 +227,7 @@ import { import { UpdateProfileCommandInput, UpdateProfileCommandOutput } from "../commands/UpdateProfileCommand"; import { UpdateRoomCommandInput, UpdateRoomCommandOutput } from "../commands/UpdateRoomCommand"; import { UpdateSkillGroupCommandInput, UpdateSkillGroupCommandOutput } from "../commands/UpdateSkillGroupCommand"; +import { AlexaForBusinessServiceException as __BaseException } from "../models/AlexaForBusinessServiceException"; import { AddressBook, AddressBookData, @@ -1728,49 +1728,28 @@ const deserializeAws_json1_1ApproveSkillCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateContactWithAddressBookCommand = async ( @@ -1798,33 +1777,22 @@ const deserializeAws_json1_1AssociateContactWithAddressBookCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateDeviceWithNetworkProfileCommand = async ( @@ -1852,49 +1820,28 @@ const deserializeAws_json1_1AssociateDeviceWithNetworkProfileCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "DeviceNotRegisteredException": case "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateDeviceWithRoomCommand = async ( @@ -1922,49 +1869,28 @@ const deserializeAws_json1_1AssociateDeviceWithRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "DeviceNotRegisteredException": case "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateSkillGroupWithRoomCommand = async ( @@ -1992,33 +1918,22 @@ const deserializeAws_json1_1AssociateSkillGroupWithRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateSkillWithSkillGroupCommand = async ( @@ -2046,49 +1961,28 @@ const deserializeAws_json1_1AssociateSkillWithSkillGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "SkillNotLinkedException": case "com.amazonaws.alexaforbusiness#SkillNotLinkedException": - response = { - ...(await deserializeAws_json1_1SkillNotLinkedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SkillNotLinkedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateSkillWithUsersCommand = async ( @@ -2116,41 +2010,25 @@ const deserializeAws_json1_1AssociateSkillWithUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAddressBookCommand = async ( @@ -2178,41 +2056,25 @@ const deserializeAws_json1_1CreateAddressBookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBusinessReportScheduleCommand = async ( @@ -2240,33 +2102,22 @@ const deserializeAws_json1_1CreateBusinessReportScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConferenceProviderCommand = async ( @@ -2294,33 +2145,22 @@ const deserializeAws_json1_1CreateConferenceProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContactCommand = async ( @@ -2348,41 +2188,25 @@ const deserializeAws_json1_1CreateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGatewayGroupCommand = async ( @@ -2410,41 +2234,25 @@ const deserializeAws_json1_1CreateGatewayGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNetworkProfileCommand = async ( @@ -2472,65 +2280,34 @@ const deserializeAws_json1_1CreateNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidCertificateAuthorityException": case "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException": - response = { - ...(await deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse(parsedOutput, context); case "InvalidServiceLinkedRoleStateException": case "com.amazonaws.alexaforbusiness#InvalidServiceLinkedRoleStateException": - response = { - ...(await deserializeAws_json1_1InvalidServiceLinkedRoleStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceLinkedRoleStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProfileCommand = async ( @@ -2558,49 +2335,28 @@ const deserializeAws_json1_1CreateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRoomCommand = async ( @@ -2628,41 +2384,25 @@ const deserializeAws_json1_1CreateRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSkillGroupCommand = async ( @@ -2690,49 +2430,28 @@ const deserializeAws_json1_1CreateSkillGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserCommand = async ( @@ -2760,49 +2479,28 @@ const deserializeAws_json1_1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.alexaforbusiness#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAddressBookCommand = async ( @@ -2830,41 +2528,25 @@ const deserializeAws_json1_1DeleteAddressBookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBusinessReportScheduleCommand = async ( @@ -2892,41 +2574,25 @@ const deserializeAws_json1_1DeleteBusinessReportScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConferenceProviderCommand = async ( @@ -2954,33 +2620,22 @@ const deserializeAws_json1_1DeleteConferenceProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContactCommand = async ( @@ -3008,41 +2663,25 @@ const deserializeAws_json1_1DeleteContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeviceCommand = async ( @@ -3070,49 +2709,28 @@ const deserializeAws_json1_1DeleteDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidCertificateAuthorityException": case "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException": - response = { - ...(await deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeviceUsageDataCommand = async ( @@ -3140,49 +2758,28 @@ const deserializeAws_json1_1DeleteDeviceUsageDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeviceNotRegisteredException": case "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGatewayGroupCommand = async ( @@ -3210,33 +2807,22 @@ const deserializeAws_json1_1DeleteGatewayGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceAssociatedException": case "com.amazonaws.alexaforbusiness#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNetworkProfileCommand = async ( @@ -3264,49 +2850,28 @@ const deserializeAws_json1_1DeleteNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.alexaforbusiness#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProfileCommand = async ( @@ -3334,41 +2899,25 @@ const deserializeAws_json1_1DeleteProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRoomCommand = async ( @@ -3396,41 +2945,25 @@ const deserializeAws_json1_1DeleteRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRoomSkillParameterCommand = async ( @@ -3458,33 +2991,22 @@ const deserializeAws_json1_1DeleteRoomSkillParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSkillAuthorizationCommand = async ( @@ -3512,41 +3034,25 @@ const deserializeAws_json1_1DeleteSkillAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSkillGroupCommand = async ( @@ -3574,41 +3080,25 @@ const deserializeAws_json1_1DeleteSkillGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserCommand = async ( @@ -3636,41 +3126,25 @@ const deserializeAws_json1_1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateContactFromAddressBookCommand = async ( @@ -3698,25 +3172,19 @@ const deserializeAws_json1_1DisassociateContactFromAddressBookCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateDeviceFromRoomCommand = async ( @@ -3744,41 +3212,25 @@ const deserializeAws_json1_1DisassociateDeviceFromRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "DeviceNotRegisteredException": case "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateSkillFromSkillGroupCommand = async ( @@ -3806,41 +3258,25 @@ const deserializeAws_json1_1DisassociateSkillFromSkillGroupCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateSkillFromUsersCommand = async ( @@ -3868,41 +3304,25 @@ const deserializeAws_json1_1DisassociateSkillFromUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateSkillGroupFromRoomCommand = async ( @@ -3930,33 +3350,22 @@ const deserializeAws_json1_1DisassociateSkillGroupFromRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ForgetSmartHomeAppliancesCommand = async ( @@ -3984,33 +3393,22 @@ const deserializeAws_json1_1ForgetSmartHomeAppliancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAddressBookCommand = async ( @@ -4038,33 +3436,22 @@ const deserializeAws_json1_1GetAddressBookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConferencePreferenceCommand = async ( @@ -4092,33 +3479,22 @@ const deserializeAws_json1_1GetConferencePreferenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConferenceProviderCommand = async ( @@ -4146,33 +3522,22 @@ const deserializeAws_json1_1GetConferenceProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContactCommand = async ( @@ -4200,33 +3565,22 @@ const deserializeAws_json1_1GetContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeviceCommand = async ( @@ -4254,33 +3608,22 @@ const deserializeAws_json1_1GetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGatewayCommand = async ( @@ -4308,33 +3651,22 @@ const deserializeAws_json1_1GetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGatewayGroupCommand = async ( @@ -4362,33 +3694,22 @@ const deserializeAws_json1_1GetGatewayGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInvitationConfigurationCommand = async ( @@ -4416,33 +3737,22 @@ const deserializeAws_json1_1GetInvitationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetNetworkProfileCommand = async ( @@ -4470,41 +3780,25 @@ const deserializeAws_json1_1GetNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSecretsManagerResourceException": case "com.amazonaws.alexaforbusiness#InvalidSecretsManagerResourceException": - response = { - ...(await deserializeAws_json1_1InvalidSecretsManagerResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSecretsManagerResourceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetProfileCommand = async ( @@ -4532,33 +3826,22 @@ const deserializeAws_json1_1GetProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRoomCommand = async ( @@ -4586,33 +3869,22 @@ const deserializeAws_json1_1GetRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRoomSkillParameterCommand = async ( @@ -4640,33 +3912,22 @@ const deserializeAws_json1_1GetRoomSkillParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSkillGroupCommand = async ( @@ -4694,33 +3955,22 @@ const deserializeAws_json1_1GetSkillGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBusinessReportSchedulesCommand = async ( @@ -4748,25 +3998,19 @@ const deserializeAws_json1_1ListBusinessReportSchedulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListConferenceProvidersCommand = async ( @@ -4794,25 +4038,19 @@ const deserializeAws_json1_1ListConferenceProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeviceEventsCommand = async ( @@ -4840,33 +4078,22 @@ const deserializeAws_json1_1ListDeviceEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGatewayGroupsCommand = async ( @@ -4894,25 +4121,19 @@ const deserializeAws_json1_1ListGatewayGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGatewaysCommand = async ( @@ -4940,25 +4161,19 @@ const deserializeAws_json1_1ListGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSkillsCommand = async ( @@ -4986,25 +4201,19 @@ const deserializeAws_json1_1ListSkillsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSkillsStoreCategoriesCommand = async ( @@ -5032,25 +4241,19 @@ const deserializeAws_json1_1ListSkillsStoreCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSkillsStoreSkillsByCategoryCommand = async ( @@ -5078,25 +4281,19 @@ const deserializeAws_json1_1ListSkillsStoreSkillsByCategoryCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSmartHomeAppliancesCommand = async ( @@ -5124,33 +4321,22 @@ const deserializeAws_json1_1ListSmartHomeAppliancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -5178,33 +4364,22 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutConferencePreferenceCommand = async ( @@ -5232,33 +4407,22 @@ const deserializeAws_json1_1PutConferencePreferenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutInvitationConfigurationCommand = async ( @@ -5286,41 +4450,25 @@ const deserializeAws_json1_1PutInvitationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRoomSkillParameterCommand = async ( @@ -5348,33 +4496,22 @@ const deserializeAws_json1_1PutRoomSkillParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutSkillAuthorizationCommand = async ( @@ -5402,41 +4539,25 @@ const deserializeAws_json1_1PutSkillAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.alexaforbusiness#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterAVSDeviceCommand = async ( @@ -5464,57 +4585,31 @@ const deserializeAws_json1_1RegisterAVSDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidDeviceException": case "com.amazonaws.alexaforbusiness#InvalidDeviceException": - response = { - ...(await deserializeAws_json1_1InvalidDeviceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeviceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectSkillCommand = async ( @@ -5542,41 +4637,25 @@ const deserializeAws_json1_1RejectSkillCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResolveRoomCommand = async ( @@ -5604,33 +4683,22 @@ const deserializeAws_json1_1ResolveRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RevokeInvitationCommand = async ( @@ -5658,41 +4726,25 @@ const deserializeAws_json1_1RevokeInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchAddressBooksCommand = async ( @@ -5720,25 +4772,19 @@ const deserializeAws_json1_1SearchAddressBooksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchContactsCommand = async ( @@ -5766,25 +4812,19 @@ const deserializeAws_json1_1SearchContactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchDevicesCommand = async ( @@ -5812,25 +4852,19 @@ const deserializeAws_json1_1SearchDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchNetworkProfilesCommand = async ( @@ -5858,25 +4892,19 @@ const deserializeAws_json1_1SearchNetworkProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchProfilesCommand = async ( @@ -5904,25 +4932,19 @@ const deserializeAws_json1_1SearchProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchRoomsCommand = async ( @@ -5950,25 +4972,19 @@ const deserializeAws_json1_1SearchRoomsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchSkillGroupsCommand = async ( @@ -5996,25 +5012,19 @@ const deserializeAws_json1_1SearchSkillGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchUsersCommand = async ( @@ -6042,25 +5052,19 @@ const deserializeAws_json1_1SearchUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendAnnouncementCommand = async ( @@ -6088,41 +5092,25 @@ const deserializeAws_json1_1SendAnnouncementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.alexaforbusiness#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.alexaforbusiness#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendInvitationCommand = async ( @@ -6150,49 +5138,28 @@ const deserializeAws_json1_1SendInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidUserStatusException": case "com.amazonaws.alexaforbusiness#InvalidUserStatusException": - response = { - ...(await deserializeAws_json1_1InvalidUserStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserStatusExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDeviceSyncCommand = async ( @@ -6220,33 +5187,22 @@ const deserializeAws_json1_1StartDeviceSyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeviceNotRegisteredException": case "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSmartHomeApplianceDiscoveryCommand = async ( @@ -6274,33 +5230,22 @@ const deserializeAws_json1_1StartSmartHomeApplianceDiscoveryCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6328,33 +5273,22 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6382,33 +5316,22 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAddressBookCommand = async ( @@ -6436,49 +5359,28 @@ const deserializeAws_json1_1UpdateAddressBookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBusinessReportScheduleCommand = async ( @@ -6506,41 +5408,25 @@ const deserializeAws_json1_1UpdateBusinessReportScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConferenceProviderCommand = async ( @@ -6568,33 +5454,22 @@ const deserializeAws_json1_1UpdateConferenceProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContactCommand = async ( @@ -6622,41 +5497,25 @@ const deserializeAws_json1_1UpdateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDeviceCommand = async ( @@ -6684,49 +5543,28 @@ const deserializeAws_json1_1UpdateDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "DeviceNotRegisteredException": case "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeviceNotRegisteredExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGatewayCommand = async ( @@ -6754,41 +5592,25 @@ const deserializeAws_json1_1UpdateGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGatewayGroupCommand = async ( @@ -6816,41 +5638,25 @@ const deserializeAws_json1_1UpdateGatewayGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNetworkProfileCommand = async ( @@ -6878,65 +5684,34 @@ const deserializeAws_json1_1UpdateNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidCertificateAuthorityException": case "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException": - response = { - ...(await deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse(parsedOutput, context); case "InvalidSecretsManagerResourceException": case "com.amazonaws.alexaforbusiness#InvalidSecretsManagerResourceException": - response = { - ...(await deserializeAws_json1_1InvalidSecretsManagerResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSecretsManagerResourceExceptionResponse(parsedOutput, context); case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProfileCommand = async ( @@ -6964,49 +5739,28 @@ const deserializeAws_json1_1UpdateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRoomCommand = async ( @@ -7034,41 +5788,25 @@ const deserializeAws_json1_1UpdateRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSkillGroupCommand = async ( @@ -7096,49 +5834,28 @@ const deserializeAws_json1_1UpdateSkillGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.alexaforbusiness#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NameInUseException": case "com.amazonaws.alexaforbusiness#NameInUseException": - response = { - ...(await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameInUseExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.alexaforbusiness#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( @@ -7147,13 +5864,11 @@ const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AlreadyExistsException(body, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -7162,13 +5877,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeviceNotRegisteredExceptionResponse = async ( @@ -7177,13 +5890,11 @@ const deserializeAws_json1_1DeviceNotRegisteredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeviceNotRegisteredException(body, context); - const contents: DeviceNotRegisteredException = { - name: "DeviceNotRegisteredException", - $fault: "client", + const exception = new DeviceNotRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse = async ( @@ -7192,13 +5903,11 @@ const deserializeAws_json1_1InvalidCertificateAuthorityExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCertificateAuthorityException(body, context); - const contents: InvalidCertificateAuthorityException = { - name: "InvalidCertificateAuthorityException", - $fault: "client", + const exception = new InvalidCertificateAuthorityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeviceExceptionResponse = async ( @@ -7207,13 +5916,11 @@ const deserializeAws_json1_1InvalidDeviceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeviceException(body, context); - const contents: InvalidDeviceException = { - name: "InvalidDeviceException", - $fault: "client", + const exception = new InvalidDeviceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSecretsManagerResourceExceptionResponse = async ( @@ -7222,13 +5929,11 @@ const deserializeAws_json1_1InvalidSecretsManagerResourceExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSecretsManagerResourceException(body, context); - const contents: InvalidSecretsManagerResourceException = { - name: "InvalidSecretsManagerResourceException", - $fault: "client", + const exception = new InvalidSecretsManagerResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidServiceLinkedRoleStateExceptionResponse = async ( @@ -7237,13 +5942,11 @@ const deserializeAws_json1_1InvalidServiceLinkedRoleStateExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidServiceLinkedRoleStateException(body, context); - const contents: InvalidServiceLinkedRoleStateException = { - name: "InvalidServiceLinkedRoleStateException", - $fault: "client", + const exception = new InvalidServiceLinkedRoleStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUserStatusExceptionResponse = async ( @@ -7252,13 +5955,11 @@ const deserializeAws_json1_1InvalidUserStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUserStatusException(body, context); - const contents: InvalidUserStatusException = { - name: "InvalidUserStatusException", - $fault: "client", + const exception = new InvalidUserStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7267,13 +5968,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NameInUseExceptionResponse = async ( @@ -7282,13 +5981,11 @@ const deserializeAws_json1_1NameInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NameInUseException(body, context); - const contents: NameInUseException = { - name: "NameInUseException", - $fault: "client", + const exception = new NameInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -7297,13 +5994,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAssociatedExceptionResponse = async ( @@ -7312,13 +6007,11 @@ const deserializeAws_json1_1ResourceAssociatedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAssociatedException(body, context); - const contents: ResourceAssociatedException = { - name: "ResourceAssociatedException", - $fault: "client", + const exception = new ResourceAssociatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -7327,13 +6020,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SkillNotLinkedExceptionResponse = async ( @@ -7342,13 +6033,11 @@ const deserializeAws_json1_1SkillNotLinkedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SkillNotLinkedException(body, context); - const contents: SkillNotLinkedException = { - name: "SkillNotLinkedException", - $fault: "client", + const exception = new SkillNotLinkedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnauthorizedExceptionResponse = async ( @@ -7357,13 +6046,11 @@ const deserializeAws_json1_1UnauthorizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnauthorizedException(body, context); - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", + const exception = new UnauthorizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ApproveSkillRequest = (input: ApproveSkillRequest, context: __SerdeContext): any => { diff --git a/clients/client-amp/src/index.ts b/clients/client-amp/src/index.ts index aaa9b813ea72b..b131ee43f277f 100644 --- a/clients/client-amp/src/index.ts +++ b/clients/client-amp/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { AmpServiceException } from "./models/AmpServiceException"; diff --git a/clients/client-amp/src/models/AmpServiceException.ts b/clients/client-amp/src/models/AmpServiceException.ts new file mode 100644 index 0000000000000..1a17b095a5680 --- /dev/null +++ b/clients/client-amp/src/models/AmpServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Amp service. + */ +export class AmpServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AmpServiceException.prototype); + } +} diff --git a/clients/client-amp/src/models/models_0.ts b/clients/client-amp/src/models/models_0.ts index 23ce36febff47..3d684e78b33fc 100644 --- a/clients/client-amp/src/models/models_0.ts +++ b/clients/client-amp/src/models/models_0.ts @@ -1,28 +1,33 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AmpServiceException as __BaseException } from "./AmpServiceException"; /** * User does not have sufficient access to perform this action. */ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** - * Description of the error. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** * Updating or deleting a resource can cause an inconsistent state. */ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - /** - * Description of the error. - */ - message: string | undefined; - +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** * Identifier of the resource affected. */ @@ -32,6 +37,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * Type of the resource affected. */ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -136,32 +155,35 @@ export namespace CreateAlertManagerDefinitionResponse { /** * Unexpected error during processing of request. */ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; /** - * Description of the error. + * Advice to clients on when the call can be safely retried. */ - message: string | undefined; + retryAfterSeconds?: number; /** - * Advice to clients on when the call can be safely retried. + * @internal */ - retryAfterSeconds?: number; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** * Request references a resource which does not exist. */ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - /** - * Description of the error. - */ - message: string | undefined; - +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** * Identifier of the resource affected. */ @@ -171,19 +193,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * Type of the resource affected. */ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** * Request would cause a service quota to be exceeded. */ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - /** - * Description of the error. - */ - message: string | undefined; - +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** * Identifier of the resource affected. */ @@ -203,20 +234,31 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad * Service Quotas requirement to identify originating quota. */ quotaCode: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } /** * Request was denied due to request throttling. */ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: {}; - /** - * Description of the error. - */ - message: string | undefined; - +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = {}; /** * Service Quotas requirement to identify originating service. */ @@ -231,6 +273,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer * Advice to clients on when the call can be safely retried. */ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -267,14 +324,9 @@ export enum ValidationExceptionReason { /** * The input fails to satisfy the constraints specified by an AWS service. */ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - /** - * Description of the error. - */ - message: string | undefined; - +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** * Reason the request failed validation. */ @@ -284,6 +336,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer * The field that caused the error, if applicable. If more than one field caused the error, pick one and elaborate in the message. */ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } /** diff --git a/clients/client-amp/src/protocols/Aws_restJson1.ts b/clients/client-amp/src/protocols/Aws_restJson1.ts index 6d548083e0219..472b50d630c57 100644 --- a/clients/client-amp/src/protocols/Aws_restJson1.ts +++ b/clients/client-amp/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -67,6 +66,7 @@ import { UpdateWorkspaceAliasCommandInput, UpdateWorkspaceAliasCommandOutput, } from "../commands/UpdateWorkspaceAliasCommand"; +import { AmpServiceException as __BaseException } from "../models/AmpServiceException"; import { AccessDeniedException, AlertManagerDefinitionDescription, @@ -690,81 +690,40 @@ const deserializeAws_restJson1CreateAlertManagerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amp#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRuleGroupsNamespaceCommand = async ( @@ -805,81 +764,40 @@ const deserializeAws_restJson1CreateRuleGroupsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amp#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorkspaceCommand = async ( @@ -920,73 +838,37 @@ const deserializeAws_restJson1CreateWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amp#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAlertManagerDefinitionCommand = async ( @@ -1011,73 +893,37 @@ const deserializeAws_restJson1DeleteAlertManagerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRuleGroupsNamespaceCommand = async ( @@ -1102,73 +948,37 @@ const deserializeAws_restJson1DeleteRuleGroupsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWorkspaceCommand = async ( @@ -1193,73 +1003,37 @@ const deserializeAws_restJson1DeleteWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAlertManagerDefinitionCommand = async ( @@ -1291,65 +1065,34 @@ const deserializeAws_restJson1DescribeAlertManagerDefinitionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRuleGroupsNamespaceCommand = async ( @@ -1381,65 +1124,34 @@ const deserializeAws_restJson1DescribeRuleGroupsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorkspaceCommand = async ( @@ -1468,65 +1180,34 @@ const deserializeAws_restJson1DescribeWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRuleGroupsNamespacesCommand = async ( @@ -1562,65 +1243,34 @@ const deserializeAws_restJson1ListRuleGroupsNamespacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1649,65 +1299,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorkspacesCommand = async ( @@ -1740,57 +1359,31 @@ const deserializeAws_restJson1ListWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAlertManagerDefinitionCommand = async ( @@ -1819,81 +1412,40 @@ const deserializeAws_restJson1PutAlertManagerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amp#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRuleGroupsNamespaceCommand = async ( @@ -1934,81 +1486,40 @@ const deserializeAws_restJson1PutRuleGroupsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amp#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2033,65 +1544,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2116,65 +1596,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorkspaceAliasCommand = async ( @@ -2199,112 +1648,63 @@ const deserializeAws_restJson1UpdateWorkspaceAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.amp#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.amp#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.amp#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amp#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amp#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.amp#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.amp#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -2315,21 +1715,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -2337,21 +1734,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -2362,23 +1756,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -2395,23 +1784,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -2425,21 +1809,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fieldList !== undefined && data.fieldList !== null) { contents.fieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context); @@ -2450,7 +1831,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1TagMap = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-amplify/src/index.ts b/clients/client-amplify/src/index.ts index d9bbf01270eea..d2b819e3d1c9a 100644 --- a/clients/client-amplify/src/index.ts +++ b/clients/client-amplify/src/index.ts @@ -2,3 +2,4 @@ export * from "./Amplify"; export * from "./AmplifyClient"; export * from "./commands"; export * from "./models"; +export { AmplifyServiceException } from "./models/AmplifyServiceException"; diff --git a/clients/client-amplify/src/models/AmplifyServiceException.ts b/clients/client-amplify/src/models/AmplifyServiceException.ts new file mode 100644 index 0000000000000..89257651b707b --- /dev/null +++ b/clients/client-amplify/src/models/AmplifyServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Amplify service. + */ +export class AmplifyServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AmplifyServiceException.prototype); + } +} diff --git a/clients/client-amplify/src/models/models_0.ts b/clients/client-amplify/src/models/models_0.ts index e47ccf60a4ad0..ae325e8ca1e37 100644 --- a/clients/client-amplify/src/models/models_0.ts +++ b/clients/client-amplify/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AmplifyServiceException as __BaseException } from "./AmplifyServiceException"; /** *

A request contains unexpected data.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } export enum Stage { @@ -458,37 +470,77 @@ export namespace CreateAppResult { /** *

An operation failed because a dependent service threw an exception.

*/ -export interface DependentServiceFailureException extends __SmithyException, $MetadataBearer { - name: "DependentServiceFailureException"; - $fault: "server"; - message?: string; +export class DependentServiceFailureException extends __BaseException { + readonly name: "DependentServiceFailureException" = "DependentServiceFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependentServiceFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DependentServiceFailureException.prototype); + } } /** *

The service failed to perform an operation due to an internal issue.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

A resource could not be created because service quotas were exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

An operation failed due to a lack of access.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message?: string; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** @@ -594,10 +646,20 @@ export namespace CreateBackendEnvironmentResult { /** *

An entity was not found during an operation.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** @@ -2423,11 +2485,22 @@ export namespace ListTagsForResourceResponse { /** *

An operation failed due to a non-existent resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; code: string | undefined; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + } } /** diff --git a/clients/client-amplify/src/protocols/Aws_restJson1.ts b/clients/client-amplify/src/protocols/Aws_restJson1.ts index a2388dece5b4b..daf546c27433e 100644 --- a/clients/client-amplify/src/protocols/Aws_restJson1.ts +++ b/clients/client-amplify/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateAppCommandInput, CreateAppCommandOutput } from "../commands/CreateAppCommand"; @@ -83,6 +82,7 @@ import { UpdateDomainAssociationCommandOutput, } from "../commands/UpdateDomainAssociationCommand"; import { UpdateWebhookCommandInput, UpdateWebhookCommandOutput } from "../commands/UpdateWebhookCommand"; +import { AmplifyServiceException as __BaseException } from "../models/AmplifyServiceException"; import { App, Artifact, @@ -1645,65 +1645,34 @@ const deserializeAws_restJson1CreateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackendEnvironmentCommand = async ( @@ -1732,65 +1701,34 @@ const deserializeAws_restJson1CreateBackendEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBranchCommand = async ( @@ -1819,73 +1757,37 @@ const deserializeAws_restJson1CreateBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentCommand = async ( @@ -1922,57 +1824,31 @@ const deserializeAws_restJson1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainAssociationCommand = async ( @@ -2001,73 +1877,37 @@ const deserializeAws_restJson1CreateDomainAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWebhookCommand = async ( @@ -2096,73 +1936,37 @@ const deserializeAws_restJson1CreateWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppCommand = async ( @@ -2191,65 +1995,34 @@ const deserializeAws_restJson1DeleteAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackendEnvironmentCommand = async ( @@ -2278,65 +2051,34 @@ const deserializeAws_restJson1DeleteBackendEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBranchCommand = async ( @@ -2365,65 +2107,34 @@ const deserializeAws_restJson1DeleteBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainAssociationCommand = async ( @@ -2452,65 +2163,34 @@ const deserializeAws_restJson1DeleteDomainAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobCommand = async ( @@ -2539,65 +2219,34 @@ const deserializeAws_restJson1DeleteJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWebhookCommand = async ( @@ -2626,65 +2275,34 @@ const deserializeAws_restJson1DeleteWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GenerateAccessLogsCommand = async ( @@ -2713,57 +2331,31 @@ const deserializeAws_restJson1GenerateAccessLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppCommand = async ( @@ -2792,57 +2384,31 @@ const deserializeAws_restJson1GetAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetArtifactUrlCommand = async ( @@ -2875,65 +2441,34 @@ const deserializeAws_restJson1GetArtifactUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendEnvironmentCommand = async ( @@ -2962,57 +2497,31 @@ const deserializeAws_restJson1GetBackendEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBranchCommand = async ( @@ -3041,57 +2550,31 @@ const deserializeAws_restJson1GetBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainAssociationCommand = async ( @@ -3120,57 +2603,31 @@ const deserializeAws_restJson1GetDomainAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobCommand = async ( @@ -3199,65 +2656,34 @@ const deserializeAws_restJson1GetJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWebhookCommand = async ( @@ -3286,65 +2712,34 @@ const deserializeAws_restJson1GetWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppsCommand = async ( @@ -3377,49 +2772,28 @@ const deserializeAws_restJson1ListAppsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListArtifactsCommand = async ( @@ -3452,57 +2826,31 @@ const deserializeAws_restJson1ListArtifactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackendEnvironmentsCommand = async ( @@ -3535,49 +2883,28 @@ const deserializeAws_restJson1ListBackendEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBranchesCommand = async ( @@ -3610,49 +2937,28 @@ const deserializeAws_restJson1ListBranchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainAssociationsCommand = async ( @@ -3685,49 +2991,28 @@ const deserializeAws_restJson1ListDomainAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -3760,57 +3045,31 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3839,49 +3098,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplify#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWebhooksCommand = async ( @@ -3914,57 +3152,31 @@ const deserializeAws_restJson1ListWebhooksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartDeploymentCommand = async ( @@ -3993,65 +3205,34 @@ const deserializeAws_restJson1StartDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartJobCommand = async ( @@ -4080,65 +3261,34 @@ const deserializeAws_restJson1StartJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopJobCommand = async ( @@ -4167,65 +3317,34 @@ const deserializeAws_restJson1StopJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.amplify#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4250,49 +3369,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplify#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4317,49 +3415,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplify#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppCommand = async ( @@ -4388,57 +3465,31 @@ const deserializeAws_restJson1UpdateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBranchCommand = async ( @@ -4467,65 +3518,34 @@ const deserializeAws_restJson1UpdateBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainAssociationCommand = async ( @@ -4554,65 +3574,34 @@ const deserializeAws_restJson1UpdateDomainAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWebhookCommand = async ( @@ -4641,163 +3630,121 @@ const deserializeAws_restJson1UpdateWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplify#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "DependentServiceFailureException": case "com.amazonaws.amplify#DependentServiceFailureException": - response = { - ...(await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependentServiceFailureExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.amplify#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplify#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.amplify#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DependentServiceFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DependentServiceFailureException = { - name: "DependentServiceFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DependentServiceFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4805,24 +3752,27 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AutoBranchCreationConfig = ( diff --git a/clients/client-amplifybackend/src/index.ts b/clients/client-amplifybackend/src/index.ts index 91bd8546b18be..05b9c96cf14bf 100644 --- a/clients/client-amplifybackend/src/index.ts +++ b/clients/client-amplifybackend/src/index.ts @@ -2,3 +2,4 @@ export * from "./AmplifyBackend"; export * from "./AmplifyBackendClient"; export * from "./commands"; export * from "./models"; +export { AmplifyBackendServiceException } from "./models/AmplifyBackendServiceException"; diff --git a/clients/client-amplifybackend/src/models/AmplifyBackendServiceException.ts b/clients/client-amplifybackend/src/models/AmplifyBackendServiceException.ts new file mode 100644 index 0000000000000..2d27d8cbf9ef1 --- /dev/null +++ b/clients/client-amplifybackend/src/models/AmplifyBackendServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AmplifyBackend service. + */ +export class AmplifyBackendServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AmplifyBackendServiceException.prototype); + } +} diff --git a/clients/client-amplifybackend/src/models/models_0.ts b/clients/client-amplifybackend/src/models/models_0.ts index 6f889333622f0..e1f357af45e56 100644 --- a/clients/client-amplifybackend/src/models/models_0.ts +++ b/clients/client-amplifybackend/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AmplifyBackendServiceException as __BaseException } from "./AmplifyBackendServiceException"; export enum AdditionalConstraintsElement { REQUIRE_DIGIT = "REQUIRE_DIGIT", @@ -10,13 +13,25 @@ export enum AdditionalConstraintsElement { /** *

An error returned if a request is not formed properly.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

An error message to inform that the request failed.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** @@ -92,21 +107,33 @@ export namespace CloneBackendResponse { /** *

An error returned if there's a temporary issue with the service.

*/ -export interface GatewayTimeoutException extends __SmithyException, $MetadataBearer { - name: "GatewayTimeoutException"; - $fault: "server"; +export class GatewayTimeoutException extends __BaseException { + readonly name: "GatewayTimeoutException" = "GatewayTimeoutException"; + readonly $fault: "server" = "server"; /** *

An error message to inform that the request failed.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GatewayTimeoutException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, GatewayTimeoutException.prototype); + this.Message = opts.Message; + } } /** *

An error returned when a specific resource type is not found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

An error message to inform that the request has failed.

*/ @@ -116,14 +143,27 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The type of resource that is not found.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

An error that is returned when a limit of a specific type has been exceeded.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

The type of limit that was exceeded.

*/ @@ -133,6 +173,19 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe *

An error message to inform that the request has failed.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.LimitType = opts.LimitType; + this.Message = opts.Message; + } } /** diff --git a/clients/client-amplifybackend/src/protocols/Aws_restJson1.ts b/clients/client-amplifybackend/src/protocols/Aws_restJson1.ts index 7c7a8eaa28030..d75fe77484106 100644 --- a/clients/client-amplifybackend/src/protocols/Aws_restJson1.ts +++ b/clients/client-amplifybackend/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CloneBackendCommandInput, CloneBackendCommandOutput } from "../commands/CloneBackendCommand"; @@ -74,6 +73,7 @@ import { UpdateBackendStorageCommandInput, UpdateBackendStorageCommandOutput, } from "../commands/UpdateBackendStorageCommand"; +import { AmplifyBackendServiceException as __BaseException } from "../models/AmplifyBackendServiceException"; import { AdditionalConstraintsElement, AuthenticatedElement, @@ -1445,57 +1445,31 @@ const deserializeAws_restJson1CloneBackendCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackendCommand = async ( @@ -1544,57 +1518,31 @@ const deserializeAws_restJson1CreateBackendCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackendAPICommand = async ( @@ -1643,57 +1591,31 @@ const deserializeAws_restJson1CreateBackendAPICommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackendAuthCommand = async ( @@ -1742,57 +1664,31 @@ const deserializeAws_restJson1CreateBackendAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackendConfigCommand = async ( @@ -1833,57 +1729,31 @@ const deserializeAws_restJson1CreateBackendConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackendStorageCommand = async ( @@ -1924,57 +1794,31 @@ const deserializeAws_restJson1CreateBackendStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTokenCommand = async ( @@ -2015,57 +1859,31 @@ const deserializeAws_restJson1CreateTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackendCommand = async ( @@ -2114,57 +1932,31 @@ const deserializeAws_restJson1DeleteBackendCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackendAPICommand = async ( @@ -2213,57 +2005,31 @@ const deserializeAws_restJson1DeleteBackendAPICommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackendAuthCommand = async ( @@ -2312,57 +2078,31 @@ const deserializeAws_restJson1DeleteBackendAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackendStorageCommand = async ( @@ -2403,57 +2143,31 @@ const deserializeAws_restJson1DeleteBackendStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTokenCommand = async ( @@ -2482,57 +2196,31 @@ const deserializeAws_restJson1DeleteTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GenerateBackendAPIModelsCommand = async ( @@ -2581,57 +2269,31 @@ const deserializeAws_restJson1GenerateBackendAPIModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendCommand = async ( @@ -2684,57 +2346,31 @@ const deserializeAws_restJson1GetBackendCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendAPICommand = async ( @@ -2779,57 +2415,31 @@ const deserializeAws_restJson1GetBackendAPICommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendAPIModelsCommand = async ( @@ -2862,57 +2472,31 @@ const deserializeAws_restJson1GetBackendAPIModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendAuthCommand = async ( @@ -2957,57 +2541,31 @@ const deserializeAws_restJson1GetBackendAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendJobCommand = async ( @@ -3064,57 +2622,31 @@ const deserializeAws_restJson1GetBackendJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackendStorageCommand = async ( @@ -3155,57 +2687,31 @@ const deserializeAws_restJson1GetBackendStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTokenCommand = async ( @@ -3246,57 +2752,31 @@ const deserializeAws_restJson1GetTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportBackendAuthCommand = async ( @@ -3345,57 +2825,31 @@ const deserializeAws_restJson1ImportBackendAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportBackendStorageCommand = async ( @@ -3436,57 +2890,31 @@ const deserializeAws_restJson1ImportBackendStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackendJobsCommand = async ( @@ -3519,57 +2947,31 @@ const deserializeAws_restJson1ListBackendJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListS3BucketsCommand = async ( @@ -3602,57 +3004,31 @@ const deserializeAws_restJson1ListS3BucketsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveAllBackendsCommand = async ( @@ -3697,57 +3073,31 @@ const deserializeAws_restJson1RemoveAllBackendsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveBackendConfigCommand = async ( @@ -3776,57 +3126,31 @@ const deserializeAws_restJson1RemoveBackendConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBackendAPICommand = async ( @@ -3875,57 +3199,31 @@ const deserializeAws_restJson1UpdateBackendAPICommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBackendAuthCommand = async ( @@ -3974,57 +3272,31 @@ const deserializeAws_restJson1UpdateBackendAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBackendConfigCommand = async ( @@ -4065,57 +3337,31 @@ const deserializeAws_restJson1UpdateBackendConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBackendJobCommand = async ( @@ -4172,57 +3418,31 @@ const deserializeAws_restJson1UpdateBackendJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBackendStorageCommand = async ( @@ -4263,104 +3483,70 @@ const deserializeAws_restJson1UpdateBackendStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.amplifybackend#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.amplifybackend#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.amplifybackend#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.amplifybackend#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GatewayTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GatewayTimeoutException = { - name: "GatewayTimeoutException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new GatewayTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); @@ -4368,20 +3554,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.ResourceType = __expectString(data.resourceType); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - LimitType: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.limitType !== undefined && data.limitType !== null) { contents.LimitType = __expectString(data.limitType); @@ -4389,7 +3573,11 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1BackendAPIAppSyncAuthSettings = ( diff --git a/clients/client-amplifyuibuilder/src/index.ts b/clients/client-amplifyuibuilder/src/index.ts index bfe3dc4df8446..fc561e0a91995 100644 --- a/clients/client-amplifyuibuilder/src/index.ts +++ b/clients/client-amplifyuibuilder/src/index.ts @@ -3,3 +3,4 @@ export * from "./AmplifyUIBuilderClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AmplifyUIBuilderServiceException } from "./models/AmplifyUIBuilderServiceException"; diff --git a/clients/client-amplifyuibuilder/src/models/AmplifyUIBuilderServiceException.ts b/clients/client-amplifyuibuilder/src/models/AmplifyUIBuilderServiceException.ts new file mode 100644 index 0000000000000..ab9edc415ae56 --- /dev/null +++ b/clients/client-amplifyuibuilder/src/models/AmplifyUIBuilderServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AmplifyUIBuilder service. + */ +export class AmplifyUIBuilderServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AmplifyUIBuilderServiceException.prototype); + } +} diff --git a/clients/client-amplifyuibuilder/src/models/models_0.ts b/clients/client-amplifyuibuilder/src/models/models_0.ts index 234fbb5b47a8e..696118f9f3f11 100644 --- a/clients/client-amplifyuibuilder/src/models/models_0.ts +++ b/clients/client-amplifyuibuilder/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AmplifyUIBuilderServiceException as __BaseException } from "./AmplifyUIBuilderServiceException"; /** *

Associates a component property to a binding property. This enables exposed properties on @@ -104,38 +106,78 @@ export namespace ComponentVariant { /** *

An internal error has occurred. Please retry your request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

An invalid or out-of-range value was supplied for the input parameter.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The resource specified in the request conflicts with an existing resource.

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; - message?: string; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + } } /** *

You exceeded your service quota. Service quotas, also referred to as limits, are the * maximum number of service resources or operations for your Amazon Web Services account.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface DeleteComponentRequest { @@ -167,10 +209,20 @@ export namespace DeleteComponentRequest { /** *

The requested resource does not exist, or access was denied.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface ExportComponentsRequest { diff --git a/clients/client-amplifyuibuilder/src/protocols/Aws_restJson1.ts b/clients/client-amplifyuibuilder/src/protocols/Aws_restJson1.ts index f849722ea65ff..353a77f726c0b 100644 --- a/clients/client-amplifyuibuilder/src/protocols/Aws_restJson1.ts +++ b/clients/client-amplifyuibuilder/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -34,6 +33,7 @@ import { ListThemesCommandInput, ListThemesCommandOutput } from "../commands/Lis import { RefreshTokenCommandInput, RefreshTokenCommandOutput } from "../commands/RefreshTokenCommand"; import { UpdateComponentCommandInput, UpdateComponentCommandOutput } from "../commands/UpdateComponentCommand"; import { UpdateThemeCommandInput, UpdateThemeCommandOutput } from "../commands/UpdateThemeCommand"; +import { AmplifyUIBuilderServiceException as __BaseException } from "../models/AmplifyUIBuilderServiceException"; import { Component, ComponentBindingPropertiesValue, @@ -748,57 +748,31 @@ const deserializeAws_restJson1CreateComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.amplifyuibuilder#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amplifyuibuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThemeCommand = async ( @@ -825,57 +799,31 @@ const deserializeAws_restJson1CreateThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.amplifyuibuilder#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.amplifyuibuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteComponentCommand = async ( @@ -900,49 +848,28 @@ const deserializeAws_restJson1DeleteComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplifyuibuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThemeCommand = async ( @@ -967,49 +894,28 @@ const deserializeAws_restJson1DeleteThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplifyuibuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExchangeCodeForTokenCommand = async ( @@ -1046,33 +952,22 @@ const deserializeAws_restJson1ExchangeCodeForTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportComponentsCommand = async ( @@ -1101,41 +996,25 @@ const deserializeAws_restJson1ExportComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportThemesCommand = async ( @@ -1164,41 +1043,25 @@ const deserializeAws_restJson1ExportThemesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetComponentCommand = async ( @@ -1225,49 +1088,28 @@ const deserializeAws_restJson1GetComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplifyuibuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetThemeCommand = async ( @@ -1294,49 +1136,28 @@ const deserializeAws_restJson1GetThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.amplifyuibuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListComponentsCommand = async ( @@ -1369,41 +1190,25 @@ const deserializeAws_restJson1ListComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThemesCommand = async ( @@ -1436,41 +1241,25 @@ const deserializeAws_restJson1ListThemesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RefreshTokenCommand = async ( @@ -1503,33 +1292,22 @@ const deserializeAws_restJson1RefreshTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateComponentCommand = async ( @@ -1556,49 +1334,28 @@ const deserializeAws_restJson1UpdateComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.amplifyuibuilder#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThemeCommand = async ( @@ -1625,134 +1382,108 @@ const deserializeAws_restJson1UpdateThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.amplifyuibuilder#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.amplifyuibuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.amplifyuibuilder#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ComponentBindingProperties = ( diff --git a/clients/client-api-gateway/src/index.ts b/clients/client-api-gateway/src/index.ts index d9f957c3760ca..f82b4cb658898 100644 --- a/clients/client-api-gateway/src/index.ts +++ b/clients/client-api-gateway/src/index.ts @@ -3,3 +3,4 @@ export * from "./APIGatewayClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { APIGatewayServiceException } from "./models/APIGatewayServiceException"; diff --git a/clients/client-api-gateway/src/models/APIGatewayServiceException.ts b/clients/client-api-gateway/src/models/APIGatewayServiceException.ts new file mode 100644 index 0000000000000..97d815c4bdc99 --- /dev/null +++ b/clients/client-api-gateway/src/models/APIGatewayServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from APIGateway service. + */ +export class APIGatewayServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, APIGatewayServiceException.prototype); + } +} diff --git a/clients/client-api-gateway/src/models/models_0.ts b/clients/client-api-gateway/src/models/models_0.ts index b2f0d37d6a6c9..83c1cca24babf 100644 --- a/clients/client-api-gateway/src/models/models_0.ts +++ b/clients/client-api-gateway/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { APIGatewayServiceException as __BaseException } from "./APIGatewayServiceException"; /** *

Access log settings, including the access log format and access log destination ARN.

@@ -396,19 +399,39 @@ export namespace Authorizers { /** *

The submitted request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** *

The request configuration has conflicts. For details, see the accompanying error message.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -492,39 +515,81 @@ export namespace CreateApiKeyRequest { /** *

The request exceeded the rate limit. Retry after the specified time period.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; retryAfterSeconds?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The requested resource is not found. Make sure that the request URI is correct.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** *

The request has reached its throttling limit. Retry after the specified time period.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; retryAfterSeconds?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The request is denied because the caller has insufficient permissions.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message?: string; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** @@ -826,11 +891,22 @@ export namespace Deployment { /** *

The requested service is not available. For details see the accompanying error message. Retry after the specified time period.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; retryAfterSeconds?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } export enum DocumentationPartType { diff --git a/clients/client-api-gateway/src/protocols/Aws_restJson1.ts b/clients/client-api-gateway/src/protocols/Aws_restJson1.ts index 5a7fb93e0d342..46a8227565496 100644 --- a/clients/client-api-gateway/src/protocols/Aws_restJson1.ts +++ b/clients/client-api-gateway/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateApiKeyCommandInput, CreateApiKeyCommandOutput } from "../commands/CreateApiKeyCommand"; @@ -248,6 +247,7 @@ import { UpdateStageCommandInput, UpdateStageCommandOutput } from "../commands/U import { UpdateUsageCommandInput, UpdateUsageCommandOutput } from "../commands/UpdateUsageCommand"; import { UpdateUsagePlanCommandInput, UpdateUsagePlanCommandOutput } from "../commands/UpdateUsagePlanCommand"; import { UpdateVpcLinkCommandInput, UpdateVpcLinkCommandOutput } from "../commands/UpdateVpcLinkCommand"; +import { APIGatewayServiceException as __BaseException } from "../models/APIGatewayServiceException"; import { AccessLogSettings, ApiKey, @@ -5208,73 +5208,37 @@ const deserializeAws_restJson1CreateApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAuthorizerCommand = async ( @@ -5339,73 +5303,37 @@ const deserializeAws_restJson1CreateAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBasePathMappingCommand = async ( @@ -5442,73 +5370,37 @@ const deserializeAws_restJson1CreateBasePathMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentCommand = async ( @@ -5549,81 +5441,40 @@ const deserializeAws_restJson1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.apigateway#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDocumentationPartCommand = async ( @@ -5660,73 +5511,37 @@ const deserializeAws_restJson1CreateDocumentationPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDocumentationVersionCommand = async ( @@ -5763,73 +5578,37 @@ const deserializeAws_restJson1CreateDocumentationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainNameCommand = async ( @@ -5925,65 +5704,34 @@ const deserializeAws_restJson1CreateDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateModelCommand = async ( @@ -6028,73 +5776,37 @@ const deserializeAws_restJson1CreateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRequestValidatorCommand = async ( @@ -6135,73 +5847,37 @@ const deserializeAws_restJson1CreateRequestValidatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourceCommand = async ( @@ -6246,73 +5922,37 @@ const deserializeAws_restJson1CreateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRestApiCommand = async ( @@ -6389,65 +6029,34 @@ const deserializeAws_restJson1CreateRestApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStageCommand = async ( @@ -6540,73 +6149,37 @@ const deserializeAws_restJson1CreateStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUsagePlanCommand = async ( @@ -6663,73 +6236,37 @@ const deserializeAws_restJson1CreateUsagePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUsagePlanKeyCommand = async ( @@ -6770,73 +6307,37 @@ const deserializeAws_restJson1CreateUsagePlanKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVpcLinkCommand = async ( @@ -6889,65 +6390,34 @@ const deserializeAws_restJson1CreateVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApiKeyCommand = async ( @@ -6972,65 +6442,34 @@ const deserializeAws_restJson1DeleteApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAuthorizerCommand = async ( @@ -7055,65 +6494,34 @@ const deserializeAws_restJson1DeleteAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBasePathMappingCommand = async ( @@ -7138,65 +6546,34 @@ const deserializeAws_restJson1DeleteBasePathMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteClientCertificateCommand = async ( @@ -7221,65 +6598,34 @@ const deserializeAws_restJson1DeleteClientCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeploymentCommand = async ( @@ -7304,73 +6650,37 @@ const deserializeAws_restJson1DeleteDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDocumentationPartCommand = async ( @@ -7395,65 +6705,34 @@ const deserializeAws_restJson1DeleteDocumentationPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDocumentationVersionCommand = async ( @@ -7478,65 +6757,34 @@ const deserializeAws_restJson1DeleteDocumentationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainNameCommand = async ( @@ -7561,65 +6809,34 @@ const deserializeAws_restJson1DeleteDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGatewayResponseCommand = async ( @@ -7644,65 +6861,34 @@ const deserializeAws_restJson1DeleteGatewayResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntegrationCommand = async ( @@ -7727,65 +6913,34 @@ const deserializeAws_restJson1DeleteIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntegrationResponseCommand = async ( @@ -7810,65 +6965,34 @@ const deserializeAws_restJson1DeleteIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMethodCommand = async ( @@ -7893,57 +7017,31 @@ const deserializeAws_restJson1DeleteMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMethodResponseCommand = async ( @@ -7968,65 +7066,34 @@ const deserializeAws_restJson1DeleteMethodResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteModelCommand = async ( @@ -8051,65 +7118,34 @@ const deserializeAws_restJson1DeleteModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRequestValidatorCommand = async ( @@ -8134,65 +7170,34 @@ const deserializeAws_restJson1DeleteRequestValidatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourceCommand = async ( @@ -8217,65 +7222,34 @@ const deserializeAws_restJson1DeleteResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRestApiCommand = async ( @@ -8300,65 +7274,34 @@ const deserializeAws_restJson1DeleteRestApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStageCommand = async ( @@ -8383,73 +7326,37 @@ const deserializeAws_restJson1DeleteStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUsagePlanCommand = async ( @@ -8474,65 +7381,34 @@ const deserializeAws_restJson1DeleteUsagePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUsagePlanKeyCommand = async ( @@ -8557,65 +7433,34 @@ const deserializeAws_restJson1DeleteUsagePlanKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVpcLinkCommand = async ( @@ -8640,65 +7485,34 @@ const deserializeAws_restJson1DeleteVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1FlushStageAuthorizersCacheCommand = async ( @@ -8723,73 +7537,37 @@ const deserializeAws_restJson1FlushStageAuthorizersCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1FlushStageCacheCommand = async ( @@ -8814,73 +7592,37 @@ const deserializeAws_restJson1FlushStageCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GenerateClientCertificateCommand = async ( @@ -8929,65 +7671,34 @@ const deserializeAws_restJson1GenerateClientCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountCommand = async ( @@ -9028,57 +7739,31 @@ const deserializeAws_restJson1GetAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiKeyCommand = async ( @@ -9143,57 +7828,31 @@ const deserializeAws_restJson1GetApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiKeysCommand = async ( @@ -9230,57 +7889,31 @@ const deserializeAws_restJson1GetApiKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAuthorizerCommand = async ( @@ -9345,57 +7978,31 @@ const deserializeAws_restJson1GetAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAuthorizersCommand = async ( @@ -9428,57 +8035,31 @@ const deserializeAws_restJson1GetAuthorizersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBasePathMappingCommand = async ( @@ -9515,57 +8096,31 @@ const deserializeAws_restJson1GetBasePathMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBasePathMappingsCommand = async ( @@ -9598,57 +8153,31 @@ const deserializeAws_restJson1GetBasePathMappingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetClientCertificateCommand = async ( @@ -9697,57 +8226,31 @@ const deserializeAws_restJson1GetClientCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetClientCertificatesCommand = async ( @@ -9780,57 +8283,31 @@ const deserializeAws_restJson1GetClientCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentCommand = async ( @@ -9871,65 +8348,34 @@ const deserializeAws_restJson1GetDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.apigateway#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentsCommand = async ( @@ -9962,65 +8408,34 @@ const deserializeAws_restJson1GetDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.apigateway#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentationPartCommand = async ( @@ -10057,57 +8472,31 @@ const deserializeAws_restJson1GetDocumentationPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentationPartsCommand = async ( @@ -10140,57 +8529,31 @@ const deserializeAws_restJson1GetDocumentationPartsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentationVersionCommand = async ( @@ -10227,49 +8590,28 @@ const deserializeAws_restJson1GetDocumentationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentationVersionsCommand = async ( @@ -10302,57 +8644,31 @@ const deserializeAws_restJson1GetDocumentationVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainNameCommand = async ( @@ -10448,57 +8764,31 @@ const deserializeAws_restJson1GetDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainNamesCommand = async ( @@ -10531,57 +8821,31 @@ const deserializeAws_restJson1GetDomainNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExportCommand = async ( @@ -10616,73 +8880,37 @@ const deserializeAws_restJson1GetExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGatewayResponseCommand = async ( @@ -10727,57 +8955,31 @@ const deserializeAws_restJson1GetGatewayResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGatewayResponsesCommand = async ( @@ -10810,57 +9012,31 @@ const deserializeAws_restJson1GetGatewayResponsesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationCommand = async ( @@ -10948,57 +9124,31 @@ const deserializeAws_restJson1GetIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationResponseCommand = async ( @@ -11043,57 +9193,31 @@ const deserializeAws_restJson1GetIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMethodCommand = async ( @@ -11162,49 +9286,28 @@ const deserializeAws_restJson1GetMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMethodResponseCommand = async ( @@ -11241,49 +9344,28 @@ const deserializeAws_restJson1GetMethodResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetModelCommand = async ( @@ -11328,57 +9410,31 @@ const deserializeAws_restJson1GetModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetModelsCommand = async ( @@ -11411,57 +9467,31 @@ const deserializeAws_restJson1GetModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetModelTemplateCommand = async ( @@ -11490,57 +9520,31 @@ const deserializeAws_restJson1GetModelTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRequestValidatorCommand = async ( @@ -11581,57 +9585,31 @@ const deserializeAws_restJson1GetRequestValidatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRequestValidatorsCommand = async ( @@ -11664,57 +9642,31 @@ const deserializeAws_restJson1GetRequestValidatorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceCommand = async ( @@ -11759,49 +9711,28 @@ const deserializeAws_restJson1GetResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcesCommand = async ( @@ -11834,57 +9765,31 @@ const deserializeAws_restJson1GetResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRestApiCommand = async ( @@ -11961,57 +9866,31 @@ const deserializeAws_restJson1GetRestApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRestApisCommand = async ( @@ -12044,57 +9923,31 @@ const deserializeAws_restJson1GetRestApisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSdkCommand = async ( @@ -12129,73 +9982,37 @@ const deserializeAws_restJson1GetSdkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSdkTypeCommand = async ( @@ -12239,57 +10056,31 @@ const deserializeAws_restJson1GetSdkTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSdkTypesCommand = async ( @@ -12318,57 +10109,31 @@ const deserializeAws_restJson1GetSdkTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStageCommand = async ( @@ -12461,73 +10226,37 @@ const deserializeAws_restJson1GetStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStagesCommand = async ( @@ -12556,73 +10285,37 @@ const deserializeAws_restJson1GetStagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTagsCommand = async ( @@ -12651,57 +10344,31 @@ const deserializeAws_restJson1GetTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsageCommand = async ( @@ -12746,57 +10413,31 @@ const deserializeAws_restJson1GetUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsagePlanCommand = async ( @@ -12853,57 +10494,31 @@ const deserializeAws_restJson1GetUsagePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsagePlanKeyCommand = async ( @@ -12944,57 +10559,31 @@ const deserializeAws_restJson1GetUsagePlanKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsagePlanKeysCommand = async ( @@ -13027,57 +10616,31 @@ const deserializeAws_restJson1GetUsagePlanKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsagePlansCommand = async ( @@ -13110,57 +10673,31 @@ const deserializeAws_restJson1GetUsagePlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVpcLinkCommand = async ( @@ -13213,57 +10750,31 @@ const deserializeAws_restJson1GetVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVpcLinksCommand = async ( @@ -13296,57 +10807,31 @@ const deserializeAws_restJson1GetVpcLinksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportApiKeysCommand = async ( @@ -13379,73 +10864,37 @@ const deserializeAws_restJson1ImportApiKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportDocumentationPartsCommand = async ( @@ -13478,73 +10927,37 @@ const deserializeAws_restJson1ImportDocumentationPartsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportRestApiCommand = async ( @@ -13621,73 +11034,37 @@ const deserializeAws_restJson1ImportRestApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutGatewayResponseCommand = async ( @@ -13732,73 +11109,37 @@ const deserializeAws_restJson1PutGatewayResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutIntegrationCommand = async ( @@ -13886,73 +11227,37 @@ const deserializeAws_restJson1PutIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutIntegrationResponseCommand = async ( @@ -13997,73 +11302,37 @@ const deserializeAws_restJson1PutIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutMethodCommand = async ( @@ -14132,73 +11401,37 @@ const deserializeAws_restJson1PutMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutMethodResponseCommand = async ( @@ -14235,73 +11468,37 @@ const deserializeAws_restJson1PutMethodResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRestApiCommand = async ( @@ -14378,73 +11575,37 @@ const deserializeAws_restJson1PutRestApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -14469,73 +11630,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestInvokeAuthorizerCommand = async ( @@ -14588,57 +11713,31 @@ const deserializeAws_restJson1TestInvokeAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestInvokeMethodCommand = async ( @@ -14687,57 +11786,31 @@ const deserializeAws_restJson1TestInvokeMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -14762,73 +11835,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccountCommand = async ( @@ -14869,73 +11906,37 @@ const deserializeAws_restJson1UpdateAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApiKeyCommand = async ( @@ -15000,73 +12001,37 @@ const deserializeAws_restJson1UpdateApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAuthorizerCommand = async ( @@ -15131,73 +12096,37 @@ const deserializeAws_restJson1UpdateAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBasePathMappingCommand = async ( @@ -15234,73 +12163,37 @@ const deserializeAws_restJson1UpdateBasePathMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateClientCertificateCommand = async ( @@ -15349,73 +12242,37 @@ const deserializeAws_restJson1UpdateClientCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeploymentCommand = async ( @@ -15456,81 +12313,40 @@ const deserializeAws_restJson1UpdateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.apigateway#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDocumentationPartCommand = async ( @@ -15567,73 +12383,37 @@ const deserializeAws_restJson1UpdateDocumentationPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDocumentationVersionCommand = async ( @@ -15670,73 +12450,37 @@ const deserializeAws_restJson1UpdateDocumentationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainNameCommand = async ( @@ -15832,73 +12576,37 @@ const deserializeAws_restJson1UpdateDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGatewayResponseCommand = async ( @@ -15943,73 +12651,37 @@ const deserializeAws_restJson1UpdateGatewayResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIntegrationCommand = async ( @@ -16097,73 +12769,37 @@ const deserializeAws_restJson1UpdateIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIntegrationResponseCommand = async ( @@ -16208,73 +12844,37 @@ const deserializeAws_restJson1UpdateIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMethodCommand = async ( @@ -16343,65 +12943,34 @@ const deserializeAws_restJson1UpdateMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMethodResponseCommand = async ( @@ -16438,73 +13007,37 @@ const deserializeAws_restJson1UpdateMethodResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateModelCommand = async ( @@ -16549,73 +13082,37 @@ const deserializeAws_restJson1UpdateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRequestValidatorCommand = async ( @@ -16656,73 +13153,37 @@ const deserializeAws_restJson1UpdateRequestValidatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceCommand = async ( @@ -16767,65 +13228,34 @@ const deserializeAws_restJson1UpdateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRestApiCommand = async ( @@ -16902,73 +13332,37 @@ const deserializeAws_restJson1UpdateRestApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStageCommand = async ( @@ -17061,73 +13455,37 @@ const deserializeAws_restJson1UpdateStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUsageCommand = async ( @@ -17172,73 +13530,37 @@ const deserializeAws_restJson1UpdateUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUsagePlanCommand = async ( @@ -17295,73 +13617,37 @@ const deserializeAws_restJson1UpdateUsagePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVpcLinkCommand = async ( @@ -17414,120 +13700,76 @@ const deserializeAws_restJson1UpdateVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigateway#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigateway#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigateway#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigateway#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigateway#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.apigateway#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -17535,37 +13777,34 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -17573,20 +13812,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -17594,24 +13831,27 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ApiStage = (input: ApiStage, context: __SerdeContext): any => { diff --git a/clients/client-apigatewaymanagementapi/src/index.ts b/clients/client-apigatewaymanagementapi/src/index.ts index 479109b60ed7e..0c7003ed5602c 100644 --- a/clients/client-apigatewaymanagementapi/src/index.ts +++ b/clients/client-apigatewaymanagementapi/src/index.ts @@ -2,3 +2,4 @@ export * from "./ApiGatewayManagementApi"; export * from "./ApiGatewayManagementApiClient"; export * from "./commands"; export * from "./models"; +export { ApiGatewayManagementApiServiceException } from "./models/ApiGatewayManagementApiServiceException"; diff --git a/clients/client-apigatewaymanagementapi/src/models/ApiGatewayManagementApiServiceException.ts b/clients/client-apigatewaymanagementapi/src/models/ApiGatewayManagementApiServiceException.ts new file mode 100644 index 0000000000000..344de908a2119 --- /dev/null +++ b/clients/client-apigatewaymanagementapi/src/models/ApiGatewayManagementApiServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ApiGatewayManagementApi service. + */ +export class ApiGatewayManagementApiServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ApiGatewayManagementApiServiceException.prototype); + } +} diff --git a/clients/client-apigatewaymanagementapi/src/models/models_0.ts b/clients/client-apigatewaymanagementapi/src/models/models_0.ts index 32fd92c00d63b..de07250787d9e 100644 --- a/clients/client-apigatewaymanagementapi/src/models/models_0.ts +++ b/clients/client-apigatewaymanagementapi/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ApiGatewayManagementApiServiceException as __BaseException } from "./ApiGatewayManagementApiServiceException"; export interface DeleteConnectionRequest { ConnectionId: string | undefined; @@ -16,25 +19,58 @@ export namespace DeleteConnectionRequest { /** *

The caller is not authorized to invoke this operation.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + } } /** *

The connection with the provided id no longer exists.

*/ -export interface GoneException extends __SmithyException, $MetadataBearer { - name: "GoneException"; - $fault: "client"; +export class GoneException extends __BaseException { + readonly name: "GoneException" = "GoneException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GoneException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GoneException.prototype); + } } /** *

The client is sending more than the allowed number of requests per unit of time or the WebSocket client side buffer is full.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export interface GetConnectionRequest { @@ -96,10 +132,22 @@ export namespace GetConnectionResponse { /** *

The data has exceeded the maximum size allowed.

*/ -export interface PayloadTooLargeException extends __SmithyException, $MetadataBearer { - name: "PayloadTooLargeException"; - $fault: "client"; +export class PayloadTooLargeException extends __BaseException { + readonly name: "PayloadTooLargeException" = "PayloadTooLargeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PayloadTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PayloadTooLargeException.prototype); + this.Message = opts.Message; + } } export interface PostToConnectionRequest { diff --git a/clients/client-apigatewaymanagementapi/src/protocols/Aws_restJson1.ts b/clients/client-apigatewaymanagementapi/src/protocols/Aws_restJson1.ts index 237ba39c6e08b..e737bdb5fe12c 100644 --- a/clients/client-apigatewaymanagementapi/src/protocols/Aws_restJson1.ts +++ b/clients/client-apigatewaymanagementapi/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -8,15 +9,14 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteConnectionCommandInput, DeleteConnectionCommandOutput } from "../commands/DeleteConnectionCommand"; import { GetConnectionCommandInput, GetConnectionCommandOutput } from "../commands/GetConnectionCommand"; import { PostToConnectionCommandInput, PostToConnectionCommandOutput } from "../commands/PostToConnectionCommand"; +import { ApiGatewayManagementApiServiceException as __BaseException } from "../models/ApiGatewayManagementApiServiceException"; import { ForbiddenException, GoneException, @@ -139,49 +139,28 @@ const deserializeAws_restJson1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.apigatewaymanagementapi#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GoneException": case "com.amazonaws.apigatewaymanagementapi#GoneException": - response = { - ...(await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigatewaymanagementapi#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectionCommand = async ( @@ -218,49 +197,28 @@ const deserializeAws_restJson1GetConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.apigatewaymanagementapi#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GoneException": case "com.amazonaws.apigatewaymanagementapi#GoneException": - response = { - ...(await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigatewaymanagementapi#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PostToConnectionCommand = async ( @@ -285,113 +243,86 @@ const deserializeAws_restJson1PostToConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.apigatewaymanagementapi#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GoneException": case "com.amazonaws.apigatewaymanagementapi#GoneException": - response = { - ...(await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.apigatewaymanagementapi#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.apigatewaymanagementapi#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GoneExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GoneException = { - name: "GoneException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new GoneException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PayloadTooLargeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PayloadTooLargeException = { - name: "PayloadTooLargeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new PayloadTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1Identity = (output: any, context: __SerdeContext): Identity => { diff --git a/clients/client-apigatewayv2/src/index.ts b/clients/client-apigatewayv2/src/index.ts index 253ee42e14fee..e9c4466d91100 100644 --- a/clients/client-apigatewayv2/src/index.ts +++ b/clients/client-apigatewayv2/src/index.ts @@ -2,3 +2,4 @@ export * from "./ApiGatewayV2"; export * from "./ApiGatewayV2Client"; export * from "./commands"; export * from "./models"; +export { ApiGatewayV2ServiceException } from "./models/ApiGatewayV2ServiceException"; diff --git a/clients/client-apigatewayv2/src/models/ApiGatewayV2ServiceException.ts b/clients/client-apigatewayv2/src/models/ApiGatewayV2ServiceException.ts new file mode 100644 index 0000000000000..7a7faf7d9c01b --- /dev/null +++ b/clients/client-apigatewayv2/src/models/ApiGatewayV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ApiGatewayV2 service. + */ +export class ApiGatewayV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ApiGatewayV2ServiceException.prototype); + } +} diff --git a/clients/client-apigatewayv2/src/models/models_0.ts b/clients/client-apigatewayv2/src/models/models_0.ts index 28e716dc42233..7e9a214849a5c 100644 --- a/clients/client-apigatewayv2/src/models/models_0.ts +++ b/clients/client-apigatewayv2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ApiGatewayV2ServiceException as __BaseException } from "./ApiGatewayV2ServiceException"; /** *

Represents a CORS configuration. Supported only for HTTP APIs. See Configuring CORS for more information.

@@ -1086,34 +1089,70 @@ export namespace VpcLink { }); } -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

The request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

Describes the error encountered.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** *

The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request. See the accompanying error message for details.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

Describes the error encountered.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -1289,9 +1328,9 @@ export namespace CreateApiResponse { /** *

The resource specified in the request was not found. See the message field for more information.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

Describes the error encountered.

*/ @@ -1301,14 +1340,27 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The resource type.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

A limit has been exceeded. See the accompanying error message for details.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

The limit type.

*/ @@ -1318,6 +1370,19 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe *

Describes the error encountered.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.LimitType = opts.LimitType; + this.Message = opts.Message; + } } /** diff --git a/clients/client-apigatewayv2/src/protocols/Aws_restJson1.ts b/clients/client-apigatewayv2/src/protocols/Aws_restJson1.ts index 3e5da1d520c0d..9a2751049840c 100644 --- a/clients/client-apigatewayv2/src/protocols/Aws_restJson1.ts +++ b/clients/client-apigatewayv2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateApiCommandInput, CreateApiCommandOutput } from "../commands/CreateApiCommand"; @@ -129,6 +128,7 @@ import { } from "../commands/UpdateRouteResponseCommand"; import { UpdateStageCommandInput, UpdateStageCommandOutput } from "../commands/UpdateStageCommand"; import { UpdateVpcLinkCommandInput, UpdateVpcLinkCommandOutput } from "../commands/UpdateVpcLinkCommand"; +import { ApiGatewayV2ServiceException as __BaseException } from "../models/ApiGatewayV2ServiceException"; import { AccessDeniedException, AccessLogSettings, @@ -3246,57 +3246,31 @@ const deserializeAws_restJson1CreateApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateApiMappingCommand = async ( @@ -3337,57 +3311,31 @@ const deserializeAws_restJson1CreateApiMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAuthorizerCommand = async ( @@ -3456,57 +3404,31 @@ const deserializeAws_restJson1CreateAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentCommand = async ( @@ -3555,57 +3477,31 @@ const deserializeAws_restJson1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainNameCommand = async ( @@ -3656,65 +3552,34 @@ const deserializeAws_restJson1CreateDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.apigatewayv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIntegrationCommand = async ( @@ -3822,57 +3687,31 @@ const deserializeAws_restJson1CreateIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIntegrationResponseCommand = async ( @@ -3921,57 +3760,31 @@ const deserializeAws_restJson1CreateIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateModelCommand = async ( @@ -4016,57 +3829,31 @@ const deserializeAws_restJson1CreateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRouteCommand = async ( @@ -4143,57 +3930,31 @@ const deserializeAws_restJson1CreateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRouteResponseCommand = async ( @@ -4238,57 +3999,31 @@ const deserializeAws_restJson1CreateRouteResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStageCommand = async ( @@ -4369,57 +4104,31 @@ const deserializeAws_restJson1CreateStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVpcLinkCommand = async ( @@ -4480,41 +4189,25 @@ const deserializeAws_restJson1CreateVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAccessLogSettingsCommand = async ( @@ -4539,41 +4232,25 @@ const deserializeAws_restJson1DeleteAccessLogSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApiCommand = async ( @@ -4598,41 +4275,25 @@ const deserializeAws_restJson1DeleteApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApiMappingCommand = async ( @@ -4657,49 +4318,28 @@ const deserializeAws_restJson1DeleteApiMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAuthorizerCommand = async ( @@ -4724,41 +4364,25 @@ const deserializeAws_restJson1DeleteAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCorsConfigurationCommand = async ( @@ -4783,41 +4407,25 @@ const deserializeAws_restJson1DeleteCorsConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeploymentCommand = async ( @@ -4842,41 +4450,25 @@ const deserializeAws_restJson1DeleteDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainNameCommand = async ( @@ -4901,41 +4493,25 @@ const deserializeAws_restJson1DeleteDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntegrationCommand = async ( @@ -4960,41 +4536,25 @@ const deserializeAws_restJson1DeleteIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntegrationResponseCommand = async ( @@ -5019,41 +4579,25 @@ const deserializeAws_restJson1DeleteIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteModelCommand = async ( @@ -5078,41 +4622,25 @@ const deserializeAws_restJson1DeleteModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteCommand = async ( @@ -5137,41 +4665,25 @@ const deserializeAws_restJson1DeleteRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteRequestParameterCommand = async ( @@ -5196,41 +4708,25 @@ const deserializeAws_restJson1DeleteRouteRequestParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteResponseCommand = async ( @@ -5255,41 +4751,25 @@ const deserializeAws_restJson1DeleteRouteResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteSettingsCommand = async ( @@ -5314,41 +4794,25 @@ const deserializeAws_restJson1DeleteRouteSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStageCommand = async ( @@ -5373,41 +4837,25 @@ const deserializeAws_restJson1DeleteStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVpcLinkCommand = async ( @@ -5432,41 +4880,25 @@ const deserializeAws_restJson1DeleteVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportApiCommand = async ( @@ -5493,49 +4925,28 @@ const deserializeAws_restJson1ExportApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiCommand = async ( @@ -5624,41 +5035,25 @@ const deserializeAws_restJson1GetApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiMappingCommand = async ( @@ -5699,49 +5094,28 @@ const deserializeAws_restJson1GetApiMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiMappingsCommand = async ( @@ -5774,49 +5148,28 @@ const deserializeAws_restJson1GetApiMappingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApisCommand = async ( @@ -5849,49 +5202,28 @@ const deserializeAws_restJson1GetApisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAuthorizerCommand = async ( @@ -5960,41 +5292,25 @@ const deserializeAws_restJson1GetAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAuthorizersCommand = async ( @@ -6027,49 +5343,28 @@ const deserializeAws_restJson1GetAuthorizersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentCommand = async ( @@ -6118,41 +5413,25 @@ const deserializeAws_restJson1GetDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentsCommand = async ( @@ -6185,49 +5464,28 @@ const deserializeAws_restJson1GetDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainNameCommand = async ( @@ -6278,41 +5536,25 @@ const deserializeAws_restJson1GetDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainNamesCommand = async ( @@ -6345,49 +5587,28 @@ const deserializeAws_restJson1GetDomainNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationCommand = async ( @@ -6495,41 +5716,25 @@ const deserializeAws_restJson1GetIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationResponseCommand = async ( @@ -6578,41 +5783,25 @@ const deserializeAws_restJson1GetIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationResponsesCommand = async ( @@ -6645,49 +5834,28 @@ const deserializeAws_restJson1GetIntegrationResponsesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationsCommand = async ( @@ -6720,49 +5888,28 @@ const deserializeAws_restJson1GetIntegrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetModelCommand = async ( @@ -6807,41 +5954,25 @@ const deserializeAws_restJson1GetModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetModelsCommand = async ( @@ -6874,49 +6005,28 @@ const deserializeAws_restJson1GetModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetModelTemplateCommand = async ( @@ -6945,41 +6055,25 @@ const deserializeAws_restJson1GetModelTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRouteCommand = async ( @@ -7056,41 +6150,25 @@ const deserializeAws_restJson1GetRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRouteResponseCommand = async ( @@ -7135,41 +6213,25 @@ const deserializeAws_restJson1GetRouteResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRouteResponsesCommand = async ( @@ -7202,49 +6264,28 @@ const deserializeAws_restJson1GetRouteResponsesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRoutesCommand = async ( @@ -7277,49 +6318,28 @@ const deserializeAws_restJson1GetRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStageCommand = async ( @@ -7400,41 +6420,25 @@ const deserializeAws_restJson1GetStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStagesCommand = async ( @@ -7467,49 +6471,28 @@ const deserializeAws_restJson1GetStagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTagsCommand = async ( @@ -7538,57 +6521,31 @@ const deserializeAws_restJson1GetTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVpcLinkCommand = async ( @@ -7649,41 +6606,25 @@ const deserializeAws_restJson1GetVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVpcLinksCommand = async ( @@ -7716,41 +6657,25 @@ const deserializeAws_restJson1GetVpcLinksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportApiCommand = async ( @@ -7839,57 +6764,31 @@ const deserializeAws_restJson1ImportApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ReimportApiCommand = async ( @@ -7978,57 +6877,31 @@ const deserializeAws_restJson1ReimportApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResetAuthorizersCacheCommand = async ( @@ -8053,41 +6926,25 @@ const deserializeAws_restJson1ResetAuthorizersCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -8112,57 +6969,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -8187,57 +7018,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApiCommand = async ( @@ -8326,57 +7131,31 @@ const deserializeAws_restJson1UpdateApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApiMappingCommand = async ( @@ -8417,57 +7196,31 @@ const deserializeAws_restJson1UpdateApiMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAuthorizerCommand = async ( @@ -8536,57 +7289,31 @@ const deserializeAws_restJson1UpdateAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeploymentCommand = async ( @@ -8635,57 +7362,31 @@ const deserializeAws_restJson1UpdateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainNameCommand = async ( @@ -8736,57 +7437,31 @@ const deserializeAws_restJson1UpdateDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIntegrationCommand = async ( @@ -8894,57 +7569,31 @@ const deserializeAws_restJson1UpdateIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIntegrationResponseCommand = async ( @@ -8993,57 +7642,31 @@ const deserializeAws_restJson1UpdateIntegrationResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateModelCommand = async ( @@ -9088,57 +7711,31 @@ const deserializeAws_restJson1UpdateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRouteCommand = async ( @@ -9215,57 +7812,31 @@ const deserializeAws_restJson1UpdateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRouteResponseCommand = async ( @@ -9310,57 +7881,31 @@ const deserializeAws_restJson1UpdateRouteResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStageCommand = async ( @@ -9441,57 +7986,31 @@ const deserializeAws_restJson1UpdateStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.apigatewayv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVpcLinkCommand = async ( @@ -9552,113 +8071,83 @@ const deserializeAws_restJson1UpdateVpcLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.apigatewayv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.apigatewayv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.apigatewayv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); @@ -9666,20 +8155,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.ResourceType = __expectString(data.resourceType); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - LimitType: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.limitType !== undefined && data.limitType !== null) { contents.LimitType = __expectString(data.limitType); @@ -9687,7 +8174,11 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-app-mesh/src/index.ts b/clients/client-app-mesh/src/index.ts index fd748ba8f1b13..65215bcd0a277 100644 --- a/clients/client-app-mesh/src/index.ts +++ b/clients/client-app-mesh/src/index.ts @@ -3,3 +3,4 @@ export * from "./AppMeshClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AppMeshServiceException } from "./models/AppMeshServiceException"; diff --git a/clients/client-app-mesh/src/models/AppMeshServiceException.ts b/clients/client-app-mesh/src/models/AppMeshServiceException.ts new file mode 100644 index 0000000000000..c0767a31d2c3e --- /dev/null +++ b/clients/client-app-mesh/src/models/AppMeshServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppMesh service. + */ +export class AppMeshServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppMeshServiceException.prototype); + } +} diff --git a/clients/client-app-mesh/src/models/models_0.ts b/clients/client-app-mesh/src/models/models_0.ts index 1bb02bdb6a6c1..fd8c5810f3c60 100644 --- a/clients/client-app-mesh/src/models/models_0.ts +++ b/clients/client-app-mesh/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppMeshServiceException as __BaseException } from "./AppMeshServiceException"; /** *

An object that represents an access log file.

@@ -68,30 +71,60 @@ export namespace AccessLog { /** *

The request syntax was malformed. Check your request syntax and try again.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** *

You don't have permissions to perform this action.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; - message?: string; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + } } /** *

The request processing has failed because of an unknown error, exception, or * failure.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; - $retryable: {}; - message?: string; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + } } /** @@ -192,20 +225,40 @@ export namespace ListTagsForResourceOutput { /** *

The specified resource doesn't exist. Check your request syntax and try again.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** *

The request has failed due to a temporary failure of the service.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - $retryable: {}; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** @@ -213,23 +266,43 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat * account. For best results, use an increasing or variable sleep interval between * requests.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - $retryable: { - throttling: true; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** *

The request contains a client token that was used for a previous update resource call * with different specifications. Try the request again with a new client token.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export enum EgressFilterType { @@ -450,10 +523,20 @@ export namespace CreateMeshOutput { *

You have exceeded a service limit for your account. For more information, see Service * Limits in the AWS App Mesh User Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** @@ -498,10 +581,20 @@ export namespace DeleteMeshOutput { *

You can't delete the specified resource because it's in use or required by another * resource.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** @@ -7256,10 +7349,20 @@ export namespace TagResourceOutput { * limit is 50 user tags per resource. You must reduce the number of tags in the request. None * of the tags in this request were applied.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** diff --git a/clients/client-app-mesh/src/protocols/Aws_restJson1.ts b/clients/client-app-mesh/src/protocols/Aws_restJson1.ts index c050133c6b028..4357c4e824dbe 100644 --- a/clients/client-app-mesh/src/protocols/Aws_restJson1.ts +++ b/clients/client-app-mesh/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -109,6 +108,7 @@ import { UpdateVirtualServiceCommandInput, UpdateVirtualServiceCommandOutput, } from "../commands/UpdateVirtualServiceCommand"; +import { AppMeshServiceException as __BaseException } from "../models/AppMeshServiceException"; import { AccessLog, AwsCloudMapInstanceAttribute, @@ -1909,89 +1909,43 @@ const deserializeAws_restJson1CreateGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMeshCommand = async ( @@ -2018,89 +1972,43 @@ const deserializeAws_restJson1CreateMeshCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRouteCommand = async ( @@ -2127,89 +2035,43 @@ const deserializeAws_restJson1CreateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVirtualGatewayCommand = async ( @@ -2236,89 +2098,43 @@ const deserializeAws_restJson1CreateVirtualGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVirtualNodeCommand = async ( @@ -2345,89 +2161,43 @@ const deserializeAws_restJson1CreateVirtualNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVirtualRouterCommand = async ( @@ -2454,89 +2224,43 @@ const deserializeAws_restJson1CreateVirtualRouterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVirtualServiceCommand = async ( @@ -2563,89 +2287,43 @@ const deserializeAws_restJson1CreateVirtualServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGatewayRouteCommand = async ( @@ -2672,81 +2350,40 @@ const deserializeAws_restJson1DeleteGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMeshCommand = async ( @@ -2773,81 +2410,40 @@ const deserializeAws_restJson1DeleteMeshCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteCommand = async ( @@ -2874,81 +2470,40 @@ const deserializeAws_restJson1DeleteRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVirtualGatewayCommand = async ( @@ -2975,81 +2530,40 @@ const deserializeAws_restJson1DeleteVirtualGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVirtualNodeCommand = async ( @@ -3076,81 +2590,40 @@ const deserializeAws_restJson1DeleteVirtualNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVirtualRouterCommand = async ( @@ -3177,81 +2650,40 @@ const deserializeAws_restJson1DeleteVirtualRouterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVirtualServiceCommand = async ( @@ -3278,81 +2710,40 @@ const deserializeAws_restJson1DeleteVirtualServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appmesh#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGatewayRouteCommand = async ( @@ -3379,73 +2770,37 @@ const deserializeAws_restJson1DescribeGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMeshCommand = async ( @@ -3472,73 +2827,37 @@ const deserializeAws_restJson1DescribeMeshCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRouteCommand = async ( @@ -3565,73 +2884,37 @@ const deserializeAws_restJson1DescribeRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVirtualGatewayCommand = async ( @@ -3658,73 +2941,37 @@ const deserializeAws_restJson1DescribeVirtualGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVirtualNodeCommand = async ( @@ -3751,73 +2998,37 @@ const deserializeAws_restJson1DescribeVirtualNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVirtualRouterCommand = async ( @@ -3844,73 +3055,37 @@ const deserializeAws_restJson1DescribeVirtualRouterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVirtualServiceCommand = async ( @@ -3937,73 +3112,37 @@ const deserializeAws_restJson1DescribeVirtualServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGatewayRoutesCommand = async ( @@ -4036,73 +3175,37 @@ const deserializeAws_restJson1ListGatewayRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMeshesCommand = async ( @@ -4135,73 +3238,37 @@ const deserializeAws_restJson1ListMeshesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoutesCommand = async ( @@ -4234,73 +3301,37 @@ const deserializeAws_restJson1ListRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -4333,73 +3364,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVirtualGatewaysCommand = async ( @@ -4432,73 +3427,37 @@ const deserializeAws_restJson1ListVirtualGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVirtualNodesCommand = async ( @@ -4531,73 +3490,37 @@ const deserializeAws_restJson1ListVirtualNodesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVirtualRoutersCommand = async ( @@ -4630,73 +3553,37 @@ const deserializeAws_restJson1ListVirtualRoutersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVirtualServicesCommand = async ( @@ -4729,73 +3616,37 @@ const deserializeAws_restJson1ListVirtualServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4820,81 +3671,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.appmesh#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4919,73 +3729,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGatewayRouteCommand = async ( @@ -5012,89 +3786,43 @@ const deserializeAws_restJson1UpdateGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMeshCommand = async ( @@ -5121,81 +3849,40 @@ const deserializeAws_restJson1UpdateMeshCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRouteCommand = async ( @@ -5222,89 +3909,43 @@ const deserializeAws_restJson1UpdateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVirtualGatewayCommand = async ( @@ -5331,89 +3972,43 @@ const deserializeAws_restJson1UpdateVirtualGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVirtualNodeCommand = async ( @@ -5440,89 +4035,43 @@ const deserializeAws_restJson1UpdateVirtualNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVirtualRouterCommand = async ( @@ -5549,89 +4098,43 @@ const deserializeAws_restJson1UpdateVirtualRouterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVirtualServiceCommand = async ( @@ -5658,264 +4161,203 @@ const deserializeAws_restJson1UpdateVirtualServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appmesh#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appmesh#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.appmesh#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.appmesh#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appmesh#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appmesh#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.appmesh#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.appmesh#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $retryable: { - throttling: true, - }, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccessLog = (input: AccessLog, context: __SerdeContext): any => { diff --git a/clients/client-appconfig/src/index.ts b/clients/client-appconfig/src/index.ts index 5691150968eb0..26762f9389a81 100644 --- a/clients/client-appconfig/src/index.ts +++ b/clients/client-appconfig/src/index.ts @@ -3,3 +3,4 @@ export * from "./AppConfigClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AppConfigServiceException } from "./models/AppConfigServiceException"; diff --git a/clients/client-appconfig/src/models/AppConfigServiceException.ts b/clients/client-appconfig/src/models/AppConfigServiceException.ts new file mode 100644 index 0000000000000..ce71d9edcd600 --- /dev/null +++ b/clients/client-appconfig/src/models/AppConfigServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppConfig service. + */ +export class AppConfigServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppConfigServiceException.prototype); + } +} diff --git a/clients/client-appconfig/src/models/models_0.ts b/clients/client-appconfig/src/models/models_0.ts index db2a81f818872..40c83f9f6b430 100644 --- a/clients/client-appconfig/src/models/models_0.ts +++ b/clients/client-appconfig/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppConfigServiceException as __BaseException } from "./AppConfigServiceException"; export interface Application { /** @@ -116,9 +118,9 @@ export enum BadRequestReason { /** *

The input fails to satisfy the constraints specified by an Amazon Web Services service.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; Reason?: BadRequestReason | string; /** @@ -126,6 +128,20 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer * a call.

*/ Details?: BadRequestDetails; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Details = opts.Details; + } } export interface CreateApplicationRequest { @@ -159,10 +175,22 @@ export namespace CreateApplicationRequest { /** *

There was an internal failure in the AppConfig service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } export enum ValidatorType { @@ -348,11 +376,24 @@ export namespace CreateConfigurationProfileRequest { /** *

The requested resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export enum GrowthType { @@ -619,10 +660,22 @@ export namespace Environment { *

The request could not be processed because of conflict in the current state of the * resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export interface CreateHostedConfigurationVersionRequest { @@ -721,23 +774,50 @@ export enum BytesMeasure { /** *

The configuration size is too large.

*/ -export interface PayloadTooLargeException extends __SmithyException, $MetadataBearer { - name: "PayloadTooLargeException"; - $fault: "client"; +export class PayloadTooLargeException extends __BaseException { + readonly name: "PayloadTooLargeException" = "PayloadTooLargeException"; + readonly $fault: "client" = "client"; Message?: string; Measure?: BytesMeasure | string; Limit?: number; Size?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PayloadTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PayloadTooLargeException.prototype); + this.Message = opts.Message; + this.Measure = opts.Measure; + this.Limit = opts.Limit; + this.Size = opts.Size; + } } /** *

The number of hosted configuration versions exceeds the limit for the AppConfig hosted * configuration store. Delete one or more versions and try again.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export interface DeleteApplicationRequest { diff --git a/clients/client-appconfig/src/protocols/Aws_restJson1.ts b/clients/client-appconfig/src/protocols/Aws_restJson1.ts index 22150380e4372..02a530c2f2502 100644 --- a/clients/client-appconfig/src/protocols/Aws_restJson1.ts +++ b/clients/client-appconfig/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "../commands/CreateApplicationCommand"; @@ -100,6 +99,7 @@ import { ValidateConfigurationCommandInput, ValidateConfigurationCommandOutput, } from "../commands/ValidateConfigurationCommand"; +import { AppConfigServiceException as __BaseException } from "../models/AppConfigServiceException"; import { Application, BadRequestDetails, @@ -1434,41 +1434,25 @@ const deserializeAws_restJson1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigurationProfileCommand = async ( @@ -1525,49 +1509,28 @@ const deserializeAws_restJson1CreateConfigurationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentStrategyCommand = async ( @@ -1624,41 +1587,25 @@ const deserializeAws_restJson1CreateDeploymentStrategyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEnvironmentCommand = async ( @@ -1707,49 +1654,28 @@ const deserializeAws_restJson1CreateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateHostedConfigurationVersionCommand = async ( @@ -1796,73 +1722,37 @@ const deserializeAws_restJson1CreateHostedConfigurationVersionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.appconfig#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.appconfig#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApplicationCommand = async ( @@ -1887,49 +1777,28 @@ const deserializeAws_restJson1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationProfileCommand = async ( @@ -1954,57 +1823,31 @@ const deserializeAws_restJson1DeleteConfigurationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeploymentStrategyCommand = async ( @@ -2029,49 +1872,28 @@ const deserializeAws_restJson1DeleteDeploymentStrategyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEnvironmentCommand = async ( @@ -2096,57 +1918,31 @@ const deserializeAws_restJson1DeleteEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteHostedConfigurationVersionCommand = async ( @@ -2171,49 +1967,28 @@ const deserializeAws_restJson1DeleteHostedConfigurationVersionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationCommand = async ( @@ -2250,49 +2025,28 @@ const deserializeAws_restJson1GetApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationCommand = async ( @@ -2327,49 +2081,28 @@ const deserializeAws_restJson1GetConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationProfileCommand = async ( @@ -2426,49 +2159,28 @@ const deserializeAws_restJson1GetConfigurationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentCommand = async ( @@ -2565,49 +2277,28 @@ const deserializeAws_restJson1GetDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentStrategyCommand = async ( @@ -2664,49 +2355,28 @@ const deserializeAws_restJson1GetDeploymentStrategyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEnvironmentCommand = async ( @@ -2755,49 +2425,28 @@ const deserializeAws_restJson1GetEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetHostedConfigurationVersionCommand = async ( @@ -2844,49 +2493,28 @@ const deserializeAws_restJson1GetHostedConfigurationVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationsCommand = async ( @@ -2919,41 +2547,25 @@ const deserializeAws_restJson1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationProfilesCommand = async ( @@ -2986,49 +2598,28 @@ const deserializeAws_restJson1ListConfigurationProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeploymentsCommand = async ( @@ -3061,49 +2652,28 @@ const deserializeAws_restJson1ListDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeploymentStrategiesCommand = async ( @@ -3136,41 +2706,25 @@ const deserializeAws_restJson1ListDeploymentStrategiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEnvironmentsCommand = async ( @@ -3203,49 +2757,28 @@ const deserializeAws_restJson1ListEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListHostedConfigurationVersionsCommand = async ( @@ -3278,49 +2811,28 @@ const deserializeAws_restJson1ListHostedConfigurationVersionsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3349,49 +2861,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartDeploymentCommand = async ( @@ -3488,57 +2979,31 @@ const deserializeAws_restJson1StartDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopDeploymentCommand = async ( @@ -3635,49 +3100,28 @@ const deserializeAws_restJson1StopDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3702,49 +3146,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3769,49 +3192,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApplicationCommand = async ( @@ -3848,49 +3250,28 @@ const deserializeAws_restJson1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigurationProfileCommand = async ( @@ -3947,49 +3328,28 @@ const deserializeAws_restJson1UpdateConfigurationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeploymentStrategyCommand = async ( @@ -4046,49 +3406,28 @@ const deserializeAws_restJson1UpdateDeploymentStrategyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEnvironmentCommand = async ( @@ -4137,49 +3476,28 @@ const deserializeAws_restJson1UpdateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ValidateConfigurationCommand = async ( @@ -4204,63 +3522,35 @@ const deserializeAws_restJson1ValidateConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfig#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Details: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Details !== undefined && data.Details !== null) { contents.Details = deserializeAws_restJson1BadRequestDetails(__expectUnion(data.Details), context); @@ -4271,56 +3561,50 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PayloadTooLargeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PayloadTooLargeException = { - name: "PayloadTooLargeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Limit: undefined, - Measure: undefined, - Message: undefined, - Size: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Limit !== undefined && data.Limit !== null) { contents.Limit = __limitedParseFloat32(data.Limit); @@ -4334,20 +3618,18 @@ const deserializeAws_restJson1PayloadTooLargeExceptionResponse = async ( if (data.Size !== undefined && data.Size !== null) { contents.Size = __limitedParseFloat32(data.Size); } - return contents; + const exception = new PayloadTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -4355,24 +3637,27 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceName !== undefined && data.ResourceName !== null) { contents.ResourceName = __expectString(data.ResourceName); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Monitor = (input: Monitor, context: __SerdeContext): any => { diff --git a/clients/client-appconfigdata/src/index.ts b/clients/client-appconfigdata/src/index.ts index abd33080caf0e..b03d3d63c83fd 100644 --- a/clients/client-appconfigdata/src/index.ts +++ b/clients/client-appconfigdata/src/index.ts @@ -2,3 +2,4 @@ export * from "./AppConfigData"; export * from "./AppConfigDataClient"; export * from "./commands"; export * from "./models"; +export { AppConfigDataServiceException } from "./models/AppConfigDataServiceException"; diff --git a/clients/client-appconfigdata/src/models/AppConfigDataServiceException.ts b/clients/client-appconfigdata/src/models/AppConfigDataServiceException.ts new file mode 100644 index 0000000000000..e08e7163244cd --- /dev/null +++ b/clients/client-appconfigdata/src/models/AppConfigDataServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppConfigData service. + */ +export class AppConfigDataServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppConfigDataServiceException.prototype); + } +} diff --git a/clients/client-appconfigdata/src/models/models_0.ts b/clients/client-appconfigdata/src/models/models_0.ts index dfc7a929a2b7d..25cc2ea8c6df8 100644 --- a/clients/client-appconfigdata/src/models/models_0.ts +++ b/clients/client-appconfigdata/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppConfigDataServiceException as __BaseException } from "./AppConfigDataServiceException"; export enum InvalidParameterProblem { /** @@ -94,9 +96,9 @@ export enum BadRequestReason { /** *

The input fails to satisfy the constraints specified by the service.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; /** *

Code indicating the reason the request was invalid.

@@ -107,15 +109,41 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

Details describing why the request was invalid.

*/ Details?: BadRequestDetails; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Details = opts.Details; + } } /** *

There was an internal failure in the service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } export enum ResourceType { @@ -144,9 +172,9 @@ export enum ResourceType { /** *

The requested resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource that was not found.

@@ -157,6 +185,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

A map indicating which parameters in the request reference the resource that was not found.

*/ ReferencedBy?: { [key: string]: string }; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ReferencedBy = opts.ReferencedBy; + } } export interface StartConfigurationSessionRequest { @@ -219,10 +261,22 @@ export namespace StartConfigurationSessionResponse { /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } export interface GetLatestConfigurationRequest { diff --git a/clients/client-appconfigdata/src/protocols/Aws_restJson1.ts b/clients/client-appconfigdata/src/protocols/Aws_restJson1.ts index 2cdc776ea99e0..a9de4a0d044d4 100644 --- a/clients/client-appconfigdata/src/protocols/Aws_restJson1.ts +++ b/clients/client-appconfigdata/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -23,6 +22,7 @@ import { StartConfigurationSessionCommandInput, StartConfigurationSessionCommandOutput, } from "../commands/StartConfigurationSessionCommand"; +import { AppConfigDataServiceException as __BaseException } from "../models/AppConfigDataServiceException"; import { BadRequestDetails, BadRequestException, @@ -126,57 +126,31 @@ const deserializeAws_restJson1GetLatestConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfigdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfigdata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfigdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appconfigdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartConfigurationSessionCommand = async ( @@ -205,71 +179,38 @@ const deserializeAws_restJson1StartConfigurationSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appconfigdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appconfigdata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appconfigdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appconfigdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Details: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Details !== undefined && data.Details !== null) { contents.Details = deserializeAws_restJson1BadRequestDetails(__expectUnion(data.Details), context); @@ -280,38 +221,34 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ReferencedBy: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -322,24 +259,27 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestDetails = (output: any, context: __SerdeContext): BadRequestDetails => { diff --git a/clients/client-appflow/src/index.ts b/clients/client-appflow/src/index.ts index 78eba0a345ec5..36646d19b138e 100644 --- a/clients/client-appflow/src/index.ts +++ b/clients/client-appflow/src/index.ts @@ -3,3 +3,4 @@ export * from "./AppflowClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AppflowServiceException } from "./models/AppflowServiceException"; diff --git a/clients/client-appflow/src/models/AppflowServiceException.ts b/clients/client-appflow/src/models/AppflowServiceException.ts new file mode 100644 index 0000000000000..f2951d8684389 --- /dev/null +++ b/clients/client-appflow/src/models/AppflowServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Appflow service. + */ +export class AppflowServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppflowServiceException.prototype); + } +} diff --git a/clients/client-appflow/src/models/models_0.ts b/clients/client-appflow/src/models/models_0.ts index 739d939f77722..8a2d3bf01542c 100644 --- a/clients/client-appflow/src/models/models_0.ts +++ b/clients/client-appflow/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppflowServiceException as __BaseException } from "./AppflowServiceException"; /** *

AppFlow/Requester has invalid or missing permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AggregationType { @@ -328,10 +340,20 @@ export namespace BasicAuthCredentials { *

There was a conflict when processing the request (for example, a flow with the given name * already exists within the account. Check for conflicting resource names and try again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export enum ConnectionMode { @@ -342,10 +364,20 @@ export enum ConnectionMode { /** *

An error occurred when authenticating with the connector endpoint.

*/ -export interface ConnectorAuthenticationException extends __SmithyException, $MetadataBearer { - name: "ConnectorAuthenticationException"; - $fault: "client"; - message?: string; +export class ConnectorAuthenticationException extends __BaseException { + readonly name: "ConnectorAuthenticationException" = "ConnectorAuthenticationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConnectorAuthenticationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConnectorAuthenticationException.prototype); + } } /** @@ -3313,10 +3345,20 @@ export namespace ConnectorProfileConfig { /** *

An error occurred when retrieving data from the connector endpoint.

*/ -export interface ConnectorServerException extends __SmithyException, $MetadataBearer { - name: "ConnectorServerException"; - $fault: "client"; - message?: string; +export class ConnectorServerException extends __BaseException { + readonly name: "ConnectorServerException" = "ConnectorServerException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConnectorServerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConnectorServerException.prototype); + } } export interface CreateConnectorProfileRequest { @@ -3388,29 +3430,59 @@ export namespace CreateConnectorProfileResponse { *

An internal service error occurred during the processing of your request. Try again * later.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The request would cause a service quota (such as the number of flows) to be exceeded. *

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The request has invalid or missing parameters.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -4814,10 +4886,20 @@ export namespace CreateFlowResponse { *

The resource specified in the request (such as the source or destination connector * profile) is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DeleteConnectorProfileRequest { @@ -5726,10 +5808,20 @@ export namespace RegisterConnectorResponse { *

API calls have exceeded the maximum allowed API request rate per account and per Region. *

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export interface StartFlowRequest { @@ -5817,10 +5909,20 @@ export namespace StopFlowResponse { /** *

The requested operation is not supported for the current flow.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; - message?: string; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + } } export interface TagResourceRequest { diff --git a/clients/client-appflow/src/protocols/Aws_restJson1.ts b/clients/client-appflow/src/protocols/Aws_restJson1.ts index ffa8eea56bdd3..ccbc72ecb53c9 100644 --- a/clients/client-appflow/src/protocols/Aws_restJson1.ts +++ b/clients/client-appflow/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -68,6 +67,7 @@ import { UpdateConnectorProfileCommandOutput, } from "../commands/UpdateConnectorProfileCommand"; import { UpdateFlowCommandInput, UpdateFlowCommandOutput } from "../commands/UpdateFlowCommand"; +import { AppflowServiceException as __BaseException } from "../models/AppflowServiceException"; import { AccessDeniedException, AggregationConfig, @@ -906,65 +906,34 @@ const deserializeAws_restJson1CreateConnectorProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.appflow#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFlowCommand = async ( @@ -997,81 +966,40 @@ const deserializeAws_restJson1CreateFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "ConnectorServerException": case "com.amazonaws.appflow#ConnectorServerException": - response = { - ...(await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.appflow#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConnectorProfileCommand = async ( @@ -1096,49 +1024,28 @@ const deserializeAws_restJson1DeleteConnectorProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFlowCommand = async ( @@ -1163,49 +1070,28 @@ const deserializeAws_restJson1DeleteFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConnectorCommand = async ( @@ -1237,49 +1123,28 @@ const deserializeAws_restJson1DescribeConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConnectorEntityCommand = async ( @@ -1311,65 +1176,34 @@ const deserializeAws_restJson1DescribeConnectorEntityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "ConnectorServerException": case "com.amazonaws.appflow#ConnectorServerException": - response = { - ...(await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConnectorProfilesCommand = async ( @@ -1405,41 +1239,25 @@ const deserializeAws_restJson1DescribeConnectorProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConnectorsCommand = async ( @@ -1479,41 +1297,25 @@ const deserializeAws_restJson1DescribeConnectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFlowCommand = async ( @@ -1605,41 +1407,25 @@ const deserializeAws_restJson1DescribeFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFlowExecutionRecordsCommand = async ( @@ -1672,49 +1458,28 @@ const deserializeAws_restJson1DescribeFlowExecutionRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConnectorEntitiesCommand = async ( @@ -1743,65 +1508,34 @@ const deserializeAws_restJson1ListConnectorEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "ConnectorServerException": case "com.amazonaws.appflow#ConnectorServerException": - response = { - ...(await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConnectorsCommand = async ( @@ -1834,41 +1568,25 @@ const deserializeAws_restJson1ListConnectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFlowsCommand = async ( @@ -1901,41 +1619,25 @@ const deserializeAws_restJson1ListFlowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1964,49 +1666,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterConnectorCommand = async ( @@ -2035,97 +1716,46 @@ const deserializeAws_restJson1RegisterConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appflow#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "ConnectorServerException": case "com.amazonaws.appflow#ConnectorServerException": - response = { - ...(await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.appflow#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appflow#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartFlowCommand = async ( @@ -2162,57 +1792,31 @@ const deserializeAws_restJson1StartFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.appflow#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopFlowCommand = async ( @@ -2245,57 +1849,31 @@ const deserializeAws_restJson1StopFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.appflow#UnsupportedOperationException": - response = { - ...(await deserializeAws_restJson1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2320,49 +1898,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnregisterConnectorCommand = async ( @@ -2387,49 +1944,28 @@ const deserializeAws_restJson1UnregisterConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2454,49 +1990,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectorProfileCommand = async ( @@ -2525,65 +2040,34 @@ const deserializeAws_restJson1UpdateConnectorProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFlowCommand = async ( @@ -2612,251 +2096,200 @@ const deserializeAws_restJson1UpdateFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.appflow#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ConnectorAuthenticationException": case "com.amazonaws.appflow#ConnectorAuthenticationException": - response = { - ...(await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorAuthenticationExceptionResponse(parsedOutput, context); case "ConnectorServerException": case "com.amazonaws.appflow#ConnectorServerException": - response = { - ...(await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorServerExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.appflow#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.appflow#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.appflow#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConnectorAuthenticationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConnectorAuthenticationException = { - name: "ConnectorAuthenticationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConnectorAuthenticationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConnectorServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConnectorServerException = { - name: "ConnectorServerException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConnectorServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AggregationConfig = (input: AggregationConfig, context: __SerdeContext): any => { diff --git a/clients/client-appintegrations/src/index.ts b/clients/client-appintegrations/src/index.ts index 66719bda1c5bf..a3db07698190f 100644 --- a/clients/client-appintegrations/src/index.ts +++ b/clients/client-appintegrations/src/index.ts @@ -2,3 +2,4 @@ export * from "./AppIntegrations"; export * from "./AppIntegrationsClient"; export * from "./commands"; export * from "./models"; +export { AppIntegrationsServiceException } from "./models/AppIntegrationsServiceException"; diff --git a/clients/client-appintegrations/src/models/AppIntegrationsServiceException.ts b/clients/client-appintegrations/src/models/AppIntegrationsServiceException.ts new file mode 100644 index 0000000000000..a5a47cb88bc52 --- /dev/null +++ b/clients/client-appintegrations/src/models/AppIntegrationsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppIntegrations service. + */ +export class AppIntegrationsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppIntegrationsServiceException.prototype); + } +} diff --git a/clients/client-appintegrations/src/models/models_0.ts b/clients/client-appintegrations/src/models/models_0.ts index 78a6e8f2a7b0e..98de90138e9cd 100644 --- a/clients/client-appintegrations/src/models/models_0.ts +++ b/clients/client-appintegrations/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppIntegrationsServiceException as __BaseException } from "./AppIntegrationsServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -145,46 +160,106 @@ export namespace CreateDataIntegrationResponse { /** *

A resource with the specified name already exists.

*/ -export interface DuplicateResourceException extends __SmithyException, $MetadataBearer { - name: "DuplicateResourceException"; - $fault: "client"; +export class DuplicateResourceException extends __BaseException { + readonly name: "DuplicateResourceException" = "DuplicateResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateResourceException.prototype); + this.Message = opts.Message; + } } /** *

Request processing failed due to an error or failure with the service.

*/ -export interface InternalServiceError extends __SmithyException, $MetadataBearer { - name: "InternalServiceError"; - $fault: "server"; +export class InternalServiceError extends __BaseException { + readonly name: "InternalServiceError" = "InternalServiceError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceError.prototype); + this.Message = opts.Message; + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The allowed quota for the resource has been exceeded.

*/ -export interface ResourceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceQuotaExceededException"; - $fault: "client"; +export class ResourceQuotaExceededException extends __BaseException { + readonly name: "ResourceQuotaExceededException" = "ResourceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

The throttling limit has been exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** @@ -294,10 +369,22 @@ export namespace DeleteDataIntegrationResponse { /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteEventIntegrationRequest { diff --git a/clients/client-appintegrations/src/protocols/Aws_restJson1.ts b/clients/client-appintegrations/src/protocols/Aws_restJson1.ts index bde59ebb7cc0b..c63a98b3ebb77 100644 --- a/clients/client-appintegrations/src/protocols/Aws_restJson1.ts +++ b/clients/client-appintegrations/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -65,6 +64,7 @@ import { UpdateEventIntegrationCommandInput, UpdateEventIntegrationCommandOutput, } from "../commands/UpdateEventIntegrationCommand"; +import { AppIntegrationsServiceException as __BaseException } from "../models/AppIntegrationsServiceException"; import { AccessDeniedException, DataIntegrationAssociationSummary, @@ -600,73 +600,37 @@ const deserializeAws_restJson1CreateDataIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DuplicateResourceException": case "com.amazonaws.appintegrations#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceQuotaExceededException": case "com.amazonaws.appintegrations#ResourceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ResourceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEventIntegrationCommand = async ( @@ -695,73 +659,37 @@ const deserializeAws_restJson1CreateEventIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DuplicateResourceException": case "com.amazonaws.appintegrations#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceQuotaExceededException": case "com.amazonaws.appintegrations#ResourceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ResourceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataIntegrationCommand = async ( @@ -786,65 +714,34 @@ const deserializeAws_restJson1DeleteDataIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEventIntegrationCommand = async ( @@ -869,65 +766,34 @@ const deserializeAws_restJson1DeleteEventIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataIntegrationCommand = async ( @@ -984,65 +850,34 @@ const deserializeAws_restJson1GetDataIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEventIntegrationCommand = async ( @@ -1091,65 +926,34 @@ const deserializeAws_restJson1GetEventIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataIntegrationAssociationsCommand = async ( @@ -1185,65 +989,34 @@ const deserializeAws_restJson1ListDataIntegrationAssociationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataIntegrationsCommand = async ( @@ -1276,57 +1049,31 @@ const deserializeAws_restJson1ListDataIntegrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEventIntegrationAssociationsCommand = async ( @@ -1362,65 +1109,34 @@ const deserializeAws_restJson1ListEventIntegrationAssociationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEventIntegrationsCommand = async ( @@ -1453,57 +1169,31 @@ const deserializeAws_restJson1ListEventIntegrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1532,57 +1222,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1607,57 +1271,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1682,57 +1320,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataIntegrationCommand = async ( @@ -1757,65 +1369,34 @@ const deserializeAws_restJson1UpdateDataIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEventIntegrationCommand = async ( @@ -1840,184 +1421,146 @@ const deserializeAws_restJson1UpdateEventIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appintegrations#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.appintegrations#InternalServiceError": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.appintegrations#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appintegrations#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.appintegrations#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DuplicateResourceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DuplicateResourceException = { - name: "DuplicateResourceException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DuplicateResourceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceError = { - name: "InternalServiceError", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceQuotaExceededException = { - name: "ResourceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1EventFilter = (input: EventFilter, context: __SerdeContext): any => { diff --git a/clients/client-application-auto-scaling/src/index.ts b/clients/client-application-auto-scaling/src/index.ts index 878c22d320379..c7a77de2ab440 100644 --- a/clients/client-application-auto-scaling/src/index.ts +++ b/clients/client-application-auto-scaling/src/index.ts @@ -3,3 +3,4 @@ export * from "./ApplicationAutoScalingClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ApplicationAutoScalingServiceException } from "./models/ApplicationAutoScalingServiceException"; diff --git a/clients/client-application-auto-scaling/src/models/ApplicationAutoScalingServiceException.ts b/clients/client-application-auto-scaling/src/models/ApplicationAutoScalingServiceException.ts new file mode 100644 index 0000000000000..aae235c7af076 --- /dev/null +++ b/clients/client-application-auto-scaling/src/models/ApplicationAutoScalingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ApplicationAutoScaling service. + */ +export class ApplicationAutoScalingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ApplicationAutoScalingServiceException.prototype); + } +} diff --git a/clients/client-application-auto-scaling/src/models/models_0.ts b/clients/client-application-auto-scaling/src/models/models_0.ts index c8486279d3219..8ca35789bba47 100644 --- a/clients/client-application-auto-scaling/src/models/models_0.ts +++ b/clients/client-application-auto-scaling/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ApplicationAutoScalingServiceException as __BaseException } from "./ApplicationAutoScalingServiceException"; export enum AdjustmentType { ChangeInCapacity = "ChangeInCapacity", @@ -34,10 +37,22 @@ export namespace Alarm { *

Concurrent updates caused an exception, for example, if you request an update to an * Application Auto Scaling resource that already has a pending update.

*/ -export interface ConcurrentUpdateException extends __SmithyException, $MetadataBearer { - name: "ConcurrentUpdateException"; - $fault: "server"; +export class ConcurrentUpdateException extends __BaseException { + readonly name: "ConcurrentUpdateException" = "ConcurrentUpdateException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentUpdateException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentUpdateException.prototype); + this.Message = opts.Message; + } } export enum ScalableDimension { @@ -273,10 +288,22 @@ export namespace DeleteScalingPolicyResponse { /** *

The service encountered an internal error.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** @@ -286,20 +313,44 @@ export interface InternalServiceException extends __SmithyException, $MetadataBe * that deletes or deregisters a resource, this exception is thrown if the resource cannot be * found.

*/ -export interface ObjectNotFoundException extends __SmithyException, $MetadataBearer { - name: "ObjectNotFoundException"; - $fault: "client"; +export class ObjectNotFoundException extends __BaseException { + readonly name: "ObjectNotFoundException" = "ObjectNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

An exception was thrown for a validation issue. Review the available parameters for the * API request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DeleteScheduledActionRequest { @@ -1135,10 +1186,22 @@ export namespace DescribeScalableTargetsResponse { /** *

The next token supplied was invalid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface DescribeScalingActivitiesRequest { @@ -2547,10 +2610,22 @@ export namespace DescribeScalingPoliciesResponse { * for example, if the role ARN specified for a scalable target does not have permission to * call the CloudWatch DescribeAlarms on your behalf.

*/ -export interface FailedResourceAccessException extends __SmithyException, $MetadataBearer { - name: "FailedResourceAccessException"; - $fault: "client"; +export class FailedResourceAccessException extends __BaseException { + readonly name: "FailedResourceAccessException" = "FailedResourceAccessException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FailedResourceAccessException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FailedResourceAccessException.prototype); + this.Message = opts.Message; + } } export interface DescribeScheduledActionsRequest { @@ -3049,10 +3124,22 @@ export namespace DescribeScheduledActionsResponse { /** *

A per-account resource limit is exceeded. For more information, see Application Auto Scaling service quotas.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface PutScalingPolicyRequest { diff --git a/clients/client-application-auto-scaling/src/protocols/Aws_json1_1.ts b/clients/client-application-auto-scaling/src/protocols/Aws_json1_1.ts index 7a7519afc8920..354601353aabd 100644 --- a/clients/client-application-auto-scaling/src/protocols/Aws_json1_1.ts +++ b/clients/client-application-auto-scaling/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -52,6 +51,7 @@ import { RegisterScalableTargetCommandInput, RegisterScalableTargetCommandOutput, } from "../commands/RegisterScalableTargetCommand"; +import { ApplicationAutoScalingServiceException as __BaseException } from "../models/ApplicationAutoScalingServiceException"; import { Alarm, ConcurrentUpdateException, @@ -250,57 +250,31 @@ const deserializeAws_json1_1DeleteScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.applicationautoscaling#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteScheduledActionCommand = async ( @@ -328,57 +302,31 @@ const deserializeAws_json1_1DeleteScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.applicationautoscaling#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterScalableTargetCommand = async ( @@ -406,57 +354,31 @@ const deserializeAws_json1_1DeregisterScalableTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.applicationautoscaling#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScalableTargetsCommand = async ( @@ -484,57 +406,31 @@ const deserializeAws_json1_1DescribeScalableTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.applicationautoscaling#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScalingActivitiesCommand = async ( @@ -562,57 +458,31 @@ const deserializeAws_json1_1DescribeScalingActivitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.applicationautoscaling#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScalingPoliciesCommand = async ( @@ -640,65 +510,34 @@ const deserializeAws_json1_1DescribeScalingPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "FailedResourceAccessException": case "com.amazonaws.applicationautoscaling#FailedResourceAccessException": - response = { - ...(await deserializeAws_json1_1FailedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FailedResourceAccessExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.applicationautoscaling#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScheduledActionsCommand = async ( @@ -726,57 +565,31 @@ const deserializeAws_json1_1DescribeScheduledActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.applicationautoscaling#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutScalingPolicyCommand = async ( @@ -804,73 +617,37 @@ const deserializeAws_json1_1PutScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "FailedResourceAccessException": case "com.amazonaws.applicationautoscaling#FailedResourceAccessException": - response = { - ...(await deserializeAws_json1_1FailedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FailedResourceAccessExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.applicationautoscaling#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.applicationautoscaling#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutScheduledActionCommand = async ( @@ -898,65 +675,34 @@ const deserializeAws_json1_1PutScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.applicationautoscaling#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.applicationautoscaling#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterScalableTargetCommand = async ( @@ -984,57 +730,31 @@ const deserializeAws_json1_1RegisterScalableTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.applicationautoscaling#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.applicationautoscaling#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.applicationautoscaling#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationautoscaling#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentUpdateExceptionResponse = async ( @@ -1043,13 +763,11 @@ const deserializeAws_json1_1ConcurrentUpdateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentUpdateException(body, context); - const contents: ConcurrentUpdateException = { - name: "ConcurrentUpdateException", - $fault: "server", + const exception = new ConcurrentUpdateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FailedResourceAccessExceptionResponse = async ( @@ -1058,13 +776,11 @@ const deserializeAws_json1_1FailedResourceAccessExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FailedResourceAccessException(body, context); - const contents: FailedResourceAccessException = { - name: "FailedResourceAccessException", - $fault: "client", + const exception = new FailedResourceAccessException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceExceptionResponse = async ( @@ -1073,13 +789,11 @@ const deserializeAws_json1_1InternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceException(body, context); - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", + const exception = new InternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -1088,13 +802,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1103,13 +815,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ObjectNotFoundExceptionResponse = async ( @@ -1118,13 +828,11 @@ const deserializeAws_json1_1ObjectNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ObjectNotFoundException(body, context); - const contents: ObjectNotFoundException = { - name: "ObjectNotFoundException", - $fault: "client", + const exception = new ObjectNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -1133,13 +841,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CustomizedMetricSpecification = ( diff --git a/clients/client-application-discovery-service/src/index.ts b/clients/client-application-discovery-service/src/index.ts index b9f326e8e6d20..a3bc63ff9622d 100644 --- a/clients/client-application-discovery-service/src/index.ts +++ b/clients/client-application-discovery-service/src/index.ts @@ -3,3 +3,4 @@ export * from "./ApplicationDiscoveryServiceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ApplicationDiscoveryServiceServiceException } from "./models/ApplicationDiscoveryServiceServiceException"; diff --git a/clients/client-application-discovery-service/src/models/ApplicationDiscoveryServiceServiceException.ts b/clients/client-application-discovery-service/src/models/ApplicationDiscoveryServiceServiceException.ts new file mode 100644 index 0000000000000..227777539acb6 --- /dev/null +++ b/clients/client-application-discovery-service/src/models/ApplicationDiscoveryServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ApplicationDiscoveryService service. + */ +export class ApplicationDiscoveryServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ApplicationDiscoveryServiceServiceException.prototype); + } +} diff --git a/clients/client-application-discovery-service/src/models/models_0.ts b/clients/client-application-discovery-service/src/models/models_0.ts index c447da185356c..8cd14cc839ae4 100644 --- a/clients/client-application-discovery-service/src/models/models_0.ts +++ b/clients/client-application-discovery-service/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ApplicationDiscoveryServiceServiceException as __BaseException } from "./ApplicationDiscoveryServiceServiceException"; /** *

Information about agents or connectors that were instructed to start collecting data. @@ -171,47 +174,97 @@ export namespace AssociateConfigurationItemsToApplicationResponse { *

The AWS user account does not have permission to perform the action. Check the IAM * policy associated with this account.

*/ -export interface AuthorizationErrorException extends __SmithyException, $MetadataBearer { - name: "AuthorizationErrorException"; - $fault: "client"; - message?: string; +export class AuthorizationErrorException extends __BaseException { + readonly name: "AuthorizationErrorException" = "AuthorizationErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationErrorException.prototype); + } } /** *

The home region is not set. Set the home region to continue.

*/ -export interface HomeRegionNotSetException extends __SmithyException, $MetadataBearer { - name: "HomeRegionNotSetException"; - $fault: "client"; - message?: string; +export class HomeRegionNotSetException extends __BaseException { + readonly name: "HomeRegionNotSetException" = "HomeRegionNotSetException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HomeRegionNotSetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HomeRegionNotSetException.prototype); + } } /** *

One or more parameters are not valid. Verify the parameters and try again.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The value of one or more parameters are either invalid or out of range. Verify the * parameter values and try again.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; - message?: string; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** *

The server experienced an internal error. Try again.

*/ -export interface ServerInternalErrorException extends __SmithyException, $MetadataBearer { - name: "ServerInternalErrorException"; - $fault: "server"; - message?: string; +export class ServerInternalErrorException extends __BaseException { + readonly name: "ServerInternalErrorException" = "ServerInternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerInternalErrorException.prototype); + } } export interface BatchDeleteImportDataRequest { @@ -385,10 +438,20 @@ export namespace CreateTagsResponse { *

The specified configuration ID was not located. Verify the configuration ID and try * again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DeleteApplicationsRequest { @@ -790,10 +853,20 @@ export namespace DescribeContinuousExportsResponse { /** *

This operation is not permitted.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; - message?: string; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + } } export interface DescribeExportConfigurationsRequest { @@ -1764,10 +1837,20 @@ export namespace ListServerNeighborsResponse { /** *

*/ -export interface ConflictErrorException extends __SmithyException, $MetadataBearer { - name: "ConflictErrorException"; - $fault: "client"; - message?: string; +export class ConflictErrorException extends __BaseException { + readonly name: "ConflictErrorException" = "ConflictErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictErrorException.prototype); + } } /** @@ -1777,10 +1860,20 @@ export interface ConflictErrorException extends __SmithyException, $MetadataBear * import tasks are meant to be different, use a different clientRequestToken, and * try again.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export interface StartContinuousExportRequest {} diff --git a/clients/client-application-discovery-service/src/protocols/Aws_json1_1.ts b/clients/client-application-discovery-service/src/protocols/Aws_json1_1.ts index 09429284d094c..8e2cb09b0d35a 100644 --- a/clients/client-application-discovery-service/src/protocols/Aws_json1_1.ts +++ b/clients/client-application-discovery-service/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -88,6 +87,7 @@ import { StopDataCollectionByAgentIdsCommandOutput, } from "../commands/StopDataCollectionByAgentIdsCommand"; import { UpdateApplicationCommandInput, UpdateApplicationCommandOutput } from "../commands/UpdateApplicationCommand"; +import { ApplicationDiscoveryServiceServiceException as __BaseException } from "../models/ApplicationDiscoveryServiceServiceException"; import { AgentConfigurationStatus, AgentInfo, @@ -516,65 +516,34 @@ const deserializeAws_json1_1AssociateConfigurationItemsToApplicationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteImportDataCommand = async ( @@ -602,65 +571,34 @@ const deserializeAws_json1_1BatchDeleteImportDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationCommand = async ( @@ -688,65 +626,34 @@ const deserializeAws_json1_1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTagsCommand = async ( @@ -774,73 +681,37 @@ const deserializeAws_json1_1CreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationsCommand = async ( @@ -868,65 +739,34 @@ const deserializeAws_json1_1DeleteApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTagsCommand = async ( @@ -954,73 +794,37 @@ const deserializeAws_json1_1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAgentsCommand = async ( @@ -1048,65 +852,34 @@ const deserializeAws_json1_1DescribeAgentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigurationsCommand = async ( @@ -1134,65 +907,34 @@ const deserializeAws_json1_1DescribeConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeContinuousExportsCommand = async ( @@ -1220,81 +962,40 @@ const deserializeAws_json1_1DescribeContinuousExportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.applicationdiscoveryservice#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExportConfigurationsCommand = async ( @@ -1322,73 +1023,37 @@ const deserializeAws_json1_1DescribeExportConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExportTasksCommand = async ( @@ -1416,65 +1081,34 @@ const deserializeAws_json1_1DescribeExportTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImportTasksCommand = async ( @@ -1502,65 +1136,34 @@ const deserializeAws_json1_1DescribeImportTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTagsCommand = async ( @@ -1588,73 +1191,37 @@ const deserializeAws_json1_1DescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateConfigurationItemsFromApplicationCommand = async ( @@ -1682,65 +1249,34 @@ const deserializeAws_json1_1DisassociateConfigurationItemsFromApplicationCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExportConfigurationsCommand = async ( @@ -1768,73 +1304,37 @@ const deserializeAws_json1_1ExportConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.applicationdiscoveryservice#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDiscoverySummaryCommand = async ( @@ -1862,65 +1362,34 @@ const deserializeAws_json1_1GetDiscoverySummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListConfigurationsCommand = async ( @@ -1948,73 +1417,37 @@ const deserializeAws_json1_1ListConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServerNeighborsCommand = async ( @@ -2042,65 +1475,34 @@ const deserializeAws_json1_1ListServerNeighborsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartContinuousExportCommand = async ( @@ -2128,89 +1530,43 @@ const deserializeAws_json1_1StartContinuousExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "ConflictErrorException": case "com.amazonaws.applicationdiscoveryservice#ConflictErrorException": - response = { - ...(await deserializeAws_json1_1ConflictErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.applicationdiscoveryservice#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationdiscoveryservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDataCollectionByAgentIdsCommand = async ( @@ -2238,65 +1594,34 @@ const deserializeAws_json1_1StartDataCollectionByAgentIdsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartExportTaskCommand = async ( @@ -2324,73 +1649,37 @@ const deserializeAws_json1_1StartExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.applicationdiscoveryservice#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartImportTaskCommand = async ( @@ -2418,73 +1707,37 @@ const deserializeAws_json1_1StartImportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationdiscoveryservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopContinuousExportCommand = async ( @@ -2512,89 +1765,43 @@ const deserializeAws_json1_1StopContinuousExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.applicationdiscoveryservice#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationdiscoveryservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationdiscoveryservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopDataCollectionByAgentIdsCommand = async ( @@ -2622,65 +1829,34 @@ const deserializeAws_json1_1StopDataCollectionByAgentIdsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationCommand = async ( @@ -2708,65 +1884,34 @@ const deserializeAws_json1_1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.applicationdiscoveryservice#AuthorizationErrorException": - response = { - ...(await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationErrorExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.applicationdiscoveryservice#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.applicationdiscoveryservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServerInternalErrorException": case "com.amazonaws.applicationdiscoveryservice#ServerInternalErrorException": - response = { - ...(await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AuthorizationErrorExceptionResponse = async ( @@ -2775,13 +1920,11 @@ const deserializeAws_json1_1AuthorizationErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AuthorizationErrorException(body, context); - const contents: AuthorizationErrorException = { - name: "AuthorizationErrorException", - $fault: "client", + const exception = new AuthorizationErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictErrorExceptionResponse = async ( @@ -2790,13 +1933,11 @@ const deserializeAws_json1_1ConflictErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictErrorException(body, context); - const contents: ConflictErrorException = { - name: "ConflictErrorException", - $fault: "client", + const exception = new ConflictErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HomeRegionNotSetExceptionResponse = async ( @@ -2805,13 +1946,11 @@ const deserializeAws_json1_1HomeRegionNotSetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HomeRegionNotSetException(body, context); - const contents: HomeRegionNotSetException = { - name: "HomeRegionNotSetException", - $fault: "client", + const exception = new HomeRegionNotSetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -2820,13 +1959,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( @@ -2835,13 +1972,11 @@ const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( @@ -2850,13 +1985,11 @@ const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotPermittedException(body, context); - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", + const exception = new OperationNotPermittedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -2865,13 +1998,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2880,13 +2011,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServerInternalErrorExceptionResponse = async ( @@ -2895,13 +2024,11 @@ const deserializeAws_json1_1ServerInternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServerInternalErrorException(body, context); - const contents: ServerInternalErrorException = { - name: "ServerInternalErrorException", - $fault: "server", + const exception = new ServerInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AgentIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-application-insights/src/index.ts b/clients/client-application-insights/src/index.ts index a134686352b51..9c53188e2af1b 100644 --- a/clients/client-application-insights/src/index.ts +++ b/clients/client-application-insights/src/index.ts @@ -3,3 +3,4 @@ export * from "./ApplicationInsightsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ApplicationInsightsServiceException } from "./models/ApplicationInsightsServiceException"; diff --git a/clients/client-application-insights/src/models/ApplicationInsightsServiceException.ts b/clients/client-application-insights/src/models/ApplicationInsightsServiceException.ts new file mode 100644 index 0000000000000..b2c473f8bb225 --- /dev/null +++ b/clients/client-application-insights/src/models/ApplicationInsightsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ApplicationInsights service. + */ +export class ApplicationInsightsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ApplicationInsightsServiceException.prototype); + } +} diff --git a/clients/client-application-insights/src/models/models_0.ts b/clients/client-application-insights/src/models/models_0.ts index 688819f20be0a..155b380fcb77e 100644 --- a/clients/client-application-insights/src/models/models_0.ts +++ b/clients/client-application-insights/src/models/models_0.ts @@ -1,14 +1,29 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ApplicationInsightsServiceException as __BaseException } from "./ApplicationInsightsServiceException"; /** *

* User does not have permissions to perform this action. *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export type Tier = @@ -161,10 +176,22 @@ export namespace ApplicationInfo { /** *

The request is not understood by the server.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } export type CloudWatchEventSource = "CODE_DEPLOY" | "EC2" | "HEALTH" | "RDS"; @@ -354,46 +381,106 @@ export namespace CreateApplicationResponse { /** *

The server encountered an internal error and is unable to complete the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The resource is already created or in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

The resource does not exist in the customer account.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Tags are already registered for the specified application ARN.

*/ -export interface TagsAlreadyExistException extends __SmithyException, $MetadataBearer { - name: "TagsAlreadyExistException"; - $fault: "client"; +export class TagsAlreadyExistException extends __BaseException { + readonly name: "TagsAlreadyExistException" = "TagsAlreadyExistException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagsAlreadyExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagsAlreadyExistException.prototype); + this.Message = opts.Message; + } } /** *

The parameter is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface CreateComponentRequest { @@ -1740,14 +1827,27 @@ export namespace TagResourceResponse { *

The number of the provided tags is beyond the limit, or * the number of total tags you are trying to attach to the specified resource exceeds the limit.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The name of the resource with too many tags.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export interface UntagResourceRequest { diff --git a/clients/client-application-insights/src/protocols/Aws_json1_1.ts b/clients/client-application-insights/src/protocols/Aws_json1_1.ts index 2cab264c91359..bce904c91c3c8 100644 --- a/clients/client-application-insights/src/protocols/Aws_json1_1.ts +++ b/clients/client-application-insights/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "../commands/CreateApplicationCommand"; @@ -69,6 +68,7 @@ import { UpdateComponentConfigurationCommandOutput, } from "../commands/UpdateComponentConfigurationCommand"; import { UpdateLogPatternCommandInput, UpdateLogPatternCommandOutput } from "../commands/UpdateLogPatternCommand"; +import { ApplicationInsightsServiceException as __BaseException } from "../models/ApplicationInsightsServiceException"; import { AccessDeniedException, ApplicationComponent, @@ -521,73 +521,37 @@ const deserializeAws_json1_1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationinsights#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationinsights#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagsAlreadyExistException": case "com.amazonaws.applicationinsights#TagsAlreadyExistException": - response = { - ...(await deserializeAws_json1_1TagsAlreadyExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagsAlreadyExistExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateComponentCommand = async ( @@ -615,57 +579,31 @@ const deserializeAws_json1_1CreateComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationinsights#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLogPatternCommand = async ( @@ -693,57 +631,31 @@ const deserializeAws_json1_1CreateLogPatternCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationinsights#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCommand = async ( @@ -771,57 +683,31 @@ const deserializeAws_json1_1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.applicationinsights#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteComponentCommand = async ( @@ -849,49 +735,28 @@ const deserializeAws_json1_1DeleteComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLogPatternCommand = async ( @@ -919,57 +784,31 @@ const deserializeAws_json1_1DeleteLogPatternCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.applicationinsights#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationCommand = async ( @@ -997,49 +836,28 @@ const deserializeAws_json1_1DescribeApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeComponentCommand = async ( @@ -1067,49 +885,28 @@ const deserializeAws_json1_1DescribeComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeComponentConfigurationCommand = async ( @@ -1137,49 +934,28 @@ const deserializeAws_json1_1DescribeComponentConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeComponentConfigurationRecommendationCommand = async ( @@ -1207,49 +983,28 @@ const deserializeAws_json1_1DescribeComponentConfigurationRecommendationCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLogPatternCommand = async ( @@ -1277,49 +1032,28 @@ const deserializeAws_json1_1DescribeLogPatternCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeObservationCommand = async ( @@ -1347,49 +1081,28 @@ const deserializeAws_json1_1DescribeObservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProblemCommand = async ( @@ -1417,49 +1130,28 @@ const deserializeAws_json1_1DescribeProblemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProblemObservationsCommand = async ( @@ -1487,49 +1179,28 @@ const deserializeAws_json1_1DescribeProblemObservationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationsCommand = async ( @@ -1557,41 +1228,25 @@ const deserializeAws_json1_1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListComponentsCommand = async ( @@ -1619,49 +1274,28 @@ const deserializeAws_json1_1ListComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListConfigurationHistoryCommand = async ( @@ -1689,49 +1323,28 @@ const deserializeAws_json1_1ListConfigurationHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLogPatternsCommand = async ( @@ -1759,49 +1372,28 @@ const deserializeAws_json1_1ListLogPatternsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLogPatternSetsCommand = async ( @@ -1829,49 +1421,28 @@ const deserializeAws_json1_1ListLogPatternSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProblemsCommand = async ( @@ -1899,49 +1470,28 @@ const deserializeAws_json1_1ListProblemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1969,41 +1519,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2031,49 +1565,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.applicationinsights#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2101,41 +1614,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationCommand = async ( @@ -2163,49 +1660,28 @@ const deserializeAws_json1_1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateComponentCommand = async ( @@ -2233,57 +1709,31 @@ const deserializeAws_json1_1UpdateComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationinsights#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateComponentConfigurationCommand = async ( @@ -2311,49 +1761,28 @@ const deserializeAws_json1_1UpdateComponentConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLogPatternCommand = async ( @@ -2381,57 +1810,31 @@ const deserializeAws_json1_1UpdateLogPatternCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.applicationinsights#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.applicationinsights#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.applicationinsights#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationinsights#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -2440,13 +1843,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BadRequestExceptionResponse = async ( @@ -2455,13 +1856,11 @@ const deserializeAws_json1_1BadRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BadRequestException(body, context); - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", + const exception = new BadRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -2470,13 +1869,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -2485,13 +1882,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2500,13 +1895,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagsAlreadyExistExceptionResponse = async ( @@ -2515,13 +1908,11 @@ const deserializeAws_json1_1TagsAlreadyExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagsAlreadyExistException(body, context); - const contents: TagsAlreadyExistException = { - name: "TagsAlreadyExistException", - $fault: "client", + const exception = new TagsAlreadyExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -2530,13 +1921,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -2545,13 +1934,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CreateApplicationRequest = ( diff --git a/clients/client-applicationcostprofiler/src/index.ts b/clients/client-applicationcostprofiler/src/index.ts index 89f7045b39298..e5f2a73d076aa 100644 --- a/clients/client-applicationcostprofiler/src/index.ts +++ b/clients/client-applicationcostprofiler/src/index.ts @@ -3,3 +3,4 @@ export * from "./ApplicationCostProfilerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ApplicationCostProfilerServiceException } from "./models/ApplicationCostProfilerServiceException"; diff --git a/clients/client-applicationcostprofiler/src/models/ApplicationCostProfilerServiceException.ts b/clients/client-applicationcostprofiler/src/models/ApplicationCostProfilerServiceException.ts new file mode 100644 index 0000000000000..56d21281eb3fd --- /dev/null +++ b/clients/client-applicationcostprofiler/src/models/ApplicationCostProfilerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ApplicationCostProfiler service. + */ +export class ApplicationCostProfilerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ApplicationCostProfilerServiceException.prototype); + } +} diff --git a/clients/client-applicationcostprofiler/src/models/models_0.ts b/clients/client-applicationcostprofiler/src/models/models_0.ts index 21f3e7aad3dba..93c3579790551 100644 --- a/clients/client-applicationcostprofiler/src/models/models_0.ts +++ b/clients/client-applicationcostprofiler/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ApplicationCostProfilerServiceException as __BaseException } from "./ApplicationCostProfilerServiceException"; /** *

You do not have permission to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export interface DeleteReportDefinitionRequest { @@ -44,28 +57,58 @@ export namespace DeleteReportDefinitionResult { /** *

An internal server error occurred. Retry your request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The calls to AWS Application Cost Profiler API are throttled. The request was denied.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The input fails to satisfy the constraints for the API.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface GetReportDefinitionRequest { @@ -385,10 +428,20 @@ export namespace PutReportDefinitionResult { /** *

Your request exceeds one or more of the service quotas.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface UpdateReportDefinitionRequest { diff --git a/clients/client-applicationcostprofiler/src/protocols/Aws_restJson1.ts b/clients/client-applicationcostprofiler/src/protocols/Aws_restJson1.ts index a6a99ca8ac1a2..e6c2d1ddd1fa9 100644 --- a/clients/client-applicationcostprofiler/src/protocols/Aws_restJson1.ts +++ b/clients/client-applicationcostprofiler/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -39,6 +38,7 @@ import { UpdateReportDefinitionCommandInput, UpdateReportDefinitionCommandOutput, } from "../commands/UpdateReportDefinitionCommand"; +import { ApplicationCostProfilerServiceException as __BaseException } from "../models/ApplicationCostProfilerServiceException"; import { AccessDeniedException, InternalServerException, @@ -261,57 +261,31 @@ const deserializeAws_restJson1DeleteReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationcostprofiler#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationcostprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.applicationcostprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationcostprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReportDefinitionCommand = async ( @@ -364,57 +338,31 @@ const deserializeAws_restJson1GetReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationcostprofiler#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationcostprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.applicationcostprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationcostprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportApplicationUsageCommand = async ( @@ -443,57 +391,31 @@ const deserializeAws_restJson1ImportApplicationUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationcostprofiler#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationcostprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.applicationcostprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationcostprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReportDefinitionsCommand = async ( @@ -526,57 +448,31 @@ const deserializeAws_restJson1ListReportDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationcostprofiler#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationcostprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.applicationcostprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationcostprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutReportDefinitionCommand = async ( @@ -605,65 +501,34 @@ const deserializeAws_restJson1PutReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationcostprofiler#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationcostprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.applicationcostprofiler#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.applicationcostprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationcostprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReportDefinitionCommand = async ( @@ -692,142 +557,111 @@ const deserializeAws_restJson1UpdateReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.applicationcostprofiler#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.applicationcostprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.applicationcostprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.applicationcostprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1S3Location = (input: S3Location, context: __SerdeContext): any => { diff --git a/clients/client-apprunner/src/index.ts b/clients/client-apprunner/src/index.ts index dc6e4267a1743..f677d7032db4c 100644 --- a/clients/client-apprunner/src/index.ts +++ b/clients/client-apprunner/src/index.ts @@ -3,3 +3,4 @@ export * from "./AppRunnerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AppRunnerServiceException } from "./models/AppRunnerServiceException"; diff --git a/clients/client-apprunner/src/models/AppRunnerServiceException.ts b/clients/client-apprunner/src/models/AppRunnerServiceException.ts new file mode 100644 index 0000000000000..80951cd3dc20f --- /dev/null +++ b/clients/client-apprunner/src/models/AppRunnerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppRunner service. + */ +export class AppRunnerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppRunnerServiceException.prototype); + } +} diff --git a/clients/client-apprunner/src/models/models_0.ts b/clients/client-apprunner/src/models/models_0.ts index b0334225286a7..1085e70fd60b8 100644 --- a/clients/client-apprunner/src/models/models_0.ts +++ b/clients/client-apprunner/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppRunnerServiceException as __BaseException } from "./AppRunnerServiceException"; export interface AssociateCustomDomainRequest { /** @@ -149,28 +151,64 @@ export namespace AssociateCustomDomainResponse { /** *

An unexpected service exception occurred.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + this.Message = opts.Message; + } } /** *

One or more input parameters aren't valid. Refer to the API action's document page, correct the input parameters, and try the action again.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

You can't perform this action when the resource is in its current state.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + this.Message = opts.Message; + } } /** @@ -345,10 +383,22 @@ export namespace CreateAutoScalingConfigurationResponse { *

For App Runner per-resource quotas, see App Runner endpoints and quotas in the * Amazon Web Services General Reference.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export enum ProviderType { @@ -1110,10 +1160,22 @@ export namespace DeleteAutoScalingConfigurationResponse { /** *

A resource doesn't exist for the specified Amazon Resource Name (ARN) in your Amazon Web Services account.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteConnectionRequest { diff --git a/clients/client-apprunner/src/protocols/Aws_json1_0.ts b/clients/client-apprunner/src/protocols/Aws_json1_0.ts index 0a517ef53825b..74198778a669c 100644 --- a/clients/client-apprunner/src/protocols/Aws_json1_0.ts +++ b/clients/client-apprunner/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -62,6 +61,7 @@ import { StartDeploymentCommandInput, StartDeploymentCommandOutput } from "../co import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateServiceCommandInput, UpdateServiceCommandOutput } from "../commands/UpdateServiceCommand"; +import { AppRunnerServiceException as __BaseException } from "../models/AppRunnerServiceException"; import { AssociateCustomDomainRequest, AssociateCustomDomainResponse, @@ -446,49 +446,28 @@ const deserializeAws_json1_0AssociateCustomDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateAutoScalingConfigurationCommand = async ( @@ -516,49 +495,28 @@ const deserializeAws_json1_0CreateAutoScalingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.apprunner#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateConnectionCommand = async ( @@ -586,49 +544,28 @@ const deserializeAws_json1_0CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.apprunner#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateServiceCommand = async ( @@ -656,49 +593,28 @@ const deserializeAws_json1_0CreateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.apprunner#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteAutoScalingConfigurationCommand = async ( @@ -726,49 +642,28 @@ const deserializeAws_json1_0DeleteAutoScalingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteConnectionCommand = async ( @@ -796,49 +691,28 @@ const deserializeAws_json1_0DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteServiceCommand = async ( @@ -866,57 +740,31 @@ const deserializeAws_json1_0DeleteServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeAutoScalingConfigurationCommand = async ( @@ -944,49 +792,28 @@ const deserializeAws_json1_0DescribeAutoScalingConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeCustomDomainsCommand = async ( @@ -1014,49 +841,28 @@ const deserializeAws_json1_0DescribeCustomDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeServiceCommand = async ( @@ -1084,49 +890,28 @@ const deserializeAws_json1_0DescribeServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DisassociateCustomDomainCommand = async ( @@ -1154,57 +939,31 @@ const deserializeAws_json1_0DisassociateCustomDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListAutoScalingConfigurationsCommand = async ( @@ -1232,41 +991,25 @@ const deserializeAws_json1_0ListAutoScalingConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListConnectionsCommand = async ( @@ -1294,41 +1037,25 @@ const deserializeAws_json1_0ListConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListOperationsCommand = async ( @@ -1356,49 +1083,28 @@ const deserializeAws_json1_0ListOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServicesCommand = async ( @@ -1426,41 +1132,25 @@ const deserializeAws_json1_0ListServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -1488,57 +1178,31 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PauseServiceCommand = async ( @@ -1566,57 +1230,31 @@ const deserializeAws_json1_0PauseServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ResumeServiceCommand = async ( @@ -1644,57 +1282,31 @@ const deserializeAws_json1_0ResumeServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartDeploymentCommand = async ( @@ -1722,49 +1334,28 @@ const deserializeAws_json1_0StartDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -1792,57 +1383,31 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -1870,57 +1435,31 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateServiceCommand = async ( @@ -1948,57 +1487,31 @@ const deserializeAws_json1_0UpdateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.apprunner#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.apprunner#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.apprunner#InvalidStateException": - response = { - ...(await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.apprunner#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0InternalServiceErrorExceptionResponse = async ( @@ -2007,13 +1520,11 @@ const deserializeAws_json1_0InternalServiceErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServiceErrorException(body, context); - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", + const exception = new InternalServiceErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidRequestExceptionResponse = async ( @@ -2022,13 +1533,11 @@ const deserializeAws_json1_0InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidStateExceptionResponse = async ( @@ -2037,13 +1546,11 @@ const deserializeAws_json1_0InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -2052,13 +1559,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( @@ -2067,13 +1572,11 @@ const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0AssociateCustomDomainRequest = ( diff --git a/clients/client-appstream/src/index.ts b/clients/client-appstream/src/index.ts index 4f44c41177b7c..cc86ea83cca8c 100644 --- a/clients/client-appstream/src/index.ts +++ b/clients/client-appstream/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { AppStreamServiceException } from "./models/AppStreamServiceException"; diff --git a/clients/client-appstream/src/models/AppStreamServiceException.ts b/clients/client-appstream/src/models/AppStreamServiceException.ts new file mode 100644 index 0000000000000..95bddc195f986 --- /dev/null +++ b/clients/client-appstream/src/models/AppStreamServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppStream service. + */ +export class AppStreamServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppStreamServiceException.prototype); + } +} diff --git a/clients/client-appstream/src/models/models_0.ts b/clients/client-appstream/src/models/models_0.ts index 73a7c51cbcf9a..38594cee9e8f7 100644 --- a/clients/client-appstream/src/models/models_0.ts +++ b/clients/client-appstream/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppStreamServiceException as __BaseException } from "./AppStreamServiceException"; export enum AccessEndpointType { STREAMING = "STREAMING", @@ -373,61 +375,121 @@ export namespace AssociateApplicationFleetResult { /** *

An API error occurred. Wait a few minutes and try again.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

Indicates an incorrect combination of parameters, or a missing parameter.

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + this.Message = opts.Message; + } } /** *

The requested limit exceeds the permitted limit for an account.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The attempted operation is not permitted.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface AssociateApplicationToEntitlementRequest { @@ -470,13 +532,25 @@ export namespace AssociateApplicationToEntitlementResult { /** *

The entitlement can't be found.

*/ -export interface EntitlementNotFoundException extends __SmithyException, $MetadataBearer { - name: "EntitlementNotFoundException"; - $fault: "client"; +export class EntitlementNotFoundException extends __BaseException { + readonly name: "EntitlementNotFoundException" = "EntitlementNotFoundException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntitlementNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntitlementNotFoundException.prototype); + this.Message = opts.Message; + } } export interface AssociateFleetRequest { @@ -514,25 +588,49 @@ export namespace AssociateFleetResult { /** *

The image can't be updated because it's not compatible for updates.

*/ -export interface IncompatibleImageException extends __SmithyException, $MetadataBearer { - name: "IncompatibleImageException"; - $fault: "client"; +export class IncompatibleImageException extends __BaseException { + readonly name: "IncompatibleImageException" = "IncompatibleImageException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleImageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleImageException.prototype); + this.Message = opts.Message; + } } /** *

The resource cannot be created because your AWS account is suspended. For assistance, contact AWS Support.

*/ -export interface InvalidAccountStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidAccountStatusException"; - $fault: "client"; +export class InvalidAccountStatusException extends __BaseException { + readonly name: "InvalidAccountStatusException" = "InvalidAccountStatusException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAccountStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAccountStatusException.prototype); + this.Message = opts.Message; + } } export enum AuthenticationType { @@ -795,25 +893,49 @@ export namespace CopyImageResponse { /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource exists and is not in use, but isn't available.

*/ -export interface ResourceNotAvailableException extends __SmithyException, $MetadataBearer { - name: "ResourceNotAvailableException"; - $fault: "client"; +export class ResourceNotAvailableException extends __BaseException { + readonly name: "ResourceNotAvailableException" = "ResourceNotAvailableException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotAvailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotAvailableException.prototype); + this.Message = opts.Message; + } } export interface CreateAppBlockRequest { @@ -1069,13 +1191,25 @@ export namespace CreateDirectoryConfigResult { /** *

The specified role is invalid.

*/ -export interface InvalidRoleException extends __SmithyException, $MetadataBearer { - name: "InvalidRoleException"; - $fault: "client"; +export class InvalidRoleException extends __BaseException { + readonly name: "InvalidRoleException" = "InvalidRoleException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRoleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRoleException.prototype); + this.Message = opts.Message; + } } /** @@ -1241,13 +1375,25 @@ export namespace CreateEntitlementResult { /** *

The entitlement already exists.

*/ -export interface EntitlementAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EntitlementAlreadyExistsException"; - $fault: "client"; +export class EntitlementAlreadyExistsException extends __BaseException { + readonly name: "EntitlementAlreadyExistsException" = "EntitlementAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntitlementAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntitlementAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** @@ -1917,13 +2063,25 @@ export namespace CreateFleetResult { /** *

AppStream 2.0 can’t process the request right now because the Describe calls from your AWS account are being throttled by Amazon EC2. Try again later.

*/ -export interface RequestLimitExceededException extends __SmithyException, $MetadataBearer { - name: "RequestLimitExceededException"; - $fault: "client"; +export class RequestLimitExceededException extends __BaseException { + readonly name: "RequestLimitExceededException" = "RequestLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface CreateImageBuilderRequest { @@ -3171,13 +3329,25 @@ export namespace DeleteAppBlockResult { /** *

The specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** *

The error message in the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } export interface DeleteApplicationRequest { diff --git a/clients/client-appstream/src/protocols/Aws_json1_1.ts b/clients/client-appstream/src/protocols/Aws_json1_1.ts index c3b7acc91da02..00f22514f1941 100644 --- a/clients/client-appstream/src/protocols/Aws_json1_1.ts +++ b/clients/client-appstream/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -159,6 +158,7 @@ import { UpdateImagePermissionsCommandOutput, } from "../commands/UpdateImagePermissionsCommand"; import { UpdateStackCommandInput, UpdateStackCommandOutput } from "../commands/UpdateStackCommand"; +import { AppStreamServiceException as __BaseException } from "../models/AppStreamServiceException"; import { AccessEndpoint, AppBlock, @@ -1217,65 +1217,34 @@ const deserializeAws_json1_1AssociateApplicationFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateApplicationToEntitlementCommand = async ( @@ -1303,57 +1272,31 @@ const deserializeAws_json1_1AssociateApplicationToEntitlementCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntitlementNotFoundException": case "com.amazonaws.appstream#EntitlementNotFoundException": - response = { - ...(await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateFleetCommand = async ( @@ -1381,73 +1324,37 @@ const deserializeAws_json1_1AssociateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchAssociateUserStackCommand = async ( @@ -1475,41 +1382,25 @@ const deserializeAws_json1_1BatchAssociateUserStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDisassociateUserStackCommand = async ( @@ -1537,41 +1428,25 @@ const deserializeAws_json1_1BatchDisassociateUserStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CopyImageCommand = async ( @@ -1599,73 +1474,37 @@ const deserializeAws_json1_1CopyImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAppBlockCommand = async ( @@ -1693,57 +1532,31 @@ const deserializeAws_json1_1CreateAppBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationCommand = async ( @@ -1771,65 +1584,34 @@ const deserializeAws_json1_1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDirectoryConfigCommand = async ( @@ -1857,73 +1639,37 @@ const deserializeAws_json1_1CreateDirectoryConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEntitlementCommand = async ( @@ -1951,57 +1697,31 @@ const deserializeAws_json1_1CreateEntitlementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntitlementAlreadyExistsException": case "com.amazonaws.appstream#EntitlementAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntitlementAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFleetCommand = async ( @@ -2029,113 +1749,52 @@ const deserializeAws_json1_1CreateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "RequestLimitExceededException": case "com.amazonaws.appstream#RequestLimitExceededException": - response = { - ...(await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateImageBuilderCommand = async ( @@ -2163,113 +1822,52 @@ const deserializeAws_json1_1CreateImageBuilderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "RequestLimitExceededException": case "com.amazonaws.appstream#RequestLimitExceededException": - response = { - ...(await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateImageBuilderStreamingURLCommand = async ( @@ -2297,41 +1895,25 @@ const deserializeAws_json1_1CreateImageBuilderStreamingURLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStackCommand = async ( @@ -2359,81 +1941,40 @@ const deserializeAws_json1_1CreateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStreamingURLCommand = async ( @@ -2461,57 +2002,31 @@ const deserializeAws_json1_1CreateStreamingURLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUpdatedImageCommand = async ( @@ -2539,81 +2054,40 @@ const deserializeAws_json1_1CreateUpdatedImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUsageReportSubscriptionCommand = async ( @@ -2641,49 +2115,28 @@ const deserializeAws_json1_1CreateUsageReportSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserCommand = async ( @@ -2711,65 +2164,34 @@ const deserializeAws_json1_1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.appstream#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppBlockCommand = async ( @@ -2797,49 +2219,28 @@ const deserializeAws_json1_1DeleteAppBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCommand = async ( @@ -2867,57 +2268,31 @@ const deserializeAws_json1_1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDirectoryConfigCommand = async ( @@ -2945,41 +2320,25 @@ const deserializeAws_json1_1DeleteDirectoryConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEntitlementCommand = async ( @@ -3007,57 +2366,31 @@ const deserializeAws_json1_1DeleteEntitlementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntitlementNotFoundException": case "com.amazonaws.appstream#EntitlementNotFoundException": - response = { - ...(await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFleetCommand = async ( @@ -3085,49 +2418,28 @@ const deserializeAws_json1_1DeleteFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteImageCommand = async ( @@ -3155,57 +2467,31 @@ const deserializeAws_json1_1DeleteImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteImageBuilderCommand = async ( @@ -3233,49 +2519,28 @@ const deserializeAws_json1_1DeleteImageBuilderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteImagePermissionsCommand = async ( @@ -3303,41 +2568,25 @@ const deserializeAws_json1_1DeleteImagePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStackCommand = async ( @@ -3365,57 +2614,31 @@ const deserializeAws_json1_1DeleteStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUsageReportSubscriptionCommand = async ( @@ -3443,41 +2666,25 @@ const deserializeAws_json1_1DeleteUsageReportSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserCommand = async ( @@ -3505,33 +2712,22 @@ const deserializeAws_json1_1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAppBlocksCommand = async ( @@ -3559,41 +2755,25 @@ const deserializeAws_json1_1DescribeAppBlocksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationFleetAssociationsCommand = async ( @@ -3621,41 +2801,25 @@ const deserializeAws_json1_1DescribeApplicationFleetAssociationsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationsCommand = async ( @@ -3683,41 +2847,25 @@ const deserializeAws_json1_1DescribeApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDirectoryConfigsCommand = async ( @@ -3745,33 +2893,22 @@ const deserializeAws_json1_1DescribeDirectoryConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEntitlementsCommand = async ( @@ -3799,49 +2936,28 @@ const deserializeAws_json1_1DescribeEntitlementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntitlementNotFoundException": case "com.amazonaws.appstream#EntitlementNotFoundException": - response = { - ...(await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetsCommand = async ( @@ -3869,33 +2985,22 @@ const deserializeAws_json1_1DescribeFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImageBuildersCommand = async ( @@ -3923,33 +3028,22 @@ const deserializeAws_json1_1DescribeImageBuildersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImagePermissionsCommand = async ( @@ -3977,33 +3071,22 @@ const deserializeAws_json1_1DescribeImagePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImagesCommand = async ( @@ -4031,41 +3114,25 @@ const deserializeAws_json1_1DescribeImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSessionsCommand = async ( @@ -4093,33 +3160,22 @@ const deserializeAws_json1_1DescribeSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStacksCommand = async ( @@ -4147,33 +3203,22 @@ const deserializeAws_json1_1DescribeStacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUsageReportSubscriptionsCommand = async ( @@ -4201,41 +3246,25 @@ const deserializeAws_json1_1DescribeUsageReportSubscriptionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUsersCommand = async ( @@ -4263,49 +3292,28 @@ const deserializeAws_json1_1DescribeUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserStackAssociationsCommand = async ( @@ -4333,41 +3341,25 @@ const deserializeAws_json1_1DescribeUserStackAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableUserCommand = async ( @@ -4395,33 +3387,22 @@ const deserializeAws_json1_1DisableUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateApplicationFleetCommand = async ( @@ -4449,49 +3430,28 @@ const deserializeAws_json1_1DisassociateApplicationFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateApplicationFromEntitlementCommand = async ( @@ -4519,49 +3479,28 @@ const deserializeAws_json1_1DisassociateApplicationFromEntitlementCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntitlementNotFoundException": case "com.amazonaws.appstream#EntitlementNotFoundException": - response = { - ...(await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateFleetCommand = async ( @@ -4589,57 +3528,31 @@ const deserializeAws_json1_1DisassociateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableUserCommand = async ( @@ -4667,41 +3580,25 @@ const deserializeAws_json1_1EnableUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExpireSessionCommand = async ( @@ -4729,25 +3626,19 @@ const deserializeAws_json1_1ExpireSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociatedFleetsCommand = async ( @@ -4775,25 +3666,19 @@ const deserializeAws_json1_1ListAssociatedFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociatedStacksCommand = async ( @@ -4821,25 +3706,19 @@ const deserializeAws_json1_1ListAssociatedStacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEntitledApplicationsCommand = async ( @@ -4867,49 +3746,28 @@ const deserializeAws_json1_1ListEntitledApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntitlementNotFoundException": case "com.amazonaws.appstream#EntitlementNotFoundException": - response = { - ...(await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -4937,33 +3795,22 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartFleetCommand = async ( @@ -4991,89 +3838,43 @@ const deserializeAws_json1_1StartFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "RequestLimitExceededException": case "com.amazonaws.appstream#RequestLimitExceededException": - response = { - ...(await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartImageBuilderCommand = async ( @@ -5101,65 +3902,34 @@ const deserializeAws_json1_1StartImageBuilderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopFleetCommand = async ( @@ -5187,41 +3957,25 @@ const deserializeAws_json1_1StopFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopImageBuilderCommand = async ( @@ -5249,49 +4003,28 @@ const deserializeAws_json1_1StopImageBuilderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -5319,49 +4052,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -5389,33 +4101,22 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationCommand = async ( @@ -5443,49 +4144,28 @@ const deserializeAws_json1_1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDirectoryConfigCommand = async ( @@ -5513,65 +4193,34 @@ const deserializeAws_json1_1UpdateDirectoryConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEntitlementCommand = async ( @@ -5599,57 +4248,31 @@ const deserializeAws_json1_1UpdateEntitlementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntitlementNotFoundException": case "com.amazonaws.appstream#EntitlementNotFoundException": - response = { - ...(await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFleetCommand = async ( @@ -5677,113 +4300,52 @@ const deserializeAws_json1_1UpdateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "RequestLimitExceededException": case "com.amazonaws.appstream#RequestLimitExceededException": - response = { - ...(await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestLimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateImagePermissionsCommand = async ( @@ -5811,49 +4373,28 @@ const deserializeAws_json1_1UpdateImagePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotAvailableException": case "com.amazonaws.appstream#ResourceNotAvailableException": - response = { - ...(await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotAvailableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateStackCommand = async ( @@ -5881,97 +4422,46 @@ const deserializeAws_json1_1UpdateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appstream#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IncompatibleImageException": case "com.amazonaws.appstream#IncompatibleImageException": - response = { - ...(await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleImageExceptionResponse(parsedOutput, context); case "InvalidAccountStatusException": case "com.amazonaws.appstream#InvalidAccountStatusException": - response = { - ...(await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAccountStatusExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.appstream#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.appstream#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appstream#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.appstream#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.appstream#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.appstream#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -5980,13 +4470,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntitlementAlreadyExistsExceptionResponse = async ( @@ -5995,13 +4483,11 @@ const deserializeAws_json1_1EntitlementAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntitlementAlreadyExistsException(body, context); - const contents: EntitlementAlreadyExistsException = { - name: "EntitlementAlreadyExistsException", - $fault: "client", + const exception = new EntitlementAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntitlementNotFoundExceptionResponse = async ( @@ -6010,13 +4496,11 @@ const deserializeAws_json1_1EntitlementNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntitlementNotFoundException(body, context); - const contents: EntitlementNotFoundException = { - name: "EntitlementNotFoundException", - $fault: "client", + const exception = new EntitlementNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncompatibleImageExceptionResponse = async ( @@ -6025,13 +4509,11 @@ const deserializeAws_json1_1IncompatibleImageExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncompatibleImageException(body, context); - const contents: IncompatibleImageException = { - name: "IncompatibleImageException", - $fault: "client", + const exception = new IncompatibleImageException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAccountStatusExceptionResponse = async ( @@ -6040,13 +4522,11 @@ const deserializeAws_json1_1InvalidAccountStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAccountStatusException(body, context); - const contents: InvalidAccountStatusException = { - name: "InvalidAccountStatusException", - $fault: "client", + const exception = new InvalidAccountStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ( @@ -6055,13 +4535,11 @@ const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterCombinationException(body, context); - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", + const exception = new InvalidParameterCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRoleExceptionResponse = async ( @@ -6070,13 +4548,11 @@ const deserializeAws_json1_1InvalidRoleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRoleException(body, context); - const contents: InvalidRoleException = { - name: "InvalidRoleException", - $fault: "client", + const exception = new InvalidRoleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -6085,13 +4561,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( @@ -6100,13 +4574,11 @@ const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotPermittedException(body, context); - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", + const exception = new OperationNotPermittedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestLimitExceededExceptionResponse = async ( @@ -6115,13 +4587,11 @@ const deserializeAws_json1_1RequestLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestLimitExceededException(body, context); - const contents: RequestLimitExceededException = { - name: "RequestLimitExceededException", - $fault: "client", + const exception = new RequestLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -6130,13 +4600,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -6145,13 +4613,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotAvailableExceptionResponse = async ( @@ -6160,13 +4626,11 @@ const deserializeAws_json1_1ResourceNotAvailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotAvailableException(body, context); - const contents: ResourceNotAvailableException = { - name: "ResourceNotAvailableException", - $fault: "client", + const exception = new ResourceNotAvailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -6175,13 +4639,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccessEndpoint = (input: AccessEndpoint, context: __SerdeContext): any => { diff --git a/clients/client-appsync/src/index.ts b/clients/client-appsync/src/index.ts index a62f53dc59bd8..c010fcdbb7039 100644 --- a/clients/client-appsync/src/index.ts +++ b/clients/client-appsync/src/index.ts @@ -2,3 +2,4 @@ export * from "./AppSync"; export * from "./AppSyncClient"; export * from "./commands"; export * from "./models"; +export { AppSyncServiceException } from "./models/AppSyncServiceException"; diff --git a/clients/client-appsync/src/models/AppSyncServiceException.ts b/clients/client-appsync/src/models/AppSyncServiceException.ts new file mode 100644 index 0000000000000..9b15439ab6e47 --- /dev/null +++ b/clients/client-appsync/src/models/AppSyncServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AppSync service. + */ +export class AppSyncServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AppSyncServiceException.prototype); + } +} diff --git a/clients/client-appsync/src/models/models_0.ts b/clients/client-appsync/src/models/models_0.ts index 2e0d63202ef7b..b99fd80652f3a 100644 --- a/clients/client-appsync/src/models/models_0.ts +++ b/clients/client-appsync/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AppSyncServiceException as __BaseException } from "./AppSyncServiceException"; /** *

You don't have access to perform this operation on this resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AuthenticationType { @@ -519,29 +532,59 @@ export namespace ApiKey { /** *

The API key exceeded a limit. Try your request again.

*/ -export interface ApiKeyLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ApiKeyLimitExceededException"; - $fault: "client"; - message?: string; +export class ApiKeyLimitExceededException extends __BaseException { + readonly name: "ApiKeyLimitExceededException" = "ApiKeyLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApiKeyLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApiKeyLimitExceededException.prototype); + } } /** *

The API key expiration must be set to a value between 1 and 365 days from creation (for * CreateApiKey) or from update (for UpdateApiKey).

*/ -export interface ApiKeyValidityOutOfBoundsException extends __SmithyException, $MetadataBearer { - name: "ApiKeyValidityOutOfBoundsException"; - $fault: "client"; - message?: string; +export class ApiKeyValidityOutOfBoundsException extends __BaseException { + readonly name: "ApiKeyValidityOutOfBoundsException" = "ApiKeyValidityOutOfBoundsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApiKeyValidityOutOfBoundsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApiKeyValidityOutOfBoundsException.prototype); + } } /** *

The GraphQL API exceeded a limit. Try your request again.

*/ -export interface ApiLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ApiLimitExceededException"; - $fault: "client"; - message?: string; +export class ApiLimitExceededException extends __BaseException { + readonly name: "ApiLimitExceededException" = "ApiLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApiLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApiLimitExceededException.prototype); + } } export interface AssociateApiRequest { @@ -585,29 +628,59 @@ export namespace AssociateApiResponse { *

The request is not well formed. For example, a value is invalid or a required field is * missing. Check the field values, and then try again.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** *

An internal AppSync error occurred. Try your request again.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The resource specified in the request was not found. Check the resource, and then try * again.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } export enum AuthorizationType { @@ -673,10 +746,20 @@ export namespace AuthorizationConfig { *

Another modification is in progress at this time and it must complete before you can * make your change.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** @@ -832,10 +915,20 @@ export namespace CreateApiCacheResponse { /** *

You aren't authorized to perform this operation.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message?: string; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } export interface CreateApiKeyRequest { @@ -885,10 +978,20 @@ export namespace CreateApiKeyResponse { /** *

The request exceeded a limit. Try your request again.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** @@ -2832,10 +2935,20 @@ export namespace GetIntrospectionSchemaResponse { /** *

The GraphQL schema is not valid.

*/ -export interface GraphQLSchemaException extends __SmithyException, $MetadataBearer { - name: "GraphQLSchemaException"; - $fault: "client"; - message?: string; +export class GraphQLSchemaException extends __BaseException { + readonly name: "GraphQLSchemaException" = "GraphQLSchemaException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GraphQLSchemaException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GraphQLSchemaException.prototype); + } } export interface GetResolverRequest { diff --git a/clients/client-appsync/src/protocols/Aws_restJson1.ts b/clients/client-appsync/src/protocols/Aws_restJson1.ts index 9a69a7595de93..471c562eea1dd 100644 --- a/clients/client-appsync/src/protocols/Aws_restJson1.ts +++ b/clients/client-appsync/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssociateApiCommandInput, AssociateApiCommandOutput } from "../commands/AssociateApiCommand"; @@ -80,6 +79,7 @@ import { UpdateFunctionCommandInput, UpdateFunctionCommandOutput } from "../comm import { UpdateGraphqlApiCommandInput, UpdateGraphqlApiCommandOutput } from "../commands/UpdateGraphqlApiCommand"; import { UpdateResolverCommandInput, UpdateResolverCommandOutput } from "../commands/UpdateResolverCommand"; import { UpdateTypeCommandInput, UpdateTypeCommandOutput } from "../commands/UpdateTypeCommand"; +import { AppSyncServiceException as __BaseException } from "../models/AppSyncServiceException"; import { AccessDeniedException, AdditionalAuthenticationProvider, @@ -2047,57 +2047,31 @@ const deserializeAws_restJson1AssociateApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateApiCacheCommand = async ( @@ -2126,65 +2100,34 @@ const deserializeAws_restJson1CreateApiCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateApiKeyCommand = async ( @@ -2213,81 +2156,40 @@ const deserializeAws_restJson1CreateApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApiKeyLimitExceededException": case "com.amazonaws.appsync#ApiKeyLimitExceededException": - response = { - ...(await deserializeAws_restJson1ApiKeyLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ApiKeyLimitExceededExceptionResponse(parsedOutput, context); case "ApiKeyValidityOutOfBoundsException": case "com.amazonaws.appsync#ApiKeyValidityOutOfBoundsException": - response = { - ...(await deserializeAws_restJson1ApiKeyValidityOutOfBoundsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ApiKeyValidityOutOfBoundsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appsync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataSourceCommand = async ( @@ -2316,65 +2218,34 @@ const deserializeAws_restJson1CreateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainNameCommand = async ( @@ -2403,49 +2274,28 @@ const deserializeAws_restJson1CreateDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFunctionCommand = async ( @@ -2474,57 +2324,31 @@ const deserializeAws_restJson1CreateFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGraphqlApiCommand = async ( @@ -2553,73 +2377,37 @@ const deserializeAws_restJson1CreateGraphqlApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApiLimitExceededException": case "com.amazonaws.appsync#ApiLimitExceededException": - response = { - ...(await deserializeAws_restJson1ApiLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ApiLimitExceededExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appsync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResolverCommand = async ( @@ -2648,57 +2436,31 @@ const deserializeAws_restJson1CreateResolverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTypeCommand = async ( @@ -2727,65 +2489,34 @@ const deserializeAws_restJson1CreateTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApiCacheCommand = async ( @@ -2810,65 +2541,34 @@ const deserializeAws_restJson1DeleteApiCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApiKeyCommand = async ( @@ -2893,57 +2593,31 @@ const deserializeAws_restJson1DeleteApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataSourceCommand = async ( @@ -2968,65 +2642,34 @@ const deserializeAws_restJson1DeleteDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainNameCommand = async ( @@ -3051,65 +2694,34 @@ const deserializeAws_restJson1DeleteDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFunctionCommand = async ( @@ -3134,57 +2746,31 @@ const deserializeAws_restJson1DeleteFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGraphqlApiCommand = async ( @@ -3209,73 +2795,37 @@ const deserializeAws_restJson1DeleteGraphqlApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResolverCommand = async ( @@ -3300,57 +2850,31 @@ const deserializeAws_restJson1DeleteResolverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTypeCommand = async ( @@ -3375,65 +2899,34 @@ const deserializeAws_restJson1DeleteTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateApiCommand = async ( @@ -3458,65 +2951,34 @@ const deserializeAws_restJson1DisassociateApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1FlushApiCacheCommand = async ( @@ -3541,65 +3003,34 @@ const deserializeAws_restJson1FlushApiCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiAssociationCommand = async ( @@ -3628,57 +3059,31 @@ const deserializeAws_restJson1GetApiAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApiCacheCommand = async ( @@ -3707,65 +3112,34 @@ const deserializeAws_restJson1GetApiCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataSourceCommand = async ( @@ -3794,65 +3168,34 @@ const deserializeAws_restJson1GetDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainNameCommand = async ( @@ -3881,57 +3224,31 @@ const deserializeAws_restJson1GetDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionCommand = async ( @@ -3960,49 +3277,28 @@ const deserializeAws_restJson1GetFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGraphqlApiCommand = async ( @@ -4031,65 +3327,34 @@ const deserializeAws_restJson1GetGraphqlApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntrospectionSchemaCommand = async ( @@ -4116,57 +3381,31 @@ const deserializeAws_restJson1GetIntrospectionSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GraphQLSchemaException": case "com.amazonaws.appsync#GraphQLSchemaException": - response = { - ...(await deserializeAws_restJson1GraphQLSchemaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GraphQLSchemaExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResolverCommand = async ( @@ -4195,49 +3434,28 @@ const deserializeAws_restJson1GetResolverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSchemaCreationStatusCommand = async ( @@ -4270,57 +3488,31 @@ const deserializeAws_restJson1GetSchemaCreationStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTypeCommand = async ( @@ -4349,65 +3541,34 @@ const deserializeAws_restJson1GetTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApiKeysCommand = async ( @@ -4440,57 +3601,31 @@ const deserializeAws_restJson1ListApiKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataSourcesCommand = async ( @@ -4523,57 +3658,31 @@ const deserializeAws_restJson1ListDataSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainNamesCommand = async ( @@ -4606,49 +3715,28 @@ const deserializeAws_restJson1ListDomainNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFunctionsCommand = async ( @@ -4681,57 +3769,31 @@ const deserializeAws_restJson1ListFunctionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGraphqlApisCommand = async ( @@ -4764,49 +3826,28 @@ const deserializeAws_restJson1ListGraphqlApisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResolversCommand = async ( @@ -4839,57 +3880,31 @@ const deserializeAws_restJson1ListResolversCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResolversByFunctionCommand = async ( @@ -4922,57 +3937,31 @@ const deserializeAws_restJson1ListResolversByFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -5001,73 +3990,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appsync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTypesCommand = async ( @@ -5100,65 +4053,34 @@ const deserializeAws_restJson1ListTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartSchemaCreationCommand = async ( @@ -5187,65 +4109,34 @@ const deserializeAws_restJson1StartSchemaCreationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -5270,73 +4161,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appsync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -5361,73 +4216,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appsync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApiCacheCommand = async ( @@ -5456,65 +4275,34 @@ const deserializeAws_restJson1UpdateApiCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApiKeyCommand = async ( @@ -5543,73 +4331,37 @@ const deserializeAws_restJson1UpdateApiKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApiKeyValidityOutOfBoundsException": case "com.amazonaws.appsync#ApiKeyValidityOutOfBoundsException": - response = { - ...(await deserializeAws_restJson1ApiKeyValidityOutOfBoundsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ApiKeyValidityOutOfBoundsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.appsync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataSourceCommand = async ( @@ -5638,65 +4390,34 @@ const deserializeAws_restJson1UpdateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainNameCommand = async ( @@ -5725,65 +4446,34 @@ const deserializeAws_restJson1UpdateDomainNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFunctionCommand = async ( @@ -5812,57 +4502,31 @@ const deserializeAws_restJson1UpdateFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGraphqlApiCommand = async ( @@ -5891,73 +4555,37 @@ const deserializeAws_restJson1UpdateGraphqlApiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.appsync#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResolverCommand = async ( @@ -5986,57 +4614,31 @@ const deserializeAws_restJson1UpdateResolverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTypeCommand = async ( @@ -6065,252 +4667,210 @@ const deserializeAws_restJson1UpdateTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.appsync#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.appsync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.appsync#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.appsync#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.appsync#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ApiKeyLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ApiKeyLimitExceededException = { - name: "ApiKeyLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ApiKeyLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ApiKeyValidityOutOfBoundsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ApiKeyValidityOutOfBoundsException = { - name: "ApiKeyValidityOutOfBoundsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ApiKeyValidityOutOfBoundsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ApiLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ApiLimitExceededException = { - name: "ApiLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ApiLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GraphQLSchemaExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GraphQLSchemaException = { - name: "GraphQLSchemaException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new GraphQLSchemaException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdditionalAuthenticationProvider = ( diff --git a/clients/client-athena/src/index.ts b/clients/client-athena/src/index.ts index 7c8d2e87973a6..610137e2cbd67 100644 --- a/clients/client-athena/src/index.ts +++ b/clients/client-athena/src/index.ts @@ -3,3 +3,4 @@ export * from "./AthenaClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AthenaServiceException } from "./models/AthenaServiceException"; diff --git a/clients/client-athena/src/models/AthenaServiceException.ts b/clients/client-athena/src/models/AthenaServiceException.ts new file mode 100644 index 0000000000000..705f858ef9b3f --- /dev/null +++ b/clients/client-athena/src/models/AthenaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Athena service. + */ +export class AthenaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AthenaServiceException.prototype); + } +} diff --git a/clients/client-athena/src/models/models_0.ts b/clients/client-athena/src/models/models_0.ts index 836fd856c3e78..ef1cde1a73bbc 100644 --- a/clients/client-athena/src/models/models_0.ts +++ b/clients/client-athena/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AthenaServiceException as __BaseException } from "./AthenaServiceException"; export interface BatchGetNamedQueryInput { /** @@ -117,19 +120,31 @@ export namespace BatchGetNamedQueryOutput { *

Indicates a platform issue, which may be due to a transient condition or * outage.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that something is wrong with the input to the request. For example, a * required parameter may be missing or out of range.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** *

The error code returned when the query execution failed to process, or when the * processing request for the named query failed.

@@ -137,6 +152,19 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea AthenaErrorCode?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.AthenaErrorCode = opts.AthenaErrorCode; + this.Message = opts.Message; + } } export interface BatchGetQueryExecutionInput { @@ -1052,11 +1080,24 @@ export namespace DeletePreparedStatementOutput { /** *

A resource, such as a workgroup, was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export interface DeleteWorkGroupInput { @@ -1166,10 +1207,22 @@ export namespace GetDatabaseOutput { * Lambda * 4XX exception is returned in a MetadataException.

*/ -export interface MetadataException extends __SmithyException, $MetadataBearer { - name: "MetadataException"; - $fault: "client"; +export class MetadataException extends __BaseException { + readonly name: "MetadataException" = "MetadataException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MetadataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MetadataException.prototype); + this.Message = opts.Message; + } } export interface GetDataCatalogInput { @@ -2489,15 +2542,28 @@ export enum ThrottleReason { /** *

Indicates that the request was throttled.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the query throttling, for example, when it exceeds the concurrent query * limit.

*/ Reason?: ThrottleReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export interface StopQueryExecutionInput { diff --git a/clients/client-athena/src/protocols/Aws_json1_1.ts b/clients/client-athena/src/protocols/Aws_json1_1.ts index 0470c0882c8e9..8e3864c57adb2 100644 --- a/clients/client-athena/src/protocols/Aws_json1_1.ts +++ b/clients/client-athena/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -79,6 +78,7 @@ import { UpdatePreparedStatementCommandOutput, } from "../commands/UpdatePreparedStatementCommand"; import { UpdateWorkGroupCommandInput, UpdateWorkGroupCommandOutput } from "../commands/UpdateWorkGroupCommand"; +import { AthenaServiceException as __BaseException } from "../models/AthenaServiceException"; import { AthenaError, BatchGetNamedQueryInput, @@ -651,41 +651,25 @@ const deserializeAws_json1_1BatchGetNamedQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetQueryExecutionCommand = async ( @@ -713,41 +697,25 @@ const deserializeAws_json1_1BatchGetQueryExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataCatalogCommand = async ( @@ -775,41 +743,25 @@ const deserializeAws_json1_1CreateDataCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNamedQueryCommand = async ( @@ -837,41 +789,25 @@ const deserializeAws_json1_1CreateNamedQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePreparedStatementCommand = async ( @@ -899,41 +835,25 @@ const deserializeAws_json1_1CreatePreparedStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkGroupCommand = async ( @@ -961,41 +881,25 @@ const deserializeAws_json1_1CreateWorkGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDataCatalogCommand = async ( @@ -1023,41 +927,25 @@ const deserializeAws_json1_1DeleteDataCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNamedQueryCommand = async ( @@ -1085,41 +973,25 @@ const deserializeAws_json1_1DeleteNamedQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePreparedStatementCommand = async ( @@ -1147,49 +1019,28 @@ const deserializeAws_json1_1DeletePreparedStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.athena#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkGroupCommand = async ( @@ -1217,41 +1068,25 @@ const deserializeAws_json1_1DeleteWorkGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDatabaseCommand = async ( @@ -1279,49 +1114,28 @@ const deserializeAws_json1_1GetDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "MetadataException": case "com.amazonaws.athena#MetadataException": - response = { - ...(await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDataCatalogCommand = async ( @@ -1349,41 +1163,25 @@ const deserializeAws_json1_1GetDataCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetNamedQueryCommand = async ( @@ -1411,41 +1209,25 @@ const deserializeAws_json1_1GetNamedQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPreparedStatementCommand = async ( @@ -1473,49 +1255,28 @@ const deserializeAws_json1_1GetPreparedStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.athena#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQueryExecutionCommand = async ( @@ -1543,41 +1304,25 @@ const deserializeAws_json1_1GetQueryExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQueryResultsCommand = async ( @@ -1605,41 +1350,25 @@ const deserializeAws_json1_1GetQueryResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTableMetadataCommand = async ( @@ -1667,49 +1396,28 @@ const deserializeAws_json1_1GetTableMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "MetadataException": case "com.amazonaws.athena#MetadataException": - response = { - ...(await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWorkGroupCommand = async ( @@ -1737,41 +1445,25 @@ const deserializeAws_json1_1GetWorkGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatabasesCommand = async ( @@ -1799,49 +1491,28 @@ const deserializeAws_json1_1ListDatabasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "MetadataException": case "com.amazonaws.athena#MetadataException": - response = { - ...(await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDataCatalogsCommand = async ( @@ -1869,41 +1540,25 @@ const deserializeAws_json1_1ListDataCatalogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEngineVersionsCommand = async ( @@ -1931,41 +1586,25 @@ const deserializeAws_json1_1ListEngineVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListNamedQueriesCommand = async ( @@ -1993,41 +1632,25 @@ const deserializeAws_json1_1ListNamedQueriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPreparedStatementsCommand = async ( @@ -2055,41 +1678,25 @@ const deserializeAws_json1_1ListPreparedStatementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListQueryExecutionsCommand = async ( @@ -2117,41 +1724,25 @@ const deserializeAws_json1_1ListQueryExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTableMetadataCommand = async ( @@ -2179,49 +1770,28 @@ const deserializeAws_json1_1ListTableMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "MetadataException": case "com.amazonaws.athena#MetadataException": - response = { - ...(await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MetadataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2249,49 +1819,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.athena#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkGroupsCommand = async ( @@ -2319,41 +1868,25 @@ const deserializeAws_json1_1ListWorkGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartQueryExecutionCommand = async ( @@ -2381,49 +1914,28 @@ const deserializeAws_json1_1StartQueryExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.athena#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopQueryExecutionCommand = async ( @@ -2451,41 +1963,25 @@ const deserializeAws_json1_1StopQueryExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2513,49 +2009,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.athena#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2583,49 +2058,28 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.athena#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDataCatalogCommand = async ( @@ -2653,41 +2107,25 @@ const deserializeAws_json1_1UpdateDataCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePreparedStatementCommand = async ( @@ -2715,49 +2153,28 @@ const deserializeAws_json1_1UpdatePreparedStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.athena#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWorkGroupCommand = async ( @@ -2785,41 +2202,25 @@ const deserializeAws_json1_1UpdateWorkGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.athena#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.athena#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -2828,13 +2229,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -2843,13 +2242,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MetadataExceptionResponse = async ( @@ -2858,13 +2255,11 @@ const deserializeAws_json1_1MetadataExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MetadataException(body, context); - const contents: MetadataException = { - name: "MetadataException", - $fault: "client", + const exception = new MetadataException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2873,13 +2268,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -2888,13 +2281,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BatchGetNamedQueryInput = (input: BatchGetNamedQueryInput, context: __SerdeContext): any => { diff --git a/clients/client-auditmanager/src/index.ts b/clients/client-auditmanager/src/index.ts index f29d53ab50e52..1d321f4911649 100644 --- a/clients/client-auditmanager/src/index.ts +++ b/clients/client-auditmanager/src/index.ts @@ -3,3 +3,4 @@ export * from "./AuditManagerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { AuditManagerServiceException } from "./models/AuditManagerServiceException"; diff --git a/clients/client-auditmanager/src/models/AuditManagerServiceException.ts b/clients/client-auditmanager/src/models/AuditManagerServiceException.ts new file mode 100644 index 0000000000000..6cfbf31dee908 --- /dev/null +++ b/clients/client-auditmanager/src/models/AuditManagerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AuditManager service. + */ +export class AuditManagerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AuditManagerServiceException.prototype); + } +} diff --git a/clients/client-auditmanager/src/models/models_0.ts b/clients/client-auditmanager/src/models/models_0.ts index 5f94442a278a4..c7d5c74472f49 100644 --- a/clients/client-auditmanager/src/models/models_0.ts +++ b/clients/client-auditmanager/src/models/models_0.ts @@ -1,13 +1,26 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AuditManagerServiceException as __BaseException } from "./AuditManagerServiceException"; /** *

Your account isn't registered with Audit Manager. Check the delegated * administrator setup on the Audit Manager settings page, and try again.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AccountStatus { @@ -1136,19 +1149,28 @@ export namespace AssociateAssessmentReportEvidenceFolderResponse { *

An internal service error occurred during the processing of your request. Try again * later.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The resource that's specified in the request can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The unique identifier for the resource.

*/ @@ -1158,6 +1180,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of resource that's affected by the error.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -1194,10 +1230,9 @@ export enum ValidationExceptionReason { /** *

The request has invalid or missing parameters.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The reason the request failed validation.

*/ @@ -1207,6 +1242,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The fields that caused the error, if applicable.

*/ fields?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fields = opts.fields; + } } export interface BatchAssociateAssessmentReportEvidenceRequest { diff --git a/clients/client-auditmanager/src/protocols/Aws_restJson1.ts b/clients/client-auditmanager/src/protocols/Aws_restJson1.ts index ccf0b545e4831..ff47dea1aa84b 100644 --- a/clients/client-auditmanager/src/protocols/Aws_restJson1.ts +++ b/clients/client-auditmanager/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -189,6 +188,7 @@ import { ValidateAssessmentReportIntegrityCommandInput, ValidateAssessmentReportIntegrityCommandOutput, } from "../commands/ValidateAssessmentReportIntegrityCommand"; +import { AuditManagerServiceException as __BaseException } from "../models/AuditManagerServiceException"; import { AccessDeniedException, Assessment, @@ -2302,57 +2302,31 @@ const deserializeAws_restJson1AssociateAssessmentReportEvidenceFolderCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchAssociateAssessmentReportEvidenceCommand = async ( @@ -2385,57 +2359,31 @@ const deserializeAws_restJson1BatchAssociateAssessmentReportEvidenceCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchCreateDelegationByAssessmentCommand = async ( @@ -2468,57 +2416,31 @@ const deserializeAws_restJson1BatchCreateDelegationByAssessmentCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDeleteDelegationByAssessmentCommand = async ( @@ -2547,57 +2469,31 @@ const deserializeAws_restJson1BatchDeleteDelegationByAssessmentCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDisassociateAssessmentReportEvidenceCommand = async ( @@ -2630,57 +2526,31 @@ const deserializeAws_restJson1BatchDisassociateAssessmentReportEvidenceCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchImportEvidenceToAssessmentControlCommand = async ( @@ -2709,57 +2579,31 @@ const deserializeAws_restJson1BatchImportEvidenceToAssessmentControlCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssessmentCommand = async ( @@ -2788,57 +2632,31 @@ const deserializeAws_restJson1CreateAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssessmentFrameworkCommand = async ( @@ -2867,57 +2685,31 @@ const deserializeAws_restJson1CreateAssessmentFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssessmentReportCommand = async ( @@ -2946,57 +2738,31 @@ const deserializeAws_restJson1CreateAssessmentReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateControlCommand = async ( @@ -3025,57 +2791,31 @@ const deserializeAws_restJson1CreateControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssessmentCommand = async ( @@ -3100,57 +2840,31 @@ const deserializeAws_restJson1DeleteAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssessmentFrameworkCommand = async ( @@ -3175,57 +2889,31 @@ const deserializeAws_restJson1DeleteAssessmentFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssessmentFrameworkShareCommand = async ( @@ -3250,57 +2938,31 @@ const deserializeAws_restJson1DeleteAssessmentFrameworkShareCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssessmentReportCommand = async ( @@ -3325,57 +2987,31 @@ const deserializeAws_restJson1DeleteAssessmentReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteControlCommand = async ( @@ -3400,57 +3036,31 @@ const deserializeAws_restJson1DeleteControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterAccountCommand = async ( @@ -3479,57 +3089,31 @@ const deserializeAws_restJson1DeregisterAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterOrganizationAdminAccountCommand = async ( @@ -3554,57 +3138,31 @@ const deserializeAws_restJson1DeregisterOrganizationAdminAccountCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateAssessmentReportEvidenceFolderCommand = async ( @@ -3629,57 +3187,31 @@ const deserializeAws_restJson1DisassociateAssessmentReportEvidenceFolderCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountStatusCommand = async ( @@ -3708,33 +3240,22 @@ const deserializeAws_restJson1GetAccountStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssessmentCommand = async ( @@ -3767,57 +3288,31 @@ const deserializeAws_restJson1GetAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssessmentFrameworkCommand = async ( @@ -3846,57 +3341,31 @@ const deserializeAws_restJson1GetAssessmentFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssessmentReportUrlCommand = async ( @@ -3925,57 +3394,31 @@ const deserializeAws_restJson1GetAssessmentReportUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChangeLogsCommand = async ( @@ -4008,57 +3451,31 @@ const deserializeAws_restJson1GetChangeLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetControlCommand = async ( @@ -4087,57 +3504,31 @@ const deserializeAws_restJson1GetControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDelegationsCommand = async ( @@ -4170,49 +3561,28 @@ const deserializeAws_restJson1GetDelegationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEvidenceCommand = async ( @@ -4241,57 +3611,31 @@ const deserializeAws_restJson1GetEvidenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEvidenceByEvidenceFolderCommand = async ( @@ -4324,57 +3668,31 @@ const deserializeAws_restJson1GetEvidenceByEvidenceFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEvidenceFolderCommand = async ( @@ -4403,57 +3721,31 @@ const deserializeAws_restJson1GetEvidenceFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEvidenceFoldersByAssessmentCommand = async ( @@ -4486,57 +3778,31 @@ const deserializeAws_restJson1GetEvidenceFoldersByAssessmentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEvidenceFoldersByAssessmentControlCommand = async ( @@ -4569,57 +3835,31 @@ const deserializeAws_restJson1GetEvidenceFoldersByAssessmentControlCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightsCommand = async ( @@ -4648,41 +3888,25 @@ const deserializeAws_restJson1GetInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightsByAssessmentCommand = async ( @@ -4711,57 +3935,31 @@ const deserializeAws_restJson1GetInsightsByAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetOrganizationAdminAccountCommand = async ( @@ -4794,57 +3992,31 @@ const deserializeAws_restJson1GetOrganizationAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServicesInScopeCommand = async ( @@ -4873,49 +4045,28 @@ const deserializeAws_restJson1GetServicesInScopeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSettingsCommand = async ( @@ -4944,41 +4095,25 @@ const deserializeAws_restJson1GetSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssessmentControlInsightsByControlDomainCommand = async ( @@ -5014,57 +4149,31 @@ const deserializeAws_restJson1ListAssessmentControlInsightsByControlDomainComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssessmentFrameworksCommand = async ( @@ -5097,49 +4206,28 @@ const deserializeAws_restJson1ListAssessmentFrameworksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssessmentFrameworkShareRequestsCommand = async ( @@ -5175,49 +4263,28 @@ const deserializeAws_restJson1ListAssessmentFrameworkShareRequestsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssessmentReportsCommand = async ( @@ -5250,49 +4317,28 @@ const deserializeAws_restJson1ListAssessmentReportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssessmentsCommand = async ( @@ -5325,49 +4371,28 @@ const deserializeAws_restJson1ListAssessmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListControlDomainInsightsCommand = async ( @@ -5403,57 +4428,31 @@ const deserializeAws_restJson1ListControlDomainInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListControlDomainInsightsByAssessmentCommand = async ( @@ -5489,57 +4488,31 @@ const deserializeAws_restJson1ListControlDomainInsightsByAssessmentCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListControlInsightsByControlDomainCommand = async ( @@ -5575,57 +4548,31 @@ const deserializeAws_restJson1ListControlInsightsByControlDomainCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListControlsCommand = async ( @@ -5658,49 +4605,28 @@ const deserializeAws_restJson1ListControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListKeywordsForDataSourceCommand = async ( @@ -5733,49 +4659,28 @@ const deserializeAws_restJson1ListKeywordsForDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNotificationsCommand = async ( @@ -5808,49 +4713,28 @@ const deserializeAws_restJson1ListNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -5879,49 +4763,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterAccountCommand = async ( @@ -5950,57 +4813,31 @@ const deserializeAws_restJson1RegisterAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterOrganizationAdminAccountCommand = async ( @@ -6033,57 +4870,31 @@ const deserializeAws_restJson1RegisterOrganizationAdminAccountCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartAssessmentFrameworkShareCommand = async ( @@ -6115,57 +4926,31 @@ const deserializeAws_restJson1StartAssessmentFrameworkShareCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -6190,49 +4975,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -6257,49 +5021,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssessmentCommand = async ( @@ -6328,57 +5071,31 @@ const deserializeAws_restJson1UpdateAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssessmentControlCommand = async ( @@ -6407,57 +5124,31 @@ const deserializeAws_restJson1UpdateAssessmentControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssessmentControlSetStatusCommand = async ( @@ -6486,57 +5177,31 @@ const deserializeAws_restJson1UpdateAssessmentControlSetStatusCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssessmentFrameworkCommand = async ( @@ -6565,57 +5230,31 @@ const deserializeAws_restJson1UpdateAssessmentFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssessmentFrameworkShareCommand = async ( @@ -6647,57 +5286,31 @@ const deserializeAws_restJson1UpdateAssessmentFrameworkShareCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssessmentStatusCommand = async ( @@ -6726,57 +5339,31 @@ const deserializeAws_restJson1UpdateAssessmentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateControlCommand = async ( @@ -6805,57 +5392,31 @@ const deserializeAws_restJson1UpdateControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSettingsCommand = async ( @@ -6884,49 +5445,28 @@ const deserializeAws_restJson1UpdateSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ValidateAssessmentReportIntegrityCommand = async ( @@ -6971,105 +5511,70 @@ const deserializeAws_restJson1ValidateAssessmentReportIntegrityCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.auditmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.auditmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.auditmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.auditmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -7080,21 +5585,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fields: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fields !== undefined && data.fields !== null) { contents.fields = deserializeAws_restJson1ValidationExceptionFieldList(data.fields, context); @@ -7105,7 +5607,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AssessmentReportsDestination = ( diff --git a/clients/client-auto-scaling-plans/src/index.ts b/clients/client-auto-scaling-plans/src/index.ts index ac863d43bd49a..e2a2cfaaf35ee 100644 --- a/clients/client-auto-scaling-plans/src/index.ts +++ b/clients/client-auto-scaling-plans/src/index.ts @@ -2,3 +2,4 @@ export * from "./AutoScalingPlans"; export * from "./AutoScalingPlansClient"; export * from "./commands"; export * from "./models"; +export { AutoScalingPlansServiceException } from "./models/AutoScalingPlansServiceException"; diff --git a/clients/client-auto-scaling-plans/src/models/AutoScalingPlansServiceException.ts b/clients/client-auto-scaling-plans/src/models/AutoScalingPlansServiceException.ts new file mode 100644 index 0000000000000..85b3bc4dc94d2 --- /dev/null +++ b/clients/client-auto-scaling-plans/src/models/AutoScalingPlansServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AutoScalingPlans service. + */ +export class AutoScalingPlansServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AutoScalingPlansServiceException.prototype); + } +} diff --git a/clients/client-auto-scaling-plans/src/models/models_0.ts b/clients/client-auto-scaling-plans/src/models/models_0.ts index 332b0ee682f1b..b54f9a981c602 100644 --- a/clients/client-auto-scaling-plans/src/models/models_0.ts +++ b/clients/client-auto-scaling-plans/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AutoScalingPlansServiceException as __BaseException } from "./AutoScalingPlansServiceException"; /** *

Concurrent updates caused an exception, for example, if you request an update to a * scaling plan that already has a pending update.

*/ -export interface ConcurrentUpdateException extends __SmithyException, $MetadataBearer { - name: "ConcurrentUpdateException"; - $fault: "server"; +export class ConcurrentUpdateException extends __BaseException { + readonly name: "ConcurrentUpdateException" = "ConcurrentUpdateException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentUpdateException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentUpdateException.prototype); + this.Message = opts.Message; + } } /** @@ -709,29 +724,65 @@ export namespace CreateScalingPlanResponse { /** *

The service encountered an internal error.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

Your account exceeded a limit. This exception is thrown when a per-account resource * limit is exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

An exception was thrown for a validation issue. Review the parameters provided.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DeleteScalingPlanRequest { @@ -770,10 +821,22 @@ export namespace DeleteScalingPlanResponse { /** *

The specified object could not be found.

*/ -export interface ObjectNotFoundException extends __SmithyException, $MetadataBearer { - name: "ObjectNotFoundException"; - $fault: "client"; +export class ObjectNotFoundException extends __BaseException { + readonly name: "ObjectNotFoundException" = "ObjectNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeScalingPlanResourcesRequest { @@ -1007,10 +1070,22 @@ export namespace DescribeScalingPlanResourcesResponse { /** *

The token provided is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface DescribeScalingPlansRequest { diff --git a/clients/client-auto-scaling-plans/src/protocols/Aws_json1_1.ts b/clients/client-auto-scaling-plans/src/protocols/Aws_json1_1.ts index bcf91ac8af49f..f5c25e91307c5 100644 --- a/clients/client-auto-scaling-plans/src/protocols/Aws_json1_1.ts +++ b/clients/client-auto-scaling-plans/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateScalingPlanCommandInput, CreateScalingPlanCommandOutput } from "../commands/CreateScalingPlanCommand"; @@ -34,6 +33,7 @@ import { GetScalingPlanResourceForecastDataCommandOutput, } from "../commands/GetScalingPlanResourceForecastDataCommand"; import { UpdateScalingPlanCommandInput, UpdateScalingPlanCommandOutput } from "../commands/UpdateScalingPlanCommand"; +import { AutoScalingPlansServiceException as __BaseException } from "../models/AutoScalingPlansServiceException"; import { ApplicationSource, ConcurrentUpdateException, @@ -171,57 +171,31 @@ const deserializeAws_json1_1CreateScalingPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.autoscalingplans#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.autoscalingplans#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.autoscalingplans#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.autoscalingplans#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteScalingPlanCommand = async ( @@ -249,57 +223,31 @@ const deserializeAws_json1_1DeleteScalingPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.autoscalingplans#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.autoscalingplans#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.autoscalingplans#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.autoscalingplans#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScalingPlanResourcesCommand = async ( @@ -327,57 +275,31 @@ const deserializeAws_json1_1DescribeScalingPlanResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.autoscalingplans#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.autoscalingplans#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.autoscalingplans#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.autoscalingplans#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScalingPlansCommand = async ( @@ -405,57 +327,31 @@ const deserializeAws_json1_1DescribeScalingPlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.autoscalingplans#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.autoscalingplans#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.autoscalingplans#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.autoscalingplans#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetScalingPlanResourceForecastDataCommand = async ( @@ -483,41 +379,25 @@ const deserializeAws_json1_1GetScalingPlanResourceForecastDataCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.autoscalingplans#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.autoscalingplans#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateScalingPlanCommand = async ( @@ -545,57 +425,31 @@ const deserializeAws_json1_1UpdateScalingPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentUpdateException": case "com.amazonaws.autoscalingplans#ConcurrentUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentUpdateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.autoscalingplans#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.autoscalingplans#ObjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ObjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.autoscalingplans#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentUpdateExceptionResponse = async ( @@ -604,13 +458,11 @@ const deserializeAws_json1_1ConcurrentUpdateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentUpdateException(body, context); - const contents: ConcurrentUpdateException = { - name: "ConcurrentUpdateException", - $fault: "server", + const exception = new ConcurrentUpdateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceExceptionResponse = async ( @@ -619,13 +471,11 @@ const deserializeAws_json1_1InternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceException(body, context); - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", + const exception = new InternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -634,13 +484,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -649,13 +497,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ObjectNotFoundExceptionResponse = async ( @@ -664,13 +510,11 @@ const deserializeAws_json1_1ObjectNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ObjectNotFoundException(body, context); - const contents: ObjectNotFoundException = { - name: "ObjectNotFoundException", - $fault: "client", + const exception = new ObjectNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -679,13 +523,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ApplicationSource = (input: ApplicationSource, context: __SerdeContext): any => { diff --git a/clients/client-auto-scaling/src/index.ts b/clients/client-auto-scaling/src/index.ts index e549d9169dade..a1a8f134cfb37 100644 --- a/clients/client-auto-scaling/src/index.ts +++ b/clients/client-auto-scaling/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { AutoScalingServiceException } from "./models/AutoScalingServiceException"; diff --git a/clients/client-auto-scaling/src/models/AutoScalingServiceException.ts b/clients/client-auto-scaling/src/models/AutoScalingServiceException.ts new file mode 100644 index 0000000000000..e980a2a6428ce --- /dev/null +++ b/clients/client-auto-scaling/src/models/AutoScalingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from AutoScaling service. + */ +export class AutoScalingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, AutoScalingServiceException.prototype); + } +} diff --git a/clients/client-auto-scaling/src/models/models_0.ts b/clients/client-auto-scaling/src/models/models_0.ts index de36a040a196d..3bc480caa2f5e 100644 --- a/clients/client-auto-scaling/src/models/models_0.ts +++ b/clients/client-auto-scaling/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { AutoScalingServiceException as __BaseException } from "./AutoScalingServiceException"; /** *

Specifies the minimum and maximum for the AcceleratorCount object when @@ -77,10 +80,20 @@ export enum AcceleratorType { *

The request failed because an active instance refresh for the specified Auto Scaling group was * not found.

*/ -export interface ActiveInstanceRefreshNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ActiveInstanceRefreshNotFoundFault"; - $fault: "client"; - message?: string; +export class ActiveInstanceRefreshNotFoundFault extends __BaseException { + readonly name: "ActiveInstanceRefreshNotFoundFault" = "ActiveInstanceRefreshNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActiveInstanceRefreshNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActiveInstanceRefreshNotFoundFault.prototype); + } } export enum ScalingActivityStatusCode { @@ -262,13 +275,20 @@ export namespace Alarm { /** *

You already have an Auto Scaling group or launch configuration with this name.

*/ -export interface AlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsFault"; - $fault: "client"; +export class AlreadyExistsFault extends __BaseException { + readonly name: "AlreadyExistsFault" = "AlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsFault.prototype); + } } export interface AttachInstancesQuery { @@ -296,22 +316,39 @@ export namespace AttachInstancesQuery { *

You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling group, * instance, or load balancer).

*/ -export interface ResourceContentionFault extends __SmithyException, $MetadataBearer { - name: "ResourceContentionFault"; - $fault: "server"; +export class ResourceContentionFault extends __BaseException { + readonly name: "ResourceContentionFault" = "ResourceContentionFault"; + readonly $fault: "server" = "server"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceContentionFault", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ResourceContentionFault.prototype); + } } /** *

The service-linked role is not yet ready for use.

*/ -export interface ServiceLinkedRoleFailure extends __SmithyException, $MetadataBearer { - name: "ServiceLinkedRoleFailure"; - $fault: "server"; - message?: string; +export class ServiceLinkedRoleFailure extends __BaseException { + readonly name: "ServiceLinkedRoleFailure" = "ServiceLinkedRoleFailure"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLinkedRoleFailure", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLinkedRoleFailure.prototype); + } } export interface AttachLoadBalancersResultType {} @@ -563,13 +600,20 @@ export namespace BatchPutScheduledUpdateGroupActionType { * more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API * Reference.

*/ -export interface LimitExceededFault extends __SmithyException, $MetadataBearer { - name: "LimitExceededFault"; - $fault: "client"; +export class LimitExceededFault extends __BaseException { + readonly name: "LimitExceededFault" = "LimitExceededFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededFault.prototype); + } } export interface CancelInstanceRefreshAnswer { @@ -2153,13 +2197,20 @@ export namespace CreateOrUpdateTagsType { /** *

The operation can't be performed because the resource is in use.

*/ -export interface ResourceInUseFault extends __SmithyException, $MetadataBearer { - name: "ResourceInUseFault"; - $fault: "client"; +export class ResourceInUseFault extends __BaseException { + readonly name: "ResourceInUseFault" = "ResourceInUseFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseFault.prototype); + } } export interface DeleteAutoScalingGroupType { @@ -2189,13 +2240,20 @@ export namespace DeleteAutoScalingGroupType { *

The operation can't be performed because there are scaling activities in * progress.

*/ -export interface ScalingActivityInProgressFault extends __SmithyException, $MetadataBearer { - name: "ScalingActivityInProgressFault"; - $fault: "client"; +export class ScalingActivityInProgressFault extends __BaseException { + readonly name: "ScalingActivityInProgressFault" = "ScalingActivityInProgressFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScalingActivityInProgressFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScalingActivityInProgressFault.prototype); + } } export interface LaunchConfigurationNameType { @@ -3078,13 +3136,20 @@ export namespace AutoScalingGroupsType { /** *

The NextToken value is not valid.

*/ -export interface InvalidNextToken extends __SmithyException, $MetadataBearer { - name: "InvalidNextToken"; - $fault: "client"; +export class InvalidNextToken extends __BaseException { + readonly name: "InvalidNextToken" = "InvalidNextToken"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextToken.prototype); + } } /** @@ -7151,10 +7216,20 @@ export namespace SetInstanceProtectionQuery { *

The request failed because an active instance refresh operation already exists for the * specified Auto Scaling group.

*/ -export interface InstanceRefreshInProgressFault extends __SmithyException, $MetadataBearer { - name: "InstanceRefreshInProgressFault"; - $fault: "client"; - message?: string; +export class InstanceRefreshInProgressFault extends __BaseException { + readonly name: "InstanceRefreshInProgressFault" = "InstanceRefreshInProgressFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceRefreshInProgressFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceRefreshInProgressFault.prototype); + } } export interface StartInstanceRefreshAnswer { diff --git a/clients/client-auto-scaling/src/protocols/Aws_query.ts b/clients/client-auto-scaling/src/protocols/Aws_query.ts index 088d777d641da..f2a25ca4a8ca8 100644 --- a/clients/client-auto-scaling/src/protocols/Aws_query.ts +++ b/clients/client-auto-scaling/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -209,6 +208,7 @@ import { UpdateAutoScalingGroupCommandInput, UpdateAutoScalingGroupCommandOutput, } from "../commands/UpdateAutoScalingGroupCommand"; +import { AutoScalingServiceException as __BaseException } from "../models/AutoScalingServiceException"; import { AcceleratorCountRequest, AcceleratorManufacturer, @@ -1372,41 +1372,25 @@ const deserializeAws_queryAttachInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAttachLoadBalancersCommand = async ( @@ -1434,41 +1418,25 @@ const deserializeAws_queryAttachLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAttachLoadBalancerTargetGroupsCommand = async ( @@ -1499,41 +1467,25 @@ const deserializeAws_queryAttachLoadBalancerTargetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchDeleteScheduledActionCommand = async ( @@ -1561,33 +1513,22 @@ const deserializeAws_queryBatchDeleteScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchPutScheduledUpdateGroupActionCommand = async ( @@ -1618,49 +1559,28 @@ const deserializeAws_queryBatchPutScheduledUpdateGroupActionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsFault": case "com.amazonaws.autoscaling#AlreadyExistsFault": - response = { - ...(await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCancelInstanceRefreshCommand = async ( @@ -1688,49 +1608,28 @@ const deserializeAws_queryCancelInstanceRefreshCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActiveInstanceRefreshNotFoundFault": case "com.amazonaws.autoscaling#ActiveInstanceRefreshNotFoundFault": - response = { - ...(await deserializeAws_queryActiveInstanceRefreshNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryActiveInstanceRefreshNotFoundFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCompleteLifecycleActionCommand = async ( @@ -1758,33 +1657,22 @@ const deserializeAws_queryCompleteLifecycleActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateAutoScalingGroupCommand = async ( @@ -1809,57 +1697,31 @@ const deserializeAws_queryCreateAutoScalingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsFault": case "com.amazonaws.autoscaling#AlreadyExistsFault": - response = { - ...(await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLaunchConfigurationCommand = async ( @@ -1884,49 +1746,28 @@ const deserializeAws_queryCreateLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsFault": case "com.amazonaws.autoscaling#AlreadyExistsFault": - response = { - ...(await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateOrUpdateTagsCommand = async ( @@ -1951,57 +1792,31 @@ const deserializeAws_queryCreateOrUpdateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsFault": case "com.amazonaws.autoscaling#AlreadyExistsFault": - response = { - ...(await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAutoScalingGroupCommand = async ( @@ -2026,49 +1841,28 @@ const deserializeAws_queryDeleteAutoScalingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); case "ScalingActivityInProgressFault": case "com.amazonaws.autoscaling#ScalingActivityInProgressFault": - response = { - ...(await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLaunchConfigurationCommand = async ( @@ -2093,41 +1887,25 @@ const deserializeAws_queryDeleteLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLifecycleHookCommand = async ( @@ -2155,33 +1933,22 @@ const deserializeAws_queryDeleteLifecycleHookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteNotificationConfigurationCommand = async ( @@ -2206,33 +1973,22 @@ const deserializeAws_queryDeleteNotificationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeletePolicyCommand = async ( @@ -2257,41 +2013,25 @@ const deserializeAws_queryDeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteScheduledActionCommand = async ( @@ -2316,33 +2056,22 @@ const deserializeAws_queryDeleteScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteTagsCommand = async ( @@ -2367,41 +2096,25 @@ const deserializeAws_queryDeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteWarmPoolCommand = async ( @@ -2429,57 +2142,31 @@ const deserializeAws_queryDeleteWarmPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); case "ScalingActivityInProgressFault": case "com.amazonaws.autoscaling#ScalingActivityInProgressFault": - response = { - ...(await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountLimitsCommand = async ( @@ -2507,33 +2194,22 @@ const deserializeAws_queryDescribeAccountLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAdjustmentTypesCommand = async ( @@ -2561,33 +2237,22 @@ const deserializeAws_queryDescribeAdjustmentTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAutoScalingGroupsCommand = async ( @@ -2615,41 +2280,25 @@ const deserializeAws_queryDescribeAutoScalingGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAutoScalingInstancesCommand = async ( @@ -2677,41 +2326,25 @@ const deserializeAws_queryDescribeAutoScalingInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAutoScalingNotificationTypesCommand = async ( @@ -2742,33 +2375,22 @@ const deserializeAws_queryDescribeAutoScalingNotificationTypesCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeInstanceRefreshesCommand = async ( @@ -2796,41 +2418,25 @@ const deserializeAws_queryDescribeInstanceRefreshesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLaunchConfigurationsCommand = async ( @@ -2858,41 +2464,25 @@ const deserializeAws_queryDescribeLaunchConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLifecycleHooksCommand = async ( @@ -2920,33 +2510,22 @@ const deserializeAws_queryDescribeLifecycleHooksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLifecycleHookTypesCommand = async ( @@ -2974,33 +2553,22 @@ const deserializeAws_queryDescribeLifecycleHookTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancersCommand = async ( @@ -3028,41 +2596,25 @@ const deserializeAws_queryDescribeLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancerTargetGroupsCommand = async ( @@ -3093,41 +2645,25 @@ const deserializeAws_queryDescribeLoadBalancerTargetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeMetricCollectionTypesCommand = async ( @@ -3155,33 +2691,22 @@ const deserializeAws_queryDescribeMetricCollectionTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeNotificationConfigurationsCommand = async ( @@ -3212,41 +2737,25 @@ const deserializeAws_queryDescribeNotificationConfigurationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePoliciesCommand = async ( @@ -3274,49 +2783,28 @@ const deserializeAws_queryDescribePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeScalingActivitiesCommand = async ( @@ -3344,41 +2832,25 @@ const deserializeAws_queryDescribeScalingActivitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeScalingProcessTypesCommand = async ( @@ -3406,33 +2878,22 @@ const deserializeAws_queryDescribeScalingProcessTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeScheduledActionsCommand = async ( @@ -3460,41 +2921,25 @@ const deserializeAws_queryDescribeScheduledActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTagsCommand = async ( @@ -3522,41 +2967,25 @@ const deserializeAws_queryDescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTerminationPolicyTypesCommand = async ( @@ -3587,33 +3016,22 @@ const deserializeAws_queryDescribeTerminationPolicyTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeWarmPoolCommand = async ( @@ -3641,49 +3059,28 @@ const deserializeAws_queryDescribeWarmPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.autoscaling#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachInstancesCommand = async ( @@ -3711,33 +3108,22 @@ const deserializeAws_queryDetachInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachLoadBalancersCommand = async ( @@ -3765,33 +3151,22 @@ const deserializeAws_queryDetachLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachLoadBalancerTargetGroupsCommand = async ( @@ -3822,33 +3197,22 @@ const deserializeAws_queryDetachLoadBalancerTargetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisableMetricsCollectionCommand = async ( @@ -3873,33 +3237,22 @@ const deserializeAws_queryDisableMetricsCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableMetricsCollectionCommand = async ( @@ -3924,33 +3277,22 @@ const deserializeAws_queryEnableMetricsCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnterStandbyCommand = async ( @@ -3978,33 +3320,22 @@ const deserializeAws_queryEnterStandbyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryExecutePolicyCommand = async ( @@ -4029,41 +3360,25 @@ const deserializeAws_queryExecutePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ScalingActivityInProgressFault": case "com.amazonaws.autoscaling#ScalingActivityInProgressFault": - response = { - ...(await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryExitStandbyCommand = async ( @@ -4091,33 +3406,22 @@ const deserializeAws_queryExitStandbyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetPredictiveScalingForecastCommand = async ( @@ -4145,33 +3449,22 @@ const deserializeAws_queryGetPredictiveScalingForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutLifecycleHookCommand = async ( @@ -4199,41 +3492,25 @@ const deserializeAws_queryPutLifecycleHookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutNotificationConfigurationCommand = async ( @@ -4258,49 +3535,28 @@ const deserializeAws_queryPutNotificationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutScalingPolicyCommand = async ( @@ -4328,49 +3584,28 @@ const deserializeAws_queryPutScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutScheduledUpdateGroupActionCommand = async ( @@ -4395,49 +3630,28 @@ const deserializeAws_queryPutScheduledUpdateGroupActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsFault": case "com.amazonaws.autoscaling#AlreadyExistsFault": - response = { - ...(await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutWarmPoolCommand = async ( @@ -4465,41 +3679,25 @@ const deserializeAws_queryPutWarmPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRecordLifecycleActionHeartbeatCommand = async ( @@ -4530,33 +3728,22 @@ const deserializeAws_queryRecordLifecycleActionHeartbeatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResumeProcessesCommand = async ( @@ -4581,41 +3768,25 @@ const deserializeAws_queryResumeProcessesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetDesiredCapacityCommand = async ( @@ -4640,41 +3811,25 @@ const deserializeAws_querySetDesiredCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ScalingActivityInProgressFault": case "com.amazonaws.autoscaling#ScalingActivityInProgressFault": - response = { - ...(await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetInstanceHealthCommand = async ( @@ -4699,33 +3854,22 @@ const deserializeAws_querySetInstanceHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetInstanceProtectionCommand = async ( @@ -4753,41 +3897,25 @@ const deserializeAws_querySetInstanceProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartInstanceRefreshCommand = async ( @@ -4815,49 +3943,28 @@ const deserializeAws_queryStartInstanceRefreshCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceRefreshInProgressFault": case "com.amazonaws.autoscaling#InstanceRefreshInProgressFault": - response = { - ...(await deserializeAws_queryInstanceRefreshInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceRefreshInProgressFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.autoscaling#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySuspendProcessesCommand = async ( @@ -4882,41 +3989,25 @@ const deserializeAws_querySuspendProcessesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ResourceInUseFault": case "com.amazonaws.autoscaling#ResourceInUseFault": - response = { - ...(await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTerminateInstanceInAutoScalingGroupCommand = async ( @@ -4944,41 +4035,25 @@ const deserializeAws_queryTerminateInstanceInAutoScalingGroupCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ScalingActivityInProgressFault": case "com.amazonaws.autoscaling#ScalingActivityInProgressFault": - response = { - ...(await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateAutoScalingGroupCommand = async ( @@ -5003,49 +4078,28 @@ const deserializeAws_queryUpdateAutoScalingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceContentionFault": case "com.amazonaws.autoscaling#ResourceContentionFault": - response = { - ...(await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceContentionFaultResponse(parsedOutput, context); case "ScalingActivityInProgressFault": case "com.amazonaws.autoscaling#ScalingActivityInProgressFault": - response = { - ...(await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScalingActivityInProgressFaultResponse(parsedOutput, context); case "ServiceLinkedRoleFailure": case "com.amazonaws.autoscaling#ServiceLinkedRoleFailure": - response = { - ...(await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleFailureResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryActiveInstanceRefreshNotFoundFaultResponse = async ( @@ -5054,13 +4108,11 @@ const deserializeAws_queryActiveInstanceRefreshNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryActiveInstanceRefreshNotFoundFault(body.Error, context); - const contents: ActiveInstanceRefreshNotFoundFault = { - name: "ActiveInstanceRefreshNotFoundFault", - $fault: "client", + const exception = new ActiveInstanceRefreshNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAlreadyExistsFaultResponse = async ( @@ -5069,13 +4121,11 @@ const deserializeAws_queryAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAlreadyExistsFault(body.Error, context); - const contents: AlreadyExistsFault = { - name: "AlreadyExistsFault", - $fault: "client", + const exception = new AlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInstanceRefreshInProgressFaultResponse = async ( @@ -5084,13 +4134,11 @@ const deserializeAws_queryInstanceRefreshInProgressFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInstanceRefreshInProgressFault(body.Error, context); - const contents: InstanceRefreshInProgressFault = { - name: "InstanceRefreshInProgressFault", - $fault: "client", + const exception = new InstanceRefreshInProgressFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidNextTokenResponse = async ( @@ -5099,13 +4147,11 @@ const deserializeAws_queryInvalidNextTokenResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidNextToken(body.Error, context); - const contents: InvalidNextToken = { - name: "InvalidNextToken", - $fault: "client", + const exception = new InvalidNextToken({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededFaultResponse = async ( @@ -5114,13 +4160,11 @@ const deserializeAws_queryLimitExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededFault(body.Error, context); - const contents: LimitExceededFault = { - name: "LimitExceededFault", - $fault: "client", + const exception = new LimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceContentionFaultResponse = async ( @@ -5129,13 +4173,11 @@ const deserializeAws_queryResourceContentionFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceContentionFault(body.Error, context); - const contents: ResourceContentionFault = { - name: "ResourceContentionFault", - $fault: "server", + const exception = new ResourceContentionFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceInUseFaultResponse = async ( @@ -5144,13 +4186,11 @@ const deserializeAws_queryResourceInUseFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceInUseFault(body.Error, context); - const contents: ResourceInUseFault = { - name: "ResourceInUseFault", - $fault: "client", + const exception = new ResourceInUseFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryScalingActivityInProgressFaultResponse = async ( @@ -5159,13 +4199,11 @@ const deserializeAws_queryScalingActivityInProgressFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryScalingActivityInProgressFault(body.Error, context); - const contents: ScalingActivityInProgressFault = { - name: "ScalingActivityInProgressFault", - $fault: "client", + const exception = new ScalingActivityInProgressFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryServiceLinkedRoleFailureResponse = async ( @@ -5174,13 +4212,11 @@ const deserializeAws_queryServiceLinkedRoleFailureResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryServiceLinkedRoleFailure(body.Error, context); - const contents: ServiceLinkedRoleFailure = { - name: "ServiceLinkedRoleFailure", - $fault: "server", + const exception = new ServiceLinkedRoleFailure({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAcceleratorCountRequest = (input: AcceleratorCountRequest, context: __SerdeContext): any => { diff --git a/clients/client-backup-gateway/src/index.ts b/clients/client-backup-gateway/src/index.ts index dbb9d3b2f8dd3..2444ae4e315da 100644 --- a/clients/client-backup-gateway/src/index.ts +++ b/clients/client-backup-gateway/src/index.ts @@ -3,3 +3,4 @@ export * from "./BackupGatewayClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { BackupGatewayServiceException } from "./models/BackupGatewayServiceException"; diff --git a/clients/client-backup-gateway/src/models/BackupGatewayServiceException.ts b/clients/client-backup-gateway/src/models/BackupGatewayServiceException.ts new file mode 100644 index 0000000000000..37e0aacdd54d4 --- /dev/null +++ b/clients/client-backup-gateway/src/models/BackupGatewayServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from BackupGateway service. + */ +export class BackupGatewayServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, BackupGatewayServiceException.prototype); + } +} diff --git a/clients/client-backup-gateway/src/models/models_0.ts b/clients/client-backup-gateway/src/models/models_0.ts index a666896bc45b8..b4f198548bcb8 100644 --- a/clients/client-backup-gateway/src/models/models_0.ts +++ b/clients/client-backup-gateway/src/models/models_0.ts @@ -1,18 +1,33 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { BackupGatewayServiceException as __BaseException } from "./BackupGatewayServiceException"; /** *

The operation cannot proceed because you have insufficient permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

A description of why you have insufficient permissions.

*/ ErrorCode: string | undefined; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface AssociateGatewayToServerInput { @@ -56,43 +71,82 @@ export namespace AssociateGatewayToServerOutput { /** *

The operation cannot proceed because it is not supported.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

A description of why the operation is not supported.

*/ ErrorCode: string | undefined; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

The operation did not succeed because an internal error occurred. Try again later.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

A description of which internal error occured.

*/ ErrorCode?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

The operation did not succeed because a validation error occurred.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A description of what caused the validation error.

*/ ErrorCode?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export enum GatewayType { @@ -207,15 +261,28 @@ export namespace DeleteGatewayOutput { /** *

A resource that is required for the action wasn't found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

A description of which resource wasn't found.

*/ ErrorCode?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface DisassociateGatewayFromServerInput { diff --git a/clients/client-backup-gateway/src/protocols/Aws_json1_0.ts b/clients/client-backup-gateway/src/protocols/Aws_json1_0.ts index 1836e17a72754..0c2fda724a705 100644 --- a/clients/client-backup-gateway/src/protocols/Aws_json1_0.ts +++ b/clients/client-backup-gateway/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -54,6 +53,7 @@ import { UpdateGatewayInformationCommandOutput, } from "../commands/UpdateGatewayInformationCommand"; import { UpdateHypervisorCommandInput, UpdateHypervisorCommandOutput } from "../commands/UpdateHypervisorCommand"; +import { BackupGatewayServiceException as __BaseException } from "../models/BackupGatewayServiceException"; import { AccessDeniedException, AssociateGatewayToServerInput, @@ -331,49 +331,28 @@ const deserializeAws_json1_0AssociateGatewayToServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backupgateway#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateGatewayCommand = async ( @@ -401,41 +380,25 @@ const deserializeAws_json1_0CreateGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteGatewayCommand = async ( @@ -463,49 +426,28 @@ const deserializeAws_json1_0DeleteGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteHypervisorCommand = async ( @@ -533,57 +475,31 @@ const deserializeAws_json1_0DeleteHypervisorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.backupgateway#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DisassociateGatewayFromServerCommand = async ( @@ -611,57 +527,31 @@ const deserializeAws_json1_0DisassociateGatewayFromServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backupgateway#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ImportHypervisorConfigurationCommand = async ( @@ -689,49 +579,28 @@ const deserializeAws_json1_0ImportHypervisorConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.backupgateway#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListGatewaysCommand = async ( @@ -759,41 +628,25 @@ const deserializeAws_json1_0ListGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListHypervisorsCommand = async ( @@ -821,41 +674,25 @@ const deserializeAws_json1_0ListHypervisorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -883,49 +720,28 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListVirtualMachinesCommand = async ( @@ -953,41 +769,25 @@ const deserializeAws_json1_0ListVirtualMachinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PutMaintenanceStartTimeCommand = async ( @@ -1015,57 +815,31 @@ const deserializeAws_json1_0PutMaintenanceStartTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backupgateway#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -1093,49 +867,28 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TestHypervisorConfigurationCommand = async ( @@ -1163,57 +916,31 @@ const deserializeAws_json1_0TestHypervisorConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backupgateway#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -1241,49 +968,28 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateGatewayInformationCommand = async ( @@ -1311,57 +1017,31 @@ const deserializeAws_json1_0UpdateGatewayInformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backupgateway#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateHypervisorCommand = async ( @@ -1389,57 +1069,31 @@ const deserializeAws_json1_0UpdateHypervisorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.backupgateway#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.backupgateway#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backupgateway#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.backupgateway#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -1448,13 +1102,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -1463,13 +1115,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -1478,13 +1128,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -1493,13 +1141,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -1508,13 +1154,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0AssociateGatewayToServerInput = ( diff --git a/clients/client-backup/src/index.ts b/clients/client-backup/src/index.ts index f381b108f4fe0..b203ae4ab901e 100644 --- a/clients/client-backup/src/index.ts +++ b/clients/client-backup/src/index.ts @@ -3,3 +3,4 @@ export * from "./BackupClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { BackupServiceException } from "./models/BackupServiceException"; diff --git a/clients/client-backup/src/models/BackupServiceException.ts b/clients/client-backup/src/models/BackupServiceException.ts new file mode 100644 index 0000000000000..54594b6ce8015 --- /dev/null +++ b/clients/client-backup/src/models/BackupServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Backup service. + */ +export class BackupServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, BackupServiceException.prototype); + } +} diff --git a/clients/client-backup/src/models/models_0.ts b/clients/client-backup/src/models/models_0.ts index f0fcc6c414abb..07ab0d5e52e24 100644 --- a/clients/client-backup/src/models/models_0.ts +++ b/clients/client-backup/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { BackupServiceException as __BaseException } from "./BackupServiceException"; /** *

A list of backup options for each resource type.

@@ -42,9 +44,9 @@ export namespace AdvancedBackupSetting { /** *

The required resource already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -66,6 +68,23 @@ export interface AlreadyExistsException extends __SmithyException, $MetadataBear *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.CreatorRequestId = opts.CreatorRequestId; + this.Arn = opts.Arn; + this.Type = opts.Type; + this.Context = opts.Context; + } } /** @@ -1059,9 +1078,9 @@ export namespace CalculatedLifecycle { *

Backup can't perform the action that you requested until it finishes * performing a previous action. Try again later.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -1073,6 +1092,21 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } /** @@ -1333,9 +1367,9 @@ export namespace CreateBackupPlanOutput { *

Indicates that something is wrong with a parameter's value. For example, the value is * out of range.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -1347,15 +1381,30 @@ export interface InvalidParameterValueException extends __SmithyException, $Meta *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } /** *

A limit in the request has been exceeded; for example, a maximum number of items allowed * in a request.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -1367,14 +1416,29 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } /** *

Indicates that a required parameter is missing.

*/ -export interface MissingParameterValueException extends __SmithyException, $MetadataBearer { - name: "MissingParameterValueException"; - $fault: "client"; +export class MissingParameterValueException extends __BaseException { + readonly name: "MissingParameterValueException" = "MissingParameterValueException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -1386,14 +1450,29 @@ export interface MissingParameterValueException extends __SmithyException, $Meta *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingParameterValueException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } /** *

The request failed due to a temporary failure of the server.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Code?: string; Message?: string; /** @@ -1405,6 +1484,21 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } export interface CreateBackupSelectionInput { @@ -1844,9 +1938,9 @@ export namespace DeleteBackupPlanOutput { *

Indicates that something is wrong with the input to the request. For example, a * parameter is of the wrong type.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -1858,14 +1952,29 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } /** *

A resource that is required for the action doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -1877,6 +1986,21 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } export interface DeleteBackupSelectionInput { @@ -2018,9 +2142,9 @@ export namespace DeleteRecoveryPointInput { *

Backup is already performing an action on this recovery point. It can't * perform the action you requested until the first action finishes. Try again later.

*/ -export interface InvalidResourceStateException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceStateException"; - $fault: "client"; +export class InvalidResourceStateException extends __BaseException { + readonly name: "InvalidResourceStateException" = "InvalidResourceStateException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** @@ -2032,6 +2156,21 @@ export interface InvalidResourceStateException extends __SmithyException, $Metad *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceStateException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } export interface DeleteReportPlanInput { @@ -2053,9 +2192,9 @@ export namespace DeleteReportPlanInput { /** *

A dependent Amazon Web Services service or resource returned an error to the Backup service, and the action cannot be completed.

*/ -export interface DependencyFailureException extends __SmithyException, $MetadataBearer { - name: "DependencyFailureException"; - $fault: "server"; +export class DependencyFailureException extends __BaseException { + readonly name: "DependencyFailureException" = "DependencyFailureException"; + readonly $fault: "server" = "server"; Code?: string; Message?: string; /** @@ -2067,6 +2206,21 @@ export interface DependencyFailureException extends __SmithyException, $Metadata *

*/ Context?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DependencyFailureException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.Type = opts.Type; + this.Context = opts.Context; + } } export interface DescribeBackupJobInput { diff --git a/clients/client-backup/src/protocols/Aws_restJson1.ts b/clients/client-backup/src/protocols/Aws_restJson1.ts index ef71bcbbdd17a..3a93e10df8bcf 100644 --- a/clients/client-backup/src/protocols/Aws_restJson1.ts +++ b/clients/client-backup/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -178,6 +177,7 @@ import { UpdateRegionSettingsCommandOutput, } from "../commands/UpdateRegionSettingsCommand"; import { UpdateReportPlanCommandInput, UpdateReportPlanCommandOutput } from "../commands/UpdateReportPlanCommand"; +import { BackupServiceException as __BaseException } from "../models/BackupServiceException"; import { AdvancedBackupSetting, AlreadyExistsException, @@ -2404,65 +2404,34 @@ const deserializeAws_restJson1CreateBackupPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.backup#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackupSelectionCommand = async ( @@ -2499,65 +2468,34 @@ const deserializeAws_restJson1CreateBackupSelectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.backup#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBackupVaultCommand = async ( @@ -2594,65 +2532,34 @@ const deserializeAws_restJson1CreateBackupVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.backup#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFrameworkCommand = async ( @@ -2685,65 +2592,34 @@ const deserializeAws_restJson1CreateFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.backup#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateReportPlanCommand = async ( @@ -2780,65 +2656,34 @@ const deserializeAws_restJson1CreateReportPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.backup#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackupPlanCommand = async ( @@ -2879,65 +2724,34 @@ const deserializeAws_restJson1DeleteBackupPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackupSelectionCommand = async ( @@ -2962,57 +2776,31 @@ const deserializeAws_restJson1DeleteBackupSelectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackupVaultCommand = async ( @@ -3037,65 +2825,34 @@ const deserializeAws_restJson1DeleteBackupVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackupVaultAccessPolicyCommand = async ( @@ -3120,57 +2877,31 @@ const deserializeAws_restJson1DeleteBackupVaultAccessPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackupVaultLockConfigurationCommand = async ( @@ -3195,65 +2926,34 @@ const deserializeAws_restJson1DeleteBackupVaultLockConfigurationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBackupVaultNotificationsCommand = async ( @@ -3278,57 +2978,31 @@ const deserializeAws_restJson1DeleteBackupVaultNotificationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFrameworkCommand = async ( @@ -3353,65 +3027,34 @@ const deserializeAws_restJson1DeleteFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backup#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecoveryPointCommand = async ( @@ -3436,73 +3079,37 @@ const deserializeAws_restJson1DeleteRecoveryPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.backup#InvalidResourceStateException": - response = { - ...(await deserializeAws_restJson1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourceStateExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReportPlanCommand = async ( @@ -3527,65 +3134,34 @@ const deserializeAws_restJson1DeleteReportPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backup#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBackupJobCommand = async ( @@ -3692,65 +3268,34 @@ const deserializeAws_restJson1DescribeBackupJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyFailureException": case "com.amazonaws.backup#DependencyFailureException": - response = { - ...(await deserializeAws_restJson1DependencyFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBackupVaultCommand = async ( @@ -3815,57 +3360,31 @@ const deserializeAws_restJson1DescribeBackupVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCopyJobCommand = async ( @@ -3894,57 +3413,31 @@ const deserializeAws_restJson1DescribeCopyJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFrameworkCommand = async ( @@ -4001,57 +3494,31 @@ const deserializeAws_restJson1DescribeFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGlobalSettingsCommand = async ( @@ -4084,41 +3551,25 @@ const deserializeAws_restJson1DescribeGlobalSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProtectedResourceCommand = async ( @@ -4155,57 +3606,31 @@ const deserializeAws_restJson1DescribeProtectedResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRecoveryPointCommand = async ( @@ -4306,57 +3731,31 @@ const deserializeAws_restJson1DescribeRecoveryPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRegionSettingsCommand = async ( @@ -4395,33 +3794,22 @@ const deserializeAws_restJson1DescribeRegionSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReportJobCommand = async ( @@ -4450,49 +3838,28 @@ const deserializeAws_restJson1DescribeReportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReportPlanCommand = async ( @@ -4521,57 +3888,31 @@ const deserializeAws_restJson1DescribeReportPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRestoreJobCommand = async ( @@ -4648,65 +3989,34 @@ const deserializeAws_restJson1DescribeRestoreJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyFailureException": case "com.amazonaws.backup#DependencyFailureException": - response = { - ...(await deserializeAws_restJson1DependencyFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateRecoveryPointCommand = async ( @@ -4731,73 +4041,37 @@ const deserializeAws_restJson1DisassociateRecoveryPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.backup#InvalidResourceStateException": - response = { - ...(await deserializeAws_restJson1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourceStateExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportBackupPlanTemplateCommand = async ( @@ -4826,57 +4100,31 @@ const deserializeAws_restJson1ExportBackupPlanTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackupPlanCommand = async ( @@ -4940,57 +4188,31 @@ const deserializeAws_restJson1GetBackupPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackupPlanFromJSONCommand = async ( @@ -5019,65 +4241,34 @@ const deserializeAws_restJson1GetBackupPlanFromJSONCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackupPlanFromTemplateCommand = async ( @@ -5106,57 +4297,31 @@ const deserializeAws_restJson1GetBackupPlanFromTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackupSelectionCommand = async ( @@ -5201,57 +4366,31 @@ const deserializeAws_restJson1GetBackupSelectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackupVaultAccessPolicyCommand = async ( @@ -5288,57 +4427,31 @@ const deserializeAws_restJson1GetBackupVaultAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBackupVaultNotificationsCommand = async ( @@ -5379,57 +4492,31 @@ const deserializeAws_restJson1GetBackupVaultNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecoveryPointRestoreMetadataCommand = async ( @@ -5466,57 +4553,31 @@ const deserializeAws_restJson1GetRecoveryPointRestoreMetadataCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSupportedResourceTypesCommand = async ( @@ -5545,33 +4606,22 @@ const deserializeAws_restJson1GetSupportedResourceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackupJobsCommand = async ( @@ -5604,41 +4654,25 @@ const deserializeAws_restJson1ListBackupJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackupPlansCommand = async ( @@ -5671,57 +4705,31 @@ const deserializeAws_restJson1ListBackupPlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackupPlanTemplatesCommand = async ( @@ -5757,57 +4765,31 @@ const deserializeAws_restJson1ListBackupPlanTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackupPlanVersionsCommand = async ( @@ -5843,57 +4825,31 @@ const deserializeAws_restJson1ListBackupPlanVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackupSelectionsCommand = async ( @@ -5926,57 +4882,31 @@ const deserializeAws_restJson1ListBackupSelectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBackupVaultsCommand = async ( @@ -6009,57 +4939,31 @@ const deserializeAws_restJson1ListBackupVaultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCopyJobsCommand = async ( @@ -6092,41 +4996,25 @@ const deserializeAws_restJson1ListCopyJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFrameworksCommand = async ( @@ -6159,41 +5047,25 @@ const deserializeAws_restJson1ListFrameworksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProtectedResourcesCommand = async ( @@ -6226,41 +5098,25 @@ const deserializeAws_restJson1ListProtectedResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecoveryPointsByBackupVaultCommand = async ( @@ -6293,57 +5149,31 @@ const deserializeAws_restJson1ListRecoveryPointsByBackupVaultCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecoveryPointsByResourceCommand = async ( @@ -6376,57 +5206,31 @@ const deserializeAws_restJson1ListRecoveryPointsByResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReportJobsCommand = async ( @@ -6459,41 +5263,25 @@ const deserializeAws_restJson1ListReportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReportPlansCommand = async ( @@ -6526,41 +5314,25 @@ const deserializeAws_restJson1ListReportPlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRestoreJobsCommand = async ( @@ -6593,57 +5365,31 @@ const deserializeAws_restJson1ListRestoreJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsCommand = async ( @@ -6676,57 +5422,31 @@ const deserializeAws_restJson1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutBackupVaultAccessPolicyCommand = async ( @@ -6751,57 +5471,31 @@ const deserializeAws_restJson1PutBackupVaultAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutBackupVaultLockConfigurationCommand = async ( @@ -6826,65 +5520,34 @@ const deserializeAws_restJson1PutBackupVaultLockConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutBackupVaultNotificationsCommand = async ( @@ -6909,57 +5572,31 @@ const deserializeAws_restJson1PutBackupVaultNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartBackupJobCommand = async ( @@ -6996,73 +5633,37 @@ const deserializeAws_restJson1StartBackupJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartCopyJobCommand = async ( @@ -7095,73 +5696,37 @@ const deserializeAws_restJson1StartCopyJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartReportJobCommand = async ( @@ -7190,57 +5755,31 @@ const deserializeAws_restJson1StartReportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartRestoreJobCommand = async ( @@ -7269,57 +5808,31 @@ const deserializeAws_restJson1StartRestoreJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopBackupJobCommand = async ( @@ -7344,65 +5857,34 @@ const deserializeAws_restJson1StopBackupJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -7427,65 +5909,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -7510,57 +5961,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBackupPlanCommand = async ( @@ -7608,57 +6033,31 @@ const deserializeAws_restJson1UpdateBackupPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFrameworkCommand = async ( @@ -7695,81 +6094,40 @@ const deserializeAws_restJson1UpdateFrameworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.backup#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.backup#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.backup#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGlobalSettingsCommand = async ( @@ -7794,57 +6152,31 @@ const deserializeAws_restJson1UpdateGlobalSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRecoveryPointLifecycleCommand = async ( @@ -7885,65 +6217,34 @@ const deserializeAws_restJson1UpdateRecoveryPointLifecycleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.backup#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRegionSettingsCommand = async ( @@ -7968,49 +6269,28 @@ const deserializeAws_restJson1UpdateRegionSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReportPlanCommand = async ( @@ -8047,82 +6327,41 @@ const deserializeAws_restJson1UpdateReportPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.backup#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.backup#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.backup#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.backup#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.backup#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Arn: undefined, - Code: undefined, - Context: undefined, - CreatorRequestId: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Arn !== undefined && data.Arn !== null) { contents.Arn = __expectString(data.Arn); @@ -8142,22 +6381,18 @@ const deserializeAws_restJson1AlreadyExistsExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new AlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8171,22 +6406,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DependencyFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DependencyFailureException = { - name: "DependencyFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8200,22 +6431,18 @@ const deserializeAws_restJson1DependencyFailureExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new DependencyFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8229,22 +6456,18 @@ const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8258,22 +6481,18 @@ const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidResourceStateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidResourceStateException = { - name: "InvalidResourceStateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8287,22 +6506,18 @@ const deserializeAws_restJson1InvalidResourceStateExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidResourceStateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8316,22 +6531,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MissingParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MissingParameterValueException = { - name: "MissingParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8345,22 +6556,18 @@ const deserializeAws_restJson1MissingParameterValueExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new MissingParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8374,22 +6581,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Context: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -8403,7 +6606,11 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdvancedBackupSetting = (input: AdvancedBackupSetting, context: __SerdeContext): any => { diff --git a/clients/client-batch/src/index.ts b/clients/client-batch/src/index.ts index 085433e0e2c1b..81b2eb3419a92 100644 --- a/clients/client-batch/src/index.ts +++ b/clients/client-batch/src/index.ts @@ -3,3 +3,4 @@ export * from "./BatchClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { BatchServiceException } from "./models/BatchServiceException"; diff --git a/clients/client-batch/src/models/BatchServiceException.ts b/clients/client-batch/src/models/BatchServiceException.ts new file mode 100644 index 0000000000000..8e66f381f559c --- /dev/null +++ b/clients/client-batch/src/models/BatchServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Batch service. + */ +export class BatchServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, BatchServiceException.prototype); + } +} diff --git a/clients/client-batch/src/models/models_0.ts b/clients/client-batch/src/models/models_0.ts index d3fa2cd97a698..25083183ce277 100644 --- a/clients/client-batch/src/models/models_0.ts +++ b/clients/client-batch/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { BatchServiceException as __BaseException } from "./BatchServiceException"; export enum ArrayJobDependency { N_TO_N = "N_TO_N", @@ -239,19 +242,39 @@ export namespace CancelJobResponse { *

These errors are usually caused by a client action, such as using an action or resource on behalf of a user that * doesn't have permissions to use the action or resource, or specifying an identifier that's not valid.

*/ -export interface ClientException extends __SmithyException, $MetadataBearer { - name: "ClientException"; - $fault: "client"; - message?: string; +export class ClientException extends __BaseException { + readonly name: "ClientException" = "ClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientException.prototype); + } } /** *

These errors are usually caused by a server issue.

*/ -export interface ServerException extends __SmithyException, $MetadataBearer { - name: "ServerException"; - $fault: "server"; - message?: string; +export class ServerException extends __BaseException { + readonly name: "ServerException" = "ServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerException.prototype); + } } export enum CRAllocationStrategy { diff --git a/clients/client-batch/src/protocols/Aws_restJson1.ts b/clients/client-batch/src/protocols/Aws_restJson1.ts index bcb1072e1c8dc..942f5f38de0d1 100644 --- a/clients/client-batch/src/protocols/Aws_restJson1.ts +++ b/clients/client-batch/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelJobCommandInput, CancelJobCommandOutput } from "../commands/CancelJobCommand"; @@ -81,6 +80,7 @@ import { UpdateSchedulingPolicyCommandInput, UpdateSchedulingPolicyCommandOutput, } from "../commands/UpdateSchedulingPolicyCommand"; +import { BatchServiceException as __BaseException } from "../models/BatchServiceException"; import { ArrayProperties, ArrayPropertiesDetail, @@ -907,41 +907,25 @@ const deserializeAws_restJson1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateComputeEnvironmentCommand = async ( @@ -974,41 +958,25 @@ const deserializeAws_restJson1CreateComputeEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobQueueCommand = async ( @@ -1041,41 +1009,25 @@ const deserializeAws_restJson1CreateJobQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSchedulingPolicyCommand = async ( @@ -1108,41 +1060,25 @@ const deserializeAws_restJson1CreateSchedulingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteComputeEnvironmentCommand = async ( @@ -1167,41 +1103,25 @@ const deserializeAws_restJson1DeleteComputeEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobQueueCommand = async ( @@ -1226,41 +1146,25 @@ const deserializeAws_restJson1DeleteJobQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSchedulingPolicyCommand = async ( @@ -1285,41 +1189,25 @@ const deserializeAws_restJson1DeleteSchedulingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterJobDefinitionCommand = async ( @@ -1344,41 +1232,25 @@ const deserializeAws_restJson1DeregisterJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeComputeEnvironmentsCommand = async ( @@ -1414,41 +1286,25 @@ const deserializeAws_restJson1DescribeComputeEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobDefinitionsCommand = async ( @@ -1481,41 +1337,25 @@ const deserializeAws_restJson1DescribeJobDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobQueuesCommand = async ( @@ -1548,41 +1388,25 @@ const deserializeAws_restJson1DescribeJobQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobsCommand = async ( @@ -1611,41 +1435,25 @@ const deserializeAws_restJson1DescribeJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSchedulingPoliciesCommand = async ( @@ -1674,41 +1482,25 @@ const deserializeAws_restJson1DescribeSchedulingPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -1741,41 +1533,25 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSchedulingPoliciesCommand = async ( @@ -1811,41 +1587,25 @@ const deserializeAws_restJson1ListSchedulingPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1874,41 +1634,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterJobDefinitionCommand = async ( @@ -1945,41 +1689,25 @@ const deserializeAws_restJson1RegisterJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SubmitJobCommand = async ( @@ -2016,41 +1744,25 @@ const deserializeAws_restJson1SubmitJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2075,41 +1787,25 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TerminateJobCommand = async ( @@ -2134,41 +1830,25 @@ const deserializeAws_restJson1TerminateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2193,41 +1873,25 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateComputeEnvironmentCommand = async ( @@ -2260,41 +1924,25 @@ const deserializeAws_restJson1UpdateComputeEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateJobQueueCommand = async ( @@ -2327,41 +1975,25 @@ const deserializeAws_restJson1UpdateJobQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSchedulingPolicyCommand = async ( @@ -2386,75 +2018,57 @@ const deserializeAws_restJson1UpdateSchedulingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.batch#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.batch#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientException = { - name: "ClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServerException = { - name: "ServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ArrayProperties = (input: ArrayProperties, context: __SerdeContext): any => { diff --git a/clients/client-braket/src/index.ts b/clients/client-braket/src/index.ts index 354652c601c04..c0f2c341de7d7 100644 --- a/clients/client-braket/src/index.ts +++ b/clients/client-braket/src/index.ts @@ -3,3 +3,4 @@ export * from "./BraketClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { BraketServiceException } from "./models/BraketServiceException"; diff --git a/clients/client-braket/src/models/BraketServiceException.ts b/clients/client-braket/src/models/BraketServiceException.ts new file mode 100644 index 0000000000000..8c36e90f67a71 --- /dev/null +++ b/clients/client-braket/src/models/BraketServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Braket service. + */ +export class BraketServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, BraketServiceException.prototype); + } +} diff --git a/clients/client-braket/src/models/models_0.ts b/clients/client-braket/src/models/models_0.ts index ab2b0e1809b4a..1f7090e0d2cac 100644 --- a/clients/client-braket/src/models/models_0.ts +++ b/clients/client-braket/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { BraketServiceException as __BaseException } from "./BraketServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -161,37 +176,77 @@ export namespace GetDeviceResponse { /** *

The request processing has failed because of an unknown error, exception, or failure.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; - message?: string; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + } } /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The throttling rate limit is met.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The input fails to satisfy the constraints specified by an AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -349,10 +404,20 @@ export namespace CancelJobResponse { /** *

An error occurred due to a conflict.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -678,19 +743,39 @@ export namespace CreateJobResponse { /** *

The specified device has been retired.

*/ -export interface DeviceRetiredException extends __SmithyException, $MetadataBearer { - name: "DeviceRetiredException"; - $fault: "client"; - message?: string; +export class DeviceRetiredException extends __BaseException { + readonly name: "DeviceRetiredException" = "DeviceRetiredException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeviceRetiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeviceRetiredException.prototype); + } } /** *

The request failed because a service quota is exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface GetJobRequest { @@ -1169,10 +1254,20 @@ export namespace CreateQuantumTaskResponse { /** *

The specified device is currently offline.

*/ -export interface DeviceOfflineException extends __SmithyException, $MetadataBearer { - name: "DeviceOfflineException"; - $fault: "client"; - message?: string; +export class DeviceOfflineException extends __BaseException { + readonly name: "DeviceOfflineException" = "DeviceOfflineException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeviceOfflineException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeviceOfflineException.prototype); + } } export interface GetQuantumTaskRequest { diff --git a/clients/client-braket/src/protocols/Aws_restJson1.ts b/clients/client-braket/src/protocols/Aws_restJson1.ts index bef473f5c7227..1f062fdf80e08 100644 --- a/clients/client-braket/src/protocols/Aws_restJson1.ts +++ b/clients/client-braket/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -34,6 +33,7 @@ import { SearchJobsCommandInput, SearchJobsCommandOutput } from "../commands/Sea import { SearchQuantumTasksCommandInput, SearchQuantumTasksCommandOutput } from "../commands/SearchQuantumTasksCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { BraketServiceException as __BaseException } from "../models/BraketServiceException"; import { AccessDeniedException, AlgorithmSpecification, @@ -512,73 +512,37 @@ const deserializeAws_restJson1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.braket#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelQuantumTaskCommand = async ( @@ -611,73 +575,37 @@ const deserializeAws_restJson1CancelQuantumTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.braket#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobCommand = async ( @@ -706,81 +634,40 @@ const deserializeAws_restJson1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.braket#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DeviceRetiredException": case "com.amazonaws.braket#DeviceRetiredException": - response = { - ...(await deserializeAws_restJson1DeviceRetiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeviceRetiredExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.braket#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateQuantumTaskCommand = async ( @@ -809,81 +696,40 @@ const deserializeAws_restJson1CreateQuantumTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DeviceOfflineException": case "com.amazonaws.braket#DeviceOfflineException": - response = { - ...(await deserializeAws_restJson1DeviceOfflineExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeviceOfflineExceptionResponse(parsedOutput, context); case "DeviceRetiredException": case "com.amazonaws.braket#DeviceRetiredException": - response = { - ...(await deserializeAws_restJson1DeviceRetiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeviceRetiredExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.braket#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeviceCommand = async ( @@ -932,65 +778,34 @@ const deserializeAws_restJson1GetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobCommand = async ( @@ -1094,65 +909,34 @@ const deserializeAws_restJson1GetJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetQuantumTaskCommand = async ( @@ -1225,65 +1009,34 @@ const deserializeAws_restJson1GetQuantumTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1312,49 +1065,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchDevicesCommand = async ( @@ -1387,57 +1119,31 @@ const deserializeAws_restJson1SearchDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchJobsCommand = async ( @@ -1470,57 +1176,31 @@ const deserializeAws_restJson1SearchJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchQuantumTasksCommand = async ( @@ -1553,57 +1233,31 @@ const deserializeAws_restJson1SearchQuantumTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.braket#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.braket#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1628,49 +1282,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1695,202 +1328,172 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.braket#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.braket#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.braket#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DeviceOfflineExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DeviceOfflineException = { - name: "DeviceOfflineException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DeviceOfflineException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DeviceRetiredExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DeviceRetiredException = { - name: "DeviceRetiredException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DeviceRetiredException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AlgorithmSpecification = (input: AlgorithmSpecification, context: __SerdeContext): any => { diff --git a/clients/client-budgets/src/index.ts b/clients/client-budgets/src/index.ts index 54afd7db19d82..e157f9f266093 100644 --- a/clients/client-budgets/src/index.ts +++ b/clients/client-budgets/src/index.ts @@ -3,3 +3,4 @@ export * from "./BudgetsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { BudgetsServiceException } from "./models/BudgetsServiceException"; diff --git a/clients/client-budgets/src/models/BudgetsServiceException.ts b/clients/client-budgets/src/models/BudgetsServiceException.ts new file mode 100644 index 0000000000000..2db4e3f5d4784 --- /dev/null +++ b/clients/client-budgets/src/models/BudgetsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Budgets service. + */ +export class BudgetsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, BudgetsServiceException.prototype); + } +} diff --git a/clients/client-budgets/src/models/models_0.ts b/clients/client-budgets/src/models/models_0.ts index 5d8f75aa6ea7a..497a94ff0f17b 100644 --- a/clients/client-budgets/src/models/models_0.ts +++ b/clients/client-budgets/src/models/models_0.ts @@ -1,16 +1,30 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { BudgetsServiceException as __BaseException } from "./BudgetsServiceException"; /** *

You are not authorized to use this operation with the given parameters.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ThresholdType { @@ -858,49 +872,97 @@ export namespace CreateBudgetResponse { /** *

You've exceeded the notification or subscriber limit.

*/ -export interface CreationLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CreationLimitExceededException"; - $fault: "client"; +export class CreationLimitExceededException extends __BaseException { + readonly name: "CreationLimitExceededException" = "CreationLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CreationLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CreationLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The budget name already exists. Budget names must be unique within an account.

*/ -export interface DuplicateRecordException extends __SmithyException, $MetadataBearer { - name: "DuplicateRecordException"; - $fault: "client"; +export class DuplicateRecordException extends __BaseException { + readonly name: "DuplicateRecordException" = "DuplicateRecordException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateRecordException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateRecordException.prototype); + this.Message = opts.Message; + } } /** *

An error on the server occurred during the processing of your request. Try again later.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + this.Message = opts.Message; + } } /** *

An error on the client occurred. Typically, the cause is an invalid input value.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } export interface CreateBudgetActionRequest { @@ -1001,13 +1063,25 @@ export namespace CreateBudgetActionResponse { /** *

We can’t locate the resource that you specified.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -1207,13 +1281,25 @@ export namespace DeleteBudgetActionResponse { *

The request was received and recognized by the server, but the server rejected that * particular method for the requested resource.

*/ -export interface ResourceLockedException extends __SmithyException, $MetadataBearer { - name: "ResourceLockedException"; - $fault: "client"; +export class ResourceLockedException extends __BaseException { + readonly name: "ResourceLockedException" = "ResourceLockedException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLockedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLockedException.prototype); + this.Message = opts.Message; + } } /** @@ -1477,13 +1563,25 @@ export namespace DescribeBudgetActionHistoriesResponse { /** *

The pagination token is invalid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface DescribeBudgetActionsForAccountRequest { @@ -1725,13 +1823,25 @@ export namespace DescribeBudgetPerformanceHistoryResponse { /** *

The pagination token expired.

*/ -export interface ExpiredNextTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredNextTokenException"; - $fault: "client"; +export class ExpiredNextTokenException extends __BaseException { + readonly name: "ExpiredNextTokenException" = "ExpiredNextTokenException"; + readonly $fault: "client" = "client"; /** *

The error message the exception carries.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredNextTokenException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-budgets/src/protocols/Aws_json1_1.ts b/clients/client-budgets/src/protocols/Aws_json1_1.ts index 0df5f9ff4c8c8..5ff87bd615a2d 100644 --- a/clients/client-budgets/src/protocols/Aws_json1_1.ts +++ b/clients/client-budgets/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateBudgetActionCommandInput, CreateBudgetActionCommandOutput } from "../commands/CreateBudgetActionCommand"; @@ -63,6 +62,7 @@ import { UpdateBudgetActionCommandInput, UpdateBudgetActionCommandOutput } from import { UpdateBudgetCommandInput, UpdateBudgetCommandOutput } from "../commands/UpdateBudgetCommand"; import { UpdateNotificationCommandInput, UpdateNotificationCommandOutput } from "../commands/UpdateNotificationCommand"; import { UpdateSubscriberCommandInput, UpdateSubscriberCommandOutput } from "../commands/UpdateSubscriberCommand"; +import { BudgetsServiceException as __BaseException } from "../models/BudgetsServiceException"; import { AccessDeniedException, Action, @@ -448,65 +448,34 @@ const deserializeAws_json1_1CreateBudgetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "CreationLimitExceededException": case "com.amazonaws.budgets#CreationLimitExceededException": - response = { - ...(await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context); case "DuplicateRecordException": case "com.amazonaws.budgets#DuplicateRecordException": - response = { - ...(await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBudgetActionCommand = async ( @@ -534,73 +503,37 @@ const deserializeAws_json1_1CreateBudgetActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "CreationLimitExceededException": case "com.amazonaws.budgets#CreationLimitExceededException": - response = { - ...(await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context); case "DuplicateRecordException": case "com.amazonaws.budgets#DuplicateRecordException": - response = { - ...(await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNotificationCommand = async ( @@ -628,73 +561,37 @@ const deserializeAws_json1_1CreateNotificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "CreationLimitExceededException": case "com.amazonaws.budgets#CreationLimitExceededException": - response = { - ...(await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context); case "DuplicateRecordException": case "com.amazonaws.budgets#DuplicateRecordException": - response = { - ...(await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSubscriberCommand = async ( @@ -722,73 +619,37 @@ const deserializeAws_json1_1CreateSubscriberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "CreationLimitExceededException": case "com.amazonaws.budgets#CreationLimitExceededException": - response = { - ...(await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CreationLimitExceededExceptionResponse(parsedOutput, context); case "DuplicateRecordException": case "com.amazonaws.budgets#DuplicateRecordException": - response = { - ...(await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBudgetCommand = async ( @@ -816,57 +677,31 @@ const deserializeAws_json1_1DeleteBudgetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBudgetActionCommand = async ( @@ -894,65 +729,34 @@ const deserializeAws_json1_1DeleteBudgetActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLockedException": case "com.amazonaws.budgets#ResourceLockedException": - response = { - ...(await deserializeAws_json1_1ResourceLockedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLockedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNotificationCommand = async ( @@ -980,57 +784,31 @@ const deserializeAws_json1_1DeleteNotificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSubscriberCommand = async ( @@ -1058,57 +836,31 @@ const deserializeAws_json1_1DeleteSubscriberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetCommand = async ( @@ -1136,57 +888,31 @@ const deserializeAws_json1_1DescribeBudgetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetActionCommand = async ( @@ -1214,57 +940,31 @@ const deserializeAws_json1_1DescribeBudgetActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetActionHistoriesCommand = async ( @@ -1292,65 +992,34 @@ const deserializeAws_json1_1DescribeBudgetActionHistoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetActionsForAccountCommand = async ( @@ -1378,57 +1047,31 @@ const deserializeAws_json1_1DescribeBudgetActionsForAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetActionsForBudgetCommand = async ( @@ -1456,65 +1099,34 @@ const deserializeAws_json1_1DescribeBudgetActionsForBudgetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetPerformanceHistoryCommand = async ( @@ -1542,73 +1154,37 @@ const deserializeAws_json1_1DescribeBudgetPerformanceHistoryCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredNextTokenException": case "com.amazonaws.budgets#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBudgetsCommand = async ( @@ -1636,73 +1212,37 @@ const deserializeAws_json1_1DescribeBudgetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredNextTokenException": case "com.amazonaws.budgets#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNotificationsForBudgetCommand = async ( @@ -1730,73 +1270,37 @@ const deserializeAws_json1_1DescribeNotificationsForBudgetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredNextTokenException": case "com.amazonaws.budgets#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSubscribersForNotificationCommand = async ( @@ -1824,73 +1328,37 @@ const deserializeAws_json1_1DescribeSubscribersForNotificationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredNextTokenException": case "com.amazonaws.budgets#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.budgets#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExecuteBudgetActionCommand = async ( @@ -1918,65 +1386,34 @@ const deserializeAws_json1_1ExecuteBudgetActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLockedException": case "com.amazonaws.budgets#ResourceLockedException": - response = { - ...(await deserializeAws_json1_1ResourceLockedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLockedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBudgetCommand = async ( @@ -2004,57 +1441,31 @@ const deserializeAws_json1_1UpdateBudgetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBudgetActionCommand = async ( @@ -2082,65 +1493,34 @@ const deserializeAws_json1_1UpdateBudgetActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLockedException": case "com.amazonaws.budgets#ResourceLockedException": - response = { - ...(await deserializeAws_json1_1ResourceLockedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLockedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNotificationCommand = async ( @@ -2168,65 +1548,34 @@ const deserializeAws_json1_1UpdateNotificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DuplicateRecordException": case "com.amazonaws.budgets#DuplicateRecordException": - response = { - ...(await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSubscriberCommand = async ( @@ -2254,65 +1603,34 @@ const deserializeAws_json1_1UpdateSubscriberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.budgets#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DuplicateRecordException": case "com.amazonaws.budgets#DuplicateRecordException": - response = { - ...(await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRecordExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.budgets#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.budgets#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.budgets#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -2321,13 +1639,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CreationLimitExceededExceptionResponse = async ( @@ -2336,13 +1652,11 @@ const deserializeAws_json1_1CreationLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CreationLimitExceededException(body, context); - const contents: CreationLimitExceededException = { - name: "CreationLimitExceededException", - $fault: "client", + const exception = new CreationLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateRecordExceptionResponse = async ( @@ -2351,13 +1665,11 @@ const deserializeAws_json1_1DuplicateRecordExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateRecordException(body, context); - const contents: DuplicateRecordException = { - name: "DuplicateRecordException", - $fault: "client", + const exception = new DuplicateRecordException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExpiredNextTokenExceptionResponse = async ( @@ -2366,13 +1678,11 @@ const deserializeAws_json1_1ExpiredNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredNextTokenException(body, context); - const contents: ExpiredNextTokenException = { - name: "ExpiredNextTokenException", - $fault: "client", + const exception = new ExpiredNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -2381,13 +1691,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -2396,13 +1704,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -2411,13 +1717,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -2426,13 +1730,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLockedExceptionResponse = async ( @@ -2441,13 +1743,11 @@ const deserializeAws_json1_1ResourceLockedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLockedException(body, context); - const contents: ResourceLockedException = { - name: "ResourceLockedException", - $fault: "client", + const exception = new ResourceLockedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActionThreshold = (input: ActionThreshold, context: __SerdeContext): any => { diff --git a/clients/client-chime-sdk-identity/src/index.ts b/clients/client-chime-sdk-identity/src/index.ts index da0102426cf51..1f941c671e44c 100644 --- a/clients/client-chime-sdk-identity/src/index.ts +++ b/clients/client-chime-sdk-identity/src/index.ts @@ -3,3 +3,4 @@ export * from "./ChimeSDKIdentityClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ChimeSDKIdentityServiceException } from "./models/ChimeSDKIdentityServiceException"; diff --git a/clients/client-chime-sdk-identity/src/models/ChimeSDKIdentityServiceException.ts b/clients/client-chime-sdk-identity/src/models/ChimeSDKIdentityServiceException.ts new file mode 100644 index 0000000000000..9d71706bd6e46 --- /dev/null +++ b/clients/client-chime-sdk-identity/src/models/ChimeSDKIdentityServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ChimeSDKIdentity service. + */ +export class ChimeSDKIdentityServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ChimeSDKIdentityServiceException.prototype); + } +} diff --git a/clients/client-chime-sdk-identity/src/models/models_0.ts b/clients/client-chime-sdk-identity/src/models/models_0.ts index e029e6b4f7513..92909e047549a 100644 --- a/clients/client-chime-sdk-identity/src/models/models_0.ts +++ b/clients/client-chime-sdk-identity/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ChimeSDKIdentityServiceException as __BaseException } from "./ChimeSDKIdentityServiceException"; export enum AllowMessages { ALL = "ALL", @@ -511,22 +513,48 @@ export enum ErrorCode { /** *

The input parameters don't match the service's restrictions.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The request could not be processed because of conflict in the current state of the * resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** @@ -609,61 +637,139 @@ export namespace CreateAppInstanceResponse { /** *

The client is permanently forbidden from making the request.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The request exceeds the resource limit.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The service encountered an unexpected error.

*/ -export interface ServiceFailureException extends __SmithyException, $MetadataBearer { - name: "ServiceFailureException"; - $fault: "server"; +export class ServiceFailureException extends __BaseException { + readonly name: "ServiceFailureException" = "ServiceFailureException"; + readonly $fault: "server" = "server"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceFailureException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client exceeded its request rate limit.

*/ -export interface ThrottledClientException extends __SmithyException, $MetadataBearer { - name: "ThrottledClientException"; - $fault: "client"; +export class ThrottledClientException extends __BaseException { + readonly name: "ThrottledClientException" = "ThrottledClientException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledClientException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client is not currently authorized to make the request.

*/ -export interface UnauthorizedClientException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedClientException"; - $fault: "client"; +export class UnauthorizedClientException extends __BaseException { + readonly name: "UnauthorizedClientException" = "UnauthorizedClientException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedClientException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface CreateAppInstanceAdminRequest { diff --git a/clients/client-chime-sdk-identity/src/protocols/Aws_restJson1.ts b/clients/client-chime-sdk-identity/src/protocols/Aws_restJson1.ts index 9f5f62d3a70dc..e0676f359c0ea 100644 --- a/clients/client-chime-sdk-identity/src/protocols/Aws_restJson1.ts +++ b/clients/client-chime-sdk-identity/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -95,6 +94,7 @@ import { UpdateAppInstanceUserEndpointCommandInput, UpdateAppInstanceUserEndpointCommandOutput, } from "../commands/UpdateAppInstanceUserEndpointCommand"; +import { ChimeSDKIdentityServiceException as __BaseException } from "../models/ChimeSDKIdentityServiceException"; import { AppInstance, AppInstanceAdmin, @@ -943,89 +943,43 @@ const deserializeAws_restJson1CreateAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAppInstanceAdminCommand = async ( @@ -1058,89 +1012,43 @@ const deserializeAws_restJson1CreateAppInstanceAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAppInstanceUserCommand = async ( @@ -1169,89 +1077,43 @@ const deserializeAws_restJson1CreateAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceCommand = async ( @@ -1276,81 +1138,40 @@ const deserializeAws_restJson1DeleteAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceAdminCommand = async ( @@ -1375,89 +1196,43 @@ const deserializeAws_restJson1DeleteAppInstanceAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceUserCommand = async ( @@ -1482,89 +1257,43 @@ const deserializeAws_restJson1DeleteAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterAppInstanceUserEndpointCommand = async ( @@ -1589,73 +1318,37 @@ const deserializeAws_restJson1DeregisterAppInstanceUserEndpointCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceCommand = async ( @@ -1684,73 +1377,37 @@ const deserializeAws_restJson1DescribeAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceAdminCommand = async ( @@ -1779,73 +1436,37 @@ const deserializeAws_restJson1DescribeAppInstanceAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceUserCommand = async ( @@ -1874,73 +1495,37 @@ const deserializeAws_restJson1DescribeAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceUserEndpointCommand = async ( @@ -1972,73 +1557,37 @@ const deserializeAws_restJson1DescribeAppInstanceUserEndpointCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppInstanceRetentionSettingsCommand = async ( @@ -2076,73 +1625,37 @@ const deserializeAws_restJson1GetAppInstanceRetentionSettingsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstanceAdminsCommand = async ( @@ -2179,81 +1692,40 @@ const deserializeAws_restJson1ListAppInstanceAdminsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstancesCommand = async ( @@ -2286,73 +1758,37 @@ const deserializeAws_restJson1ListAppInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstanceUserEndpointsCommand = async ( @@ -2388,73 +1824,37 @@ const deserializeAws_restJson1ListAppInstanceUserEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstanceUsersCommand = async ( @@ -2491,73 +1891,37 @@ const deserializeAws_restJson1ListAppInstanceUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2586,73 +1950,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAppInstanceRetentionSettingsCommand = async ( @@ -2690,73 +2018,37 @@ const deserializeAws_restJson1PutAppInstanceRetentionSettingsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterAppInstanceUserEndpointCommand = async ( @@ -2789,89 +2081,43 @@ const deserializeAws_restJson1RegisterAppInstanceUserEndpointCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2896,81 +2142,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2995,73 +2200,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppInstanceCommand = async ( @@ -3090,81 +2259,40 @@ const deserializeAws_restJson1UpdateAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppInstanceUserCommand = async ( @@ -3193,89 +2321,43 @@ const deserializeAws_restJson1UpdateAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkidentity#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppInstanceUserEndpointCommand = async ( @@ -3308,94 +2390,47 @@ const deserializeAws_restJson1UpdateAppInstanceUserEndpointCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkidentity#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkidentity#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkidentity#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkidentity#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkidentity#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkidentity#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkidentity#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3403,20 +2438,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3424,20 +2457,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3445,20 +2476,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3466,20 +2495,18 @@ const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceFailureException = { - name: "ServiceFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3487,20 +2514,18 @@ const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3508,20 +2533,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottledClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottledClientException = { - name: "ThrottledClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3529,20 +2552,18 @@ const deserializeAws_restJson1ThrottledClientExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottledClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedClientException = { - name: "UnauthorizedClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -3550,7 +2571,11 @@ const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AppInstanceRetentionSettings = ( diff --git a/clients/client-chime-sdk-meetings/src/index.ts b/clients/client-chime-sdk-meetings/src/index.ts index 9044a8c271fc2..8482d2d2377fe 100644 --- a/clients/client-chime-sdk-meetings/src/index.ts +++ b/clients/client-chime-sdk-meetings/src/index.ts @@ -3,3 +3,4 @@ export * from "./ChimeSDKMeetingsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ChimeSDKMeetingsServiceException } from "./models/ChimeSDKMeetingsServiceException"; diff --git a/clients/client-chime-sdk-meetings/src/models/ChimeSDKMeetingsServiceException.ts b/clients/client-chime-sdk-meetings/src/models/ChimeSDKMeetingsServiceException.ts new file mode 100644 index 0000000000000..c407912e2acce --- /dev/null +++ b/clients/client-chime-sdk-meetings/src/models/ChimeSDKMeetingsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ChimeSDKMeetings service. + */ +export class ChimeSDKMeetingsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ChimeSDKMeetingsServiceException.prototype); + } +} diff --git a/clients/client-chime-sdk-meetings/src/models/models_0.ts b/clients/client-chime-sdk-meetings/src/models/models_0.ts index eaa5cfe18a5fa..3b6524d70e078 100644 --- a/clients/client-chime-sdk-meetings/src/models/models_0.ts +++ b/clients/client-chime-sdk-meetings/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ChimeSDKMeetingsServiceException as __BaseException } from "./ChimeSDKMeetingsServiceException"; /** *

An Amazon Chime SDK meeting attendee. Includes a unique @@ -71,15 +73,29 @@ export namespace AudioFeatures { /** *

The input parameters don't match the service's restrictions.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** *

The request id associated with the call responsible for the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -182,51 +198,93 @@ export namespace BatchCreateAttendeeResponse { /** *

The client is permanently forbidden from making the request.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** *

The request id associated with the call responsible for the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The request exceeds the resource limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** *

The request id associated with the call responsible for the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

One or more of the resources in the request does not exist in the system.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** *

The request id associated with the call responsible for the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Code?: string; Message?: string; /** @@ -238,20 +296,49 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat *

The number of seconds the caller should wait before retrying.

*/ RetryAfterSeconds?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

The user isn't authorized to request a resource.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** *

The request id associated with the call responsible for the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface CreateAttendeeRequest { @@ -296,15 +383,29 @@ export namespace CreateAttendeeResponse { /** *

The request was well-formed but was unable to be followed due to semantic errors.

*/ -export interface UnprocessableEntityException extends __SmithyException, $MetadataBearer { - name: "UnprocessableEntityException"; - $fault: "client"; +export class UnprocessableEntityException extends __BaseException { + readonly name: "UnprocessableEntityException" = "UnprocessableEntityException"; + readonly $fault: "client" = "client"; Code?: string; Message?: string; /** *

The request id associated with the call responsible for the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnprocessableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnprocessableEntityException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** diff --git a/clients/client-chime-sdk-meetings/src/protocols/Aws_restJson1.ts b/clients/client-chime-sdk-meetings/src/protocols/Aws_restJson1.ts index 3793ce0acaefe..3d1dfd60352bc 100644 --- a/clients/client-chime-sdk-meetings/src/protocols/Aws_restJson1.ts +++ b/clients/client-chime-sdk-meetings/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -37,6 +36,7 @@ import { StopMeetingTranscriptionCommandInput, StopMeetingTranscriptionCommandOutput, } from "../commands/StopMeetingTranscriptionCommand"; +import { ChimeSDKMeetingsServiceException as __BaseException } from "../models/ChimeSDKMeetingsServiceException"; import { Attendee, AudioFeatures, @@ -495,73 +495,37 @@ const deserializeAws_restJson1BatchCreateAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.chimesdkmeetings#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmeetings#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.chimesdkmeetings#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAttendeeCommand = async ( @@ -590,81 +554,40 @@ const deserializeAws_restJson1CreateAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.chimesdkmeetings#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmeetings#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.chimesdkmeetings#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.chimesdkmeetings#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMeetingCommand = async ( @@ -693,57 +616,31 @@ const deserializeAws_restJson1CreateMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.chimesdkmeetings#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmeetings#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.chimesdkmeetings#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMeetingWithAttendeesCommand = async ( @@ -780,57 +677,31 @@ const deserializeAws_restJson1CreateMeetingWithAttendeesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.chimesdkmeetings#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmeetings#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.chimesdkmeetings#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAttendeeCommand = async ( @@ -855,41 +726,25 @@ const deserializeAws_restJson1DeleteAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMeetingCommand = async ( @@ -914,41 +769,25 @@ const deserializeAws_restJson1DeleteMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAttendeeCommand = async ( @@ -977,49 +816,28 @@ const deserializeAws_restJson1GetAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMeetingCommand = async ( @@ -1048,49 +866,28 @@ const deserializeAws_restJson1GetMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttendeesCommand = async ( @@ -1123,49 +920,28 @@ const deserializeAws_restJson1ListAttendeesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMeetingTranscriptionCommand = async ( @@ -1190,81 +966,40 @@ const deserializeAws_restJson1StartMeetingTranscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.chimesdkmeetings#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmeetings#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.chimesdkmeetings#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.chimesdkmeetings#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopMeetingTranscriptionCommand = async ( @@ -1289,87 +1024,44 @@ const deserializeAws_restJson1StopMeetingTranscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmeetings#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmeetings#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmeetings#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmeetings#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.chimesdkmeetings#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.chimesdkmeetings#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -1380,21 +1072,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -1405,21 +1094,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -1430,21 +1116,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -1455,22 +1138,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - RetryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -1484,21 +1163,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -1509,21 +1185,18 @@ const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnprocessableEntityException = { - name: "UnprocessableEntityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -1534,7 +1207,11 @@ const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new UnprocessableEntityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AudioFeatures = (input: AudioFeatures, context: __SerdeContext): any => { diff --git a/clients/client-chime-sdk-messaging/src/index.ts b/clients/client-chime-sdk-messaging/src/index.ts index 2feed308d9ec2..3180813e616f1 100644 --- a/clients/client-chime-sdk-messaging/src/index.ts +++ b/clients/client-chime-sdk-messaging/src/index.ts @@ -3,3 +3,4 @@ export * from "./ChimeSDKMessagingClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ChimeSDKMessagingServiceException } from "./models/ChimeSDKMessagingServiceException"; diff --git a/clients/client-chime-sdk-messaging/src/models/ChimeSDKMessagingServiceException.ts b/clients/client-chime-sdk-messaging/src/models/ChimeSDKMessagingServiceException.ts new file mode 100644 index 0000000000000..ade1a77221685 --- /dev/null +++ b/clients/client-chime-sdk-messaging/src/models/ChimeSDKMessagingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ChimeSDKMessaging service. + */ +export class ChimeSDKMessagingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ChimeSDKMessagingServiceException.prototype); + } +} diff --git a/clients/client-chime-sdk-messaging/src/models/models_0.ts b/clients/client-chime-sdk-messaging/src/models/models_0.ts index efb321ae48986..c6dc62321a92b 100644 --- a/clients/client-chime-sdk-messaging/src/models/models_0.ts +++ b/clients/client-chime-sdk-messaging/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ChimeSDKMessagingServiceException as __BaseException } from "./ChimeSDKMessagingServiceException"; export enum AllowNotifications { ALL = "ALL", @@ -83,82 +85,186 @@ export enum ErrorCode { /** *

The input parameters don't match the service's restrictions.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The request could not be processed because of conflict in the current state of the * resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client is permanently forbidden from making the request.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

One or more of the resources in the request does not exist in the system.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The service encountered an unexpected error.

*/ -export interface ServiceFailureException extends __SmithyException, $MetadataBearer { - name: "ServiceFailureException"; - $fault: "server"; +export class ServiceFailureException extends __BaseException { + readonly name: "ServiceFailureException" = "ServiceFailureException"; + readonly $fault: "server" = "server"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceFailureException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client exceeded its request rate limit.

*/ -export interface ThrottledClientException extends __SmithyException, $MetadataBearer { - name: "ThrottledClientException"; - $fault: "client"; +export class ThrottledClientException extends __BaseException { + readonly name: "ThrottledClientException" = "ThrottledClientException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledClientException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client is not currently authorized to make the request.

*/ -export interface UnauthorizedClientException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedClientException"; - $fault: "client"; +export class UnauthorizedClientException extends __BaseException { + readonly name: "UnauthorizedClientException" = "UnauthorizedClientException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedClientException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** @@ -1392,11 +1498,24 @@ export namespace CreateChannelResponse { /** *

The request exceeds the resource limit.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface CreateChannelBanRequest { diff --git a/clients/client-chime-sdk-messaging/src/protocols/Aws_restJson1.ts b/clients/client-chime-sdk-messaging/src/protocols/Aws_restJson1.ts index 291f5c98884b3..c76d069b36b21 100644 --- a/clients/client-chime-sdk-messaging/src/protocols/Aws_restJson1.ts +++ b/clients/client-chime-sdk-messaging/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -147,6 +146,7 @@ import { UpdateChannelReadMarkerCommandInput, UpdateChannelReadMarkerCommandOutput, } from "../commands/UpdateChannelReadMarkerCommand"; +import { ChimeSDKMessagingServiceException as __BaseException } from "../models/ChimeSDKMessagingServiceException"; import { AppInstanceUserMembershipSummary, BadRequestException, @@ -1824,89 +1824,43 @@ const deserializeAws_restJson1AssociateChannelFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmessaging#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchCreateChannelMembershipCommand = async ( @@ -1942,73 +1896,37 @@ const deserializeAws_restJson1BatchCreateChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ChannelFlowCallbackCommand = async ( @@ -2041,81 +1959,40 @@ const deserializeAws_restJson1ChannelFlowCallbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -2144,89 +2021,43 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkmessaging#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelBanCommand = async ( @@ -2259,89 +2090,43 @@ const deserializeAws_restJson1CreateChannelBanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkmessaging#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelFlowCommand = async ( @@ -2370,89 +2155,43 @@ const deserializeAws_restJson1CreateChannelFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkmessaging#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelMembershipCommand = async ( @@ -2485,89 +2224,43 @@ const deserializeAws_restJson1CreateChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkmessaging#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelModeratorCommand = async ( @@ -2600,89 +2293,43 @@ const deserializeAws_restJson1CreateChannelModeratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkmessaging#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -2707,73 +2354,37 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelBanCommand = async ( @@ -2798,73 +2409,37 @@ const deserializeAws_restJson1DeleteChannelBanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelFlowCommand = async ( @@ -2889,81 +2464,40 @@ const deserializeAws_restJson1DeleteChannelFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelMembershipCommand = async ( @@ -2988,81 +2522,40 @@ const deserializeAws_restJson1DeleteChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelMessageCommand = async ( @@ -3087,73 +2580,37 @@ const deserializeAws_restJson1DeleteChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelModeratorCommand = async ( @@ -3178,73 +2635,37 @@ const deserializeAws_restJson1DeleteChannelModeratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelCommand = async ( @@ -3273,73 +2694,37 @@ const deserializeAws_restJson1DescribeChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelBanCommand = async ( @@ -3368,81 +2753,40 @@ const deserializeAws_restJson1DescribeChannelBanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmessaging#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelFlowCommand = async ( @@ -3471,73 +2815,37 @@ const deserializeAws_restJson1DescribeChannelFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelMembershipCommand = async ( @@ -3566,81 +2874,40 @@ const deserializeAws_restJson1DescribeChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmessaging#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelMembershipForAppInstanceUserCommand = async ( @@ -3672,73 +2939,37 @@ const deserializeAws_restJson1DescribeChannelMembershipForAppInstanceUserCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelModeratedByAppInstanceUserCommand = async ( @@ -3767,73 +2998,37 @@ const deserializeAws_restJson1DescribeChannelModeratedByAppInstanceUserCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelModeratorCommand = async ( @@ -3862,81 +3057,40 @@ const deserializeAws_restJson1DescribeChannelModeratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmessaging#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateChannelFlowCommand = async ( @@ -3961,89 +3115,43 @@ const deserializeAws_restJson1DisassociateChannelFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmessaging#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelMembershipPreferencesCommand = async ( @@ -4080,73 +3188,37 @@ const deserializeAws_restJson1GetChannelMembershipPreferencesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelMessageCommand = async ( @@ -4175,81 +3247,40 @@ const deserializeAws_restJson1GetChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chimesdkmessaging#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelMessageStatusCommand = async ( @@ -4278,73 +3309,37 @@ const deserializeAws_restJson1GetChannelMessageStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMessagingSessionEndpointCommand = async ( @@ -4373,65 +3368,34 @@ const deserializeAws_restJson1GetMessagingSessionEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelBansCommand = async ( @@ -4468,73 +3432,37 @@ const deserializeAws_restJson1ListChannelBansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelFlowsCommand = async ( @@ -4567,73 +3495,37 @@ const deserializeAws_restJson1ListChannelFlowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelMembershipsCommand = async ( @@ -4673,73 +3565,37 @@ const deserializeAws_restJson1ListChannelMembershipsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelMembershipsForAppInstanceUserCommand = async ( @@ -4775,73 +3631,37 @@ const deserializeAws_restJson1ListChannelMembershipsForAppInstanceUserCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelMessagesCommand = async ( @@ -4878,73 +3698,37 @@ const deserializeAws_restJson1ListChannelMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelModeratorsCommand = async ( @@ -4981,73 +3765,37 @@ const deserializeAws_restJson1ListChannelModeratorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -5080,73 +3828,37 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsAssociatedWithChannelFlowCommand = async ( @@ -5179,73 +3891,37 @@ const deserializeAws_restJson1ListChannelsAssociatedWithChannelFlowCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsModeratedByAppInstanceUserCommand = async ( @@ -5278,73 +3954,37 @@ const deserializeAws_restJson1ListChannelsModeratedByAppInstanceUserCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -5373,73 +4013,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutChannelMembershipPreferencesCommand = async ( @@ -5476,81 +4080,40 @@ const deserializeAws_restJson1PutChannelMembershipPreferencesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RedactChannelMessageCommand = async ( @@ -5583,73 +4146,37 @@ const deserializeAws_restJson1RedactChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendChannelMessageCommand = async ( @@ -5686,81 +4213,40 @@ const deserializeAws_restJson1SendChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -5785,81 +4271,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chimesdkmessaging#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -5884,73 +4329,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -5979,81 +4388,40 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelFlowCommand = async ( @@ -6082,81 +4450,40 @@ const deserializeAws_restJson1UpdateChannelFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelMessageCommand = async ( @@ -6193,81 +4520,40 @@ const deserializeAws_restJson1UpdateChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelReadMarkerCommand = async ( @@ -6296,94 +4582,47 @@ const deserializeAws_restJson1UpdateChannelReadMarkerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chimesdkmessaging#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chimesdkmessaging#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chimesdkmessaging#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chimesdkmessaging#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chimesdkmessaging#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chimesdkmessaging#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chimesdkmessaging#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6391,20 +4630,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6412,20 +4649,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6433,20 +4668,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6454,20 +4687,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6475,20 +4706,18 @@ const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceFailureException = { - name: "ServiceFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6496,20 +4725,18 @@ const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6517,20 +4744,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottledClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottledClientException = { - name: "ThrottledClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6538,20 +4763,18 @@ const deserializeAws_restJson1ThrottledClientExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottledClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedClientException = { - name: "UnauthorizedClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6559,7 +4782,11 @@ const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ChannelMembershipPreferences = ( diff --git a/clients/client-chime/src/index.ts b/clients/client-chime/src/index.ts index 9cf50f7d157e0..c664773c21928 100644 --- a/clients/client-chime/src/index.ts +++ b/clients/client-chime/src/index.ts @@ -3,3 +3,4 @@ export * from "./ChimeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ChimeServiceException } from "./models/ChimeServiceException"; diff --git a/clients/client-chime/src/models/ChimeServiceException.ts b/clients/client-chime/src/models/ChimeServiceException.ts new file mode 100644 index 0000000000000..47718e34dd9be --- /dev/null +++ b/clients/client-chime/src/models/ChimeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Chime service. + */ +export class ChimeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ChimeServiceException.prototype); + } +} diff --git a/clients/client-chime/src/models/models_0.ts b/clients/client-chime/src/models/models_0.ts index dae15904a5ae6..4473f7ce51448 100644 --- a/clients/client-chime/src/models/models_0.ts +++ b/clients/client-chime/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ChimeServiceException as __BaseException } from "./ChimeServiceException"; export enum ErrorCode { AccessDenied = "AccessDenied", @@ -22,11 +24,24 @@ export enum ErrorCode { /** *

You don't have permissions to perform the requested operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export enum AccountStatus { @@ -687,71 +702,162 @@ export namespace AssociatePhoneNumbersWithVoiceConnectorResponse { /** *

The input parameters don't match the service's restrictions.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client is permanently forbidden from making the request.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

One or more of the resources in the request does not exist in the system.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The service encountered an unexpected error.

*/ -export interface ServiceFailureException extends __SmithyException, $MetadataBearer { - name: "ServiceFailureException"; - $fault: "server"; +export class ServiceFailureException extends __BaseException { + readonly name: "ServiceFailureException" = "ServiceFailureException"; + readonly $fault: "server" = "server"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceFailureException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client exceeded its request rate limit.

*/ -export interface ThrottledClientException extends __SmithyException, $MetadataBearer { - name: "ThrottledClientException"; - $fault: "client"; +export class ThrottledClientException extends __BaseException { + readonly name: "ThrottledClientException" = "ThrottledClientException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledClientException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The client is not currently authorized to make the request.

*/ -export interface UnauthorizedClientException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedClientException"; - $fault: "client"; +export class UnauthorizedClientException extends __BaseException { + readonly name: "UnauthorizedClientException" = "UnauthorizedClientException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedClientException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface AssociatePhoneNumbersWithVoiceConnectorGroupRequest { @@ -1083,11 +1189,24 @@ export namespace BatchCreateAttendeeResponse { /** *

The request exceeds the resource limit.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface BatchCreateChannelMembershipRequest { @@ -2236,11 +2355,24 @@ export namespace ChimeSdkMeetingConfiguration { *

The request could not be processed because of conflict in the current state of the * resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** @@ -4652,11 +4784,24 @@ export namespace DeleteAccountResponse { /** *

The request was well-formed but was unable to be followed due to semantic errors.

*/ -export interface UnprocessableEntityException extends __SmithyException, $MetadataBearer { - name: "UnprocessableEntityException"; - $fault: "client"; +export class UnprocessableEntityException extends __BaseException { + readonly name: "UnprocessableEntityException" = "UnprocessableEntityException"; + readonly $fault: "client" = "client"; Code?: ErrorCode | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnprocessableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnprocessableEntityException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface DeleteAppInstanceRequest { diff --git a/clients/client-chime/src/protocols/Aws_restJson1.ts b/clients/client-chime/src/protocols/Aws_restJson1.ts index 895aa0f8813c3..e91f01dd5152e 100644 --- a/clients/client-chime/src/protocols/Aws_restJson1.ts +++ b/clients/client-chime/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -16,10 +17,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -555,6 +554,7 @@ import { UpdateVoiceConnectorGroupCommandInput, UpdateVoiceConnectorGroupCommandOutput, } from "../commands/UpdateVoiceConnectorGroupCommand"; +import { ChimeServiceException as __BaseException } from "../models/ChimeServiceException"; import { AccessDeniedException, Account, @@ -7721,89 +7721,43 @@ const deserializeAws_restJson1AssociatePhoneNumbersWithVoiceConnectorCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociatePhoneNumbersWithVoiceConnectorGroupCommand = async ( @@ -7832,89 +7786,43 @@ const deserializeAws_restJson1AssociatePhoneNumbersWithVoiceConnectorGroupComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociatePhoneNumberWithUserCommand = async ( @@ -7939,89 +7847,43 @@ const deserializeAws_restJson1AssociatePhoneNumberWithUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateSigninDelegateGroupsWithAccountCommand = async ( @@ -8046,81 +7908,40 @@ const deserializeAws_restJson1AssociateSigninDelegateGroupsWithAccountCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchCreateAttendeeCommand = async ( @@ -8153,89 +7974,43 @@ const deserializeAws_restJson1BatchCreateAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchCreateChannelMembershipCommand = async ( @@ -8271,73 +8046,37 @@ const deserializeAws_restJson1BatchCreateChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchCreateRoomMembershipCommand = async ( @@ -8366,81 +8105,40 @@ const deserializeAws_restJson1BatchCreateRoomMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDeletePhoneNumberCommand = async ( @@ -8469,81 +8167,40 @@ const deserializeAws_restJson1BatchDeletePhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchSuspendUserCommand = async ( @@ -8572,81 +8229,40 @@ const deserializeAws_restJson1BatchSuspendUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUnsuspendUserCommand = async ( @@ -8675,81 +8291,40 @@ const deserializeAws_restJson1BatchUnsuspendUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdatePhoneNumberCommand = async ( @@ -8778,81 +8353,40 @@ const deserializeAws_restJson1BatchUpdatePhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdateUserCommand = async ( @@ -8881,81 +8415,40 @@ const deserializeAws_restJson1BatchUpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAccountCommand = async ( @@ -8984,81 +8477,40 @@ const deserializeAws_restJson1CreateAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAppInstanceCommand = async ( @@ -9087,89 +8539,43 @@ const deserializeAws_restJson1CreateAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAppInstanceAdminCommand = async ( @@ -9202,89 +8608,43 @@ const deserializeAws_restJson1CreateAppInstanceAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAppInstanceUserCommand = async ( @@ -9313,89 +8673,43 @@ const deserializeAws_restJson1CreateAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAttendeeCommand = async ( @@ -9424,89 +8738,43 @@ const deserializeAws_restJson1CreateAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBotCommand = async ( @@ -9535,89 +8803,43 @@ const deserializeAws_restJson1CreateBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -9646,89 +8868,43 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelBanCommand = async ( @@ -9761,89 +8937,43 @@ const deserializeAws_restJson1CreateChannelBanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelMembershipCommand = async ( @@ -9876,89 +9006,43 @@ const deserializeAws_restJson1CreateChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelModeratorCommand = async ( @@ -9991,89 +9075,43 @@ const deserializeAws_restJson1CreateChannelModeratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMediaCapturePipelineCommand = async ( @@ -10102,81 +9140,40 @@ const deserializeAws_restJson1CreateMediaCapturePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMeetingCommand = async ( @@ -10205,81 +9202,40 @@ const deserializeAws_restJson1CreateMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMeetingDialOutCommand = async ( @@ -10308,81 +9264,40 @@ const deserializeAws_restJson1CreateMeetingDialOutCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMeetingWithAttendeesCommand = async ( @@ -10419,81 +9334,40 @@ const deserializeAws_restJson1CreateMeetingWithAttendeesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePhoneNumberOrderCommand = async ( @@ -10522,89 +9396,43 @@ const deserializeAws_restJson1CreatePhoneNumberOrderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProxySessionCommand = async ( @@ -10633,81 +9461,40 @@ const deserializeAws_restJson1CreateProxySessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRoomCommand = async ( @@ -10736,89 +9523,43 @@ const deserializeAws_restJson1CreateRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRoomMembershipCommand = async ( @@ -10847,97 +9588,46 @@ const deserializeAws_restJson1CreateRoomMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSipMediaApplicationCommand = async ( @@ -10966,97 +9656,46 @@ const deserializeAws_restJson1CreateSipMediaApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSipMediaApplicationCallCommand = async ( @@ -11088,89 +9727,43 @@ const deserializeAws_restJson1CreateSipMediaApplicationCallCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSipRuleCommand = async ( @@ -11199,97 +9792,46 @@ const deserializeAws_restJson1CreateSipRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUserCommand = async ( @@ -11318,89 +9860,43 @@ const deserializeAws_restJson1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVoiceConnectorCommand = async ( @@ -11429,89 +9925,43 @@ const deserializeAws_restJson1CreateVoiceConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVoiceConnectorGroupCommand = async ( @@ -11540,89 +9990,43 @@ const deserializeAws_restJson1CreateVoiceConnectorGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAccountCommand = async ( @@ -11647,89 +10051,43 @@ const deserializeAws_restJson1DeleteAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.chime#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceCommand = async ( @@ -11754,73 +10112,37 @@ const deserializeAws_restJson1DeleteAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceAdminCommand = async ( @@ -11845,81 +10167,40 @@ const deserializeAws_restJson1DeleteAppInstanceAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceStreamingConfigurationsCommand = async ( @@ -11944,81 +10225,40 @@ const deserializeAws_restJson1DeleteAppInstanceStreamingConfigurationsCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppInstanceUserCommand = async ( @@ -12043,73 +10283,37 @@ const deserializeAws_restJson1DeleteAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAttendeeCommand = async ( @@ -12134,81 +10338,40 @@ const deserializeAws_restJson1DeleteAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -12233,73 +10396,37 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelBanCommand = async ( @@ -12324,73 +10451,37 @@ const deserializeAws_restJson1DeleteChannelBanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelMembershipCommand = async ( @@ -12415,81 +10506,40 @@ const deserializeAws_restJson1DeleteChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelMessageCommand = async ( @@ -12514,73 +10564,37 @@ const deserializeAws_restJson1DeleteChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelModeratorCommand = async ( @@ -12605,73 +10619,37 @@ const deserializeAws_restJson1DeleteChannelModeratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEventsConfigurationCommand = async ( @@ -12696,73 +10674,37 @@ const deserializeAws_restJson1DeleteEventsConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMediaCapturePipelineCommand = async ( @@ -12787,81 +10729,40 @@ const deserializeAws_restJson1DeleteMediaCapturePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMeetingCommand = async ( @@ -12886,81 +10787,40 @@ const deserializeAws_restJson1DeleteMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePhoneNumberCommand = async ( @@ -12985,81 +10845,40 @@ const deserializeAws_restJson1DeletePhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProxySessionCommand = async ( @@ -13084,81 +10903,40 @@ const deserializeAws_restJson1DeleteProxySessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRoomCommand = async ( @@ -13183,81 +10961,40 @@ const deserializeAws_restJson1DeleteRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRoomMembershipCommand = async ( @@ -13282,81 +11019,40 @@ const deserializeAws_restJson1DeleteRoomMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSipMediaApplicationCommand = async ( @@ -13381,89 +11077,43 @@ const deserializeAws_restJson1DeleteSipMediaApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSipRuleCommand = async ( @@ -13488,89 +11138,43 @@ const deserializeAws_restJson1DeleteSipRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorCommand = async ( @@ -13595,89 +11199,43 @@ const deserializeAws_restJson1DeleteVoiceConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorEmergencyCallingConfigurationCommand = async ( @@ -13702,81 +11260,40 @@ const deserializeAws_restJson1DeleteVoiceConnectorEmergencyCallingConfigurationC ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorGroupCommand = async ( @@ -13801,89 +11318,43 @@ const deserializeAws_restJson1DeleteVoiceConnectorGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorOriginationCommand = async ( @@ -13908,81 +11379,40 @@ const deserializeAws_restJson1DeleteVoiceConnectorOriginationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorProxyCommand = async ( @@ -14007,81 +11437,40 @@ const deserializeAws_restJson1DeleteVoiceConnectorProxyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorStreamingConfigurationCommand = async ( @@ -14106,81 +11495,40 @@ const deserializeAws_restJson1DeleteVoiceConnectorStreamingConfigurationCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorTerminationCommand = async ( @@ -14205,81 +11553,40 @@ const deserializeAws_restJson1DeleteVoiceConnectorTerminationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceConnectorTerminationCredentialsCommand = async ( @@ -14304,81 +11611,40 @@ const deserializeAws_restJson1DeleteVoiceConnectorTerminationCredentialsCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceCommand = async ( @@ -14407,73 +11673,37 @@ const deserializeAws_restJson1DescribeAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceAdminCommand = async ( @@ -14502,73 +11732,37 @@ const deserializeAws_restJson1DescribeAppInstanceAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppInstanceUserCommand = async ( @@ -14597,73 +11791,37 @@ const deserializeAws_restJson1DescribeAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelCommand = async ( @@ -14692,73 +11850,37 @@ const deserializeAws_restJson1DescribeChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelBanCommand = async ( @@ -14787,81 +11909,40 @@ const deserializeAws_restJson1DescribeChannelBanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelMembershipCommand = async ( @@ -14890,81 +11971,40 @@ const deserializeAws_restJson1DescribeChannelMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelMembershipForAppInstanceUserCommand = async ( @@ -14996,73 +12036,37 @@ const deserializeAws_restJson1DescribeChannelMembershipForAppInstanceUserCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelModeratedByAppInstanceUserCommand = async ( @@ -15091,73 +12095,37 @@ const deserializeAws_restJson1DescribeChannelModeratedByAppInstanceUserCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelModeratorCommand = async ( @@ -15186,81 +12154,40 @@ const deserializeAws_restJson1DescribeChannelModeratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociatePhoneNumberFromUserCommand = async ( @@ -15285,81 +12212,40 @@ const deserializeAws_restJson1DisassociatePhoneNumberFromUserCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociatePhoneNumbersFromVoiceConnectorCommand = async ( @@ -15388,81 +12274,40 @@ const deserializeAws_restJson1DisassociatePhoneNumbersFromVoiceConnectorCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociatePhoneNumbersFromVoiceConnectorGroupCommand = async ( @@ -15491,81 +12336,40 @@ const deserializeAws_restJson1DisassociatePhoneNumbersFromVoiceConnectorGroupCom ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateSigninDelegateGroupsFromAccountCommand = async ( @@ -15590,81 +12394,40 @@ const deserializeAws_restJson1DisassociateSigninDelegateGroupsFromAccountCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountCommand = async ( @@ -15693,81 +12456,40 @@ const deserializeAws_restJson1GetAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountSettingsCommand = async ( @@ -15796,81 +12518,40 @@ const deserializeAws_restJson1GetAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppInstanceRetentionSettingsCommand = async ( @@ -15908,81 +12589,40 @@ const deserializeAws_restJson1GetAppInstanceRetentionSettingsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppInstanceStreamingConfigurationsCommand = async ( @@ -16014,81 +12654,40 @@ const deserializeAws_restJson1GetAppInstanceStreamingConfigurationsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAttendeeCommand = async ( @@ -16117,81 +12716,40 @@ const deserializeAws_restJson1GetAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotCommand = async ( @@ -16220,81 +12778,40 @@ const deserializeAws_restJson1GetBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelMessageCommand = async ( @@ -16323,81 +12840,40 @@ const deserializeAws_restJson1GetChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEventsConfigurationCommand = async ( @@ -16426,81 +12902,40 @@ const deserializeAws_restJson1GetEventsConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGlobalSettingsCommand = async ( @@ -16533,73 +12968,37 @@ const deserializeAws_restJson1GetGlobalSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMediaCapturePipelineCommand = async ( @@ -16628,81 +13027,40 @@ const deserializeAws_restJson1GetMediaCapturePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMeetingCommand = async ( @@ -16731,81 +13089,40 @@ const deserializeAws_restJson1GetMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMessagingSessionEndpointCommand = async ( @@ -16834,65 +13151,34 @@ const deserializeAws_restJson1GetMessagingSessionEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPhoneNumberCommand = async ( @@ -16921,81 +13207,40 @@ const deserializeAws_restJson1GetPhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPhoneNumberOrderCommand = async ( @@ -17024,81 +13269,40 @@ const deserializeAws_restJson1GetPhoneNumberOrderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPhoneNumberSettingsCommand = async ( @@ -17131,73 +13335,37 @@ const deserializeAws_restJson1GetPhoneNumberSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProxySessionCommand = async ( @@ -17226,81 +13394,40 @@ const deserializeAws_restJson1GetProxySessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRetentionSettingsCommand = async ( @@ -17333,81 +13460,40 @@ const deserializeAws_restJson1GetRetentionSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRoomCommand = async ( @@ -17436,81 +13522,40 @@ const deserializeAws_restJson1GetRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSipMediaApplicationCommand = async ( @@ -17539,81 +13584,40 @@ const deserializeAws_restJson1GetSipMediaApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSipMediaApplicationLoggingConfigurationCommand = async ( @@ -17648,81 +13652,40 @@ const deserializeAws_restJson1GetSipMediaApplicationLoggingConfigurationCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSipRuleCommand = async ( @@ -17751,81 +13714,40 @@ const deserializeAws_restJson1GetSipRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUserCommand = async ( @@ -17854,81 +13776,40 @@ const deserializeAws_restJson1GetUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUserSettingsCommand = async ( @@ -17957,81 +13838,40 @@ const deserializeAws_restJson1GetUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorCommand = async ( @@ -18060,81 +13900,40 @@ const deserializeAws_restJson1GetVoiceConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorEmergencyCallingConfigurationCommand = async ( @@ -18166,81 +13965,40 @@ const deserializeAws_restJson1GetVoiceConnectorEmergencyCallingConfigurationComm ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorGroupCommand = async ( @@ -18269,81 +14027,40 @@ const deserializeAws_restJson1GetVoiceConnectorGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorLoggingConfigurationCommand = async ( @@ -18372,81 +14089,40 @@ const deserializeAws_restJson1GetVoiceConnectorLoggingConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorOriginationCommand = async ( @@ -18475,81 +14151,40 @@ const deserializeAws_restJson1GetVoiceConnectorOriginationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorProxyCommand = async ( @@ -18578,81 +14213,40 @@ const deserializeAws_restJson1GetVoiceConnectorProxyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorStreamingConfigurationCommand = async ( @@ -18684,81 +14278,40 @@ const deserializeAws_restJson1GetVoiceConnectorStreamingConfigurationCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorTerminationCommand = async ( @@ -18787,81 +14340,40 @@ const deserializeAws_restJson1GetVoiceConnectorTerminationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceConnectorTerminationHealthCommand = async ( @@ -18890,81 +14402,40 @@ const deserializeAws_restJson1GetVoiceConnectorTerminationHealthCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InviteUsersCommand = async ( @@ -18993,81 +14464,40 @@ const deserializeAws_restJson1InviteUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccountsCommand = async ( @@ -19100,81 +14530,40 @@ const deserializeAws_restJson1ListAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstanceAdminsCommand = async ( @@ -19211,73 +14600,37 @@ const deserializeAws_restJson1ListAppInstanceAdminsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstancesCommand = async ( @@ -19310,73 +14663,37 @@ const deserializeAws_restJson1ListAppInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppInstanceUsersCommand = async ( @@ -19413,73 +14730,37 @@ const deserializeAws_restJson1ListAppInstanceUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttendeesCommand = async ( @@ -19512,81 +14793,40 @@ const deserializeAws_restJson1ListAttendeesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttendeeTagsCommand = async ( @@ -19615,81 +14855,40 @@ const deserializeAws_restJson1ListAttendeeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotsCommand = async ( @@ -19722,81 +14921,40 @@ const deserializeAws_restJson1ListBotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelBansCommand = async ( @@ -19833,73 +14991,37 @@ const deserializeAws_restJson1ListChannelBansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelMembershipsCommand = async ( @@ -19939,73 +15061,37 @@ const deserializeAws_restJson1ListChannelMembershipsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelMembershipsForAppInstanceUserCommand = async ( @@ -20041,73 +15127,37 @@ const deserializeAws_restJson1ListChannelMembershipsForAppInstanceUserCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelMessagesCommand = async ( @@ -20144,73 +15194,37 @@ const deserializeAws_restJson1ListChannelMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelModeratorsCommand = async ( @@ -20247,73 +15261,37 @@ const deserializeAws_restJson1ListChannelModeratorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -20346,73 +15324,37 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsModeratedByAppInstanceUserCommand = async ( @@ -20445,73 +15387,37 @@ const deserializeAws_restJson1ListChannelsModeratedByAppInstanceUserCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMediaCapturePipelinesCommand = async ( @@ -20547,73 +15453,37 @@ const deserializeAws_restJson1ListMediaCapturePipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMeetingsCommand = async ( @@ -20646,73 +15516,37 @@ const deserializeAws_restJson1ListMeetingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMeetingTagsCommand = async ( @@ -20741,81 +15575,40 @@ const deserializeAws_restJson1ListMeetingTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPhoneNumberOrdersCommand = async ( @@ -20848,73 +15641,37 @@ const deserializeAws_restJson1ListPhoneNumberOrdersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPhoneNumbersCommand = async ( @@ -20947,81 +15704,40 @@ const deserializeAws_restJson1ListPhoneNumbersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProxySessionsCommand = async ( @@ -21054,81 +15770,40 @@ const deserializeAws_restJson1ListProxySessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoomMembershipsCommand = async ( @@ -21161,81 +15836,40 @@ const deserializeAws_restJson1ListRoomMembershipsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoomsCommand = async ( @@ -21268,81 +15902,40 @@ const deserializeAws_restJson1ListRoomsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSipMediaApplicationsCommand = async ( @@ -21375,73 +15968,37 @@ const deserializeAws_restJson1ListSipMediaApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSipRulesCommand = async ( @@ -21474,73 +16031,37 @@ const deserializeAws_restJson1ListSipRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSupportedPhoneNumberCountriesCommand = async ( @@ -21572,81 +16093,40 @@ const deserializeAws_restJson1ListSupportedPhoneNumberCountriesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -21675,73 +16155,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUsersCommand = async ( @@ -21774,81 +16218,40 @@ const deserializeAws_restJson1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVoiceConnectorGroupsCommand = async ( @@ -21881,73 +16284,37 @@ const deserializeAws_restJson1ListVoiceConnectorGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVoiceConnectorsCommand = async ( @@ -21980,73 +16347,37 @@ const deserializeAws_restJson1ListVoiceConnectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVoiceConnectorTerminationCredentialsCommand = async ( @@ -22075,81 +16406,40 @@ const deserializeAws_restJson1ListVoiceConnectorTerminationCredentialsCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1LogoutUserCommand = async ( @@ -22174,81 +16464,40 @@ const deserializeAws_restJson1LogoutUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAppInstanceRetentionSettingsCommand = async ( @@ -22286,89 +16535,43 @@ const deserializeAws_restJson1PutAppInstanceRetentionSettingsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAppInstanceStreamingConfigurationsCommand = async ( @@ -22400,81 +16603,40 @@ const deserializeAws_restJson1PutAppInstanceStreamingConfigurationsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEventsConfigurationCommand = async ( @@ -22503,81 +16665,40 @@ const deserializeAws_restJson1PutEventsConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRetentionSettingsCommand = async ( @@ -22610,89 +16731,43 @@ const deserializeAws_restJson1PutRetentionSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSipMediaApplicationLoggingConfigurationCommand = async ( @@ -22727,81 +16802,40 @@ const deserializeAws_restJson1PutSipMediaApplicationLoggingConfigurationCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorEmergencyCallingConfigurationCommand = async ( @@ -22833,81 +16867,40 @@ const deserializeAws_restJson1PutVoiceConnectorEmergencyCallingConfigurationComm ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorLoggingConfigurationCommand = async ( @@ -22936,81 +16929,40 @@ const deserializeAws_restJson1PutVoiceConnectorLoggingConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorOriginationCommand = async ( @@ -23039,81 +16991,40 @@ const deserializeAws_restJson1PutVoiceConnectorOriginationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorProxyCommand = async ( @@ -23142,89 +17053,43 @@ const deserializeAws_restJson1PutVoiceConnectorProxyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorStreamingConfigurationCommand = async ( @@ -23256,81 +17121,40 @@ const deserializeAws_restJson1PutVoiceConnectorStreamingConfigurationCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorTerminationCommand = async ( @@ -23359,89 +17183,43 @@ const deserializeAws_restJson1PutVoiceConnectorTerminationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVoiceConnectorTerminationCredentialsCommand = async ( @@ -23466,81 +17244,40 @@ const deserializeAws_restJson1PutVoiceConnectorTerminationCredentialsCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RedactChannelMessageCommand = async ( @@ -23573,73 +17310,37 @@ const deserializeAws_restJson1RedactChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RedactConversationMessageCommand = async ( @@ -23664,81 +17365,40 @@ const deserializeAws_restJson1RedactConversationMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RedactRoomMessageCommand = async ( @@ -23763,81 +17423,40 @@ const deserializeAws_restJson1RedactRoomMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegenerateSecurityTokenCommand = async ( @@ -23866,81 +17485,40 @@ const deserializeAws_restJson1RegenerateSecurityTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResetPersonalPINCommand = async ( @@ -23969,81 +17547,40 @@ const deserializeAws_restJson1ResetPersonalPINCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RestorePhoneNumberCommand = async ( @@ -24072,89 +17609,43 @@ const deserializeAws_restJson1RestorePhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchAvailablePhoneNumbersCommand = async ( @@ -24187,81 +17678,40 @@ const deserializeAws_restJson1SearchAvailablePhoneNumbersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.chime#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendChannelMessageCommand = async ( @@ -24294,81 +17744,40 @@ const deserializeAws_restJson1SendChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMeetingTranscriptionCommand = async ( @@ -24393,97 +17802,46 @@ const deserializeAws_restJson1StartMeetingTranscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.chime#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopMeetingTranscriptionCommand = async ( @@ -24508,89 +17866,43 @@ const deserializeAws_restJson1StopMeetingTranscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.chime#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagAttendeeCommand = async ( @@ -24615,89 +17927,43 @@ const deserializeAws_restJson1TagAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagMeetingCommand = async ( @@ -24722,89 +17988,43 @@ const deserializeAws_restJson1TagMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -24829,73 +18049,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagAttendeeCommand = async ( @@ -24920,81 +18104,40 @@ const deserializeAws_restJson1UntagAttendeeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagMeetingCommand = async ( @@ -25019,81 +18162,40 @@ const deserializeAws_restJson1UntagMeetingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -25118,73 +18220,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccountCommand = async ( @@ -25213,81 +18279,40 @@ const deserializeAws_restJson1UpdateAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccountSettingsCommand = async ( @@ -25312,89 +18337,43 @@ const deserializeAws_restJson1UpdateAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppInstanceCommand = async ( @@ -25423,81 +18402,40 @@ const deserializeAws_restJson1UpdateAppInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppInstanceUserCommand = async ( @@ -25526,81 +18464,40 @@ const deserializeAws_restJson1UpdateAppInstanceUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBotCommand = async ( @@ -25629,81 +18526,40 @@ const deserializeAws_restJson1UpdateBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -25732,81 +18588,40 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelMessageCommand = async ( @@ -25839,81 +18654,40 @@ const deserializeAws_restJson1UpdateChannelMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelReadMarkerCommand = async ( @@ -25942,81 +18716,40 @@ const deserializeAws_restJson1UpdateChannelReadMarkerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGlobalSettingsCommand = async ( @@ -26041,73 +18774,37 @@ const deserializeAws_restJson1UpdateGlobalSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePhoneNumberCommand = async ( @@ -26136,89 +18833,43 @@ const deserializeAws_restJson1UpdatePhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePhoneNumberSettingsCommand = async ( @@ -26243,73 +18894,37 @@ const deserializeAws_restJson1UpdatePhoneNumberSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProxySessionCommand = async ( @@ -26338,81 +18953,40 @@ const deserializeAws_restJson1UpdateProxySessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoomCommand = async ( @@ -26441,81 +19015,40 @@ const deserializeAws_restJson1UpdateRoomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoomMembershipCommand = async ( @@ -26544,81 +19077,40 @@ const deserializeAws_restJson1UpdateRoomMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSipMediaApplicationCommand = async ( @@ -26647,89 +19139,43 @@ const deserializeAws_restJson1UpdateSipMediaApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSipMediaApplicationCallCommand = async ( @@ -26761,89 +19207,43 @@ const deserializeAws_restJson1UpdateSipMediaApplicationCallCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSipRuleCommand = async ( @@ -26872,97 +19272,46 @@ const deserializeAws_restJson1UpdateSipRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.chime#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserCommand = async ( @@ -26991,81 +19340,40 @@ const deserializeAws_restJson1UpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserSettingsCommand = async ( @@ -27090,81 +19398,40 @@ const deserializeAws_restJson1UpdateUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVoiceConnectorCommand = async ( @@ -27193,81 +19460,40 @@ const deserializeAws_restJson1UpdateVoiceConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVoiceConnectorGroupCommand = async ( @@ -27296,102 +19522,50 @@ const deserializeAws_restJson1UpdateVoiceConnectorGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.chime#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.chime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.chime#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.chime#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.chime#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.chime#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottledClientException": case "com.amazonaws.chime#ThrottledClientException": - response = { - ...(await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledClientExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.chime#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27399,20 +19573,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27420,20 +19592,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27441,20 +19611,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27462,20 +19630,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27483,20 +19649,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27504,20 +19668,18 @@ const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceFailureException = { - name: "ServiceFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27525,20 +19687,18 @@ const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27546,20 +19706,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottledClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottledClientException = { - name: "ThrottledClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27567,20 +19725,18 @@ const deserializeAws_restJson1ThrottledClientExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottledClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedClientException = { - name: "UnauthorizedClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27588,20 +19744,18 @@ const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnprocessableEntityException = { - name: "UnprocessableEntityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -27609,7 +19763,11 @@ const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnprocessableEntityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountSettings = (input: AccountSettings, context: __SerdeContext): any => { diff --git a/clients/client-cloud9/src/index.ts b/clients/client-cloud9/src/index.ts index b7b3367f0d5ca..f7959e10591af 100644 --- a/clients/client-cloud9/src/index.ts +++ b/clients/client-cloud9/src/index.ts @@ -3,3 +3,4 @@ export * from "./Cloud9Client"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { Cloud9ServiceException } from "./models/Cloud9ServiceException"; diff --git a/clients/client-cloud9/src/models/Cloud9ServiceException.ts b/clients/client-cloud9/src/models/Cloud9ServiceException.ts new file mode 100644 index 0000000000000..ee0d6001ae83a --- /dev/null +++ b/clients/client-cloud9/src/models/Cloud9ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Cloud9 service. + */ +export class Cloud9ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Cloud9ServiceException.prototype); + } +} diff --git a/clients/client-cloud9/src/models/models_0.ts b/clients/client-cloud9/src/models/models_0.ts index ddf95bfa3aa0b..be8b54eb86a9d 100644 --- a/clients/client-cloud9/src/models/models_0.ts +++ b/clients/client-cloud9/src/models/models_0.ts @@ -1,26 +1,52 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Cloud9ServiceException as __BaseException } from "./Cloud9ServiceException"; /** *

The target request is invalid.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.className = opts.className; + this.code = opts.code; + } } /** *

A conflict occurred.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.className = opts.className; + this.code = opts.code; + } } export enum ConnectionType { @@ -206,56 +232,116 @@ export namespace CreateEnvironmentEC2Result { /** *

An access permissions issue occurred.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; - message?: string; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.className = opts.className; + this.code = opts.code; + } } /** *

An internal server error occurred.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; - message?: string; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.className = opts.className; + this.code = opts.code; + } } /** *

A service limit was exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.className = opts.className; + this.code = opts.code; + } } /** *

The target resource cannot be found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.className = opts.className; + this.code = opts.code; + } } /** *

Too many service requests were made over the given time period.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - message?: string; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.className = opts.className; + this.code = opts.code; + } } export enum MemberPermissions { @@ -917,12 +1003,24 @@ export namespace ListTagsForResourceResponse { /** *

A concurrent access issue occurred.

*/ -export interface ConcurrentAccessException extends __SmithyException, $MetadataBearer { - name: "ConcurrentAccessException"; - $fault: "client"; - message?: string; +export class ConcurrentAccessException extends __BaseException { + readonly name: "ConcurrentAccessException" = "ConcurrentAccessException"; + readonly $fault: "client" = "client"; className?: string; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentAccessException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentAccessException.prototype); + this.className = opts.className; + this.code = opts.code; + } } export interface TagResourceRequest { diff --git a/clients/client-cloud9/src/protocols/Aws_json1_1.ts b/clients/client-cloud9/src/protocols/Aws_json1_1.ts index 9ca30978ec420..d7b964f1e838a 100644 --- a/clients/client-cloud9/src/protocols/Aws_json1_1.ts +++ b/clients/client-cloud9/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -52,6 +51,7 @@ import { UpdateEnvironmentMembershipCommandInput, UpdateEnvironmentMembershipCommandOutput, } from "../commands/UpdateEnvironmentMembershipCommand"; +import { Cloud9ServiceException as __BaseException } from "../models/Cloud9ServiceException"; import { BadRequestException, ConcurrentAccessException, @@ -288,81 +288,40 @@ const deserializeAws_json1_1CreateEnvironmentEC2CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEnvironmentMembershipCommand = async ( @@ -390,81 +349,40 @@ const deserializeAws_json1_1CreateEnvironmentMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEnvironmentCommand = async ( @@ -492,81 +410,40 @@ const deserializeAws_json1_1DeleteEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEnvironmentMembershipCommand = async ( @@ -594,81 +471,40 @@ const deserializeAws_json1_1DeleteEnvironmentMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEnvironmentMembershipsCommand = async ( @@ -696,81 +532,40 @@ const deserializeAws_json1_1DescribeEnvironmentMembershipsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEnvironmentsCommand = async ( @@ -798,81 +593,40 @@ const deserializeAws_json1_1DescribeEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEnvironmentStatusCommand = async ( @@ -900,81 +654,40 @@ const deserializeAws_json1_1DescribeEnvironmentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEnvironmentsCommand = async ( @@ -1002,81 +715,40 @@ const deserializeAws_json1_1ListEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1104,49 +776,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1174,57 +825,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.cloud9#ConcurrentAccessException": - response = { - ...(await deserializeAws_json1_1ConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentAccessExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1252,57 +877,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.cloud9#ConcurrentAccessException": - response = { - ...(await deserializeAws_json1_1ConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentAccessExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEnvironmentCommand = async ( @@ -1330,81 +929,40 @@ const deserializeAws_json1_1UpdateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEnvironmentMembershipCommand = async ( @@ -1432,81 +990,40 @@ const deserializeAws_json1_1UpdateEnvironmentMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.cloud9#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloud9#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.cloud9#ForbiddenException": - response = { - ...(await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.cloud9#InternalServerErrorException": - response = { - ...(await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloud9#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.cloud9#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cloud9#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1BadRequestExceptionResponse = async ( @@ -1515,13 +1032,11 @@ const deserializeAws_json1_1BadRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BadRequestException(body, context); - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", + const exception = new BadRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentAccessExceptionResponse = async ( @@ -1530,13 +1045,11 @@ const deserializeAws_json1_1ConcurrentAccessExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentAccessException(body, context); - const contents: ConcurrentAccessException = { - name: "ConcurrentAccessException", - $fault: "client", + const exception = new ConcurrentAccessException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -1545,13 +1058,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ForbiddenExceptionResponse = async ( @@ -1560,13 +1071,11 @@ const deserializeAws_json1_1ForbiddenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ForbiddenException(body, context); - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", + const exception = new ForbiddenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorExceptionResponse = async ( @@ -1575,13 +1084,11 @@ const deserializeAws_json1_1InternalServerErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerErrorException(body, context); - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", + const exception = new InternalServerErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1590,13 +1097,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -1605,13 +1110,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -1620,13 +1123,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BoundedEnvironmentIdList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-cloudcontrol/src/index.ts b/clients/client-cloudcontrol/src/index.ts index cdd51966d9afc..886a7e26cfb69 100644 --- a/clients/client-cloudcontrol/src/index.ts +++ b/clients/client-cloudcontrol/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { CloudControlServiceException } from "./models/CloudControlServiceException"; diff --git a/clients/client-cloudcontrol/src/models/CloudControlServiceException.ts b/clients/client-cloudcontrol/src/models/CloudControlServiceException.ts new file mode 100644 index 0000000000000..1a5a37a82704b --- /dev/null +++ b/clients/client-cloudcontrol/src/models/CloudControlServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudControl service. + */ +export class CloudControlServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudControlServiceException.prototype); + } +} diff --git a/clients/client-cloudcontrol/src/models/models_0.ts b/clients/client-cloudcontrol/src/models/models_0.ts index 5dd73058f7fd9..bde26931dbf80 100644 --- a/clients/client-cloudcontrol/src/models/models_0.ts +++ b/clients/client-cloudcontrol/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudControlServiceException as __BaseException } from "./CloudControlServiceException"; /** *

The resource with the name requested already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface CancelResourceRequestInput { @@ -186,19 +200,43 @@ export namespace CancelResourceRequestOutput { /** *

The resource is currently being modified by another operation.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "server"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

A resource operation with the specified request token cannot be found.

*/ -export interface RequestTokenNotFoundException extends __SmithyException, $MetadataBearer { - name: "RequestTokenNotFoundException"; - $fault: "client"; +export class RequestTokenNotFoundException extends __BaseException { + readonly name: "RequestTokenNotFoundException" = "RequestTokenNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestTokenNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestTokenNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -206,19 +244,43 @@ export interface RequestTokenNotFoundException extends __SmithyException, $Metad *

It is best practice for client tokens to be unique for each resource operation request. * However, client token expire after 36 hours.

*/ -export interface ClientTokenConflictException extends __SmithyException, $MetadataBearer { - name: "ClientTokenConflictException"; - $fault: "client"; +export class ClientTokenConflictException extends __BaseException { + readonly name: "ClientTokenConflictException" = "ClientTokenConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientTokenConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientTokenConflictException.prototype); + this.Message = opts.Message; + } } /** *

Another resource operation is currently being performed on this resource.

*/ -export interface ConcurrentOperationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentOperationException"; - $fault: "client"; +export class ConcurrentOperationException extends __BaseException { + readonly name: "ConcurrentOperationException" = "ConcurrentOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentOperationException.prototype); + this.Message = opts.Message; + } } export interface CreateResourceInput { @@ -308,80 +370,176 @@ export namespace CreateResourceOutput { *

The resource handler has returned that the downstream service generated an error that does * not map to any other handler error code.

*/ -export interface GeneralServiceException extends __SmithyException, $MetadataBearer { - name: "GeneralServiceException"; - $fault: "client"; +export class GeneralServiceException extends __BaseException { + readonly name: "GeneralServiceException" = "GeneralServiceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GeneralServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GeneralServiceException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has failed without a returning a more specific error code. This can * include timeouts.

*/ -export interface HandlerFailureException extends __SmithyException, $MetadataBearer { - name: "HandlerFailureException"; - $fault: "server"; +export class HandlerFailureException extends __BaseException { + readonly name: "HandlerFailureException" = "HandlerFailureException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HandlerFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, HandlerFailureException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that an unexpected error occurred within the resource * handler.

*/ -export interface HandlerInternalFailureException extends __SmithyException, $MetadataBearer { - name: "HandlerInternalFailureException"; - $fault: "server"; +export class HandlerInternalFailureException extends __BaseException { + readonly name: "HandlerInternalFailureException" = "HandlerInternalFailureException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HandlerInternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, HandlerInternalFailureException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that the credentials provided by the user are * invalid.

*/ -export interface InvalidCredentialsException extends __SmithyException, $MetadataBearer { - name: "InvalidCredentialsException"; - $fault: "client"; +export class InvalidCredentialsException extends __BaseException { + readonly name: "InvalidCredentialsException" = "InvalidCredentialsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCredentialsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCredentialsException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that invalid input from the user has generated a generic * exception.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that the request could not be completed due to * networking issues, such as a failure to receive a response from the server.

*/ -export interface NetworkFailureException extends __SmithyException, $MetadataBearer { - name: "NetworkFailureException"; - $fault: "server"; +export class NetworkFailureException extends __BaseException { + readonly name: "NetworkFailureException" = "NetworkFailureException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NetworkFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, NetworkFailureException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that the downstream resource failed to complete all of * its ready-state checks.

*/ -export interface NotStabilizedException extends __SmithyException, $MetadataBearer { - name: "NotStabilizedException"; - $fault: "client"; +export class NotStabilizedException extends __BaseException { + readonly name: "NotStabilizedException" = "NotStabilizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotStabilizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotStabilizedException.prototype); + this.Message = opts.Message; + } } /** *

One or more properties included in this resource operation are defined as create-only, and * therefore cannot be updated.

*/ -export interface NotUpdatableException extends __SmithyException, $MetadataBearer { - name: "NotUpdatableException"; - $fault: "client"; +export class NotUpdatableException extends __BaseException { + readonly name: "NotUpdatableException" = "NotUpdatableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotUpdatableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotUpdatableException.prototype); + this.Message = opts.Message; + } } /** @@ -389,10 +547,22 @@ export interface NotUpdatableException extends __SmithyException, $MetadataBeare * configuration error. This includes issues such as the resource handler returning an invalid * response, or timing out.

*/ -export interface PrivateTypeException extends __SmithyException, $MetadataBearer { - name: "PrivateTypeException"; - $fault: "client"; +export class PrivateTypeException extends __BaseException { + readonly name: "PrivateTypeException" = "PrivateTypeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PrivateTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PrivateTypeException.prototype); + this.Message = opts.Message; + } } /** @@ -400,66 +570,150 @@ export interface PrivateTypeException extends __SmithyException, $MetadataBearer * currently undergoing an operation and cannot be acted upon until that operation is * finished.

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + this.Message = opts.Message; + } } /** *

A resource with the specified identifier cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that the downstream service returned an internal error, * typically with a 5XX HTTP status code.

*/ -export interface ServiceInternalErrorException extends __SmithyException, $MetadataBearer { - name: "ServiceInternalErrorException"; - $fault: "server"; +export class ServiceInternalErrorException extends __BaseException { + readonly name: "ServiceInternalErrorException" = "ServiceInternalErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceInternalErrorException.prototype); + this.Message = opts.Message; + } } /** *

The resource handler has returned that a non-transient resource limit was reached on the * service side.

*/ -export interface ServiceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceLimitExceededException"; - $fault: "client"; +export class ServiceLimitExceededException extends __BaseException { + readonly name: "ServiceLimitExceededException" = "ServiceLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The specified extension does not exist in the CloudFormation registry.

*/ -export interface TypeNotFoundException extends __SmithyException, $MetadataBearer { - name: "TypeNotFoundException"; - $fault: "client"; +export class TypeNotFoundException extends __BaseException { + readonly name: "TypeNotFoundException" = "TypeNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TypeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TypeNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource does not support this resource operation.

*/ -export interface UnsupportedActionException extends __SmithyException, $MetadataBearer { - name: "UnsupportedActionException"; - $fault: "client"; +export class UnsupportedActionException extends __BaseException { + readonly name: "UnsupportedActionException" = "UnsupportedActionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedActionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedActionException.prototype); + this.Message = opts.Message; + } } export interface DeleteResourceInput { diff --git a/clients/client-cloudcontrol/src/protocols/Aws_json1_0.ts b/clients/client-cloudcontrol/src/protocols/Aws_json1_0.ts index 1b39c629d6fb5..0f2e5f1f6549e 100644 --- a/clients/client-cloudcontrol/src/protocols/Aws_json1_0.ts +++ b/clients/client-cloudcontrol/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -32,6 +31,7 @@ import { } from "../commands/ListResourceRequestsCommand"; import { ListResourcesCommandInput, ListResourcesCommandOutput } from "../commands/ListResourcesCommand"; import { UpdateResourceCommandInput, UpdateResourceCommandOutput } from "../commands/UpdateResourceCommand"; +import { CloudControlServiceException as __BaseException } from "../models/CloudControlServiceException"; import { AlreadyExistsException, CancelResourceRequestInput, @@ -206,41 +206,25 @@ const deserializeAws_json1_0CancelResourceRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudcontrol#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_0ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConcurrentModificationExceptionResponse(parsedOutput, context); case "RequestTokenNotFoundException": case "com.amazonaws.cloudcontrol#RequestTokenNotFoundException": - response = { - ...(await deserializeAws_json1_0RequestTokenNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestTokenNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateResourceCommand = async ( @@ -268,177 +252,76 @@ const deserializeAws_json1_0CreateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudcontrol#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context); case "ClientTokenConflictException": case "com.amazonaws.cloudcontrol#ClientTokenConflictException": - response = { - ...(await deserializeAws_json1_0ClientTokenConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ClientTokenConflictExceptionResponse(parsedOutput, context); case "ConcurrentOperationException": case "com.amazonaws.cloudcontrol#ConcurrentOperationException": - response = { - ...(await deserializeAws_json1_0ConcurrentOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConcurrentOperationExceptionResponse(parsedOutput, context); case "GeneralServiceException": case "com.amazonaws.cloudcontrol#GeneralServiceException": - response = { - ...(await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context); case "HandlerFailureException": case "com.amazonaws.cloudcontrol#HandlerFailureException": - response = { - ...(await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context); case "HandlerInternalFailureException": case "com.amazonaws.cloudcontrol#HandlerInternalFailureException": - response = { - ...(await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context); case "InvalidCredentialsException": case "com.amazonaws.cloudcontrol#InvalidCredentialsException": - response = { - ...(await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudcontrol#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "NetworkFailureException": case "com.amazonaws.cloudcontrol#NetworkFailureException": - response = { - ...(await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context); case "NotStabilizedException": case "com.amazonaws.cloudcontrol#NotStabilizedException": - response = { - ...(await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context); case "NotUpdatableException": case "com.amazonaws.cloudcontrol#NotUpdatableException": - response = { - ...(await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context); case "PrivateTypeException": case "com.amazonaws.cloudcontrol#PrivateTypeException": - response = { - ...(await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cloudcontrol#ResourceConflictException": - response = { - ...(await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudcontrol#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceInternalErrorException": case "com.amazonaws.cloudcontrol#ServiceInternalErrorException": - response = { - ...(await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.cloudcontrol#ServiceLimitExceededException": - response = { - ...(await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.cloudcontrol#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudcontrol#TypeNotFoundException": - response = { - ...(await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedActionException": case "com.amazonaws.cloudcontrol#UnsupportedActionException": - response = { - ...(await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteResourceCommand = async ( @@ -466,177 +349,76 @@ const deserializeAws_json1_0DeleteResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudcontrol#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context); case "ClientTokenConflictException": case "com.amazonaws.cloudcontrol#ClientTokenConflictException": - response = { - ...(await deserializeAws_json1_0ClientTokenConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ClientTokenConflictExceptionResponse(parsedOutput, context); case "ConcurrentOperationException": case "com.amazonaws.cloudcontrol#ConcurrentOperationException": - response = { - ...(await deserializeAws_json1_0ConcurrentOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConcurrentOperationExceptionResponse(parsedOutput, context); case "GeneralServiceException": case "com.amazonaws.cloudcontrol#GeneralServiceException": - response = { - ...(await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context); case "HandlerFailureException": case "com.amazonaws.cloudcontrol#HandlerFailureException": - response = { - ...(await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context); case "HandlerInternalFailureException": case "com.amazonaws.cloudcontrol#HandlerInternalFailureException": - response = { - ...(await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context); case "InvalidCredentialsException": case "com.amazonaws.cloudcontrol#InvalidCredentialsException": - response = { - ...(await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudcontrol#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "NetworkFailureException": case "com.amazonaws.cloudcontrol#NetworkFailureException": - response = { - ...(await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context); case "NotStabilizedException": case "com.amazonaws.cloudcontrol#NotStabilizedException": - response = { - ...(await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context); case "NotUpdatableException": case "com.amazonaws.cloudcontrol#NotUpdatableException": - response = { - ...(await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context); case "PrivateTypeException": case "com.amazonaws.cloudcontrol#PrivateTypeException": - response = { - ...(await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cloudcontrol#ResourceConflictException": - response = { - ...(await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudcontrol#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceInternalErrorException": case "com.amazonaws.cloudcontrol#ServiceInternalErrorException": - response = { - ...(await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.cloudcontrol#ServiceLimitExceededException": - response = { - ...(await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.cloudcontrol#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudcontrol#TypeNotFoundException": - response = { - ...(await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedActionException": case "com.amazonaws.cloudcontrol#UnsupportedActionException": - response = { - ...(await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetResourceCommand = async ( @@ -664,161 +446,70 @@ const deserializeAws_json1_0GetResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudcontrol#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context); case "GeneralServiceException": case "com.amazonaws.cloudcontrol#GeneralServiceException": - response = { - ...(await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context); case "HandlerFailureException": case "com.amazonaws.cloudcontrol#HandlerFailureException": - response = { - ...(await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context); case "HandlerInternalFailureException": case "com.amazonaws.cloudcontrol#HandlerInternalFailureException": - response = { - ...(await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context); case "InvalidCredentialsException": case "com.amazonaws.cloudcontrol#InvalidCredentialsException": - response = { - ...(await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudcontrol#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "NetworkFailureException": case "com.amazonaws.cloudcontrol#NetworkFailureException": - response = { - ...(await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context); case "NotStabilizedException": case "com.amazonaws.cloudcontrol#NotStabilizedException": - response = { - ...(await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context); case "NotUpdatableException": case "com.amazonaws.cloudcontrol#NotUpdatableException": - response = { - ...(await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context); case "PrivateTypeException": case "com.amazonaws.cloudcontrol#PrivateTypeException": - response = { - ...(await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cloudcontrol#ResourceConflictException": - response = { - ...(await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudcontrol#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceInternalErrorException": case "com.amazonaws.cloudcontrol#ServiceInternalErrorException": - response = { - ...(await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.cloudcontrol#ServiceLimitExceededException": - response = { - ...(await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.cloudcontrol#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudcontrol#TypeNotFoundException": - response = { - ...(await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedActionException": case "com.amazonaws.cloudcontrol#UnsupportedActionException": - response = { - ...(await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetResourceRequestStatusCommand = async ( @@ -846,33 +537,22 @@ const deserializeAws_json1_0GetResourceRequestStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestTokenNotFoundException": case "com.amazonaws.cloudcontrol#RequestTokenNotFoundException": - response = { - ...(await deserializeAws_json1_0RequestTokenNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestTokenNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListResourceRequestsCommand = async ( @@ -900,25 +580,19 @@ const deserializeAws_json1_0ListResourceRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListResourcesCommand = async ( @@ -946,161 +620,70 @@ const deserializeAws_json1_0ListResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudcontrol#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context); case "GeneralServiceException": case "com.amazonaws.cloudcontrol#GeneralServiceException": - response = { - ...(await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context); case "HandlerFailureException": case "com.amazonaws.cloudcontrol#HandlerFailureException": - response = { - ...(await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context); case "HandlerInternalFailureException": case "com.amazonaws.cloudcontrol#HandlerInternalFailureException": - response = { - ...(await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context); case "InvalidCredentialsException": case "com.amazonaws.cloudcontrol#InvalidCredentialsException": - response = { - ...(await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudcontrol#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "NetworkFailureException": case "com.amazonaws.cloudcontrol#NetworkFailureException": - response = { - ...(await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context); case "NotStabilizedException": case "com.amazonaws.cloudcontrol#NotStabilizedException": - response = { - ...(await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context); case "NotUpdatableException": case "com.amazonaws.cloudcontrol#NotUpdatableException": - response = { - ...(await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context); case "PrivateTypeException": case "com.amazonaws.cloudcontrol#PrivateTypeException": - response = { - ...(await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cloudcontrol#ResourceConflictException": - response = { - ...(await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudcontrol#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceInternalErrorException": case "com.amazonaws.cloudcontrol#ServiceInternalErrorException": - response = { - ...(await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.cloudcontrol#ServiceLimitExceededException": - response = { - ...(await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.cloudcontrol#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudcontrol#TypeNotFoundException": - response = { - ...(await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedActionException": case "com.amazonaws.cloudcontrol#UnsupportedActionException": - response = { - ...(await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateResourceCommand = async ( @@ -1128,177 +711,76 @@ const deserializeAws_json1_0UpdateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudcontrol#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AlreadyExistsExceptionResponse(parsedOutput, context); case "ClientTokenConflictException": case "com.amazonaws.cloudcontrol#ClientTokenConflictException": - response = { - ...(await deserializeAws_json1_0ClientTokenConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ClientTokenConflictExceptionResponse(parsedOutput, context); case "ConcurrentOperationException": case "com.amazonaws.cloudcontrol#ConcurrentOperationException": - response = { - ...(await deserializeAws_json1_0ConcurrentOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConcurrentOperationExceptionResponse(parsedOutput, context); case "GeneralServiceException": case "com.amazonaws.cloudcontrol#GeneralServiceException": - response = { - ...(await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GeneralServiceExceptionResponse(parsedOutput, context); case "HandlerFailureException": case "com.amazonaws.cloudcontrol#HandlerFailureException": - response = { - ...(await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerFailureExceptionResponse(parsedOutput, context); case "HandlerInternalFailureException": case "com.amazonaws.cloudcontrol#HandlerInternalFailureException": - response = { - ...(await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0HandlerInternalFailureExceptionResponse(parsedOutput, context); case "InvalidCredentialsException": case "com.amazonaws.cloudcontrol#InvalidCredentialsException": - response = { - ...(await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidCredentialsExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudcontrol#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "NetworkFailureException": case "com.amazonaws.cloudcontrol#NetworkFailureException": - response = { - ...(await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NetworkFailureExceptionResponse(parsedOutput, context); case "NotStabilizedException": case "com.amazonaws.cloudcontrol#NotStabilizedException": - response = { - ...(await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotStabilizedExceptionResponse(parsedOutput, context); case "NotUpdatableException": case "com.amazonaws.cloudcontrol#NotUpdatableException": - response = { - ...(await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0NotUpdatableExceptionResponse(parsedOutput, context); case "PrivateTypeException": case "com.amazonaws.cloudcontrol#PrivateTypeException": - response = { - ...(await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PrivateTypeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cloudcontrol#ResourceConflictException": - response = { - ...(await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudcontrol#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceInternalErrorException": case "com.amazonaws.cloudcontrol#ServiceInternalErrorException": - response = { - ...(await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceInternalErrorExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.cloudcontrol#ServiceLimitExceededException": - response = { - ...(await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.cloudcontrol#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudcontrol#TypeNotFoundException": - response = { - ...(await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedActionException": case "com.amazonaws.cloudcontrol#UnsupportedActionException": - response = { - ...(await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedActionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AlreadyExistsExceptionResponse = async ( @@ -1307,13 +789,11 @@ const deserializeAws_json1_0AlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AlreadyExistsException(body, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ClientTokenConflictExceptionResponse = async ( @@ -1322,13 +802,11 @@ const deserializeAws_json1_0ClientTokenConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ClientTokenConflictException(body, context); - const contents: ClientTokenConflictException = { - name: "ClientTokenConflictException", - $fault: "client", + const exception = new ClientTokenConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConcurrentModificationExceptionResponse = async ( @@ -1337,13 +815,11 @@ const deserializeAws_json1_0ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "server", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConcurrentOperationExceptionResponse = async ( @@ -1352,13 +828,11 @@ const deserializeAws_json1_0ConcurrentOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConcurrentOperationException(body, context); - const contents: ConcurrentOperationException = { - name: "ConcurrentOperationException", - $fault: "client", + const exception = new ConcurrentOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0GeneralServiceExceptionResponse = async ( @@ -1367,13 +841,11 @@ const deserializeAws_json1_0GeneralServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0GeneralServiceException(body, context); - const contents: GeneralServiceException = { - name: "GeneralServiceException", - $fault: "client", + const exception = new GeneralServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0HandlerFailureExceptionResponse = async ( @@ -1382,13 +854,11 @@ const deserializeAws_json1_0HandlerFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0HandlerFailureException(body, context); - const contents: HandlerFailureException = { - name: "HandlerFailureException", - $fault: "server", + const exception = new HandlerFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0HandlerInternalFailureExceptionResponse = async ( @@ -1397,13 +867,11 @@ const deserializeAws_json1_0HandlerInternalFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0HandlerInternalFailureException(body, context); - const contents: HandlerInternalFailureException = { - name: "HandlerInternalFailureException", - $fault: "server", + const exception = new HandlerInternalFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidCredentialsExceptionResponse = async ( @@ -1412,13 +880,11 @@ const deserializeAws_json1_0InvalidCredentialsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidCredentialsException(body, context); - const contents: InvalidCredentialsException = { - name: "InvalidCredentialsException", - $fault: "client", + const exception = new InvalidCredentialsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidRequestExceptionResponse = async ( @@ -1427,13 +893,11 @@ const deserializeAws_json1_0InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0NetworkFailureExceptionResponse = async ( @@ -1442,13 +906,11 @@ const deserializeAws_json1_0NetworkFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0NetworkFailureException(body, context); - const contents: NetworkFailureException = { - name: "NetworkFailureException", - $fault: "server", + const exception = new NetworkFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0NotStabilizedExceptionResponse = async ( @@ -1457,13 +919,11 @@ const deserializeAws_json1_0NotStabilizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0NotStabilizedException(body, context); - const contents: NotStabilizedException = { - name: "NotStabilizedException", - $fault: "client", + const exception = new NotStabilizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0NotUpdatableExceptionResponse = async ( @@ -1472,13 +932,11 @@ const deserializeAws_json1_0NotUpdatableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0NotUpdatableException(body, context); - const contents: NotUpdatableException = { - name: "NotUpdatableException", - $fault: "client", + const exception = new NotUpdatableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0PrivateTypeExceptionResponse = async ( @@ -1487,13 +945,11 @@ const deserializeAws_json1_0PrivateTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0PrivateTypeException(body, context); - const contents: PrivateTypeException = { - name: "PrivateTypeException", - $fault: "client", + const exception = new PrivateTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0RequestTokenNotFoundExceptionResponse = async ( @@ -1502,13 +958,11 @@ const deserializeAws_json1_0RequestTokenNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0RequestTokenNotFoundException(body, context); - const contents: RequestTokenNotFoundException = { - name: "RequestTokenNotFoundException", - $fault: "client", + const exception = new RequestTokenNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceConflictExceptionResponse = async ( @@ -1517,13 +971,11 @@ const deserializeAws_json1_0ResourceConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceConflictException(body, context); - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", + const exception = new ResourceConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -1532,13 +984,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceInternalErrorExceptionResponse = async ( @@ -1547,13 +997,11 @@ const deserializeAws_json1_0ServiceInternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceInternalErrorException(body, context); - const contents: ServiceInternalErrorException = { - name: "ServiceInternalErrorException", - $fault: "server", + const exception = new ServiceInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceLimitExceededExceptionResponse = async ( @@ -1562,13 +1010,11 @@ const deserializeAws_json1_0ServiceLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceLimitExceededException(body, context); - const contents: ServiceLimitExceededException = { - name: "ServiceLimitExceededException", - $fault: "client", + const exception = new ServiceLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -1577,13 +1023,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TypeNotFoundExceptionResponse = async ( @@ -1592,13 +1036,11 @@ const deserializeAws_json1_0TypeNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TypeNotFoundException(body, context); - const contents: TypeNotFoundException = { - name: "TypeNotFoundException", - $fault: "client", + const exception = new TypeNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0UnsupportedActionExceptionResponse = async ( @@ -1607,13 +1049,11 @@ const deserializeAws_json1_0UnsupportedActionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0UnsupportedActionException(body, context); - const contents: UnsupportedActionException = { - name: "UnsupportedActionException", - $fault: "client", + const exception = new UnsupportedActionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CancelResourceRequestInput = ( diff --git a/clients/client-clouddirectory/src/index.ts b/clients/client-clouddirectory/src/index.ts index 5df3e2c808191..5563e958515d6 100644 --- a/clients/client-clouddirectory/src/index.ts +++ b/clients/client-clouddirectory/src/index.ts @@ -3,3 +3,4 @@ export * from "./CloudDirectoryClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CloudDirectoryServiceException } from "./models/CloudDirectoryServiceException"; diff --git a/clients/client-clouddirectory/src/models/CloudDirectoryServiceException.ts b/clients/client-clouddirectory/src/models/CloudDirectoryServiceException.ts new file mode 100644 index 0000000000000..1b6a5f64c34f6 --- /dev/null +++ b/clients/client-clouddirectory/src/models/CloudDirectoryServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudDirectory service. + */ +export class CloudDirectoryServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudDirectoryServiceException.prototype); + } +} diff --git a/clients/client-clouddirectory/src/models/models_0.ts b/clients/client-clouddirectory/src/models/models_0.ts index 9656981d02b22..fdcd4a2d3dd30 100644 --- a/clients/client-clouddirectory/src/models/models_0.ts +++ b/clients/client-clouddirectory/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudDirectoryServiceException as __BaseException } from "./CloudDirectoryServiceException"; /** *

Access denied or directory not found. Either you don't have permissions for this directory or the directory does not exist. Try calling ListDirectories and check your permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -285,75 +300,171 @@ export namespace AddFacetToObjectResponse { /** *

Operations are only permitted on enabled directories.

*/ -export interface DirectoryNotEnabledException extends __SmithyException, $MetadataBearer { - name: "DirectoryNotEnabledException"; - $fault: "client"; +export class DirectoryNotEnabledException extends __BaseException { + readonly name: "DirectoryNotEnabledException" = "DirectoryNotEnabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryNotEnabledException.prototype); + this.Message = opts.Message; + } } /** *

The Facet that you provided was not well formed or could not be * validated with the schema.

*/ -export interface FacetValidationException extends __SmithyException, $MetadataBearer { - name: "FacetValidationException"; - $fault: "client"; +export class FacetValidationException extends __BaseException { + readonly name: "FacetValidationException" = "FacetValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FacetValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FacetValidationException.prototype); + this.Message = opts.Message; + } } /** *

Indicates a problem that must be resolved by Amazon Web Services. This might be a transient error in which case you can retry your request until it succeeds. Otherwise, go to the AWS Service Health Dashboard site to see if there are any operational issues with the service.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that the provided ARN value is not valid.

*/ -export interface InvalidArnException extends __SmithyException, $MetadataBearer { - name: "InvalidArnException"; - $fault: "client"; +export class InvalidArnException extends __BaseException { + readonly name: "InvalidArnException" = "InvalidArnException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArnException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that limits are exceeded. See Limits for more information.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Occurs when a conflict with a previous successful write is detected. For example, if a write operation occurs on an object and then an attempt is made to read the object using “SERIALIZABLE” consistency, this exception may result. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.

*/ -export interface RetryableConflictException extends __SmithyException, $MetadataBearer { - name: "RetryableConflictException"; - $fault: "client"; +export class RetryableConflictException extends __BaseException { + readonly name: "RetryableConflictException" = "RetryableConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RetryableConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RetryableConflictException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that your request is malformed in some manner. See the exception * message.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface ApplySchemaRequest { @@ -406,20 +517,44 @@ export namespace ApplySchemaResponse { *

Indicates that an attempt to make an attachment was invalid. For example, attaching two nodes * with a link type that is not applicable to the nodes or attempting to apply a schema to a directory a second time.

*/ -export interface InvalidAttachmentException extends __SmithyException, $MetadataBearer { - name: "InvalidAttachmentException"; - $fault: "client"; +export class InvalidAttachmentException extends __BaseException { + readonly name: "InvalidAttachmentException" = "InvalidAttachmentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAttachmentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAttachmentException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that a schema could not be created due to a naming conflict. Please select a * different name and then try again.

*/ -export interface SchemaAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "SchemaAlreadyExistsException"; - $fault: "client"; +export class SchemaAlreadyExistsException extends __BaseException { + readonly name: "SchemaAlreadyExistsException" = "SchemaAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SchemaAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SchemaAlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface AttachObjectRequest { @@ -475,10 +610,22 @@ export namespace AttachObjectResponse { *

Indicates that a link could not be created due to a naming conflict. Choose a different * name and then try again.

*/ -export interface LinkNameAlreadyInUseException extends __SmithyException, $MetadataBearer { - name: "LinkNameAlreadyInUseException"; - $fault: "client"; +export class LinkNameAlreadyInUseException extends __BaseException { + readonly name: "LinkNameAlreadyInUseException" = "LinkNameAlreadyInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LinkNameAlreadyInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LinkNameAlreadyInUseException.prototype); + this.Message = opts.Message; + } } export interface AttachPolicyRequest { @@ -523,10 +670,22 @@ export namespace AttachPolicyResponse { /** *

Indicates that the requested operation can only operate on policy objects.

*/ -export interface NotPolicyException extends __SmithyException, $MetadataBearer { - name: "NotPolicyException"; - $fault: "client"; +export class NotPolicyException extends __BaseException { + readonly name: "NotPolicyException" = "NotPolicyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotPolicyException.prototype); + this.Message = opts.Message; + } } export interface AttachToIndexRequest { @@ -575,19 +734,43 @@ export namespace AttachToIndexResponse { /** *

An object has been attempted to be attached to an object that does not have the appropriate attribute value.

*/ -export interface IndexedAttributeMissingException extends __SmithyException, $MetadataBearer { - name: "IndexedAttributeMissingException"; - $fault: "client"; +export class IndexedAttributeMissingException extends __BaseException { + readonly name: "IndexedAttributeMissingException" = "IndexedAttributeMissingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IndexedAttributeMissingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IndexedAttributeMissingException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that the requested operation can only operate on index objects.

*/ -export interface NotIndexException extends __SmithyException, $MetadataBearer { - name: "NotIndexException"; - $fault: "client"; +export class NotIndexException extends __BaseException { + readonly name: "NotIndexException" = "NotIndexException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotIndexException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotIndexException.prototype); + this.Message = opts.Message; + } } /** @@ -2100,12 +2283,26 @@ export enum BatchWriteExceptionType { /** *

A BatchWrite exception has occurred.

*/ -export interface BatchWriteException extends __SmithyException, $MetadataBearer { - name: "BatchWriteException"; - $fault: "client"; +export class BatchWriteException extends __BaseException { + readonly name: "BatchWriteException" = "BatchWriteException"; + readonly $fault: "client" = "client"; Index?: number; Type?: BatchWriteExceptionType | string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchWriteException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchWriteException.prototype); + this.Index = opts.Index; + this.Type = opts.Type; + this.Message = opts.Message; + } } /** @@ -3194,10 +3391,22 @@ export namespace CreateDirectoryResponse { *

Indicates that a Directory could not be created due to a naming * conflict. Choose a different name and try again.

*/ -export interface DirectoryAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "DirectoryAlreadyExistsException"; - $fault: "client"; +export class DirectoryAlreadyExistsException extends __BaseException { + readonly name: "DirectoryAlreadyExistsException" = "DirectoryAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryAlreadyExistsException.prototype); + this.Message = opts.Message; + } } export enum RuleType { @@ -3430,19 +3639,43 @@ export namespace CreateFacetResponse { /** *

A facet with the same name already exists.

*/ -export interface FacetAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "FacetAlreadyExistsException"; - $fault: "client"; +export class FacetAlreadyExistsException extends __BaseException { + readonly name: "FacetAlreadyExistsException" = "FacetAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FacetAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FacetAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

Occurs when any of the rule parameter keys or values are invalid.

*/ -export interface InvalidRuleException extends __SmithyException, $MetadataBearer { - name: "InvalidRuleException"; - $fault: "client"; +export class InvalidRuleException extends __BaseException { + readonly name: "InvalidRuleException" = "InvalidRuleException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRuleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRuleException.prototype); + this.Message = opts.Message; + } } export interface CreateIndexRequest { @@ -3502,10 +3735,22 @@ export namespace CreateIndexResponse { /** *

Indicates that the requested index type is not supported.

*/ -export interface UnsupportedIndexTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedIndexTypeException"; - $fault: "client"; +export class UnsupportedIndexTypeException extends __BaseException { + readonly name: "UnsupportedIndexTypeException" = "UnsupportedIndexTypeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedIndexTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedIndexTypeException.prototype); + this.Message = opts.Message; + } } export interface CreateObjectRequest { @@ -3749,19 +3994,43 @@ export namespace DeleteDirectoryResponse { *

A directory that has been deleted and to which access has been attempted. Note: The * requested resource will eventually cease to exist.

*/ -export interface DirectoryDeletedException extends __SmithyException, $MetadataBearer { - name: "DirectoryDeletedException"; - $fault: "client"; +export class DirectoryDeletedException extends __BaseException { + readonly name: "DirectoryDeletedException" = "DirectoryDeletedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryDeletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryDeletedException.prototype); + this.Message = opts.Message; + } } /** *

An operation can only operate on a disabled directory.

*/ -export interface DirectoryNotDisabledException extends __SmithyException, $MetadataBearer { - name: "DirectoryNotDisabledException"; - $fault: "client"; +export class DirectoryNotDisabledException extends __BaseException { + readonly name: "DirectoryNotDisabledException" = "DirectoryNotDisabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryNotDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryNotDisabledException.prototype); + this.Message = opts.Message; + } } export interface DeleteFacetRequest { @@ -3801,19 +4070,43 @@ export namespace DeleteFacetResponse { *

Occurs when deleting a facet that contains an attribute that is a target to an * attribute reference in a different facet.

*/ -export interface FacetInUseException extends __SmithyException, $MetadataBearer { - name: "FacetInUseException"; - $fault: "client"; +export class FacetInUseException extends __BaseException { + readonly name: "FacetInUseException" = "FacetInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FacetInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FacetInUseException.prototype); + this.Message = opts.Message; + } } /** *

The specified Facet could not be found.

*/ -export interface FacetNotFoundException extends __SmithyException, $MetadataBearer { - name: "FacetNotFoundException"; - $fault: "client"; +export class FacetNotFoundException extends __BaseException { + readonly name: "FacetNotFoundException" = "FacetNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FacetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FacetNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteObjectRequest { @@ -3853,10 +4146,22 @@ export namespace DeleteObjectResponse { *

Indicates that the requested operation cannot be completed because the object has not * been detached from the tree.

*/ -export interface ObjectNotDetachedException extends __SmithyException, $MetadataBearer { - name: "ObjectNotDetachedException"; - $fault: "client"; +export class ObjectNotDetachedException extends __BaseException { + readonly name: "ObjectNotDetachedException" = "ObjectNotDetachedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectNotDetachedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectNotDetachedException.prototype); + this.Message = opts.Message; + } } export interface DeleteSchemaRequest { @@ -3897,10 +4202,22 @@ export namespace DeleteSchemaResponse { *

The object could not be deleted because links still exist. Remove the links and then * try the operation again.

*/ -export interface StillContainsLinksException extends __SmithyException, $MetadataBearer { - name: "StillContainsLinksException"; - $fault: "client"; +export class StillContainsLinksException extends __BaseException { + readonly name: "StillContainsLinksException" = "StillContainsLinksException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StillContainsLinksException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StillContainsLinksException.prototype); + this.Message = opts.Message; + } } export interface DeleteTypedLinkFacetRequest { @@ -3982,10 +4299,22 @@ export namespace DetachFromIndexResponse { /** *

Indicates that the object is not attached to the index.

*/ -export interface ObjectAlreadyDetachedException extends __SmithyException, $MetadataBearer { - name: "ObjectAlreadyDetachedException"; - $fault: "client"; +export class ObjectAlreadyDetachedException extends __BaseException { + readonly name: "ObjectAlreadyDetachedException" = "ObjectAlreadyDetachedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectAlreadyDetachedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectAlreadyDetachedException.prototype); + this.Message = opts.Message; + } } export interface DetachObjectRequest { @@ -4036,10 +4365,22 @@ export namespace DetachObjectResponse { *

Occurs when any invalid operations are performed on an object that is not a node, such * as calling ListObjectChildren for a leaf node object.

*/ -export interface NotNodeException extends __SmithyException, $MetadataBearer { - name: "NotNodeException"; - $fault: "client"; +export class NotNodeException extends __BaseException { + readonly name: "NotNodeException" = "NotNodeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotNodeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotNodeException.prototype); + this.Message = opts.Message; + } } export interface DetachPolicyRequest { @@ -4577,10 +4918,22 @@ export namespace GetTypedLinkFacetInformationResponse { /** *

Indicates that the NextToken value is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface ListAppliedSchemaArnsRequest { @@ -5256,10 +5609,22 @@ export namespace ListObjectParentPathsResponse { /** *

Cannot list the parents of a Directory root.

*/ -export interface CannotListParentOfRootException extends __SmithyException, $MetadataBearer { - name: "CannotListParentOfRootException"; - $fault: "client"; +export class CannotListParentOfRootException extends __BaseException { + readonly name: "CannotListParentOfRootException" = "CannotListParentOfRootException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CannotListParentOfRootException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CannotListParentOfRootException.prototype); + this.Message = opts.Message; + } } export interface ListObjectParentsRequest { @@ -5579,10 +5944,22 @@ export namespace ListPublishedSchemaArnsResponse { /** *

Can occur for multiple reasons such as when you tag a resource that doesn’t exist or if you specify a higher number of tags for a resource than the allowed limit. Allowed limit is 50 tags per resource.

*/ -export interface InvalidTaggingRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidTaggingRequestException"; - $fault: "client"; +export class InvalidTaggingRequestException extends __BaseException { + readonly name: "InvalidTaggingRequestException" = "InvalidTaggingRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTaggingRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTaggingRequestException.prototype); + this.Message = opts.Message; + } } export interface ListTagsForResourceRequest { @@ -5871,19 +6248,43 @@ export namespace PublishSchemaResponse { /** *

Indicates that a schema is already published.

*/ -export interface SchemaAlreadyPublishedException extends __SmithyException, $MetadataBearer { - name: "SchemaAlreadyPublishedException"; - $fault: "client"; +export class SchemaAlreadyPublishedException extends __BaseException { + readonly name: "SchemaAlreadyPublishedException" = "SchemaAlreadyPublishedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SchemaAlreadyPublishedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SchemaAlreadyPublishedException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that the provided SchemaDoc value is not valid.

*/ -export interface InvalidSchemaDocException extends __SmithyException, $MetadataBearer { - name: "InvalidSchemaDocException"; - $fault: "client"; +export class InvalidSchemaDocException extends __BaseException { + readonly name: "InvalidSchemaDocException" = "InvalidSchemaDocException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSchemaDocException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSchemaDocException.prototype); + this.Message = opts.Message; + } } export interface PutSchemaFromJsonRequest { @@ -6030,10 +6431,22 @@ export namespace UntagResourceResponse { *

An attempt to modify a Facet resulted in an invalid schema * exception.

*/ -export interface InvalidFacetUpdateException extends __SmithyException, $MetadataBearer { - name: "InvalidFacetUpdateException"; - $fault: "client"; +export class InvalidFacetUpdateException extends __BaseException { + readonly name: "InvalidFacetUpdateException" = "InvalidFacetUpdateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFacetUpdateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFacetUpdateException.prototype); + this.Message = opts.Message; + } } /** @@ -6315,10 +6728,22 @@ export namespace UpdateTypedLinkFacetResponse { /** *

Indicates a failure occurred while performing a check for backward compatibility between the specified schema and the schema that is currently applied to the directory.

*/ -export interface IncompatibleSchemaException extends __SmithyException, $MetadataBearer { - name: "IncompatibleSchemaException"; - $fault: "client"; +export class IncompatibleSchemaException extends __BaseException { + readonly name: "IncompatibleSchemaException" = "IncompatibleSchemaException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleSchemaException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleSchemaException.prototype); + this.Message = opts.Message; + } } export interface UpgradeAppliedSchemaRequest { diff --git a/clients/client-clouddirectory/src/protocols/Aws_restJson1.ts b/clients/client-clouddirectory/src/protocols/Aws_restJson1.ts index 8e5607836baf9..7002601ce7af1 100644 --- a/clients/client-clouddirectory/src/protocols/Aws_restJson1.ts +++ b/clients/client-clouddirectory/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddFacetToObjectCommandInput, AddFacetToObjectCommandOutput } from "../commands/AddFacetToObjectCommand"; @@ -161,6 +160,7 @@ import { UpgradePublishedSchemaCommandInput, UpgradePublishedSchemaCommandOutput, } from "../commands/UpgradePublishedSchemaCommand"; +import { CloudDirectoryServiceException as __BaseException } from "../models/CloudDirectoryServiceException"; import { AccessDeniedException, AttributeKey, @@ -2338,97 +2338,46 @@ const deserializeAws_restJson1AddFacetToObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ApplySchemaCommand = async ( @@ -2461,97 +2410,46 @@ const deserializeAws_restJson1ApplySchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidAttachmentException": case "com.amazonaws.clouddirectory#InvalidAttachmentException": - response = { - ...(await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "SchemaAlreadyExistsException": case "com.amazonaws.clouddirectory#SchemaAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachObjectCommand = async ( @@ -2580,113 +2478,52 @@ const deserializeAws_restJson1AttachObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidAttachmentException": case "com.amazonaws.clouddirectory#InvalidAttachmentException": - response = { - ...(await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LinkNameAlreadyInUseException": case "com.amazonaws.clouddirectory#LinkNameAlreadyInUseException": - response = { - ...(await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachPolicyCommand = async ( @@ -2711,97 +2548,46 @@ const deserializeAws_restJson1AttachPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotPolicyException": case "com.amazonaws.clouddirectory#NotPolicyException": - response = { - ...(await deserializeAws_restJson1NotPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotPolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachToIndexCommand = async ( @@ -2830,121 +2616,55 @@ const deserializeAws_restJson1AttachToIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "IndexedAttributeMissingException": case "com.amazonaws.clouddirectory#IndexedAttributeMissingException": - response = { - ...(await deserializeAws_restJson1IndexedAttributeMissingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexedAttributeMissingExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidAttachmentException": case "com.amazonaws.clouddirectory#InvalidAttachmentException": - response = { - ...(await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LinkNameAlreadyInUseException": case "com.amazonaws.clouddirectory#LinkNameAlreadyInUseException": - response = { - ...(await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context); case "NotIndexException": case "com.amazonaws.clouddirectory#NotIndexException": - response = { - ...(await deserializeAws_restJson1NotIndexExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotIndexExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachTypedLinkCommand = async ( @@ -2973,105 +2693,49 @@ const deserializeAws_restJson1AttachTypedLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidAttachmentException": case "com.amazonaws.clouddirectory#InvalidAttachmentException": - response = { - ...(await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchReadCommand = async ( @@ -3100,81 +2764,40 @@ const deserializeAws_restJson1BatchReadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchWriteCommand = async ( @@ -3203,89 +2826,43 @@ const deserializeAws_restJson1BatchWriteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BatchWriteException": case "com.amazonaws.clouddirectory#BatchWriteException": - response = { - ...(await deserializeAws_restJson1BatchWriteExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BatchWriteExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDirectoryCommand = async ( @@ -3326,89 +2903,43 @@ const deserializeAws_restJson1CreateDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryAlreadyExistsException": case "com.amazonaws.clouddirectory#DirectoryAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1DirectoryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryAlreadyExistsExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFacetCommand = async ( @@ -3433,105 +2964,49 @@ const deserializeAws_restJson1CreateFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetAlreadyExistsException": case "com.amazonaws.clouddirectory#FacetAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1FacetAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetAlreadyExistsExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidRuleException": case "com.amazonaws.clouddirectory#InvalidRuleException": - response = { - ...(await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIndexCommand = async ( @@ -3560,113 +3035,52 @@ const deserializeAws_restJson1CreateIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LinkNameAlreadyInUseException": case "com.amazonaws.clouddirectory#LinkNameAlreadyInUseException": - response = { - ...(await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "UnsupportedIndexTypeException": case "com.amazonaws.clouddirectory#UnsupportedIndexTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedIndexTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedIndexTypeExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateObjectCommand = async ( @@ -3695,113 +3109,52 @@ const deserializeAws_restJson1CreateObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LinkNameAlreadyInUseException": case "com.amazonaws.clouddirectory#LinkNameAlreadyInUseException": - response = { - ...(await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "UnsupportedIndexTypeException": case "com.amazonaws.clouddirectory#UnsupportedIndexTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedIndexTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedIndexTypeExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSchemaCommand = async ( @@ -3830,81 +3183,40 @@ const deserializeAws_restJson1CreateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "SchemaAlreadyExistsException": case "com.amazonaws.clouddirectory#SchemaAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTypedLinkFacetCommand = async ( @@ -3929,105 +3241,49 @@ const deserializeAws_restJson1CreateTypedLinkFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetAlreadyExistsException": case "com.amazonaws.clouddirectory#FacetAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1FacetAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetAlreadyExistsExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidRuleException": case "com.amazonaws.clouddirectory#InvalidRuleException": - response = { - ...(await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDirectoryCommand = async ( @@ -4056,97 +3312,46 @@ const deserializeAws_restJson1DeleteDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryDeletedException": case "com.amazonaws.clouddirectory#DirectoryDeletedException": - response = { - ...(await deserializeAws_restJson1DirectoryDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryDeletedExceptionResponse(parsedOutput, context); case "DirectoryNotDisabledException": case "com.amazonaws.clouddirectory#DirectoryNotDisabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotDisabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFacetCommand = async ( @@ -4171,97 +3376,46 @@ const deserializeAws_restJson1DeleteFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetInUseException": case "com.amazonaws.clouddirectory#FacetInUseException": - response = { - ...(await deserializeAws_restJson1FacetInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetInUseExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteObjectCommand = async ( @@ -4286,97 +3440,46 @@ const deserializeAws_restJson1DeleteObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ObjectNotDetachedException": case "com.amazonaws.clouddirectory#ObjectNotDetachedException": - response = { - ...(await deserializeAws_restJson1ObjectNotDetachedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ObjectNotDetachedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSchemaCommand = async ( @@ -4405,89 +3508,43 @@ const deserializeAws_restJson1DeleteSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "StillContainsLinksException": case "com.amazonaws.clouddirectory#StillContainsLinksException": - response = { - ...(await deserializeAws_restJson1StillContainsLinksExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StillContainsLinksExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTypedLinkFacetCommand = async ( @@ -4512,89 +3569,43 @@ const deserializeAws_restJson1DeleteTypedLinkFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachFromIndexCommand = async ( @@ -4623,105 +3634,49 @@ const deserializeAws_restJson1DetachFromIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotIndexException": case "com.amazonaws.clouddirectory#NotIndexException": - response = { - ...(await deserializeAws_restJson1NotIndexExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotIndexExceptionResponse(parsedOutput, context); case "ObjectAlreadyDetachedException": case "com.amazonaws.clouddirectory#ObjectAlreadyDetachedException": - response = { - ...(await deserializeAws_restJson1ObjectAlreadyDetachedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ObjectAlreadyDetachedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachObjectCommand = async ( @@ -4750,97 +3705,46 @@ const deserializeAws_restJson1DetachObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotNodeException": case "com.amazonaws.clouddirectory#NotNodeException": - response = { - ...(await deserializeAws_restJson1NotNodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotNodeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachPolicyCommand = async ( @@ -4865,97 +3769,46 @@ const deserializeAws_restJson1DetachPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotPolicyException": case "com.amazonaws.clouddirectory#NotPolicyException": - response = { - ...(await deserializeAws_restJson1NotPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotPolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachTypedLinkCommand = async ( @@ -4980,97 +3833,46 @@ const deserializeAws_restJson1DetachTypedLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableDirectoryCommand = async ( @@ -5099,89 +3901,43 @@ const deserializeAws_restJson1DisableDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryDeletedException": case "com.amazonaws.clouddirectory#DirectoryDeletedException": - response = { - ...(await deserializeAws_restJson1DirectoryDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryDeletedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableDirectoryCommand = async ( @@ -5210,89 +3966,43 @@ const deserializeAws_restJson1EnableDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryDeletedException": case "com.amazonaws.clouddirectory#DirectoryDeletedException": - response = { - ...(await deserializeAws_restJson1DirectoryDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryDeletedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppliedSchemaVersionCommand = async ( @@ -5321,81 +4031,40 @@ const deserializeAws_restJson1GetAppliedSchemaVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDirectoryCommand = async ( @@ -5424,73 +4093,37 @@ const deserializeAws_restJson1GetDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFacetCommand = async ( @@ -5519,89 +4152,43 @@ const deserializeAws_restJson1GetFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLinkAttributesCommand = async ( @@ -5630,97 +4217,46 @@ const deserializeAws_restJson1GetLinkAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetObjectAttributesCommand = async ( @@ -5749,97 +4285,46 @@ const deserializeAws_restJson1GetObjectAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetObjectInformationCommand = async ( @@ -5872,89 +4357,43 @@ const deserializeAws_restJson1GetObjectInformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSchemaAsJsonCommand = async ( @@ -5987,81 +4426,40 @@ const deserializeAws_restJson1GetSchemaAsJsonCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTypedLinkFacetInformationCommand = async ( @@ -6090,97 +4488,46 @@ const deserializeAws_restJson1GetTypedLinkFacetInformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppliedSchemaArnsCommand = async ( @@ -6213,89 +4560,43 @@ const deserializeAws_restJson1ListAppliedSchemaArnsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttachedIndicesCommand = async ( @@ -6328,89 +4629,43 @@ const deserializeAws_restJson1ListAttachedIndicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevelopmentSchemaArnsCommand = async ( @@ -6443,89 +4698,43 @@ const deserializeAws_restJson1ListDevelopmentSchemaArnsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDirectoriesCommand = async ( @@ -6558,81 +4767,40 @@ const deserializeAws_restJson1ListDirectoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFacetAttributesCommand = async ( @@ -6665,97 +4833,46 @@ const deserializeAws_restJson1ListFacetAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFacetNamesCommand = async ( @@ -6788,89 +4905,43 @@ const deserializeAws_restJson1ListFacetNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIncomingTypedLinksCommand = async ( @@ -6903,105 +4974,49 @@ const deserializeAws_restJson1ListIncomingTypedLinksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIndexCommand = async ( @@ -7034,113 +5049,52 @@ const deserializeAws_restJson1ListIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotIndexException": case "com.amazonaws.clouddirectory#NotIndexException": - response = { - ...(await deserializeAws_restJson1NotIndexExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotIndexExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListManagedSchemaArnsCommand = async ( @@ -7173,73 +5127,37 @@ const deserializeAws_restJson1ListManagedSchemaArnsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListObjectAttributesCommand = async ( @@ -7272,105 +5190,49 @@ const deserializeAws_restJson1ListObjectAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListObjectChildrenCommand = async ( @@ -7403,105 +5265,49 @@ const deserializeAws_restJson1ListObjectChildrenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotNodeException": case "com.amazonaws.clouddirectory#NotNodeException": - response = { - ...(await deserializeAws_restJson1NotNodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotNodeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListObjectParentPathsCommand = async ( @@ -7537,97 +5343,46 @@ const deserializeAws_restJson1ListObjectParentPathsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListObjectParentsCommand = async ( @@ -7664,105 +5419,49 @@ const deserializeAws_restJson1ListObjectParentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "CannotListParentOfRootException": case "com.amazonaws.clouddirectory#CannotListParentOfRootException": - response = { - ...(await deserializeAws_restJson1CannotListParentOfRootExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CannotListParentOfRootExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListObjectPoliciesCommand = async ( @@ -7795,97 +5494,46 @@ const deserializeAws_restJson1ListObjectPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOutgoingTypedLinksCommand = async ( @@ -7918,105 +5566,49 @@ const deserializeAws_restJson1ListOutgoingTypedLinksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPolicyAttachmentsCommand = async ( @@ -8049,105 +5641,49 @@ const deserializeAws_restJson1ListPolicyAttachmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotPolicyException": case "com.amazonaws.clouddirectory#NotPolicyException": - response = { - ...(await deserializeAws_restJson1NotPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotPolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPublishedSchemaArnsCommand = async ( @@ -8180,89 +5716,43 @@ const deserializeAws_restJson1ListPublishedSchemaArnsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -8295,89 +5785,43 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTaggingRequestException": case "com.amazonaws.clouddirectory#InvalidTaggingRequestException": - response = { - ...(await deserializeAws_restJson1InvalidTaggingRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTaggingRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTypedLinkFacetAttributesCommand = async ( @@ -8410,97 +5854,46 @@ const deserializeAws_restJson1ListTypedLinkFacetAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTypedLinkFacetNamesCommand = async ( @@ -8533,89 +5926,43 @@ const deserializeAws_restJson1ListTypedLinkFacetNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1LookupPolicyCommand = async ( @@ -8648,97 +5995,46 @@ const deserializeAws_restJson1LookupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.clouddirectory#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishSchemaCommand = async ( @@ -8767,89 +6063,43 @@ const deserializeAws_restJson1PublishSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "SchemaAlreadyPublishedException": case "com.amazonaws.clouddirectory#SchemaAlreadyPublishedException": - response = { - ...(await deserializeAws_restJson1SchemaAlreadyPublishedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SchemaAlreadyPublishedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSchemaFromJsonCommand = async ( @@ -8878,89 +6128,43 @@ const deserializeAws_restJson1PutSchemaFromJsonCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidRuleException": case "com.amazonaws.clouddirectory#InvalidRuleException": - response = { - ...(await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context); case "InvalidSchemaDocException": case "com.amazonaws.clouddirectory#InvalidSchemaDocException": - response = { - ...(await deserializeAws_restJson1InvalidSchemaDocExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSchemaDocExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveFacetFromObjectCommand = async ( @@ -8985,97 +6189,46 @@ const deserializeAws_restJson1RemoveFacetFromObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -9100,89 +6253,43 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTaggingRequestException": case "com.amazonaws.clouddirectory#InvalidTaggingRequestException": - response = { - ...(await deserializeAws_restJson1InvalidTaggingRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTaggingRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -9207,89 +6314,43 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTaggingRequestException": case "com.amazonaws.clouddirectory#InvalidTaggingRequestException": - response = { - ...(await deserializeAws_restJson1InvalidTaggingRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTaggingRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFacetCommand = async ( @@ -9314,113 +6375,52 @@ const deserializeAws_restJson1UpdateFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidFacetUpdateException": case "com.amazonaws.clouddirectory#InvalidFacetUpdateException": - response = { - ...(await deserializeAws_restJson1InvalidFacetUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidFacetUpdateExceptionResponse(parsedOutput, context); case "InvalidRuleException": case "com.amazonaws.clouddirectory#InvalidRuleException": - response = { - ...(await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLinkAttributesCommand = async ( @@ -9445,97 +6445,46 @@ const deserializeAws_restJson1UpdateLinkAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateObjectAttributesCommand = async ( @@ -9564,105 +6513,49 @@ const deserializeAws_restJson1UpdateObjectAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DirectoryNotEnabledException": case "com.amazonaws.clouddirectory#DirectoryNotEnabledException": - response = { - ...(await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DirectoryNotEnabledExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LinkNameAlreadyInUseException": case "com.amazonaws.clouddirectory#LinkNameAlreadyInUseException": - response = { - ...(await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSchemaCommand = async ( @@ -9691,81 +6584,40 @@ const deserializeAws_restJson1UpdateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTypedLinkFacetCommand = async ( @@ -9790,113 +6642,52 @@ const deserializeAws_restJson1UpdateTypedLinkFacetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "FacetNotFoundException": case "com.amazonaws.clouddirectory#FacetNotFoundException": - response = { - ...(await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetNotFoundExceptionResponse(parsedOutput, context); case "FacetValidationException": case "com.amazonaws.clouddirectory#FacetValidationException": - response = { - ...(await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FacetValidationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidFacetUpdateException": case "com.amazonaws.clouddirectory#InvalidFacetUpdateException": - response = { - ...(await deserializeAws_restJson1InvalidFacetUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidFacetUpdateExceptionResponse(parsedOutput, context); case "InvalidRuleException": case "com.amazonaws.clouddirectory#InvalidRuleException": - response = { - ...(await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpgradeAppliedSchemaCommand = async ( @@ -9929,97 +6720,46 @@ const deserializeAws_restJson1UpgradeAppliedSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleSchemaException": case "com.amazonaws.clouddirectory#IncompatibleSchemaException": - response = { - ...(await deserializeAws_restJson1IncompatibleSchemaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleSchemaExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidAttachmentException": case "com.amazonaws.clouddirectory#InvalidAttachmentException": - response = { - ...(await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "SchemaAlreadyExistsException": case "com.amazonaws.clouddirectory#SchemaAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpgradePublishedSchemaCommand = async ( @@ -10048,128 +6788,69 @@ const deserializeAws_restJson1UpgradePublishedSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.clouddirectory#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleSchemaException": case "com.amazonaws.clouddirectory#IncompatibleSchemaException": - response = { - ...(await deserializeAws_restJson1IncompatibleSchemaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleSchemaExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.clouddirectory#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.clouddirectory#InvalidArnException": - response = { - ...(await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidAttachmentException": case "com.amazonaws.clouddirectory#InvalidAttachmentException": - response = { - ...(await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAttachmentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.clouddirectory#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.clouddirectory#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "RetryableConflictException": case "com.amazonaws.clouddirectory#RetryableConflictException": - response = { - ...(await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RetryableConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.clouddirectory#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BatchWriteExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BatchWriteException = { - name: "BatchWriteException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Index: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Index !== undefined && data.Index !== null) { contents.Index = __expectInt32(data.Index); @@ -10180,568 +6861,539 @@ const deserializeAws_restJson1BatchWriteExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new BatchWriteException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CannotListParentOfRootExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CannotListParentOfRootException = { - name: "CannotListParentOfRootException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new CannotListParentOfRootException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DirectoryAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DirectoryAlreadyExistsException = { - name: "DirectoryAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DirectoryAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DirectoryDeletedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DirectoryDeletedException = { - name: "DirectoryDeletedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DirectoryDeletedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DirectoryNotDisabledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DirectoryNotDisabledException = { - name: "DirectoryNotDisabledException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DirectoryNotDisabledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DirectoryNotEnabledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DirectoryNotEnabledException = { - name: "DirectoryNotEnabledException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DirectoryNotEnabledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FacetAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FacetAlreadyExistsException = { - name: "FacetAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FacetAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FacetInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FacetInUseException = { - name: "FacetInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FacetInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FacetNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FacetNotFoundException = { - name: "FacetNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FacetNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FacetValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FacetValidationException = { - name: "FacetValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FacetValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IncompatibleSchemaExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IncompatibleSchemaException = { - name: "IncompatibleSchemaException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IncompatibleSchemaException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IndexedAttributeMissingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IndexedAttributeMissingException = { - name: "IndexedAttributeMissingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IndexedAttributeMissingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidArnExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArnException = { - name: "InvalidArnException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidArnException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidAttachmentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidAttachmentException = { - name: "InvalidAttachmentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidAttachmentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidFacetUpdateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidFacetUpdateException = { - name: "InvalidFacetUpdateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidFacetUpdateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRuleExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRuleException = { - name: "InvalidRuleException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRuleException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidSchemaDocExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSchemaDocException = { - name: "InvalidSchemaDocException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidSchemaDocException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidTaggingRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTaggingRequestException = { - name: "InvalidTaggingRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidTaggingRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LinkNameAlreadyInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LinkNameAlreadyInUseException = { - name: "LinkNameAlreadyInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LinkNameAlreadyInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotIndexExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotIndexException = { - name: "NotIndexException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotIndexException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotNodeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotNodeException = { - name: "NotNodeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotNodeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotPolicyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotPolicyException = { - name: "NotPolicyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotPolicyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ObjectAlreadyDetachedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ObjectAlreadyDetachedException = { - name: "ObjectAlreadyDetachedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ObjectAlreadyDetachedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ObjectNotDetachedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ObjectNotDetachedException = { - name: "ObjectNotDetachedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ObjectNotDetachedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RetryableConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RetryableConflictException = { - name: "RetryableConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new RetryableConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SchemaAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SchemaAlreadyExistsException = { - name: "SchemaAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new SchemaAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SchemaAlreadyPublishedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SchemaAlreadyPublishedException = { - name: "SchemaAlreadyPublishedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new SchemaAlreadyPublishedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1StillContainsLinksExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StillContainsLinksException = { - name: "StillContainsLinksException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new StillContainsLinksException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedIndexTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedIndexTypeException = { - name: "UnsupportedIndexTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnsupportedIndexTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AttributeKey = (input: AttributeKey, context: __SerdeContext): any => { diff --git a/clients/client-cloudformation/src/index.ts b/clients/client-cloudformation/src/index.ts index 1cc1820c741d3..f257b0a45f0f8 100644 --- a/clients/client-cloudformation/src/index.ts +++ b/clients/client-cloudformation/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { CloudFormationServiceException } from "./models/CloudFormationServiceException"; diff --git a/clients/client-cloudformation/src/models/CloudFormationServiceException.ts b/clients/client-cloudformation/src/models/CloudFormationServiceException.ts new file mode 100644 index 0000000000000..62a5291526f36 --- /dev/null +++ b/clients/client-cloudformation/src/models/CloudFormationServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudFormation service. + */ +export class CloudFormationServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudFormationServiceException.prototype); + } +} diff --git a/clients/client-cloudformation/src/models/models_0.ts b/clients/client-cloudformation/src/models/models_0.ts index 18d739cd3f275..0ed800d056750 100644 --- a/clients/client-cloudformation/src/models/models_0.ts +++ b/clients/client-cloudformation/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudFormationServiceException as __BaseException } from "./CloudFormationServiceException"; export type AccountGateStatus = "FAILED" | "SKIPPED" | "SUCCEEDED"; @@ -267,28 +270,64 @@ export namespace ActivateTypeOutput { /** *

An error occurred during a CloudFormation registry operation.

*/ -export interface CFNRegistryException extends __SmithyException, $MetadataBearer { - name: "CFNRegistryException"; - $fault: "client"; +export class CFNRegistryException extends __BaseException { + readonly name: "CFNRegistryException" = "CFNRegistryException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CFNRegistryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CFNRegistryException.prototype); + this.Message = opts.Message; + } } /** *

The specified extension does not exist in the CloudFormation registry.

*/ -export interface TypeNotFoundException extends __SmithyException, $MetadataBearer { - name: "TypeNotFoundException"; - $fault: "client"; +export class TypeNotFoundException extends __BaseException { + readonly name: "TypeNotFoundException" = "TypeNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TypeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TypeNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The resource with the name requested already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** @@ -504,10 +543,22 @@ export namespace BatchDescribeTypeConfigurationsOutput { /** *

The specified extension configuration cannot be found.

*/ -export interface TypeConfigurationNotFoundException extends __SmithyException, $MetadataBearer { - name: "TypeConfigurationNotFoundException"; - $fault: "client"; +export class TypeConfigurationNotFoundException extends __BaseException { + readonly name: "TypeConfigurationNotFoundException" = "TypeConfigurationNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TypeConfigurationNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TypeConfigurationNotFoundException.prototype); + this.Message = opts.Message; + } } export enum CallAs { @@ -546,10 +597,22 @@ export namespace CancelUpdateStackInput { /** *

A client request token already exists.

*/ -export interface TokenAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "TokenAlreadyExistsException"; - $fault: "client"; +export class TokenAlreadyExistsException extends __BaseException { + readonly name: "TokenAlreadyExistsException" = "TokenAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TokenAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TokenAlreadyExistsException.prototype); + this.Message = opts.Message; + } } export enum Capability { @@ -896,10 +959,22 @@ export namespace Change { *

The specified change set name or ID doesn't exit. To view valid change sets for a stack, * use the ListChangeSets action.

*/ -export interface ChangeSetNotFoundException extends __SmithyException, $MetadataBearer { - name: "ChangeSetNotFoundException"; - $fault: "client"; +export class ChangeSetNotFoundException extends __BaseException { + readonly name: "ChangeSetNotFoundException" = "ChangeSetNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ChangeSetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ChangeSetNotFoundException.prototype); + this.Message = opts.Message; + } } export enum ChangeSetStatus { @@ -1573,10 +1648,22 @@ export namespace CreateChangeSetOutput { *

The template contains resources with capabilities that weren't specified in the * Capabilities parameter.

*/ -export interface InsufficientCapabilitiesException extends __SmithyException, $MetadataBearer { - name: "InsufficientCapabilitiesException"; - $fault: "client"; +export class InsufficientCapabilitiesException extends __BaseException { + readonly name: "InsufficientCapabilitiesException" = "InsufficientCapabilitiesException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientCapabilitiesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientCapabilitiesException.prototype); + this.Message = opts.Message; + } } /** @@ -1584,10 +1671,22 @@ export interface InsufficientCapabilitiesException extends __SmithyException, $M *

For information on resource and stack limitations, see Limits in * the CloudFormation User Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export enum OnFailure { @@ -2141,57 +2240,129 @@ export namespace CreateStackInstancesOutput { /** *

The specified operation isn't valid.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + this.Message = opts.Message; + } } /** *

The specified operation ID already exists.

*/ -export interface OperationIdAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "OperationIdAlreadyExistsException"; - $fault: "client"; +export class OperationIdAlreadyExistsException extends __BaseException { + readonly name: "OperationIdAlreadyExistsException" = "OperationIdAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationIdAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationIdAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

Another operation is currently in progress for this stack set. Only one operation can be * performed for a stack set at a given time.

*/ -export interface OperationInProgressException extends __SmithyException, $MetadataBearer { - name: "OperationInProgressException"; - $fault: "client"; +export class OperationInProgressException extends __BaseException { + readonly name: "OperationInProgressException" = "OperationInProgressException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationInProgressException.prototype); + this.Message = opts.Message; + } } /** *

The specified stack set doesn't exist.

*/ -export interface StackSetNotFoundException extends __SmithyException, $MetadataBearer { - name: "StackSetNotFoundException"; - $fault: "client"; +export class StackSetNotFoundException extends __BaseException { + readonly name: "StackSetNotFoundException" = "StackSetNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StackSetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StackSetNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Another operation has been performed on this stack set since the specified operation was * performed.

*/ -export interface StaleRequestException extends __SmithyException, $MetadataBearer { - name: "StaleRequestException"; - $fault: "client"; +export class StaleRequestException extends __BaseException { + readonly name: "StaleRequestException" = "StaleRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StaleRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StaleRequestException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource exists, but has been changed.

*/ -export interface CreatedButModifiedException extends __SmithyException, $MetadataBearer { - name: "CreatedButModifiedException"; - $fault: "client"; +export class CreatedButModifiedException extends __BaseException { + readonly name: "CreatedButModifiedException" = "CreatedButModifiedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CreatedButModifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CreatedButModifiedException.prototype); + this.Message = opts.Message; + } } /** @@ -2496,10 +2667,22 @@ export namespace CreateStackSetOutput { /** *

The specified name is already in use.

*/ -export interface NameAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "NameAlreadyExistsException"; - $fault: "client"; +export class NameAlreadyExistsException extends __BaseException { + readonly name: "NameAlreadyExistsException" = "NameAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NameAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NameAlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface DeactivateTypeInput { @@ -2590,10 +2773,22 @@ export namespace DeleteChangeSetOutput { * status might be CREATE_IN_PROGRESS, or the stack status might be * UPDATE_IN_PROGRESS.

*/ -export interface InvalidChangeSetStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidChangeSetStatusException"; - $fault: "client"; +export class InvalidChangeSetStatusException extends __BaseException { + readonly name: "InvalidChangeSetStatusException" = "InvalidChangeSetStatusException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidChangeSetStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidChangeSetStatusException.prototype); + this.Message = opts.Message; + } } /** @@ -2802,10 +2997,22 @@ export namespace DeleteStackSetOutput { * instances. Delete all stack instances from the stack set before deleting the stack * set.

*/ -export interface StackSetNotEmptyException extends __SmithyException, $MetadataBearer { - name: "StackSetNotEmptyException"; - $fault: "client"; +export class StackSetNotEmptyException extends __BaseException { + readonly name: "StackSetNotEmptyException" = "StackSetNotEmptyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StackSetNotEmptyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StackSetNotEmptyException.prototype); + this.Message = opts.Message; + } } export type RegistryType = "MODULE" | "RESOURCE"; @@ -3682,10 +3889,22 @@ export namespace DescribeStackInstanceOutput { /** *

The specified stack instance doesn't exist.

*/ -export interface StackInstanceNotFoundException extends __SmithyException, $MetadataBearer { - name: "StackInstanceNotFoundException"; - $fault: "client"; +export class StackInstanceNotFoundException extends __BaseException { + readonly name: "StackInstanceNotFoundException" = "StackInstanceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StackInstanceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StackInstanceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -5169,10 +5388,22 @@ export namespace DescribeStackSetOperationOutput { /** *

The specified ID refers to an operation that doesn't exist.

*/ -export interface OperationNotFoundException extends __SmithyException, $MetadataBearer { - name: "OperationNotFoundException"; - $fault: "client"; +export class OperationNotFoundException extends __BaseException { + readonly name: "OperationNotFoundException" = "OperationNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeTypeInput { @@ -6360,10 +6591,22 @@ export namespace ImportStacksToStackSetOutput { *

The specified stack ARN doesn’t exist or stack doesn’t exist corresponding to the ARN in * input.

*/ -export interface StackNotFoundException extends __SmithyException, $MetadataBearer { - name: "StackNotFoundException"; - $fault: "client"; +export class StackNotFoundException extends __BaseException { + readonly name: "StackNotFoundException" = "StackNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StackNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StackNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -8298,20 +8541,44 @@ export namespace PublishTypeOutput { *

Error reserved for use by the CloudFormation CLI. CloudFormation does not return this error to * users.

*/ -export interface InvalidStateTransitionException extends __SmithyException, $MetadataBearer { - name: "InvalidStateTransitionException"; - $fault: "client"; +export class InvalidStateTransitionException extends __BaseException { + readonly name: "InvalidStateTransitionException" = "InvalidStateTransitionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateTransitionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateTransitionException.prototype); + this.Message = opts.Message; + } } /** *

Error reserved for use by the CloudFormation CLI. CloudFormation does not return this error to * users.

*/ -export interface OperationStatusCheckFailedException extends __SmithyException, $MetadataBearer { - name: "OperationStatusCheckFailedException"; - $fault: "client"; +export class OperationStatusCheckFailedException extends __BaseException { + readonly name: "OperationStatusCheckFailedException" = "OperationStatusCheckFailedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationStatusCheckFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationStatusCheckFailedException.prototype); + this.Message = opts.Message; + } } export enum OperationStatus { diff --git a/clients/client-cloudformation/src/protocols/Aws_query.ts b/clients/client-cloudformation/src/protocols/Aws_query.ts index 7e71d1880864e..29278e7e4e795 100644 --- a/clients/client-cloudformation/src/protocols/Aws_query.ts +++ b/clients/client-cloudformation/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -164,6 +163,7 @@ import { UpdateTerminationProtectionCommandOutput, } from "../commands/UpdateTerminationProtectionCommand"; import { ValidateTemplateCommandInput, ValidateTemplateCommandOutput } from "../commands/ValidateTemplateCommand"; +import { CloudFormationServiceException as __BaseException } from "../models/CloudFormationServiceException"; import { AccountGateResult, AccountLimit, @@ -1439,41 +1439,25 @@ const deserializeAws_queryActivateTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchDescribeTypeConfigurationsCommand = async ( @@ -1504,41 +1488,25 @@ const deserializeAws_queryBatchDescribeTypeConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeConfigurationNotFoundException": case "com.amazonaws.cloudformation#TypeConfigurationNotFoundException": - response = { - ...(await deserializeAws_queryTypeConfigurationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeConfigurationNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCancelUpdateStackCommand = async ( @@ -1563,33 +1531,22 @@ const deserializeAws_queryCancelUpdateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryContinueUpdateRollbackCommand = async ( @@ -1617,33 +1574,22 @@ const deserializeAws_queryContinueUpdateRollbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateChangeSetCommand = async ( @@ -1671,49 +1617,28 @@ const deserializeAws_queryCreateChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudformation#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "InsufficientCapabilitiesException": case "com.amazonaws.cloudformation#InsufficientCapabilitiesException": - response = { - ...(await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudformation#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateStackCommand = async ( @@ -1741,57 +1666,31 @@ const deserializeAws_queryCreateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.cloudformation#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "InsufficientCapabilitiesException": case "com.amazonaws.cloudformation#InsufficientCapabilitiesException": - response = { - ...(await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudformation#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateStackInstancesCommand = async ( @@ -1819,73 +1718,37 @@ const deserializeAws_queryCreateStackInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudformation#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "OperationIdAlreadyExistsException": case "com.amazonaws.cloudformation#OperationIdAlreadyExistsException": - response = { - ...(await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); case "StaleRequestException": case "com.amazonaws.cloudformation#StaleRequestException": - response = { - ...(await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateStackSetCommand = async ( @@ -1913,49 +1776,28 @@ const deserializeAws_queryCreateStackSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CreatedButModifiedException": case "com.amazonaws.cloudformation#CreatedButModifiedException": - response = { - ...(await deserializeAws_queryCreatedButModifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCreatedButModifiedExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudformation#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NameAlreadyExistsException": case "com.amazonaws.cloudformation#NameAlreadyExistsException": - response = { - ...(await deserializeAws_queryNameAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNameAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeactivateTypeCommand = async ( @@ -1983,41 +1825,25 @@ const deserializeAws_queryDeactivateTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteChangeSetCommand = async ( @@ -2045,33 +1871,22 @@ const deserializeAws_queryDeleteChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidChangeSetStatusException": case "com.amazonaws.cloudformation#InvalidChangeSetStatusException": - response = { - ...(await deserializeAws_queryInvalidChangeSetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidChangeSetStatusExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteStackCommand = async ( @@ -2096,33 +1911,22 @@ const deserializeAws_queryDeleteStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteStackInstancesCommand = async ( @@ -2150,65 +1954,34 @@ const deserializeAws_queryDeleteStackInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "OperationIdAlreadyExistsException": case "com.amazonaws.cloudformation#OperationIdAlreadyExistsException": - response = { - ...(await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); case "StaleRequestException": case "com.amazonaws.cloudformation#StaleRequestException": - response = { - ...(await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteStackSetCommand = async ( @@ -2236,41 +2009,25 @@ const deserializeAws_queryDeleteStackSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackSetNotEmptyException": case "com.amazonaws.cloudformation#StackSetNotEmptyException": - response = { - ...(await deserializeAws_queryStackSetNotEmptyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotEmptyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeregisterTypeCommand = async ( @@ -2298,41 +2055,25 @@ const deserializeAws_queryDeregisterTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountLimitsCommand = async ( @@ -2360,25 +2101,19 @@ const deserializeAws_queryDescribeAccountLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeChangeSetCommand = async ( @@ -2406,33 +2141,22 @@ const deserializeAws_queryDescribeChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ChangeSetNotFoundException": case "com.amazonaws.cloudformation#ChangeSetNotFoundException": - response = { - ...(await deserializeAws_queryChangeSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryChangeSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePublisherCommand = async ( @@ -2460,33 +2184,22 @@ const deserializeAws_queryDescribePublisherCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackDriftDetectionStatusCommand = async ( @@ -2517,25 +2230,19 @@ const deserializeAws_queryDescribeStackDriftDetectionStatusCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackEventsCommand = async ( @@ -2563,25 +2270,19 @@ const deserializeAws_queryDescribeStackEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackInstanceCommand = async ( @@ -2609,41 +2310,25 @@ const deserializeAws_queryDescribeStackInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "StackInstanceNotFoundException": case "com.amazonaws.cloudformation#StackInstanceNotFoundException": - response = { - ...(await deserializeAws_queryStackInstanceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackInstanceNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackResourceCommand = async ( @@ -2671,25 +2356,19 @@ const deserializeAws_queryDescribeStackResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackResourceDriftsCommand = async ( @@ -2717,25 +2396,19 @@ const deserializeAws_queryDescribeStackResourceDriftsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackResourcesCommand = async ( @@ -2763,25 +2436,19 @@ const deserializeAws_queryDescribeStackResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStacksCommand = async ( @@ -2809,25 +2476,19 @@ const deserializeAws_queryDescribeStacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackSetCommand = async ( @@ -2855,33 +2516,22 @@ const deserializeAws_queryDescribeStackSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStackSetOperationCommand = async ( @@ -2909,41 +2559,25 @@ const deserializeAws_queryDescribeStackSetOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotFoundException": case "com.amazonaws.cloudformation#OperationNotFoundException": - response = { - ...(await deserializeAws_queryOperationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTypeCommand = async ( @@ -2971,41 +2605,25 @@ const deserializeAws_queryDescribeTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTypeRegistrationCommand = async ( @@ -3033,33 +2651,22 @@ const deserializeAws_queryDescribeTypeRegistrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetectStackDriftCommand = async ( @@ -3087,25 +2694,19 @@ const deserializeAws_queryDetectStackDriftCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetectStackResourceDriftCommand = async ( @@ -3133,25 +2734,19 @@ const deserializeAws_queryDetectStackResourceDriftCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetectStackSetDriftCommand = async ( @@ -3179,49 +2774,28 @@ const deserializeAws_queryDetectStackSetDriftCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEstimateTemplateCostCommand = async ( @@ -3249,25 +2823,19 @@ const deserializeAws_queryEstimateTemplateCostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryExecuteChangeSetCommand = async ( @@ -3295,57 +2863,31 @@ const deserializeAws_queryExecuteChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ChangeSetNotFoundException": case "com.amazonaws.cloudformation#ChangeSetNotFoundException": - response = { - ...(await deserializeAws_queryChangeSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryChangeSetNotFoundExceptionResponse(parsedOutput, context); case "InsufficientCapabilitiesException": case "com.amazonaws.cloudformation#InsufficientCapabilitiesException": - response = { - ...(await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context); case "InvalidChangeSetStatusException": case "com.amazonaws.cloudformation#InvalidChangeSetStatusException": - response = { - ...(await deserializeAws_queryInvalidChangeSetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidChangeSetStatusExceptionResponse(parsedOutput, context); case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetStackPolicyCommand = async ( @@ -3373,25 +2915,19 @@ const deserializeAws_queryGetStackPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetTemplateCommand = async ( @@ -3419,33 +2955,22 @@ const deserializeAws_queryGetTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ChangeSetNotFoundException": case "com.amazonaws.cloudformation#ChangeSetNotFoundException": - response = { - ...(await deserializeAws_queryChangeSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryChangeSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetTemplateSummaryCommand = async ( @@ -3473,33 +2998,22 @@ const deserializeAws_queryGetTemplateSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryImportStacksToStackSetCommand = async ( @@ -3527,81 +3041,40 @@ const deserializeAws_queryImportStacksToStackSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudformation#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "OperationIdAlreadyExistsException": case "com.amazonaws.cloudformation#OperationIdAlreadyExistsException": - response = { - ...(await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackNotFoundException": case "com.amazonaws.cloudformation#StackNotFoundException": - response = { - ...(await deserializeAws_queryStackNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); case "StaleRequestException": case "com.amazonaws.cloudformation#StaleRequestException": - response = { - ...(await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListChangeSetsCommand = async ( @@ -3629,25 +3102,19 @@ const deserializeAws_queryListChangeSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListExportsCommand = async ( @@ -3675,25 +3142,19 @@ const deserializeAws_queryListExportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListImportsCommand = async ( @@ -3721,25 +3182,19 @@ const deserializeAws_queryListImportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListStackInstancesCommand = async ( @@ -3767,33 +3222,22 @@ const deserializeAws_queryListStackInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListStackResourcesCommand = async ( @@ -3821,25 +3265,19 @@ const deserializeAws_queryListStackResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListStacksCommand = async ( @@ -3867,25 +3305,19 @@ const deserializeAws_queryListStacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListStackSetOperationResultsCommand = async ( @@ -3913,41 +3345,25 @@ const deserializeAws_queryListStackSetOperationResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotFoundException": case "com.amazonaws.cloudformation#OperationNotFoundException": - response = { - ...(await deserializeAws_queryOperationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListStackSetOperationsCommand = async ( @@ -3975,33 +3391,22 @@ const deserializeAws_queryListStackSetOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListStackSetsCommand = async ( @@ -4029,25 +3434,19 @@ const deserializeAws_queryListStackSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTypeRegistrationsCommand = async ( @@ -4075,33 +3474,22 @@ const deserializeAws_queryListTypeRegistrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTypesCommand = async ( @@ -4129,33 +3517,22 @@ const deserializeAws_queryListTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTypeVersionsCommand = async ( @@ -4183,33 +3560,22 @@ const deserializeAws_queryListTypeVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPublishTypeCommand = async ( @@ -4237,41 +3603,25 @@ const deserializeAws_queryPublishTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRecordHandlerProgressCommand = async ( @@ -4299,41 +3649,25 @@ const deserializeAws_queryRecordHandlerProgressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateTransitionException": case "com.amazonaws.cloudformation#InvalidStateTransitionException": - response = { - ...(await deserializeAws_queryInvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidStateTransitionExceptionResponse(parsedOutput, context); case "OperationStatusCheckFailedException": case "com.amazonaws.cloudformation#OperationStatusCheckFailedException": - response = { - ...(await deserializeAws_queryOperationStatusCheckFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationStatusCheckFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRegisterPublisherCommand = async ( @@ -4361,33 +3695,22 @@ const deserializeAws_queryRegisterPublisherCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRegisterTypeCommand = async ( @@ -4415,33 +3738,22 @@ const deserializeAws_queryRegisterTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRollbackStackCommand = async ( @@ -4469,33 +3781,22 @@ const deserializeAws_queryRollbackStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetStackPolicyCommand = async ( @@ -4520,25 +3821,19 @@ const deserializeAws_querySetStackPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetTypeConfigurationCommand = async ( @@ -4566,41 +3861,25 @@ const deserializeAws_querySetTypeConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetTypeDefaultVersionCommand = async ( @@ -4628,41 +3907,25 @@ const deserializeAws_querySetTypeDefaultVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySignalResourceCommand = async ( @@ -4687,25 +3950,19 @@ const deserializeAws_querySignalResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopStackSetOperationCommand = async ( @@ -4733,49 +3990,28 @@ const deserializeAws_queryStopStackSetOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "OperationNotFoundException": case "com.amazonaws.cloudformation#OperationNotFoundException": - response = { - ...(await deserializeAws_queryOperationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTestTypeCommand = async ( @@ -4803,41 +4039,25 @@ const deserializeAws_queryTestTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CFNRegistryException": case "com.amazonaws.cloudformation#CFNRegistryException": - response = { - ...(await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCFNRegistryExceptionResponse(parsedOutput, context); case "TypeNotFoundException": case "com.amazonaws.cloudformation#TypeNotFoundException": - response = { - ...(await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateStackCommand = async ( @@ -4865,41 +4085,25 @@ const deserializeAws_queryUpdateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCapabilitiesException": case "com.amazonaws.cloudformation#InsufficientCapabilitiesException": - response = { - ...(await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCapabilitiesExceptionResponse(parsedOutput, context); case "TokenAlreadyExistsException": case "com.amazonaws.cloudformation#TokenAlreadyExistsException": - response = { - ...(await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTokenAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateStackInstancesCommand = async ( @@ -4927,73 +4131,37 @@ const deserializeAws_queryUpdateStackInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "OperationIdAlreadyExistsException": case "com.amazonaws.cloudformation#OperationIdAlreadyExistsException": - response = { - ...(await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackInstanceNotFoundException": case "com.amazonaws.cloudformation#StackInstanceNotFoundException": - response = { - ...(await deserializeAws_queryStackInstanceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackInstanceNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); case "StaleRequestException": case "com.amazonaws.cloudformation#StaleRequestException": - response = { - ...(await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateStackSetCommand = async ( @@ -5021,73 +4189,37 @@ const deserializeAws_queryUpdateStackSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudformation#InvalidOperationException": - response = { - ...(await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOperationExceptionResponse(parsedOutput, context); case "OperationIdAlreadyExistsException": case "com.amazonaws.cloudformation#OperationIdAlreadyExistsException": - response = { - ...(await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationIdAlreadyExistsExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.cloudformation#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "StackInstanceNotFoundException": case "com.amazonaws.cloudformation#StackInstanceNotFoundException": - response = { - ...(await deserializeAws_queryStackInstanceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackInstanceNotFoundExceptionResponse(parsedOutput, context); case "StackSetNotFoundException": case "com.amazonaws.cloudformation#StackSetNotFoundException": - response = { - ...(await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStackSetNotFoundExceptionResponse(parsedOutput, context); case "StaleRequestException": case "com.amazonaws.cloudformation#StaleRequestException": - response = { - ...(await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateTerminationProtectionCommand = async ( @@ -5115,25 +4247,19 @@ const deserializeAws_queryUpdateTerminationProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryValidateTemplateCommand = async ( @@ -5161,25 +4287,19 @@ const deserializeAws_queryValidateTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAlreadyExistsExceptionResponse = async ( @@ -5188,13 +4308,11 @@ const deserializeAws_queryAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAlreadyExistsException(body.Error, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCFNRegistryExceptionResponse = async ( @@ -5203,13 +4321,11 @@ const deserializeAws_queryCFNRegistryExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCFNRegistryException(body.Error, context); - const contents: CFNRegistryException = { - name: "CFNRegistryException", - $fault: "client", + const exception = new CFNRegistryException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryChangeSetNotFoundExceptionResponse = async ( @@ -5218,13 +4334,11 @@ const deserializeAws_queryChangeSetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryChangeSetNotFoundException(body.Error, context); - const contents: ChangeSetNotFoundException = { - name: "ChangeSetNotFoundException", - $fault: "client", + const exception = new ChangeSetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCreatedButModifiedExceptionResponse = async ( @@ -5233,13 +4347,11 @@ const deserializeAws_queryCreatedButModifiedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCreatedButModifiedException(body.Error, context); - const contents: CreatedButModifiedException = { - name: "CreatedButModifiedException", - $fault: "client", + const exception = new CreatedButModifiedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientCapabilitiesExceptionResponse = async ( @@ -5248,13 +4360,11 @@ const deserializeAws_queryInsufficientCapabilitiesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientCapabilitiesException(body.Error, context); - const contents: InsufficientCapabilitiesException = { - name: "InsufficientCapabilitiesException", - $fault: "client", + const exception = new InsufficientCapabilitiesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidChangeSetStatusExceptionResponse = async ( @@ -5263,13 +4373,11 @@ const deserializeAws_queryInvalidChangeSetStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidChangeSetStatusException(body.Error, context); - const contents: InvalidChangeSetStatusException = { - name: "InvalidChangeSetStatusException", - $fault: "client", + const exception = new InvalidChangeSetStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidOperationExceptionResponse = async ( @@ -5278,13 +4386,11 @@ const deserializeAws_queryInvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidOperationException(body.Error, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidStateTransitionExceptionResponse = async ( @@ -5293,13 +4399,11 @@ const deserializeAws_queryInvalidStateTransitionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidStateTransitionException(body.Error, context); - const contents: InvalidStateTransitionException = { - name: "InvalidStateTransitionException", - $fault: "client", + const exception = new InvalidStateTransitionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededExceptionResponse = async ( @@ -5308,13 +4412,11 @@ const deserializeAws_queryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededException(body.Error, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNameAlreadyExistsExceptionResponse = async ( @@ -5323,13 +4425,11 @@ const deserializeAws_queryNameAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNameAlreadyExistsException(body.Error, context); - const contents: NameAlreadyExistsException = { - name: "NameAlreadyExistsException", - $fault: "client", + const exception = new NameAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationIdAlreadyExistsExceptionResponse = async ( @@ -5338,13 +4438,11 @@ const deserializeAws_queryOperationIdAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationIdAlreadyExistsException(body.Error, context); - const contents: OperationIdAlreadyExistsException = { - name: "OperationIdAlreadyExistsException", - $fault: "client", + const exception = new OperationIdAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationInProgressExceptionResponse = async ( @@ -5353,13 +4451,11 @@ const deserializeAws_queryOperationInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationInProgressException(body.Error, context); - const contents: OperationInProgressException = { - name: "OperationInProgressException", - $fault: "client", + const exception = new OperationInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationNotFoundExceptionResponse = async ( @@ -5368,13 +4464,11 @@ const deserializeAws_queryOperationNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationNotFoundException(body.Error, context); - const contents: OperationNotFoundException = { - name: "OperationNotFoundException", - $fault: "client", + const exception = new OperationNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationStatusCheckFailedExceptionResponse = async ( @@ -5383,13 +4477,11 @@ const deserializeAws_queryOperationStatusCheckFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationStatusCheckFailedException(body.Error, context); - const contents: OperationStatusCheckFailedException = { - name: "OperationStatusCheckFailedException", - $fault: "client", + const exception = new OperationStatusCheckFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStackInstanceNotFoundExceptionResponse = async ( @@ -5398,13 +4490,11 @@ const deserializeAws_queryStackInstanceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStackInstanceNotFoundException(body.Error, context); - const contents: StackInstanceNotFoundException = { - name: "StackInstanceNotFoundException", - $fault: "client", + const exception = new StackInstanceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStackNotFoundExceptionResponse = async ( @@ -5413,13 +4503,11 @@ const deserializeAws_queryStackNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStackNotFoundException(body.Error, context); - const contents: StackNotFoundException = { - name: "StackNotFoundException", - $fault: "client", + const exception = new StackNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStackSetNotEmptyExceptionResponse = async ( @@ -5428,13 +4516,11 @@ const deserializeAws_queryStackSetNotEmptyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStackSetNotEmptyException(body.Error, context); - const contents: StackSetNotEmptyException = { - name: "StackSetNotEmptyException", - $fault: "client", + const exception = new StackSetNotEmptyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStackSetNotFoundExceptionResponse = async ( @@ -5443,13 +4529,11 @@ const deserializeAws_queryStackSetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStackSetNotFoundException(body.Error, context); - const contents: StackSetNotFoundException = { - name: "StackSetNotFoundException", - $fault: "client", + const exception = new StackSetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStaleRequestExceptionResponse = async ( @@ -5458,13 +4542,11 @@ const deserializeAws_queryStaleRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStaleRequestException(body.Error, context); - const contents: StaleRequestException = { - name: "StaleRequestException", - $fault: "client", + const exception = new StaleRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTokenAlreadyExistsExceptionResponse = async ( @@ -5473,13 +4555,11 @@ const deserializeAws_queryTokenAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTokenAlreadyExistsException(body.Error, context); - const contents: TokenAlreadyExistsException = { - name: "TokenAlreadyExistsException", - $fault: "client", + const exception = new TokenAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTypeConfigurationNotFoundExceptionResponse = async ( @@ -5488,13 +4568,11 @@ const deserializeAws_queryTypeConfigurationNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTypeConfigurationNotFoundException(body.Error, context); - const contents: TypeConfigurationNotFoundException = { - name: "TypeConfigurationNotFoundException", - $fault: "client", + const exception = new TypeConfigurationNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTypeNotFoundExceptionResponse = async ( @@ -5503,13 +4581,11 @@ const deserializeAws_queryTypeNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTypeNotFoundException(body.Error, context); - const contents: TypeNotFoundException = { - name: "TypeNotFoundException", - $fault: "client", + const exception = new TypeNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAccountList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-cloudfront/src/index.ts b/clients/client-cloudfront/src/index.ts index 36185c3ed6e83..43ffe88188a1b 100644 --- a/clients/client-cloudfront/src/index.ts +++ b/clients/client-cloudfront/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { CloudFrontServiceException } from "./models/CloudFrontServiceException"; diff --git a/clients/client-cloudfront/src/models/CloudFrontServiceException.ts b/clients/client-cloudfront/src/models/CloudFrontServiceException.ts new file mode 100644 index 0000000000000..ea7fb8a945f97 --- /dev/null +++ b/clients/client-cloudfront/src/models/CloudFrontServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudFront service. + */ +export class CloudFrontServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudFrontServiceException.prototype); + } +} diff --git a/clients/client-cloudfront/src/models/models_0.ts b/clients/client-cloudfront/src/models/models_0.ts index c9779e2cfe441..9174fe635d5fb 100644 --- a/clients/client-cloudfront/src/models/models_0.ts +++ b/clients/client-cloudfront/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudFrontServiceException as __BaseException } from "./CloudFrontServiceException"; export enum ResponseHeadersPolicyAccessControlAllowMethodsValues { ALL = "ALL", @@ -15,10 +17,22 @@ export enum ResponseHeadersPolicyAccessControlAllowMethodsValues { /** *

Access denied.

*/ -export interface AccessDenied extends __SmithyException, $MetadataBearer { - name: "AccessDenied"; - $fault: "client"; +export class AccessDenied extends __BaseException { + readonly name: "AccessDenied" = "AccessDenied"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDenied", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDenied.prototype); + this.Message = opts.Message; + } } /** @@ -374,46 +388,106 @@ export namespace AssociateAliasRequest { /** *

The update contains modifications that are not allowed.

*/ -export interface IllegalUpdate extends __SmithyException, $MetadataBearer { - name: "IllegalUpdate"; - $fault: "client"; +export class IllegalUpdate extends __BaseException { + readonly name: "IllegalUpdate" = "IllegalUpdate"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalUpdate", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalUpdate.prototype); + this.Message = opts.Message; + } } /** *

An argument is invalid.

*/ -export interface InvalidArgument extends __SmithyException, $MetadataBearer { - name: "InvalidArgument"; - $fault: "client"; +export class InvalidArgument extends __BaseException { + readonly name: "InvalidArgument" = "InvalidArgument"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgument", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgument.prototype); + this.Message = opts.Message; + } } /** *

The specified distribution does not exist.

*/ -export interface NoSuchDistribution extends __SmithyException, $MetadataBearer { - name: "NoSuchDistribution"; - $fault: "client"; +export class NoSuchDistribution extends __BaseException { + readonly name: "NoSuchDistribution" = "NoSuchDistribution"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchDistribution", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchDistribution.prototype); + this.Message = opts.Message; + } } /** *

Your request contains more CNAMEs than are allowed per distribution.

*/ -export interface TooManyDistributionCNAMEs extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionCNAMEs"; - $fault: "client"; +export class TooManyDistributionCNAMEs extends __BaseException { + readonly name: "TooManyDistributionCNAMEs" = "TooManyDistributionCNAMEs"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionCNAMEs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionCNAMEs.prototype); + this.Message = opts.Message; + } } /** *

Invalidation batch specified is too large.

*/ -export interface BatchTooLarge extends __SmithyException, $MetadataBearer { - name: "BatchTooLarge"; - $fault: "client"; +export class BatchTooLarge extends __BaseException { + readonly name: "BatchTooLarge" = "BatchTooLarge"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchTooLarge", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchTooLarge.prototype); + this.Message = opts.Message; + } } export type ItemSelection = "all" | "none" | "whitelist"; @@ -1612,20 +1686,44 @@ export namespace CachePolicy { *

A cache policy with this name already exists. You must provide a unique name. To * modify an existing cache policy, use UpdateCachePolicy.

*/ -export interface CachePolicyAlreadyExists extends __SmithyException, $MetadataBearer { - name: "CachePolicyAlreadyExists"; - $fault: "client"; +export class CachePolicyAlreadyExists extends __BaseException { + readonly name: "CachePolicyAlreadyExists" = "CachePolicyAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CachePolicyAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CachePolicyAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

Cannot delete the cache policy because it is attached to one or more cache * behaviors.

*/ -export interface CachePolicyInUse extends __SmithyException, $MetadataBearer { - name: "CachePolicyInUse"; - $fault: "client"; +export class CachePolicyInUse extends __BaseException { + readonly name: "CachePolicyInUse" = "CachePolicyInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CachePolicyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CachePolicyInUse.prototype); + this.Message = opts.Message; + } } export type CachePolicyType = "custom" | "managed"; @@ -1694,10 +1792,22 @@ export namespace CachePolicyList { /** *

You can't change the value of a public key.

*/ -export interface CannotChangeImmutablePublicKeyFields extends __SmithyException, $MetadataBearer { - name: "CannotChangeImmutablePublicKeyFields"; - $fault: "client"; +export class CannotChangeImmutablePublicKeyFields extends __BaseException { + readonly name: "CannotChangeImmutablePublicKeyFields" = "CannotChangeImmutablePublicKeyFields"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CannotChangeImmutablePublicKeyFields", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CannotChangeImmutablePublicKeyFields.prototype); + this.Message = opts.Message; + } } export type CertificateSource = "acm" | "cloudfront" | "iam"; @@ -1747,10 +1857,22 @@ export namespace CreateCachePolicyResult { /** *

The value of Quantity and the size of Items don't match.

*/ -export interface InconsistentQuantities extends __SmithyException, $MetadataBearer { - name: "InconsistentQuantities"; - $fault: "client"; +export class InconsistentQuantities extends __BaseException { + readonly name: "InconsistentQuantities" = "InconsistentQuantities"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InconsistentQuantities", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InconsistentQuantities.prototype); + this.Message = opts.Message; + } } /** @@ -1758,10 +1880,22 @@ export interface InconsistentQuantities extends __SmithyException, $MetadataBear * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyCachePolicies extends __SmithyException, $MetadataBearer { - name: "TooManyCachePolicies"; - $fault: "client"; +export class TooManyCachePolicies extends __BaseException { + readonly name: "TooManyCachePolicies" = "TooManyCachePolicies"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCachePolicies", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCachePolicies.prototype); + this.Message = opts.Message; + } } /** @@ -1769,10 +1903,22 @@ export interface TooManyCachePolicies extends __SmithyException, $MetadataBearer * see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyCookiesInCachePolicy extends __SmithyException, $MetadataBearer { - name: "TooManyCookiesInCachePolicy"; - $fault: "client"; +export class TooManyCookiesInCachePolicy extends __BaseException { + readonly name: "TooManyCookiesInCachePolicy" = "TooManyCookiesInCachePolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCookiesInCachePolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCookiesInCachePolicy.prototype); + this.Message = opts.Message; + } } /** @@ -1780,10 +1926,22 @@ export interface TooManyCookiesInCachePolicy extends __SmithyException, $Metadat * see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyHeadersInCachePolicy extends __SmithyException, $MetadataBearer { - name: "TooManyHeadersInCachePolicy"; - $fault: "client"; +export class TooManyHeadersInCachePolicy extends __BaseException { + readonly name: "TooManyHeadersInCachePolicy" = "TooManyHeadersInCachePolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyHeadersInCachePolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyHeadersInCachePolicy.prototype); + this.Message = opts.Message; + } } /** @@ -1791,10 +1949,22 @@ export interface TooManyHeadersInCachePolicy extends __SmithyException, $Metadat * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyQueryStringsInCachePolicy extends __SmithyException, $MetadataBearer { - name: "TooManyQueryStringsInCachePolicy"; - $fault: "client"; +export class TooManyQueryStringsInCachePolicy extends __BaseException { + readonly name: "TooManyQueryStringsInCachePolicy" = "TooManyQueryStringsInCachePolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyQueryStringsInCachePolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyQueryStringsInCachePolicy.prototype); + this.Message = opts.Message; + } } /** @@ -1802,10 +1972,22 @@ export interface TooManyQueryStringsInCachePolicy extends __SmithyException, $Me * of the CloudFrontOriginAccessIdentityConfig is different from the original request, CloudFront returns a * CloudFrontOriginAccessIdentityAlreadyExists error.

*/ -export interface CloudFrontOriginAccessIdentityAlreadyExists extends __SmithyException, $MetadataBearer { - name: "CloudFrontOriginAccessIdentityAlreadyExists"; - $fault: "client"; +export class CloudFrontOriginAccessIdentityAlreadyExists extends __BaseException { + readonly name: "CloudFrontOriginAccessIdentityAlreadyExists" = "CloudFrontOriginAccessIdentityAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudFrontOriginAccessIdentityAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudFrontOriginAccessIdentityAlreadyExists.prototype); + this.Message = opts.Message; + } } /** @@ -1932,28 +2114,64 @@ export namespace CreateCloudFrontOriginAccessIdentityResult { /** *

This operation requires a body. Ensure that the body is present and the Content-Type header is set.

*/ -export interface MissingBody extends __SmithyException, $MetadataBearer { - name: "MissingBody"; - $fault: "client"; +export class MissingBody extends __BaseException { + readonly name: "MissingBody" = "MissingBody"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingBody", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingBody.prototype); + this.Message = opts.Message; + } } /** *

Processing your request would cause you to exceed the maximum number of origin access identities allowed.

*/ -export interface TooManyCloudFrontOriginAccessIdentities extends __SmithyException, $MetadataBearer { - name: "TooManyCloudFrontOriginAccessIdentities"; - $fault: "client"; +export class TooManyCloudFrontOriginAccessIdentities extends __BaseException { + readonly name: "TooManyCloudFrontOriginAccessIdentities" = "TooManyCloudFrontOriginAccessIdentities"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCloudFrontOriginAccessIdentities", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCloudFrontOriginAccessIdentities.prototype); + this.Message = opts.Message; + } } /** *

The CNAME specified is already defined for CloudFront.

*/ -export interface CNAMEAlreadyExists extends __SmithyException, $MetadataBearer { - name: "CNAMEAlreadyExists"; - $fault: "client"; +export class CNAMEAlreadyExists extends __BaseException { + readonly name: "CNAMEAlreadyExists" = "CNAMEAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CNAMEAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CNAMEAlreadyExists.prototype); + this.Message = opts.Message; + } } /** @@ -3575,204 +3793,469 @@ export namespace CreateDistributionResult { /** *

The caller reference you attempted to create the distribution with is associated with another distribution.

*/ -export interface DistributionAlreadyExists extends __SmithyException, $MetadataBearer { - name: "DistributionAlreadyExists"; - $fault: "client"; +export class DistributionAlreadyExists extends __BaseException { + readonly name: "DistributionAlreadyExists" = "DistributionAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DistributionAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DistributionAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

The specified configuration for field-level encryption can't be associated with the specified cache behavior.

*/ -export interface IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior - extends __SmithyException, - $MetadataBearer { - name: "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior"; - $fault: "client"; +export class IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior extends __BaseException { + readonly name: "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior" = + "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor( + opts: __ExceptionOptionType + ) { + super({ + name: "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior.prototype); + this.Message = opts.Message; + } } /** *

The default root object file name is too big or contains an invalid character.

*/ -export interface InvalidDefaultRootObject extends __SmithyException, $MetadataBearer { - name: "InvalidDefaultRootObject"; - $fault: "client"; +export class InvalidDefaultRootObject extends __BaseException { + readonly name: "InvalidDefaultRootObject" = "InvalidDefaultRootObject"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDefaultRootObject", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDefaultRootObject.prototype); + this.Message = opts.Message; + } } /** *

An invalid error code was specified.

*/ -export interface InvalidErrorCode extends __SmithyException, $MetadataBearer { - name: "InvalidErrorCode"; - $fault: "client"; +export class InvalidErrorCode extends __BaseException { + readonly name: "InvalidErrorCode" = "InvalidErrorCode"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidErrorCode", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidErrorCode.prototype); + this.Message = opts.Message; + } } /** *

Your request contains forward cookies option which doesn't match with the expectation for the whitelisted * list of cookie names. Either list of cookie names has been specified when not allowed or list of cookie names is missing when expected.

*/ -export interface InvalidForwardCookies extends __SmithyException, $MetadataBearer { - name: "InvalidForwardCookies"; - $fault: "client"; +export class InvalidForwardCookies extends __BaseException { + readonly name: "InvalidForwardCookies" = "InvalidForwardCookies"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidForwardCookies", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidForwardCookies.prototype); + this.Message = opts.Message; + } } /** *

A CloudFront function association is invalid.

*/ -export interface InvalidFunctionAssociation extends __SmithyException, $MetadataBearer { - name: "InvalidFunctionAssociation"; - $fault: "client"; +export class InvalidFunctionAssociation extends __BaseException { + readonly name: "InvalidFunctionAssociation" = "InvalidFunctionAssociation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFunctionAssociation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFunctionAssociation.prototype); + this.Message = opts.Message; + } } /** *

The specified geo restriction parameter is not valid.

*/ -export interface InvalidGeoRestrictionParameter extends __SmithyException, $MetadataBearer { - name: "InvalidGeoRestrictionParameter"; - $fault: "client"; +export class InvalidGeoRestrictionParameter extends __BaseException { + readonly name: "InvalidGeoRestrictionParameter" = "InvalidGeoRestrictionParameter"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGeoRestrictionParameter", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGeoRestrictionParameter.prototype); + this.Message = opts.Message; + } } /** *

The headers specified are not valid for an Amazon S3 origin.

*/ -export interface InvalidHeadersForS3Origin extends __SmithyException, $MetadataBearer { - name: "InvalidHeadersForS3Origin"; - $fault: "client"; +export class InvalidHeadersForS3Origin extends __BaseException { + readonly name: "InvalidHeadersForS3Origin" = "InvalidHeadersForS3Origin"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidHeadersForS3Origin", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidHeadersForS3Origin.prototype); + this.Message = opts.Message; + } } /** *

The specified Lambda@Edge function association is invalid.

*/ -export interface InvalidLambdaFunctionAssociation extends __SmithyException, $MetadataBearer { - name: "InvalidLambdaFunctionAssociation"; - $fault: "client"; +export class InvalidLambdaFunctionAssociation extends __BaseException { + readonly name: "InvalidLambdaFunctionAssociation" = "InvalidLambdaFunctionAssociation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLambdaFunctionAssociation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLambdaFunctionAssociation.prototype); + this.Message = opts.Message; + } } /** *

The location code specified is not valid.

*/ -export interface InvalidLocationCode extends __SmithyException, $MetadataBearer { - name: "InvalidLocationCode"; - $fault: "client"; +export class InvalidLocationCode extends __BaseException { + readonly name: "InvalidLocationCode" = "InvalidLocationCode"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLocationCode", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLocationCode.prototype); + this.Message = opts.Message; + } } /** *

The minimum protocol version specified is not valid.

*/ -export interface InvalidMinimumProtocolVersion extends __SmithyException, $MetadataBearer { - name: "InvalidMinimumProtocolVersion"; - $fault: "client"; +export class InvalidMinimumProtocolVersion extends __BaseException { + readonly name: "InvalidMinimumProtocolVersion" = "InvalidMinimumProtocolVersion"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMinimumProtocolVersion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMinimumProtocolVersion.prototype); + this.Message = opts.Message; + } } /** *

The Amazon S3 origin server specified does not refer to a valid Amazon S3 bucket.

*/ -export interface InvalidOrigin extends __SmithyException, $MetadataBearer { - name: "InvalidOrigin"; - $fault: "client"; +export class InvalidOrigin extends __BaseException { + readonly name: "InvalidOrigin" = "InvalidOrigin"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOrigin", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOrigin.prototype); + this.Message = opts.Message; + } } /** *

The origin access identity is not valid or doesn't exist.

*/ -export interface InvalidOriginAccessIdentity extends __SmithyException, $MetadataBearer { - name: "InvalidOriginAccessIdentity"; - $fault: "client"; +export class InvalidOriginAccessIdentity extends __BaseException { + readonly name: "InvalidOriginAccessIdentity" = "InvalidOriginAccessIdentity"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOriginAccessIdentity", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOriginAccessIdentity.prototype); + this.Message = opts.Message; + } } /** *

The keep alive timeout specified for the origin is not valid.

*/ -export interface InvalidOriginKeepaliveTimeout extends __SmithyException, $MetadataBearer { - name: "InvalidOriginKeepaliveTimeout"; - $fault: "client"; +export class InvalidOriginKeepaliveTimeout extends __BaseException { + readonly name: "InvalidOriginKeepaliveTimeout" = "InvalidOriginKeepaliveTimeout"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOriginKeepaliveTimeout", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOriginKeepaliveTimeout.prototype); + this.Message = opts.Message; + } } /** *

The read timeout specified for the origin is not valid.

*/ -export interface InvalidOriginReadTimeout extends __SmithyException, $MetadataBearer { - name: "InvalidOriginReadTimeout"; - $fault: "client"; +export class InvalidOriginReadTimeout extends __BaseException { + readonly name: "InvalidOriginReadTimeout" = "InvalidOriginReadTimeout"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOriginReadTimeout", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOriginReadTimeout.prototype); + this.Message = opts.Message; + } } /** *

You cannot specify SSLv3 as the minimum protocol version if you only want to support only clients that support * Server Name Indication (SNI).

*/ -export interface InvalidProtocolSettings extends __SmithyException, $MetadataBearer { - name: "InvalidProtocolSettings"; - $fault: "client"; +export class InvalidProtocolSettings extends __BaseException { + readonly name: "InvalidProtocolSettings" = "InvalidProtocolSettings"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidProtocolSettings", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidProtocolSettings.prototype); + this.Message = opts.Message; + } } /** *

The query string parameters specified are not valid.

*/ -export interface InvalidQueryStringParameters extends __SmithyException, $MetadataBearer { - name: "InvalidQueryStringParameters"; - $fault: "client"; +export class InvalidQueryStringParameters extends __BaseException { + readonly name: "InvalidQueryStringParameters" = "InvalidQueryStringParameters"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidQueryStringParameters", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidQueryStringParameters.prototype); + this.Message = opts.Message; + } } /** *

The relative path is too big, is not URL-encoded, or does not begin with a slash (/).

*/ -export interface InvalidRelativePath extends __SmithyException, $MetadataBearer { - name: "InvalidRelativePath"; - $fault: "client"; +export class InvalidRelativePath extends __BaseException { + readonly name: "InvalidRelativePath" = "InvalidRelativePath"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRelativePath", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRelativePath.prototype); + this.Message = opts.Message; + } } /** *

This operation requires the HTTPS protocol. Ensure that you specify the HTTPS protocol in your request, or omit the * RequiredProtocols element from your distribution configuration.

*/ -export interface InvalidRequiredProtocol extends __SmithyException, $MetadataBearer { - name: "InvalidRequiredProtocol"; - $fault: "client"; +export class InvalidRequiredProtocol extends __BaseException { + readonly name: "InvalidRequiredProtocol" = "InvalidRequiredProtocol"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequiredProtocol", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequiredProtocol.prototype); + this.Message = opts.Message; + } } /** *

A response code is not valid.

*/ -export interface InvalidResponseCode extends __SmithyException, $MetadataBearer { - name: "InvalidResponseCode"; - $fault: "client"; +export class InvalidResponseCode extends __BaseException { + readonly name: "InvalidResponseCode" = "InvalidResponseCode"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResponseCode", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResponseCode.prototype); + this.Message = opts.Message; + } } /** *

The TTL order specified is not valid.

*/ -export interface InvalidTTLOrder extends __SmithyException, $MetadataBearer { - name: "InvalidTTLOrder"; - $fault: "client"; +export class InvalidTTLOrder extends __BaseException { + readonly name: "InvalidTTLOrder" = "InvalidTTLOrder"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTTLOrder", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTTLOrder.prototype); + this.Message = opts.Message; + } } /** *

A viewer certificate specified is not valid.

*/ -export interface InvalidViewerCertificate extends __SmithyException, $MetadataBearer { - name: "InvalidViewerCertificate"; - $fault: "client"; +export class InvalidViewerCertificate extends __BaseException { + readonly name: "InvalidViewerCertificate" = "InvalidViewerCertificate"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidViewerCertificate", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidViewerCertificate.prototype); + this.Message = opts.Message; + } } /** @@ -3782,109 +4265,253 @@ export interface InvalidViewerCertificate extends __SmithyException, $MetadataBe * To specify a web ACL created using WAF Classic, use the ACL ID, for example * 473e64fd-f30b-4765-81a0-62ad96dd167a.

*/ -export interface InvalidWebACLId extends __SmithyException, $MetadataBearer { - name: "InvalidWebACLId"; - $fault: "client"; +export class InvalidWebACLId extends __BaseException { + readonly name: "InvalidWebACLId" = "InvalidWebACLId"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidWebACLId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidWebACLId.prototype); + this.Message = opts.Message; + } } /** *

The cache policy does not exist.

*/ -export interface NoSuchCachePolicy extends __SmithyException, $MetadataBearer { - name: "NoSuchCachePolicy"; - $fault: "client"; +export class NoSuchCachePolicy extends __BaseException { + readonly name: "NoSuchCachePolicy" = "NoSuchCachePolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchCachePolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchCachePolicy.prototype); + this.Message = opts.Message; + } } /** *

The specified configuration for field-level encryption doesn't exist.

*/ -export interface NoSuchFieldLevelEncryptionConfig extends __SmithyException, $MetadataBearer { - name: "NoSuchFieldLevelEncryptionConfig"; - $fault: "client"; +export class NoSuchFieldLevelEncryptionConfig extends __BaseException { + readonly name: "NoSuchFieldLevelEncryptionConfig" = "NoSuchFieldLevelEncryptionConfig"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchFieldLevelEncryptionConfig", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchFieldLevelEncryptionConfig.prototype); + this.Message = opts.Message; + } } /** *

No origin exists with the specified Origin Id.

*/ -export interface NoSuchOrigin extends __SmithyException, $MetadataBearer { - name: "NoSuchOrigin"; - $fault: "client"; +export class NoSuchOrigin extends __BaseException { + readonly name: "NoSuchOrigin" = "NoSuchOrigin"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchOrigin", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchOrigin.prototype); + this.Message = opts.Message; + } } /** *

The origin request policy does not exist.

*/ -export interface NoSuchOriginRequestPolicy extends __SmithyException, $MetadataBearer { - name: "NoSuchOriginRequestPolicy"; - $fault: "client"; +export class NoSuchOriginRequestPolicy extends __BaseException { + readonly name: "NoSuchOriginRequestPolicy" = "NoSuchOriginRequestPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchOriginRequestPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchOriginRequestPolicy.prototype); + this.Message = opts.Message; + } } /** *

The real-time log configuration does not exist.

*/ -export interface NoSuchRealtimeLogConfig extends __SmithyException, $MetadataBearer { - name: "NoSuchRealtimeLogConfig"; - $fault: "client"; +export class NoSuchRealtimeLogConfig extends __BaseException { + readonly name: "NoSuchRealtimeLogConfig" = "NoSuchRealtimeLogConfig"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchRealtimeLogConfig", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchRealtimeLogConfig.prototype); + this.Message = opts.Message; + } } /** *

The response headers policy does not exist.

*/ -export interface NoSuchResponseHeadersPolicy extends __SmithyException, $MetadataBearer { - name: "NoSuchResponseHeadersPolicy"; - $fault: "client"; +export class NoSuchResponseHeadersPolicy extends __BaseException { + readonly name: "NoSuchResponseHeadersPolicy" = "NoSuchResponseHeadersPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchResponseHeadersPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchResponseHeadersPolicy.prototype); + this.Message = opts.Message; + } } /** *

The specified real-time log configuration belongs to a different Amazon Web Services account.

*/ -export interface RealtimeLogConfigOwnerMismatch extends __SmithyException, $MetadataBearer { - name: "RealtimeLogConfigOwnerMismatch"; - $fault: "client"; +export class RealtimeLogConfigOwnerMismatch extends __BaseException { + readonly name: "RealtimeLogConfigOwnerMismatch" = "RealtimeLogConfigOwnerMismatch"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RealtimeLogConfigOwnerMismatch", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RealtimeLogConfigOwnerMismatch.prototype); + this.Message = opts.Message; + } } /** *

You cannot create more cache behaviors for the distribution.

*/ -export interface TooManyCacheBehaviors extends __SmithyException, $MetadataBearer { - name: "TooManyCacheBehaviors"; - $fault: "client"; +export class TooManyCacheBehaviors extends __BaseException { + readonly name: "TooManyCacheBehaviors" = "TooManyCacheBehaviors"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCacheBehaviors", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCacheBehaviors.prototype); + this.Message = opts.Message; + } } /** *

You cannot create anymore custom SSL/TLS certificates.

*/ -export interface TooManyCertificates extends __SmithyException, $MetadataBearer { - name: "TooManyCertificates"; - $fault: "client"; +export class TooManyCertificates extends __BaseException { + readonly name: "TooManyCertificates" = "TooManyCertificates"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCertificates", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCertificates.prototype); + this.Message = opts.Message; + } } /** *

Your request contains more cookie names in the whitelist than are allowed per cache behavior.

*/ -export interface TooManyCookieNamesInWhiteList extends __SmithyException, $MetadataBearer { - name: "TooManyCookieNamesInWhiteList"; - $fault: "client"; +export class TooManyCookieNamesInWhiteList extends __BaseException { + readonly name: "TooManyCookieNamesInWhiteList" = "TooManyCookieNamesInWhiteList"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCookieNamesInWhiteList", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCookieNamesInWhiteList.prototype); + this.Message = opts.Message; + } } /** *

Processing your request would cause you to exceed the maximum number of distributions allowed.

*/ -export interface TooManyDistributions extends __SmithyException, $MetadataBearer { - name: "TooManyDistributions"; - $fault: "client"; +export class TooManyDistributions extends __BaseException { + readonly name: "TooManyDistributions" = "TooManyDistributions"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributions", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributions.prototype); + this.Message = opts.Message; + } } /** @@ -3892,19 +4519,46 @@ export interface TooManyDistributions extends __SmithyException, $MetadataBearer * policy. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyDistributionsAssociatedToCachePolicy extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsAssociatedToCachePolicy"; - $fault: "client"; +export class TooManyDistributionsAssociatedToCachePolicy extends __BaseException { + readonly name: "TooManyDistributionsAssociatedToCachePolicy" = "TooManyDistributionsAssociatedToCachePolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsAssociatedToCachePolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsAssociatedToCachePolicy.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of distributions have been associated with the specified configuration for field-level encryption.

*/ -export interface TooManyDistributionsAssociatedToFieldLevelEncryptionConfig extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig"; - $fault: "client"; +export class TooManyDistributionsAssociatedToFieldLevelEncryptionConfig extends __BaseException { + readonly name: "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig" = + "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor( + opts: __ExceptionOptionType + ) { + super({ + name: "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsAssociatedToFieldLevelEncryptionConfig.prototype); + this.Message = opts.Message; + } } /** @@ -3912,10 +4566,22 @@ export interface TooManyDistributionsAssociatedToFieldLevelEncryptionConfig exte * allowed. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyDistributionsAssociatedToKeyGroup extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsAssociatedToKeyGroup"; - $fault: "client"; +export class TooManyDistributionsAssociatedToKeyGroup extends __BaseException { + readonly name: "TooManyDistributionsAssociatedToKeyGroup" = "TooManyDistributionsAssociatedToKeyGroup"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsAssociatedToKeyGroup", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsAssociatedToKeyGroup.prototype); + this.Message = opts.Message; + } } /** @@ -3923,10 +4589,23 @@ export interface TooManyDistributionsAssociatedToKeyGroup extends __SmithyExcept * request policy. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyDistributionsAssociatedToOriginRequestPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsAssociatedToOriginRequestPolicy"; - $fault: "client"; +export class TooManyDistributionsAssociatedToOriginRequestPolicy extends __BaseException { + readonly name: "TooManyDistributionsAssociatedToOriginRequestPolicy" = + "TooManyDistributionsAssociatedToOriginRequestPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsAssociatedToOriginRequestPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsAssociatedToOriginRequestPolicy.prototype); + this.Message = opts.Message; + } } /** @@ -3935,10 +4614,23 @@ export interface TooManyDistributionsAssociatedToOriginRequestPolicy extends __S *

For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyDistributionsAssociatedToResponseHeadersPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsAssociatedToResponseHeadersPolicy"; - $fault: "client"; +export class TooManyDistributionsAssociatedToResponseHeadersPolicy extends __BaseException { + readonly name: "TooManyDistributionsAssociatedToResponseHeadersPolicy" = + "TooManyDistributionsAssociatedToResponseHeadersPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsAssociatedToResponseHeadersPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsAssociatedToResponseHeadersPolicy.prototype); + this.Message = opts.Message; + } } /** @@ -3946,30 +4638,66 @@ export interface TooManyDistributionsAssociatedToResponseHeadersPolicy extends _ * function. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyDistributionsWithFunctionAssociations extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsWithFunctionAssociations"; - $fault: "client"; +export class TooManyDistributionsWithFunctionAssociations extends __BaseException { + readonly name: "TooManyDistributionsWithFunctionAssociations" = "TooManyDistributionsWithFunctionAssociations"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsWithFunctionAssociations", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsWithFunctionAssociations.prototype); + this.Message = opts.Message; + } } /** *

Processing your request would cause the maximum number of distributions with Lambda@Edge function associations per owner * to be exceeded.

*/ -export interface TooManyDistributionsWithLambdaAssociations extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsWithLambdaAssociations"; - $fault: "client"; +export class TooManyDistributionsWithLambdaAssociations extends __BaseException { + readonly name: "TooManyDistributionsWithLambdaAssociations" = "TooManyDistributionsWithLambdaAssociations"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsWithLambdaAssociations", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsWithLambdaAssociations.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of distributions have been associated with the specified Lambda@Edge * function.

*/ -export interface TooManyDistributionsWithSingleFunctionARN extends __SmithyException, $MetadataBearer { - name: "TooManyDistributionsWithSingleFunctionARN"; - $fault: "client"; +export class TooManyDistributionsWithSingleFunctionARN extends __BaseException { + readonly name: "TooManyDistributionsWithSingleFunctionARN" = "TooManyDistributionsWithSingleFunctionARN"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyDistributionsWithSingleFunctionARN", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyDistributionsWithSingleFunctionARN.prototype); + this.Message = opts.Message; + } } /** @@ -3977,19 +4705,43 @@ export interface TooManyDistributionsWithSingleFunctionARN extends __SmithyExcep * distribution. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyFunctionAssociations extends __SmithyException, $MetadataBearer { - name: "TooManyFunctionAssociations"; - $fault: "client"; +export class TooManyFunctionAssociations extends __BaseException { + readonly name: "TooManyFunctionAssociations" = "TooManyFunctionAssociations"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFunctionAssociations", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFunctionAssociations.prototype); + this.Message = opts.Message; + } } /** *

Your request contains too many headers in forwarded values.

*/ -export interface TooManyHeadersInForwardedValues extends __SmithyException, $MetadataBearer { - name: "TooManyHeadersInForwardedValues"; - $fault: "client"; +export class TooManyHeadersInForwardedValues extends __BaseException { + readonly name: "TooManyHeadersInForwardedValues" = "TooManyHeadersInForwardedValues"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyHeadersInForwardedValues", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyHeadersInForwardedValues.prototype); + this.Message = opts.Message; + } } /** @@ -3997,82 +4749,190 @@ export interface TooManyHeadersInForwardedValues extends __SmithyException, $Met * allowed. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyKeyGroupsAssociatedToDistribution extends __SmithyException, $MetadataBearer { - name: "TooManyKeyGroupsAssociatedToDistribution"; - $fault: "client"; +export class TooManyKeyGroupsAssociatedToDistribution extends __BaseException { + readonly name: "TooManyKeyGroupsAssociatedToDistribution" = "TooManyKeyGroupsAssociatedToDistribution"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyKeyGroupsAssociatedToDistribution", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyKeyGroupsAssociatedToDistribution.prototype); + this.Message = opts.Message; + } } /** *

Your request contains more Lambda@Edge function associations than are allowed per distribution.

*/ -export interface TooManyLambdaFunctionAssociations extends __SmithyException, $MetadataBearer { - name: "TooManyLambdaFunctionAssociations"; - $fault: "client"; +export class TooManyLambdaFunctionAssociations extends __BaseException { + readonly name: "TooManyLambdaFunctionAssociations" = "TooManyLambdaFunctionAssociations"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyLambdaFunctionAssociations", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyLambdaFunctionAssociations.prototype); + this.Message = opts.Message; + } } /** *

Your request contains too many origin custom headers.

*/ -export interface TooManyOriginCustomHeaders extends __SmithyException, $MetadataBearer { - name: "TooManyOriginCustomHeaders"; - $fault: "client"; +export class TooManyOriginCustomHeaders extends __BaseException { + readonly name: "TooManyOriginCustomHeaders" = "TooManyOriginCustomHeaders"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyOriginCustomHeaders", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyOriginCustomHeaders.prototype); + this.Message = opts.Message; + } } /** *

Processing your request would cause you to exceed the maximum number of origin groups allowed.

*/ -export interface TooManyOriginGroupsPerDistribution extends __SmithyException, $MetadataBearer { - name: "TooManyOriginGroupsPerDistribution"; - $fault: "client"; +export class TooManyOriginGroupsPerDistribution extends __BaseException { + readonly name: "TooManyOriginGroupsPerDistribution" = "TooManyOriginGroupsPerDistribution"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyOriginGroupsPerDistribution", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyOriginGroupsPerDistribution.prototype); + this.Message = opts.Message; + } } /** *

You cannot create more origins for the distribution.

*/ -export interface TooManyOrigins extends __SmithyException, $MetadataBearer { - name: "TooManyOrigins"; - $fault: "client"; +export class TooManyOrigins extends __BaseException { + readonly name: "TooManyOrigins" = "TooManyOrigins"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyOrigins", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyOrigins.prototype); + this.Message = opts.Message; + } } /** *

Your request contains too many query string parameters.

*/ -export interface TooManyQueryStringParameters extends __SmithyException, $MetadataBearer { - name: "TooManyQueryStringParameters"; - $fault: "client"; +export class TooManyQueryStringParameters extends __BaseException { + readonly name: "TooManyQueryStringParameters" = "TooManyQueryStringParameters"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyQueryStringParameters", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyQueryStringParameters.prototype); + this.Message = opts.Message; + } } /** *

Your request contains more trusted signers than are allowed per distribution.

*/ -export interface TooManyTrustedSigners extends __SmithyException, $MetadataBearer { - name: "TooManyTrustedSigners"; - $fault: "client"; +export class TooManyTrustedSigners extends __BaseException { + readonly name: "TooManyTrustedSigners" = "TooManyTrustedSigners"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTrustedSigners", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTrustedSigners.prototype); + this.Message = opts.Message; + } } /** *

The specified key group does not exist.

*/ -export interface TrustedKeyGroupDoesNotExist extends __SmithyException, $MetadataBearer { - name: "TrustedKeyGroupDoesNotExist"; - $fault: "client"; +export class TrustedKeyGroupDoesNotExist extends __BaseException { + readonly name: "TrustedKeyGroupDoesNotExist" = "TrustedKeyGroupDoesNotExist"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrustedKeyGroupDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrustedKeyGroupDoesNotExist.prototype); + this.Message = opts.Message; + } } /** *

One or more of your trusted signers don't exist.

*/ -export interface TrustedSignerDoesNotExist extends __SmithyException, $MetadataBearer { - name: "TrustedSignerDoesNotExist"; - $fault: "client"; +export class TrustedSignerDoesNotExist extends __BaseException { + readonly name: "TrustedSignerDoesNotExist" = "TrustedSignerDoesNotExist"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrustedSignerDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrustedSignerDoesNotExist.prototype); + this.Message = opts.Message; + } } /** @@ -4207,10 +5067,22 @@ export namespace CreateDistributionWithTagsResult { /** *

The tagging specified is not valid.

*/ -export interface InvalidTagging extends __SmithyException, $MetadataBearer { - name: "InvalidTagging"; - $fault: "client"; +export class InvalidTagging extends __BaseException { + readonly name: "InvalidTagging" = "InvalidTagging"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagging", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagging.prototype); + this.Message = opts.Message; + } } export type Format = "URLEncoded"; @@ -4480,55 +5352,127 @@ export namespace CreateFieldLevelEncryptionConfigResult { /** *

The specified configuration for field-level encryption already exists.

*/ -export interface FieldLevelEncryptionConfigAlreadyExists extends __SmithyException, $MetadataBearer { - name: "FieldLevelEncryptionConfigAlreadyExists"; - $fault: "client"; +export class FieldLevelEncryptionConfigAlreadyExists extends __BaseException { + readonly name: "FieldLevelEncryptionConfigAlreadyExists" = "FieldLevelEncryptionConfigAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FieldLevelEncryptionConfigAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FieldLevelEncryptionConfigAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

The specified profile for field-level encryption doesn't exist.

*/ -export interface NoSuchFieldLevelEncryptionProfile extends __SmithyException, $MetadataBearer { - name: "NoSuchFieldLevelEncryptionProfile"; - $fault: "client"; +export class NoSuchFieldLevelEncryptionProfile extends __BaseException { + readonly name: "NoSuchFieldLevelEncryptionProfile" = "NoSuchFieldLevelEncryptionProfile"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchFieldLevelEncryptionProfile", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchFieldLevelEncryptionProfile.prototype); + this.Message = opts.Message; + } } /** *

No profile specified for the field-level encryption query argument.

*/ -export interface QueryArgProfileEmpty extends __SmithyException, $MetadataBearer { - name: "QueryArgProfileEmpty"; - $fault: "client"; +export class QueryArgProfileEmpty extends __BaseException { + readonly name: "QueryArgProfileEmpty" = "QueryArgProfileEmpty"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueryArgProfileEmpty", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueryArgProfileEmpty.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of configurations for field-level encryption have been created.

*/ -export interface TooManyFieldLevelEncryptionConfigs extends __SmithyException, $MetadataBearer { - name: "TooManyFieldLevelEncryptionConfigs"; - $fault: "client"; +export class TooManyFieldLevelEncryptionConfigs extends __BaseException { + readonly name: "TooManyFieldLevelEncryptionConfigs" = "TooManyFieldLevelEncryptionConfigs"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFieldLevelEncryptionConfigs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFieldLevelEncryptionConfigs.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of content type profiles for field-level encryption have been created.

*/ -export interface TooManyFieldLevelEncryptionContentTypeProfiles extends __SmithyException, $MetadataBearer { - name: "TooManyFieldLevelEncryptionContentTypeProfiles"; - $fault: "client"; +export class TooManyFieldLevelEncryptionContentTypeProfiles extends __BaseException { + readonly name: "TooManyFieldLevelEncryptionContentTypeProfiles" = "TooManyFieldLevelEncryptionContentTypeProfiles"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFieldLevelEncryptionContentTypeProfiles", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFieldLevelEncryptionContentTypeProfiles.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of query arg profiles for field-level encryption have been created.

*/ -export interface TooManyFieldLevelEncryptionQueryArgProfiles extends __SmithyException, $MetadataBearer { - name: "TooManyFieldLevelEncryptionQueryArgProfiles"; - $fault: "client"; +export class TooManyFieldLevelEncryptionQueryArgProfiles extends __BaseException { + readonly name: "TooManyFieldLevelEncryptionQueryArgProfiles" = "TooManyFieldLevelEncryptionQueryArgProfiles"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFieldLevelEncryptionQueryArgProfiles", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFieldLevelEncryptionQueryArgProfiles.prototype); + this.Message = opts.Message; + } } /** @@ -4723,55 +5667,127 @@ export namespace CreateFieldLevelEncryptionProfileResult { /** *

The specified profile for field-level encryption already exists.

*/ -export interface FieldLevelEncryptionProfileAlreadyExists extends __SmithyException, $MetadataBearer { - name: "FieldLevelEncryptionProfileAlreadyExists"; - $fault: "client"; +export class FieldLevelEncryptionProfileAlreadyExists extends __BaseException { + readonly name: "FieldLevelEncryptionProfileAlreadyExists" = "FieldLevelEncryptionProfileAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FieldLevelEncryptionProfileAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FieldLevelEncryptionProfileAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

The maximum size of a profile for field-level encryption was exceeded.

*/ -export interface FieldLevelEncryptionProfileSizeExceeded extends __SmithyException, $MetadataBearer { - name: "FieldLevelEncryptionProfileSizeExceeded"; - $fault: "client"; +export class FieldLevelEncryptionProfileSizeExceeded extends __BaseException { + readonly name: "FieldLevelEncryptionProfileSizeExceeded" = "FieldLevelEncryptionProfileSizeExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FieldLevelEncryptionProfileSizeExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FieldLevelEncryptionProfileSizeExceeded.prototype); + this.Message = opts.Message; + } } /** *

The specified public key doesn't exist.

*/ -export interface NoSuchPublicKey extends __SmithyException, $MetadataBearer { - name: "NoSuchPublicKey"; - $fault: "client"; +export class NoSuchPublicKey extends __BaseException { + readonly name: "NoSuchPublicKey" = "NoSuchPublicKey"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchPublicKey", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchPublicKey.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of encryption entities for field-level encryption have been created.

*/ -export interface TooManyFieldLevelEncryptionEncryptionEntities extends __SmithyException, $MetadataBearer { - name: "TooManyFieldLevelEncryptionEncryptionEntities"; - $fault: "client"; +export class TooManyFieldLevelEncryptionEncryptionEntities extends __BaseException { + readonly name: "TooManyFieldLevelEncryptionEncryptionEntities" = "TooManyFieldLevelEncryptionEncryptionEntities"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFieldLevelEncryptionEncryptionEntities", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFieldLevelEncryptionEncryptionEntities.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of field patterns for field-level encryption have been created.

*/ -export interface TooManyFieldLevelEncryptionFieldPatterns extends __SmithyException, $MetadataBearer { - name: "TooManyFieldLevelEncryptionFieldPatterns"; - $fault: "client"; +export class TooManyFieldLevelEncryptionFieldPatterns extends __BaseException { + readonly name: "TooManyFieldLevelEncryptionFieldPatterns" = "TooManyFieldLevelEncryptionFieldPatterns"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFieldLevelEncryptionFieldPatterns", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFieldLevelEncryptionFieldPatterns.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of profiles for field-level encryption have been created.

*/ -export interface TooManyFieldLevelEncryptionProfiles extends __SmithyException, $MetadataBearer { - name: "TooManyFieldLevelEncryptionProfiles"; - $fault: "client"; +export class TooManyFieldLevelEncryptionProfiles extends __BaseException { + readonly name: "TooManyFieldLevelEncryptionProfiles" = "TooManyFieldLevelEncryptionProfiles"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFieldLevelEncryptionProfiles", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFieldLevelEncryptionProfiles.prototype); + this.Message = opts.Message; + } } export enum FunctionRuntime { @@ -4943,20 +5959,44 @@ export namespace CreateFunctionResult { * function, you must provide a unique name. To update an existing function, use * UpdateFunction.

*/ -export interface FunctionAlreadyExists extends __SmithyException, $MetadataBearer { - name: "FunctionAlreadyExists"; - $fault: "client"; +export class FunctionAlreadyExists extends __BaseException { + readonly name: "FunctionAlreadyExists" = "FunctionAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FunctionAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FunctionAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

The function is too large. For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface FunctionSizeLimitExceeded extends __SmithyException, $MetadataBearer { - name: "FunctionSizeLimitExceeded"; - $fault: "client"; +export class FunctionSizeLimitExceeded extends __BaseException { + readonly name: "FunctionSizeLimitExceeded" = "FunctionSizeLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FunctionSizeLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FunctionSizeLimitExceeded.prototype); + this.Message = opts.Message; + } } /** @@ -4964,19 +6004,43 @@ export interface FunctionSizeLimitExceeded extends __SmithyException, $MetadataB * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyFunctions extends __SmithyException, $MetadataBearer { - name: "TooManyFunctions"; - $fault: "client"; +export class TooManyFunctions extends __BaseException { + readonly name: "TooManyFunctions" = "TooManyFunctions"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFunctions", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFunctions.prototype); + this.Message = opts.Message; + } } /** *

This operation is not supported in this region.

*/ -export interface UnsupportedOperation extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperation"; - $fault: "client"; +export class UnsupportedOperation extends __BaseException { + readonly name: "UnsupportedOperation" = "UnsupportedOperation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperation.prototype); + this.Message = opts.Message; + } } /** @@ -5131,10 +6195,22 @@ export namespace CreateInvalidationResult { /** *

You have exceeded the maximum number of allowable InProgress invalidation batch requests, or invalidation objects.

*/ -export interface TooManyInvalidationsInProgress extends __SmithyException, $MetadataBearer { - name: "TooManyInvalidationsInProgress"; - $fault: "client"; +export class TooManyInvalidationsInProgress extends __BaseException { + readonly name: "TooManyInvalidationsInProgress" = "TooManyInvalidationsInProgress"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyInvalidationsInProgress", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyInvalidationsInProgress.prototype); + this.Message = opts.Message; + } } /** @@ -5244,10 +6320,22 @@ export namespace CreateKeyGroupResult { *

A key group with this name already exists. You must provide a unique name. To modify an * existing key group, use UpdateKeyGroup.

*/ -export interface KeyGroupAlreadyExists extends __SmithyException, $MetadataBearer { - name: "KeyGroupAlreadyExists"; - $fault: "client"; +export class KeyGroupAlreadyExists extends __BaseException { + readonly name: "KeyGroupAlreadyExists" = "KeyGroupAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeyGroupAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KeyGroupAlreadyExists.prototype); + this.Message = opts.Message; + } } /** @@ -5255,10 +6343,22 @@ export interface KeyGroupAlreadyExists extends __SmithyException, $MetadataBeare * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyKeyGroups extends __SmithyException, $MetadataBearer { - name: "TooManyKeyGroups"; - $fault: "client"; +export class TooManyKeyGroups extends __BaseException { + readonly name: "TooManyKeyGroups" = "TooManyKeyGroups"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyKeyGroups", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyKeyGroups.prototype); + this.Message = opts.Message; + } } /** @@ -5266,10 +6366,22 @@ export interface TooManyKeyGroups extends __SmithyException, $MetadataBearer { * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyPublicKeysInKeyGroup extends __SmithyException, $MetadataBearer { - name: "TooManyPublicKeysInKeyGroup"; - $fault: "client"; +export class TooManyPublicKeysInKeyGroup extends __BaseException { + readonly name: "TooManyPublicKeysInKeyGroup" = "TooManyPublicKeysInKeyGroup"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyPublicKeysInKeyGroup", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyPublicKeysInKeyGroup.prototype); + this.Message = opts.Message; + } } export enum RealtimeMetricsSubscriptionStatus { @@ -5669,10 +6781,22 @@ export namespace CreateOriginRequestPolicyResult { * name. To modify an existing origin request policy, use * UpdateOriginRequestPolicy.

*/ -export interface OriginRequestPolicyAlreadyExists extends __SmithyException, $MetadataBearer { - name: "OriginRequestPolicyAlreadyExists"; - $fault: "client"; +export class OriginRequestPolicyAlreadyExists extends __BaseException { + readonly name: "OriginRequestPolicyAlreadyExists" = "OriginRequestPolicyAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OriginRequestPolicyAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OriginRequestPolicyAlreadyExists.prototype); + this.Message = opts.Message; + } } /** @@ -5680,10 +6804,22 @@ export interface OriginRequestPolicyAlreadyExists extends __SmithyException, $Me * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyCookiesInOriginRequestPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyCookiesInOriginRequestPolicy"; - $fault: "client"; +export class TooManyCookiesInOriginRequestPolicy extends __BaseException { + readonly name: "TooManyCookiesInOriginRequestPolicy" = "TooManyCookiesInOriginRequestPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCookiesInOriginRequestPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCookiesInOriginRequestPolicy.prototype); + this.Message = opts.Message; + } } /** @@ -5691,10 +6827,22 @@ export interface TooManyCookiesInOriginRequestPolicy extends __SmithyException, * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyHeadersInOriginRequestPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyHeadersInOriginRequestPolicy"; - $fault: "client"; +export class TooManyHeadersInOriginRequestPolicy extends __BaseException { + readonly name: "TooManyHeadersInOriginRequestPolicy" = "TooManyHeadersInOriginRequestPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyHeadersInOriginRequestPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyHeadersInOriginRequestPolicy.prototype); + this.Message = opts.Message; + } } /** @@ -5702,10 +6850,22 @@ export interface TooManyHeadersInOriginRequestPolicy extends __SmithyException, * For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyOriginRequestPolicies extends __SmithyException, $MetadataBearer { - name: "TooManyOriginRequestPolicies"; - $fault: "client"; +export class TooManyOriginRequestPolicies extends __BaseException { + readonly name: "TooManyOriginRequestPolicies" = "TooManyOriginRequestPolicies"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyOriginRequestPolicies", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyOriginRequestPolicies.prototype); + this.Message = opts.Message; + } } /** @@ -5713,10 +6873,22 @@ export interface TooManyOriginRequestPolicies extends __SmithyException, $Metada * information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyQueryStringsInOriginRequestPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyQueryStringsInOriginRequestPolicy"; - $fault: "client"; +export class TooManyQueryStringsInOriginRequestPolicy extends __BaseException { + readonly name: "TooManyQueryStringsInOriginRequestPolicy" = "TooManyQueryStringsInOriginRequestPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyQueryStringsInOriginRequestPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyQueryStringsInOriginRequestPolicy.prototype); + this.Message = opts.Message; + } } /** @@ -5829,19 +7001,43 @@ export namespace CreatePublicKeyResult { /** *

The specified public key already exists.

*/ -export interface PublicKeyAlreadyExists extends __SmithyException, $MetadataBearer { - name: "PublicKeyAlreadyExists"; - $fault: "client"; +export class PublicKeyAlreadyExists extends __BaseException { + readonly name: "PublicKeyAlreadyExists" = "PublicKeyAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PublicKeyAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PublicKeyAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of public keys for field-level encryption have been created. To create a new public key, delete one of the existing keys.

*/ -export interface TooManyPublicKeys extends __SmithyException, $MetadataBearer { - name: "TooManyPublicKeys"; - $fault: "client"; +export class TooManyPublicKeys extends __BaseException { + readonly name: "TooManyPublicKeys" = "TooManyPublicKeys"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyPublicKeys", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyPublicKeys.prototype); + this.Message = opts.Message; + } } /** @@ -6003,10 +7199,22 @@ export namespace CreateRealtimeLogConfigResult { * To modify an existing real-time log configuration, use * UpdateRealtimeLogConfig.

*/ -export interface RealtimeLogConfigAlreadyExists extends __SmithyException, $MetadataBearer { - name: "RealtimeLogConfigAlreadyExists"; - $fault: "client"; +export class RealtimeLogConfigAlreadyExists extends __BaseException { + readonly name: "RealtimeLogConfigAlreadyExists" = "RealtimeLogConfigAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RealtimeLogConfigAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RealtimeLogConfigAlreadyExists.prototype); + this.Message = opts.Message; + } } /** @@ -6014,10 +7222,22 @@ export interface RealtimeLogConfigAlreadyExists extends __SmithyException, $Meta * For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyRealtimeLogConfigs extends __SmithyException, $MetadataBearer { - name: "TooManyRealtimeLogConfigs"; - $fault: "client"; +export class TooManyRealtimeLogConfigs extends __BaseException { + readonly name: "TooManyRealtimeLogConfigs" = "TooManyRealtimeLogConfigs"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRealtimeLogConfigs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRealtimeLogConfigs.prototype); + this.Message = opts.Message; + } } /** @@ -6769,10 +7989,22 @@ export namespace CreateResponseHeadersPolicyResult { * modify an existing response headers policy, use * UpdateResponseHeadersPolicy.

*/ -export interface ResponseHeadersPolicyAlreadyExists extends __SmithyException, $MetadataBearer { - name: "ResponseHeadersPolicyAlreadyExists"; - $fault: "client"; +export class ResponseHeadersPolicyAlreadyExists extends __BaseException { + readonly name: "ResponseHeadersPolicyAlreadyExists" = "ResponseHeadersPolicyAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResponseHeadersPolicyAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResponseHeadersPolicyAlreadyExists.prototype); + this.Message = opts.Message; + } } /** @@ -6780,10 +8012,22 @@ export interface ResponseHeadersPolicyAlreadyExists extends __SmithyException, $ *

For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyCustomHeadersInResponseHeadersPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyCustomHeadersInResponseHeadersPolicy"; - $fault: "client"; +export class TooManyCustomHeadersInResponseHeadersPolicy extends __BaseException { + readonly name: "TooManyCustomHeadersInResponseHeadersPolicy" = "TooManyCustomHeadersInResponseHeadersPolicy"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCustomHeadersInResponseHeadersPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCustomHeadersInResponseHeadersPolicy.prototype); + this.Message = opts.Message; + } } /** @@ -6792,10 +8036,22 @@ export interface TooManyCustomHeadersInResponseHeadersPolicy extends __SmithyExc *

For more information, see Quotas (formerly known as limits) in the * Amazon CloudFront Developer Guide.

*/ -export interface TooManyResponseHeadersPolicies extends __SmithyException, $MetadataBearer { - name: "TooManyResponseHeadersPolicies"; - $fault: "client"; +export class TooManyResponseHeadersPolicies extends __BaseException { + readonly name: "TooManyResponseHeadersPolicies" = "TooManyResponseHeadersPolicies"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyResponseHeadersPolicies", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyResponseHeadersPolicies.prototype); + this.Message = opts.Message; + } } /** @@ -7055,28 +8311,64 @@ export namespace CreateStreamingDistributionResult { *

The caller reference you attempted to create the streaming distribution with * is associated with another distribution

*/ -export interface StreamingDistributionAlreadyExists extends __SmithyException, $MetadataBearer { - name: "StreamingDistributionAlreadyExists"; - $fault: "client"; +export class StreamingDistributionAlreadyExists extends __BaseException { + readonly name: "StreamingDistributionAlreadyExists" = "StreamingDistributionAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StreamingDistributionAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StreamingDistributionAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

Your request contains more CNAMEs than are allowed per distribution.

*/ -export interface TooManyStreamingDistributionCNAMEs extends __SmithyException, $MetadataBearer { - name: "TooManyStreamingDistributionCNAMEs"; - $fault: "client"; +export class TooManyStreamingDistributionCNAMEs extends __BaseException { + readonly name: "TooManyStreamingDistributionCNAMEs" = "TooManyStreamingDistributionCNAMEs"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyStreamingDistributionCNAMEs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyStreamingDistributionCNAMEs.prototype); + this.Message = opts.Message; + } } /** *

Processing your request would cause you to exceed the maximum number of streaming distributions allowed.

*/ -export interface TooManyStreamingDistributions extends __SmithyException, $MetadataBearer { - name: "TooManyStreamingDistributions"; - $fault: "client"; +export class TooManyStreamingDistributions extends __BaseException { + readonly name: "TooManyStreamingDistributions" = "TooManyStreamingDistributions"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyStreamingDistributions", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyStreamingDistributions.prototype); + this.Message = opts.Message; + } } /** @@ -7180,38 +8472,86 @@ export namespace DeleteCachePolicyRequest { /** *

You cannot delete a managed policy.

*/ -export interface IllegalDelete extends __SmithyException, $MetadataBearer { - name: "IllegalDelete"; - $fault: "client"; +export class IllegalDelete extends __BaseException { + readonly name: "IllegalDelete" = "IllegalDelete"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalDelete", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalDelete.prototype); + this.Message = opts.Message; + } } /** *

The If-Match version is missing or not valid.

*/ -export interface InvalidIfMatchVersion extends __SmithyException, $MetadataBearer { - name: "InvalidIfMatchVersion"; - $fault: "client"; +export class InvalidIfMatchVersion extends __BaseException { + readonly name: "InvalidIfMatchVersion" = "InvalidIfMatchVersion"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIfMatchVersion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIfMatchVersion.prototype); + this.Message = opts.Message; + } } /** *

The precondition in one or more of the request fields evaluated to * false.

*/ -export interface PreconditionFailed extends __SmithyException, $MetadataBearer { - name: "PreconditionFailed"; - $fault: "client"; +export class PreconditionFailed extends __BaseException { + readonly name: "PreconditionFailed" = "PreconditionFailed"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailed", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailed.prototype); + this.Message = opts.Message; + } } /** *

The Origin Access Identity specified is already in use.

*/ -export interface CloudFrontOriginAccessIdentityInUse extends __SmithyException, $MetadataBearer { - name: "CloudFrontOriginAccessIdentityInUse"; - $fault: "client"; +export class CloudFrontOriginAccessIdentityInUse extends __BaseException { + readonly name: "CloudFrontOriginAccessIdentityInUse" = "CloudFrontOriginAccessIdentityInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudFrontOriginAccessIdentityInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudFrontOriginAccessIdentityInUse.prototype); + this.Message = opts.Message; + } } /** @@ -7242,10 +8582,22 @@ export namespace DeleteCloudFrontOriginAccessIdentityRequest { /** *

The specified origin access identity does not exist.

*/ -export interface NoSuchCloudFrontOriginAccessIdentity extends __SmithyException, $MetadataBearer { - name: "NoSuchCloudFrontOriginAccessIdentity"; - $fault: "client"; +export class NoSuchCloudFrontOriginAccessIdentity extends __BaseException { + readonly name: "NoSuchCloudFrontOriginAccessIdentity" = "NoSuchCloudFrontOriginAccessIdentity"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchCloudFrontOriginAccessIdentity", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchCloudFrontOriginAccessIdentity.prototype); + this.Message = opts.Message; + } } /** @@ -7323,10 +8675,22 @@ export namespace DeleteDistributionRequest { *

The specified CloudFront distribution is not disabled. You must disable * the distribution before you can delete it.

*/ -export interface DistributionNotDisabled extends __SmithyException, $MetadataBearer { - name: "DistributionNotDisabled"; - $fault: "client"; +export class DistributionNotDisabled extends __BaseException { + readonly name: "DistributionNotDisabled" = "DistributionNotDisabled"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DistributionNotDisabled", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DistributionNotDisabled.prototype); + this.Message = opts.Message; + } } export interface DeleteFieldLevelEncryptionConfigRequest { @@ -7354,10 +8718,22 @@ export namespace DeleteFieldLevelEncryptionConfigRequest { /** *

The specified configuration for field-level encryption is in use.

*/ -export interface FieldLevelEncryptionConfigInUse extends __SmithyException, $MetadataBearer { - name: "FieldLevelEncryptionConfigInUse"; - $fault: "client"; +export class FieldLevelEncryptionConfigInUse extends __BaseException { + readonly name: "FieldLevelEncryptionConfigInUse" = "FieldLevelEncryptionConfigInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FieldLevelEncryptionConfigInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FieldLevelEncryptionConfigInUse.prototype); + this.Message = opts.Message; + } } export interface DeleteFieldLevelEncryptionProfileRequest { @@ -7385,10 +8761,22 @@ export namespace DeleteFieldLevelEncryptionProfileRequest { /** *

The specified profile for field-level encryption is in use.

*/ -export interface FieldLevelEncryptionProfileInUse extends __SmithyException, $MetadataBearer { - name: "FieldLevelEncryptionProfileInUse"; - $fault: "client"; +export class FieldLevelEncryptionProfileInUse extends __BaseException { + readonly name: "FieldLevelEncryptionProfileInUse" = "FieldLevelEncryptionProfileInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FieldLevelEncryptionProfileInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FieldLevelEncryptionProfileInUse.prototype); + this.Message = opts.Message; + } } export interface DeleteFunctionRequest { @@ -7417,19 +8805,43 @@ export namespace DeleteFunctionRequest { *

Cannot delete the function because it’s attached to one or more cache * behaviors.

*/ -export interface FunctionInUse extends __SmithyException, $MetadataBearer { - name: "FunctionInUse"; - $fault: "client"; +export class FunctionInUse extends __BaseException { + readonly name: "FunctionInUse" = "FunctionInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FunctionInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FunctionInUse.prototype); + this.Message = opts.Message; + } } /** *

The function does not exist.

*/ -export interface NoSuchFunctionExists extends __SmithyException, $MetadataBearer { - name: "NoSuchFunctionExists"; - $fault: "client"; +export class NoSuchFunctionExists extends __BaseException { + readonly name: "NoSuchFunctionExists" = "NoSuchFunctionExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchFunctionExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchFunctionExists.prototype); + this.Message = opts.Message; + } } export interface DeleteKeyGroupRequest { @@ -7459,19 +8871,43 @@ export namespace DeleteKeyGroupRequest { /** *

A resource that was specified is not valid.

*/ -export interface NoSuchResource extends __SmithyException, $MetadataBearer { - name: "NoSuchResource"; - $fault: "client"; +export class NoSuchResource extends __BaseException { + readonly name: "NoSuchResource" = "NoSuchResource"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchResource", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchResource.prototype); + this.Message = opts.Message; + } } /** *

Cannot delete this resource because it is in use.

*/ -export interface ResourceInUse extends __SmithyException, $MetadataBearer { - name: "ResourceInUse"; - $fault: "client"; +export class ResourceInUse extends __BaseException { + readonly name: "ResourceInUse" = "ResourceInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUse.prototype); + this.Message = opts.Message; + } } export interface DeleteMonitoringSubscriptionRequest { diff --git a/clients/client-cloudfront/src/models/models_1.ts b/clients/client-cloudfront/src/models/models_1.ts index e79ca11341128..f9476788ddc7b 100644 --- a/clients/client-cloudfront/src/models/models_1.ts +++ b/clients/client-cloudfront/src/models/models_1.ts @@ -1,6 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { CloudFrontServiceException as __BaseException } from "./CloudFrontServiceException"; import { Aliases, AliasICPRecordal, @@ -90,10 +91,22 @@ export namespace DeleteOriginRequestPolicyRequest { *

Cannot delete the origin request policy because it is attached to one or more cache * behaviors.

*/ -export interface OriginRequestPolicyInUse extends __SmithyException, $MetadataBearer { - name: "OriginRequestPolicyInUse"; - $fault: "client"; +export class OriginRequestPolicyInUse extends __BaseException { + readonly name: "OriginRequestPolicyInUse" = "OriginRequestPolicyInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OriginRequestPolicyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OriginRequestPolicyInUse.prototype); + this.Message = opts.Message; + } } export interface DeletePublicKeyRequest { @@ -121,10 +134,22 @@ export namespace DeletePublicKeyRequest { /** *

The specified public key is in use.

*/ -export interface PublicKeyInUse extends __SmithyException, $MetadataBearer { - name: "PublicKeyInUse"; - $fault: "client"; +export class PublicKeyInUse extends __BaseException { + readonly name: "PublicKeyInUse" = "PublicKeyInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PublicKeyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PublicKeyInUse.prototype); + this.Message = opts.Message; + } } export interface DeleteRealtimeLogConfigRequest { @@ -152,10 +177,22 @@ export namespace DeleteRealtimeLogConfigRequest { *

Cannot delete the real-time log configuration because it is attached to one or more cache * behaviors.

*/ -export interface RealtimeLogConfigInUse extends __SmithyException, $MetadataBearer { - name: "RealtimeLogConfigInUse"; - $fault: "client"; +export class RealtimeLogConfigInUse extends __BaseException { + readonly name: "RealtimeLogConfigInUse" = "RealtimeLogConfigInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RealtimeLogConfigInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RealtimeLogConfigInUse.prototype); + this.Message = opts.Message; + } } export interface DeleteResponseHeadersPolicyRequest { @@ -188,10 +225,22 @@ export namespace DeleteResponseHeadersPolicyRequest { *

Cannot delete the response headers policy because it is attached to one or more cache * behaviors in a CloudFront distribution.

*/ -export interface ResponseHeadersPolicyInUse extends __SmithyException, $MetadataBearer { - name: "ResponseHeadersPolicyInUse"; - $fault: "client"; +export class ResponseHeadersPolicyInUse extends __BaseException { + readonly name: "ResponseHeadersPolicyInUse" = "ResponseHeadersPolicyInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResponseHeadersPolicyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResponseHeadersPolicyInUse.prototype); + this.Message = opts.Message; + } } /** @@ -222,20 +271,44 @@ export namespace DeleteStreamingDistributionRequest { /** *

The specified streaming distribution does not exist.

*/ -export interface NoSuchStreamingDistribution extends __SmithyException, $MetadataBearer { - name: "NoSuchStreamingDistribution"; - $fault: "client"; +export class NoSuchStreamingDistribution extends __BaseException { + readonly name: "NoSuchStreamingDistribution" = "NoSuchStreamingDistribution"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchStreamingDistribution", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchStreamingDistribution.prototype); + this.Message = opts.Message; + } } /** *

The specified CloudFront distribution is not disabled. You must disable * the distribution before you can delete it.

*/ -export interface StreamingDistributionNotDisabled extends __SmithyException, $MetadataBearer { - name: "StreamingDistributionNotDisabled"; - $fault: "client"; +export class StreamingDistributionNotDisabled extends __BaseException { + readonly name: "StreamingDistributionNotDisabled" = "StreamingDistributionNotDisabled"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StreamingDistributionNotDisabled", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StreamingDistributionNotDisabled.prototype); + this.Message = opts.Message; + } } export interface DescribeFunctionRequest { @@ -786,10 +859,22 @@ export namespace GetInvalidationResult { /** *

The specified invalidation does not exist.

*/ -export interface NoSuchInvalidation extends __SmithyException, $MetadataBearer { - name: "NoSuchInvalidation"; - $fault: "client"; +export class NoSuchInvalidation extends __BaseException { + readonly name: "NoSuchInvalidation" = "NoSuchInvalidation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchInvalidation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchInvalidation.prototype); + this.Message = opts.Message; + } } export interface GetKeyGroupRequest { @@ -3427,10 +3512,22 @@ export namespace TagResourceRequest { /** *

The CloudFront function failed.

*/ -export interface TestFunctionFailed extends __SmithyException, $MetadataBearer { - name: "TestFunctionFailed"; - $fault: "server"; +export class TestFunctionFailed extends __BaseException { + readonly name: "TestFunctionFailed" = "TestFunctionFailed"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TestFunctionFailed", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, TestFunctionFailed.prototype); + this.Message = opts.Message; + } } export interface TestFunctionRequest { diff --git a/clients/client-cloudfront/src/protocols/Aws_restXml.ts b/clients/client-cloudfront/src/protocols/Aws_restXml.ts index e1ded2a562776..f26a22afa3b6d 100644 --- a/clients/client-cloudfront/src/protocols/Aws_restXml.ts +++ b/clients/client-cloudfront/src/protocols/Aws_restXml.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { XmlNode as __XmlNode, XmlText as __XmlText } from "@aws-sdk/xml-builder"; import { decodeHTML } from "entities"; @@ -282,6 +281,7 @@ import { UpdateStreamingDistributionCommandInput, UpdateStreamingDistributionCommandOutput, } from "../commands/UpdateStreamingDistributionCommand"; +import { CloudFrontServiceException as __BaseException } from "../models/CloudFrontServiceException"; import { AccessDenied, ActiveTrustedKeyGroups, @@ -3640,65 +3640,34 @@ const deserializeAws_restXmlAssociateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "TooManyDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateCachePolicyCommand = async ( @@ -3733,89 +3702,43 @@ const deserializeAws_restXmlCreateCachePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CachePolicyAlreadyExists": case "com.amazonaws.cloudfront#CachePolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlCachePolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCachePolicyAlreadyExistsResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "TooManyCachePolicies": case "com.amazonaws.cloudfront#TooManyCachePolicies": - response = { - ...(await deserializeAws_restXmlTooManyCachePoliciesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCachePoliciesResponse(parsedOutput, context); case "TooManyCookiesInCachePolicy": case "com.amazonaws.cloudfront#TooManyCookiesInCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyCookiesInCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookiesInCachePolicyResponse(parsedOutput, context); case "TooManyHeadersInCachePolicy": case "com.amazonaws.cloudfront#TooManyHeadersInCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInCachePolicyResponse(parsedOutput, context); case "TooManyQueryStringsInCachePolicy": case "com.amazonaws.cloudfront#TooManyQueryStringsInCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringsInCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringsInCachePolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateCloudFrontOriginAccessIdentityCommand = async ( @@ -3850,65 +3773,34 @@ const deserializeAws_restXmlCreateCloudFrontOriginAccessIdentityCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudFrontOriginAccessIdentityAlreadyExists": case "com.amazonaws.cloudfront#CloudFrontOriginAccessIdentityAlreadyExists": - response = { - ...(await deserializeAws_restXmlCloudFrontOriginAccessIdentityAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCloudFrontOriginAccessIdentityAlreadyExistsResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "TooManyCloudFrontOriginAccessIdentities": case "com.amazonaws.cloudfront#TooManyCloudFrontOriginAccessIdentities": - response = { - ...(await deserializeAws_restXmlTooManyCloudFrontOriginAccessIdentitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCloudFrontOriginAccessIdentitiesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateDistributionCommand = async ( @@ -3943,509 +3835,208 @@ const deserializeAws_restXmlCreateDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CNAMEAlreadyExists": case "com.amazonaws.cloudfront#CNAMEAlreadyExists": - response = { - ...(await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context); case "DistributionAlreadyExists": case "com.amazonaws.cloudfront#DistributionAlreadyExists": - response = { - ...(await deserializeAws_restXmlDistributionAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDistributionAlreadyExistsResponse(parsedOutput, context); case "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior": case "com.amazonaws.cloudfront#IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior": - response = { - ...(await deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse( + parsedOutput, + context + ); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidDefaultRootObject": case "com.amazonaws.cloudfront#InvalidDefaultRootObject": - response = { - ...(await deserializeAws_restXmlInvalidDefaultRootObjectResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidDefaultRootObjectResponse(parsedOutput, context); case "InvalidErrorCode": case "com.amazonaws.cloudfront#InvalidErrorCode": - response = { - ...(await deserializeAws_restXmlInvalidErrorCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidErrorCodeResponse(parsedOutput, context); case "InvalidForwardCookies": case "com.amazonaws.cloudfront#InvalidForwardCookies": - response = { - ...(await deserializeAws_restXmlInvalidForwardCookiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidForwardCookiesResponse(parsedOutput, context); case "InvalidFunctionAssociation": case "com.amazonaws.cloudfront#InvalidFunctionAssociation": - response = { - ...(await deserializeAws_restXmlInvalidFunctionAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidFunctionAssociationResponse(parsedOutput, context); case "InvalidGeoRestrictionParameter": case "com.amazonaws.cloudfront#InvalidGeoRestrictionParameter": - response = { - ...(await deserializeAws_restXmlInvalidGeoRestrictionParameterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidGeoRestrictionParameterResponse(parsedOutput, context); case "InvalidHeadersForS3Origin": case "com.amazonaws.cloudfront#InvalidHeadersForS3Origin": - response = { - ...(await deserializeAws_restXmlInvalidHeadersForS3OriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidHeadersForS3OriginResponse(parsedOutput, context); case "InvalidLambdaFunctionAssociation": case "com.amazonaws.cloudfront#InvalidLambdaFunctionAssociation": - response = { - ...(await deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse(parsedOutput, context); case "InvalidLocationCode": case "com.amazonaws.cloudfront#InvalidLocationCode": - response = { - ...(await deserializeAws_restXmlInvalidLocationCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidLocationCodeResponse(parsedOutput, context); case "InvalidMinimumProtocolVersion": case "com.amazonaws.cloudfront#InvalidMinimumProtocolVersion": - response = { - ...(await deserializeAws_restXmlInvalidMinimumProtocolVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidMinimumProtocolVersionResponse(parsedOutput, context); case "InvalidOrigin": case "com.amazonaws.cloudfront#InvalidOrigin": - response = { - ...(await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context); case "InvalidOriginAccessIdentity": case "com.amazonaws.cloudfront#InvalidOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context); case "InvalidOriginKeepaliveTimeout": case "com.amazonaws.cloudfront#InvalidOriginKeepaliveTimeout": - response = { - ...(await deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse(parsedOutput, context); case "InvalidOriginReadTimeout": case "com.amazonaws.cloudfront#InvalidOriginReadTimeout": - response = { - ...(await deserializeAws_restXmlInvalidOriginReadTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginReadTimeoutResponse(parsedOutput, context); case "InvalidProtocolSettings": case "com.amazonaws.cloudfront#InvalidProtocolSettings": - response = { - ...(await deserializeAws_restXmlInvalidProtocolSettingsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidProtocolSettingsResponse(parsedOutput, context); case "InvalidQueryStringParameters": case "com.amazonaws.cloudfront#InvalidQueryStringParameters": - response = { - ...(await deserializeAws_restXmlInvalidQueryStringParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidQueryStringParametersResponse(parsedOutput, context); case "InvalidRelativePath": case "com.amazonaws.cloudfront#InvalidRelativePath": - response = { - ...(await deserializeAws_restXmlInvalidRelativePathResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRelativePathResponse(parsedOutput, context); case "InvalidRequiredProtocol": case "com.amazonaws.cloudfront#InvalidRequiredProtocol": - response = { - ...(await deserializeAws_restXmlInvalidRequiredProtocolResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRequiredProtocolResponse(parsedOutput, context); case "InvalidResponseCode": case "com.amazonaws.cloudfront#InvalidResponseCode": - response = { - ...(await deserializeAws_restXmlInvalidResponseCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidResponseCodeResponse(parsedOutput, context); case "InvalidTTLOrder": case "com.amazonaws.cloudfront#InvalidTTLOrder": - response = { - ...(await deserializeAws_restXmlInvalidTTLOrderResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTTLOrderResponse(parsedOutput, context); case "InvalidViewerCertificate": case "com.amazonaws.cloudfront#InvalidViewerCertificate": - response = { - ...(await deserializeAws_restXmlInvalidViewerCertificateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidViewerCertificateResponse(parsedOutput, context); case "InvalidWebACLId": case "com.amazonaws.cloudfront#InvalidWebACLId": - response = { - ...(await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); case "NoSuchOrigin": case "com.amazonaws.cloudfront#NoSuchOrigin": - response = { - ...(await deserializeAws_restXmlNoSuchOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); case "RealtimeLogConfigOwnerMismatch": case "com.amazonaws.cloudfront#RealtimeLogConfigOwnerMismatch": - response = { - ...(await deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse(parsedOutput, context); case "TooManyCacheBehaviors": case "com.amazonaws.cloudfront#TooManyCacheBehaviors": - response = { - ...(await deserializeAws_restXmlTooManyCacheBehaviorsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCacheBehaviorsResponse(parsedOutput, context); case "TooManyCertificates": case "com.amazonaws.cloudfront#TooManyCertificates": - response = { - ...(await deserializeAws_restXmlTooManyCertificatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCertificatesResponse(parsedOutput, context); case "TooManyCookieNamesInWhiteList": case "com.amazonaws.cloudfront#TooManyCookieNamesInWhiteList": - response = { - ...(await deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse(parsedOutput, context); case "TooManyDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context); case "TooManyDistributions": case "com.amazonaws.cloudfront#TooManyDistributions": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToCachePolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse( + parsedOutput, + context + ); case "TooManyDistributionsAssociatedToKeyGroup": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToKeyGroup": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse( + parsedOutput, + context + ); case "TooManyDistributionsAssociatedToResponseHeadersPolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse( + parsedOutput, + context + ); case "TooManyDistributionsWithFunctionAssociations": case "com.amazonaws.cloudfront#TooManyDistributionsWithFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse(parsedOutput, context); case "TooManyDistributionsWithLambdaAssociations": case "com.amazonaws.cloudfront#TooManyDistributionsWithLambdaAssociations": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse(parsedOutput, context); case "TooManyDistributionsWithSingleFunctionARN": case "com.amazonaws.cloudfront#TooManyDistributionsWithSingleFunctionARN": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse(parsedOutput, context); case "TooManyFunctionAssociations": case "com.amazonaws.cloudfront#TooManyFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFunctionAssociationsResponse(parsedOutput, context); case "TooManyHeadersInForwardedValues": case "com.amazonaws.cloudfront#TooManyHeadersInForwardedValues": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse(parsedOutput, context); case "TooManyKeyGroupsAssociatedToDistribution": case "com.amazonaws.cloudfront#TooManyKeyGroupsAssociatedToDistribution": - response = { - ...(await deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse(parsedOutput, context); case "TooManyLambdaFunctionAssociations": case "com.amazonaws.cloudfront#TooManyLambdaFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse(parsedOutput, context); case "TooManyOriginCustomHeaders": case "com.amazonaws.cloudfront#TooManyOriginCustomHeaders": - response = { - ...(await deserializeAws_restXmlTooManyOriginCustomHeadersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginCustomHeadersResponse(parsedOutput, context); case "TooManyOriginGroupsPerDistribution": case "com.amazonaws.cloudfront#TooManyOriginGroupsPerDistribution": - response = { - ...(await deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse(parsedOutput, context); case "TooManyOrigins": case "com.amazonaws.cloudfront#TooManyOrigins": - response = { - ...(await deserializeAws_restXmlTooManyOriginsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginsResponse(parsedOutput, context); case "TooManyQueryStringParameters": case "com.amazonaws.cloudfront#TooManyQueryStringParameters": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringParametersResponse(parsedOutput, context); case "TooManyTrustedSigners": case "com.amazonaws.cloudfront#TooManyTrustedSigners": - response = { - ...(await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context); case "TrustedKeyGroupDoesNotExist": case "com.amazonaws.cloudfront#TrustedKeyGroupDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse(parsedOutput, context); case "TrustedSignerDoesNotExist": case "com.amazonaws.cloudfront#TrustedSignerDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateDistributionWithTagsCommand = async ( @@ -4480,517 +4071,211 @@ const deserializeAws_restXmlCreateDistributionWithTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CNAMEAlreadyExists": case "com.amazonaws.cloudfront#CNAMEAlreadyExists": - response = { - ...(await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context); case "DistributionAlreadyExists": case "com.amazonaws.cloudfront#DistributionAlreadyExists": - response = { - ...(await deserializeAws_restXmlDistributionAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDistributionAlreadyExistsResponse(parsedOutput, context); case "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior": case "com.amazonaws.cloudfront#IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior": - response = { - ...(await deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse( + parsedOutput, + context + ); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidDefaultRootObject": case "com.amazonaws.cloudfront#InvalidDefaultRootObject": - response = { - ...(await deserializeAws_restXmlInvalidDefaultRootObjectResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidDefaultRootObjectResponse(parsedOutput, context); case "InvalidErrorCode": case "com.amazonaws.cloudfront#InvalidErrorCode": - response = { - ...(await deserializeAws_restXmlInvalidErrorCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidErrorCodeResponse(parsedOutput, context); case "InvalidForwardCookies": case "com.amazonaws.cloudfront#InvalidForwardCookies": - response = { - ...(await deserializeAws_restXmlInvalidForwardCookiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidForwardCookiesResponse(parsedOutput, context); case "InvalidFunctionAssociation": case "com.amazonaws.cloudfront#InvalidFunctionAssociation": - response = { - ...(await deserializeAws_restXmlInvalidFunctionAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidFunctionAssociationResponse(parsedOutput, context); case "InvalidGeoRestrictionParameter": case "com.amazonaws.cloudfront#InvalidGeoRestrictionParameter": - response = { - ...(await deserializeAws_restXmlInvalidGeoRestrictionParameterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidGeoRestrictionParameterResponse(parsedOutput, context); case "InvalidHeadersForS3Origin": case "com.amazonaws.cloudfront#InvalidHeadersForS3Origin": - response = { - ...(await deserializeAws_restXmlInvalidHeadersForS3OriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidHeadersForS3OriginResponse(parsedOutput, context); case "InvalidLambdaFunctionAssociation": case "com.amazonaws.cloudfront#InvalidLambdaFunctionAssociation": - response = { - ...(await deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse(parsedOutput, context); case "InvalidLocationCode": case "com.amazonaws.cloudfront#InvalidLocationCode": - response = { - ...(await deserializeAws_restXmlInvalidLocationCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidLocationCodeResponse(parsedOutput, context); case "InvalidMinimumProtocolVersion": case "com.amazonaws.cloudfront#InvalidMinimumProtocolVersion": - response = { - ...(await deserializeAws_restXmlInvalidMinimumProtocolVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidMinimumProtocolVersionResponse(parsedOutput, context); case "InvalidOrigin": case "com.amazonaws.cloudfront#InvalidOrigin": - response = { - ...(await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context); case "InvalidOriginAccessIdentity": case "com.amazonaws.cloudfront#InvalidOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context); case "InvalidOriginKeepaliveTimeout": case "com.amazonaws.cloudfront#InvalidOriginKeepaliveTimeout": - response = { - ...(await deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse(parsedOutput, context); case "InvalidOriginReadTimeout": case "com.amazonaws.cloudfront#InvalidOriginReadTimeout": - response = { - ...(await deserializeAws_restXmlInvalidOriginReadTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginReadTimeoutResponse(parsedOutput, context); case "InvalidProtocolSettings": case "com.amazonaws.cloudfront#InvalidProtocolSettings": - response = { - ...(await deserializeAws_restXmlInvalidProtocolSettingsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidProtocolSettingsResponse(parsedOutput, context); case "InvalidQueryStringParameters": case "com.amazonaws.cloudfront#InvalidQueryStringParameters": - response = { - ...(await deserializeAws_restXmlInvalidQueryStringParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidQueryStringParametersResponse(parsedOutput, context); case "InvalidRelativePath": case "com.amazonaws.cloudfront#InvalidRelativePath": - response = { - ...(await deserializeAws_restXmlInvalidRelativePathResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRelativePathResponse(parsedOutput, context); case "InvalidRequiredProtocol": case "com.amazonaws.cloudfront#InvalidRequiredProtocol": - response = { - ...(await deserializeAws_restXmlInvalidRequiredProtocolResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRequiredProtocolResponse(parsedOutput, context); case "InvalidResponseCode": case "com.amazonaws.cloudfront#InvalidResponseCode": - response = { - ...(await deserializeAws_restXmlInvalidResponseCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidResponseCodeResponse(parsedOutput, context); case "InvalidTagging": case "com.amazonaws.cloudfront#InvalidTagging": - response = { - ...(await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context); case "InvalidTTLOrder": case "com.amazonaws.cloudfront#InvalidTTLOrder": - response = { - ...(await deserializeAws_restXmlInvalidTTLOrderResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTTLOrderResponse(parsedOutput, context); case "InvalidViewerCertificate": case "com.amazonaws.cloudfront#InvalidViewerCertificate": - response = { - ...(await deserializeAws_restXmlInvalidViewerCertificateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidViewerCertificateResponse(parsedOutput, context); case "InvalidWebACLId": case "com.amazonaws.cloudfront#InvalidWebACLId": - response = { - ...(await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); case "NoSuchOrigin": case "com.amazonaws.cloudfront#NoSuchOrigin": - response = { - ...(await deserializeAws_restXmlNoSuchOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); case "RealtimeLogConfigOwnerMismatch": case "com.amazonaws.cloudfront#RealtimeLogConfigOwnerMismatch": - response = { - ...(await deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse(parsedOutput, context); case "TooManyCacheBehaviors": case "com.amazonaws.cloudfront#TooManyCacheBehaviors": - response = { - ...(await deserializeAws_restXmlTooManyCacheBehaviorsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCacheBehaviorsResponse(parsedOutput, context); case "TooManyCertificates": case "com.amazonaws.cloudfront#TooManyCertificates": - response = { - ...(await deserializeAws_restXmlTooManyCertificatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCertificatesResponse(parsedOutput, context); case "TooManyCookieNamesInWhiteList": case "com.amazonaws.cloudfront#TooManyCookieNamesInWhiteList": - response = { - ...(await deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse(parsedOutput, context); case "TooManyDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context); case "TooManyDistributions": case "com.amazonaws.cloudfront#TooManyDistributions": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToCachePolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse( + parsedOutput, + context + ); case "TooManyDistributionsAssociatedToKeyGroup": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToKeyGroup": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse( + parsedOutput, + context + ); case "TooManyDistributionsAssociatedToResponseHeadersPolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse( + parsedOutput, + context + ); case "TooManyDistributionsWithFunctionAssociations": case "com.amazonaws.cloudfront#TooManyDistributionsWithFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse(parsedOutput, context); case "TooManyDistributionsWithLambdaAssociations": case "com.amazonaws.cloudfront#TooManyDistributionsWithLambdaAssociations": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse(parsedOutput, context); case "TooManyDistributionsWithSingleFunctionARN": case "com.amazonaws.cloudfront#TooManyDistributionsWithSingleFunctionARN": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse(parsedOutput, context); case "TooManyFunctionAssociations": case "com.amazonaws.cloudfront#TooManyFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFunctionAssociationsResponse(parsedOutput, context); case "TooManyHeadersInForwardedValues": case "com.amazonaws.cloudfront#TooManyHeadersInForwardedValues": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse(parsedOutput, context); case "TooManyKeyGroupsAssociatedToDistribution": case "com.amazonaws.cloudfront#TooManyKeyGroupsAssociatedToDistribution": - response = { - ...(await deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse(parsedOutput, context); case "TooManyLambdaFunctionAssociations": case "com.amazonaws.cloudfront#TooManyLambdaFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse(parsedOutput, context); case "TooManyOriginCustomHeaders": case "com.amazonaws.cloudfront#TooManyOriginCustomHeaders": - response = { - ...(await deserializeAws_restXmlTooManyOriginCustomHeadersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginCustomHeadersResponse(parsedOutput, context); case "TooManyOriginGroupsPerDistribution": case "com.amazonaws.cloudfront#TooManyOriginGroupsPerDistribution": - response = { - ...(await deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse(parsedOutput, context); case "TooManyOrigins": case "com.amazonaws.cloudfront#TooManyOrigins": - response = { - ...(await deserializeAws_restXmlTooManyOriginsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginsResponse(parsedOutput, context); case "TooManyQueryStringParameters": case "com.amazonaws.cloudfront#TooManyQueryStringParameters": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringParametersResponse(parsedOutput, context); case "TooManyTrustedSigners": case "com.amazonaws.cloudfront#TooManyTrustedSigners": - response = { - ...(await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context); case "TrustedKeyGroupDoesNotExist": case "com.amazonaws.cloudfront#TrustedKeyGroupDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse(parsedOutput, context); case "TrustedSignerDoesNotExist": case "com.amazonaws.cloudfront#TrustedSignerDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateFieldLevelEncryptionConfigCommand = async ( @@ -5025,89 +4310,43 @@ const deserializeAws_restXmlCreateFieldLevelEncryptionConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "FieldLevelEncryptionConfigAlreadyExists": case "com.amazonaws.cloudfront#FieldLevelEncryptionConfigAlreadyExists": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionConfigAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionConfigAlreadyExistsResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionProfile": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionProfile": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context); case "QueryArgProfileEmpty": case "com.amazonaws.cloudfront#QueryArgProfileEmpty": - response = { - ...(await deserializeAws_restXmlQueryArgProfileEmptyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlQueryArgProfileEmptyResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionConfigs": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionConfigs": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionConfigsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionConfigsResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionContentTypeProfiles": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionContentTypeProfiles": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionContentTypeProfilesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionContentTypeProfilesResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionQueryArgProfiles": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionQueryArgProfiles": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionQueryArgProfilesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionQueryArgProfilesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateFieldLevelEncryptionProfileCommand = async ( @@ -5142,89 +4381,43 @@ const deserializeAws_restXmlCreateFieldLevelEncryptionProfileCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "FieldLevelEncryptionProfileAlreadyExists": case "com.amazonaws.cloudfront#FieldLevelEncryptionProfileAlreadyExists": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionProfileAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionProfileAlreadyExistsResponse(parsedOutput, context); case "FieldLevelEncryptionProfileSizeExceeded": case "com.amazonaws.cloudfront#FieldLevelEncryptionProfileSizeExceeded": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionProfileSizeExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionProfileSizeExceededResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchPublicKey": case "com.amazonaws.cloudfront#NoSuchPublicKey": - response = { - ...(await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionEncryptionEntities": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionEncryptionEntities": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionEncryptionEntitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionEncryptionEntitiesResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionFieldPatterns": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionFieldPatterns": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionFieldPatternsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionFieldPatternsResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionProfiles": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionProfiles": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionProfilesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionProfilesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateFunctionCommand = async ( @@ -5259,65 +4452,34 @@ const deserializeAws_restXmlCreateFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "FunctionAlreadyExists": case "com.amazonaws.cloudfront#FunctionAlreadyExists": - response = { - ...(await deserializeAws_restXmlFunctionAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFunctionAlreadyExistsResponse(parsedOutput, context); case "FunctionSizeLimitExceeded": case "com.amazonaws.cloudfront#FunctionSizeLimitExceeded": - response = { - ...(await deserializeAws_restXmlFunctionSizeLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFunctionSizeLimitExceededResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "TooManyFunctions": case "com.amazonaws.cloudfront#TooManyFunctions": - response = { - ...(await deserializeAws_restXmlTooManyFunctionsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFunctionsResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateInvalidationCommand = async ( @@ -5348,81 +4510,40 @@ const deserializeAws_restXmlCreateInvalidationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "BatchTooLarge": case "com.amazonaws.cloudfront#BatchTooLarge": - response = { - ...(await deserializeAws_restXmlBatchTooLargeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBatchTooLargeResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "TooManyInvalidationsInProgress": case "com.amazonaws.cloudfront#TooManyInvalidationsInProgress": - response = { - ...(await deserializeAws_restXmlTooManyInvalidationsInProgressResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyInvalidationsInProgressResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateKeyGroupCommand = async ( @@ -5457,57 +4578,31 @@ const deserializeAws_restXmlCreateKeyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "KeyGroupAlreadyExists": case "com.amazonaws.cloudfront#KeyGroupAlreadyExists": - response = { - ...(await deserializeAws_restXmlKeyGroupAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeyGroupAlreadyExistsResponse(parsedOutput, context); case "TooManyKeyGroups": case "com.amazonaws.cloudfront#TooManyKeyGroups": - response = { - ...(await deserializeAws_restXmlTooManyKeyGroupsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyKeyGroupsResponse(parsedOutput, context); case "TooManyPublicKeysInKeyGroup": case "com.amazonaws.cloudfront#TooManyPublicKeysInKeyGroup": - response = { - ...(await deserializeAws_restXmlTooManyPublicKeysInKeyGroupResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyPublicKeysInKeyGroupResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateMonitoringSubscriptionCommand = async ( @@ -5534,49 +4629,28 @@ const deserializeAws_restXmlCreateMonitoringSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateOriginRequestPolicyCommand = async ( @@ -5611,89 +4685,43 @@ const deserializeAws_restXmlCreateOriginRequestPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "OriginRequestPolicyAlreadyExists": case "com.amazonaws.cloudfront#OriginRequestPolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlOriginRequestPolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlOriginRequestPolicyAlreadyExistsResponse(parsedOutput, context); case "TooManyCookiesInOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyCookiesInOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyCookiesInOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookiesInOriginRequestPolicyResponse(parsedOutput, context); case "TooManyHeadersInOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyHeadersInOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInOriginRequestPolicyResponse(parsedOutput, context); case "TooManyOriginRequestPolicies": case "com.amazonaws.cloudfront#TooManyOriginRequestPolicies": - response = { - ...(await deserializeAws_restXmlTooManyOriginRequestPoliciesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginRequestPoliciesResponse(parsedOutput, context); case "TooManyQueryStringsInOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyQueryStringsInOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringsInOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringsInOriginRequestPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreatePublicKeyCommand = async ( @@ -5728,49 +4756,28 @@ const deserializeAws_restXmlCreatePublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "PublicKeyAlreadyExists": case "com.amazonaws.cloudfront#PublicKeyAlreadyExists": - response = { - ...(await deserializeAws_restXmlPublicKeyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPublicKeyAlreadyExistsResponse(parsedOutput, context); case "TooManyPublicKeys": case "com.amazonaws.cloudfront#TooManyPublicKeys": - response = { - ...(await deserializeAws_restXmlTooManyPublicKeysResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyPublicKeysResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateRealtimeLogConfigCommand = async ( @@ -5799,57 +4806,31 @@ const deserializeAws_restXmlCreateRealtimeLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "RealtimeLogConfigAlreadyExists": case "com.amazonaws.cloudfront#RealtimeLogConfigAlreadyExists": - response = { - ...(await deserializeAws_restXmlRealtimeLogConfigAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlRealtimeLogConfigAlreadyExistsResponse(parsedOutput, context); case "TooManyRealtimeLogConfigs": case "com.amazonaws.cloudfront#TooManyRealtimeLogConfigs": - response = { - ...(await deserializeAws_restXmlTooManyRealtimeLogConfigsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRealtimeLogConfigsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateResponseHeadersPolicyCommand = async ( @@ -5884,73 +4865,37 @@ const deserializeAws_restXmlCreateResponseHeadersPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "ResponseHeadersPolicyAlreadyExists": case "com.amazonaws.cloudfront#ResponseHeadersPolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlResponseHeadersPolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlResponseHeadersPolicyAlreadyExistsResponse(parsedOutput, context); case "TooManyCustomHeadersInResponseHeadersPolicy": case "com.amazonaws.cloudfront#TooManyCustomHeadersInResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlTooManyCustomHeadersInResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCustomHeadersInResponseHeadersPolicyResponse(parsedOutput, context); case "TooManyResponseHeadersPolicies": case "com.amazonaws.cloudfront#TooManyResponseHeadersPolicies": - response = { - ...(await deserializeAws_restXmlTooManyResponseHeadersPoliciesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyResponseHeadersPoliciesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateStreamingDistributionCommand = async ( @@ -5985,121 +4930,55 @@ const deserializeAws_restXmlCreateStreamingDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CNAMEAlreadyExists": case "com.amazonaws.cloudfront#CNAMEAlreadyExists": - response = { - ...(await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidOrigin": case "com.amazonaws.cloudfront#InvalidOrigin": - response = { - ...(await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context); case "InvalidOriginAccessIdentity": case "com.amazonaws.cloudfront#InvalidOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "StreamingDistributionAlreadyExists": case "com.amazonaws.cloudfront#StreamingDistributionAlreadyExists": - response = { - ...(await deserializeAws_restXmlStreamingDistributionAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlStreamingDistributionAlreadyExistsResponse(parsedOutput, context); case "TooManyStreamingDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyStreamingDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse(parsedOutput, context); case "TooManyStreamingDistributions": case "com.amazonaws.cloudfront#TooManyStreamingDistributions": - response = { - ...(await deserializeAws_restXmlTooManyStreamingDistributionsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyStreamingDistributionsResponse(parsedOutput, context); case "TooManyTrustedSigners": case "com.amazonaws.cloudfront#TooManyTrustedSigners": - response = { - ...(await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context); case "TrustedSignerDoesNotExist": case "com.amazonaws.cloudfront#TrustedSignerDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateStreamingDistributionWithTagsCommand = async ( @@ -6134,129 +5013,58 @@ const deserializeAws_restXmlCreateStreamingDistributionWithTagsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CNAMEAlreadyExists": case "com.amazonaws.cloudfront#CNAMEAlreadyExists": - response = { - ...(await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidOrigin": case "com.amazonaws.cloudfront#InvalidOrigin": - response = { - ...(await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginResponse(parsedOutput, context); case "InvalidOriginAccessIdentity": case "com.amazonaws.cloudfront#InvalidOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context); case "InvalidTagging": case "com.amazonaws.cloudfront#InvalidTagging": - response = { - ...(await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "StreamingDistributionAlreadyExists": case "com.amazonaws.cloudfront#StreamingDistributionAlreadyExists": - response = { - ...(await deserializeAws_restXmlStreamingDistributionAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlStreamingDistributionAlreadyExistsResponse(parsedOutput, context); case "TooManyStreamingDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyStreamingDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse(parsedOutput, context); case "TooManyStreamingDistributions": case "com.amazonaws.cloudfront#TooManyStreamingDistributions": - response = { - ...(await deserializeAws_restXmlTooManyStreamingDistributionsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyStreamingDistributionsResponse(parsedOutput, context); case "TooManyTrustedSigners": case "com.amazonaws.cloudfront#TooManyTrustedSigners": - response = { - ...(await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context); case "TrustedSignerDoesNotExist": case "com.amazonaws.cloudfront#TrustedSignerDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteCachePolicyCommand = async ( @@ -6281,73 +5089,37 @@ const deserializeAws_restXmlDeleteCachePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CachePolicyInUse": case "com.amazonaws.cloudfront#CachePolicyInUse": - response = { - ...(await deserializeAws_restXmlCachePolicyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCachePolicyInUseResponse(parsedOutput, context); case "IllegalDelete": case "com.amazonaws.cloudfront#IllegalDelete": - response = { - ...(await deserializeAws_restXmlIllegalDeleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalDeleteResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteCloudFrontOriginAccessIdentityCommand = async ( @@ -6372,65 +5144,34 @@ const deserializeAws_restXmlDeleteCloudFrontOriginAccessIdentityCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CloudFrontOriginAccessIdentityInUse": case "com.amazonaws.cloudfront#CloudFrontOriginAccessIdentityInUse": - response = { - ...(await deserializeAws_restXmlCloudFrontOriginAccessIdentityInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCloudFrontOriginAccessIdentityInUseResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchCloudFrontOriginAccessIdentity": case "com.amazonaws.cloudfront#NoSuchCloudFrontOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteDistributionCommand = async ( @@ -6455,65 +5196,34 @@ const deserializeAws_restXmlDeleteDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "DistributionNotDisabled": case "com.amazonaws.cloudfront#DistributionNotDisabled": - response = { - ...(await deserializeAws_restXmlDistributionNotDisabledResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDistributionNotDisabledResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteFieldLevelEncryptionConfigCommand = async ( @@ -6538,65 +5248,34 @@ const deserializeAws_restXmlDeleteFieldLevelEncryptionConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "FieldLevelEncryptionConfigInUse": case "com.amazonaws.cloudfront#FieldLevelEncryptionConfigInUse": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionConfigInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionConfigInUseResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteFieldLevelEncryptionProfileCommand = async ( @@ -6621,65 +5300,34 @@ const deserializeAws_restXmlDeleteFieldLevelEncryptionProfileCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "FieldLevelEncryptionProfileInUse": case "com.amazonaws.cloudfront#FieldLevelEncryptionProfileInUse": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionProfileInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionProfileInUseResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionProfile": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionProfile": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteFunctionCommand = async ( @@ -6704,65 +5352,34 @@ const deserializeAws_restXmlDeleteFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "FunctionInUse": case "com.amazonaws.cloudfront#FunctionInUse": - response = { - ...(await deserializeAws_restXmlFunctionInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFunctionInUseResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFunctionExists": case "com.amazonaws.cloudfront#NoSuchFunctionExists": - response = { - ...(await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteKeyGroupCommand = async ( @@ -6787,57 +5404,31 @@ const deserializeAws_restXmlDeleteKeyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.cloudfront#ResourceInUse": - response = { - ...(await deserializeAws_restXmlResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteMonitoringSubscriptionCommand = async ( @@ -6862,49 +5453,28 @@ const deserializeAws_restXmlDeleteMonitoringSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteOriginRequestPolicyCommand = async ( @@ -6929,73 +5499,37 @@ const deserializeAws_restXmlDeleteOriginRequestPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalDelete": case "com.amazonaws.cloudfront#IllegalDelete": - response = { - ...(await deserializeAws_restXmlIllegalDeleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalDeleteResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); case "OriginRequestPolicyInUse": case "com.amazonaws.cloudfront#OriginRequestPolicyInUse": - response = { - ...(await deserializeAws_restXmlOriginRequestPolicyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlOriginRequestPolicyInUseResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeletePublicKeyCommand = async ( @@ -7020,65 +5554,34 @@ const deserializeAws_restXmlDeletePublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchPublicKey": case "com.amazonaws.cloudfront#NoSuchPublicKey": - response = { - ...(await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "PublicKeyInUse": case "com.amazonaws.cloudfront#PublicKeyInUse": - response = { - ...(await deserializeAws_restXmlPublicKeyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPublicKeyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteRealtimeLogConfigCommand = async ( @@ -7103,57 +5606,31 @@ const deserializeAws_restXmlDeleteRealtimeLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); case "RealtimeLogConfigInUse": case "com.amazonaws.cloudfront#RealtimeLogConfigInUse": - response = { - ...(await deserializeAws_restXmlRealtimeLogConfigInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlRealtimeLogConfigInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteResponseHeadersPolicyCommand = async ( @@ -7178,73 +5655,37 @@ const deserializeAws_restXmlDeleteResponseHeadersPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalDelete": case "com.amazonaws.cloudfront#IllegalDelete": - response = { - ...(await deserializeAws_restXmlIllegalDeleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalDeleteResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "ResponseHeadersPolicyInUse": case "com.amazonaws.cloudfront#ResponseHeadersPolicyInUse": - response = { - ...(await deserializeAws_restXmlResponseHeadersPolicyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlResponseHeadersPolicyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteStreamingDistributionCommand = async ( @@ -7269,65 +5710,34 @@ const deserializeAws_restXmlDeleteStreamingDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchStreamingDistribution": case "com.amazonaws.cloudfront#NoSuchStreamingDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "StreamingDistributionNotDisabled": case "com.amazonaws.cloudfront#StreamingDistributionNotDisabled": - response = { - ...(await deserializeAws_restXmlStreamingDistributionNotDisabledResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlStreamingDistributionNotDisabledResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDescribeFunctionCommand = async ( @@ -7358,41 +5768,25 @@ const deserializeAws_restXmlDescribeFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchFunctionExists": case "com.amazonaws.cloudfront#NoSuchFunctionExists": - response = { - ...(await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetCachePolicyCommand = async ( @@ -7423,41 +5817,25 @@ const deserializeAws_restXmlGetCachePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetCachePolicyConfigCommand = async ( @@ -7488,41 +5866,25 @@ const deserializeAws_restXmlGetCachePolicyConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetCloudFrontOriginAccessIdentityCommand = async ( @@ -7553,41 +5915,25 @@ const deserializeAws_restXmlGetCloudFrontOriginAccessIdentityCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchCloudFrontOriginAccessIdentity": case "com.amazonaws.cloudfront#NoSuchCloudFrontOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetCloudFrontOriginAccessIdentityConfigCommand = async ( @@ -7621,41 +5967,25 @@ const deserializeAws_restXmlGetCloudFrontOriginAccessIdentityConfigCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchCloudFrontOriginAccessIdentity": case "com.amazonaws.cloudfront#NoSuchCloudFrontOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetDistributionCommand = async ( @@ -7686,41 +6016,25 @@ const deserializeAws_restXmlGetDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetDistributionConfigCommand = async ( @@ -7751,41 +6065,25 @@ const deserializeAws_restXmlGetDistributionConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetFieldLevelEncryptionCommand = async ( @@ -7816,41 +6114,25 @@ const deserializeAws_restXmlGetFieldLevelEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetFieldLevelEncryptionConfigCommand = async ( @@ -7881,41 +6163,25 @@ const deserializeAws_restXmlGetFieldLevelEncryptionConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetFieldLevelEncryptionProfileCommand = async ( @@ -7946,41 +6212,25 @@ const deserializeAws_restXmlGetFieldLevelEncryptionProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionProfile": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionProfile": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetFieldLevelEncryptionProfileConfigCommand = async ( @@ -8011,41 +6261,25 @@ const deserializeAws_restXmlGetFieldLevelEncryptionProfileConfigCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionProfile": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionProfile": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetFunctionCommand = async ( @@ -8080,41 +6314,25 @@ const deserializeAws_restXmlGetFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchFunctionExists": case "com.amazonaws.cloudfront#NoSuchFunctionExists": - response = { - ...(await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetInvalidationCommand = async ( @@ -8141,49 +6359,28 @@ const deserializeAws_restXmlGetInvalidationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "NoSuchInvalidation": case "com.amazonaws.cloudfront#NoSuchInvalidation": - response = { - ...(await deserializeAws_restXmlNoSuchInvalidationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchInvalidationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetKeyGroupCommand = async ( @@ -8214,33 +6411,22 @@ const deserializeAws_restXmlGetKeyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetKeyGroupConfigCommand = async ( @@ -8271,33 +6457,22 @@ const deserializeAws_restXmlGetKeyGroupConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetMonitoringSubscriptionCommand = async ( @@ -8324,49 +6499,28 @@ const deserializeAws_restXmlGetMonitoringSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetOriginRequestPolicyCommand = async ( @@ -8397,41 +6551,25 @@ const deserializeAws_restXmlGetOriginRequestPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetOriginRequestPolicyConfigCommand = async ( @@ -8462,41 +6600,25 @@ const deserializeAws_restXmlGetOriginRequestPolicyConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetPublicKeyCommand = async ( @@ -8527,41 +6649,25 @@ const deserializeAws_restXmlGetPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchPublicKey": case "com.amazonaws.cloudfront#NoSuchPublicKey": - response = { - ...(await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetPublicKeyConfigCommand = async ( @@ -8592,41 +6698,25 @@ const deserializeAws_restXmlGetPublicKeyConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchPublicKey": case "com.amazonaws.cloudfront#NoSuchPublicKey": - response = { - ...(await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetRealtimeLogConfigCommand = async ( @@ -8655,49 +6745,28 @@ const deserializeAws_restXmlGetRealtimeLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetResponseHeadersPolicyCommand = async ( @@ -8728,41 +6797,25 @@ const deserializeAws_restXmlGetResponseHeadersPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetResponseHeadersPolicyConfigCommand = async ( @@ -8793,41 +6846,25 @@ const deserializeAws_restXmlGetResponseHeadersPolicyConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetStreamingDistributionCommand = async ( @@ -8858,41 +6895,25 @@ const deserializeAws_restXmlGetStreamingDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchStreamingDistribution": case "com.amazonaws.cloudfront#NoSuchStreamingDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetStreamingDistributionConfigCommand = async ( @@ -8923,41 +6944,25 @@ const deserializeAws_restXmlGetStreamingDistributionConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "NoSuchStreamingDistribution": case "com.amazonaws.cloudfront#NoSuchStreamingDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListCachePoliciesCommand = async ( @@ -8984,49 +6989,28 @@ const deserializeAws_restXmlListCachePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListCloudFrontOriginAccessIdentitiesCommand = async ( @@ -9053,33 +7037,22 @@ const deserializeAws_restXmlListCloudFrontOriginAccessIdentitiesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListConflictingAliasesCommand = async ( @@ -9106,41 +7079,25 @@ const deserializeAws_restXmlListConflictingAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsCommand = async ( @@ -9167,33 +7124,22 @@ const deserializeAws_restXmlListDistributionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsByCachePolicyIdCommand = async ( @@ -9220,49 +7166,28 @@ const deserializeAws_restXmlListDistributionsByCachePolicyIdCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsByKeyGroupCommand = async ( @@ -9289,41 +7214,25 @@ const deserializeAws_restXmlListDistributionsByKeyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsByOriginRequestPolicyIdCommand = async ( @@ -9350,49 +7259,28 @@ const deserializeAws_restXmlListDistributionsByOriginRequestPolicyIdCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsByRealtimeLogConfigCommand = async ( @@ -9419,33 +7307,22 @@ const deserializeAws_restXmlListDistributionsByRealtimeLogConfigCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsByResponseHeadersPolicyIdCommand = async ( @@ -9472,49 +7349,28 @@ const deserializeAws_restXmlListDistributionsByResponseHeadersPolicyIdCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListDistributionsByWebACLIdCommand = async ( @@ -9541,41 +7397,25 @@ const deserializeAws_restXmlListDistributionsByWebACLIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidWebACLId": case "com.amazonaws.cloudfront#InvalidWebACLId": - response = { - ...(await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListFieldLevelEncryptionConfigsCommand = async ( @@ -9602,33 +7442,22 @@ const deserializeAws_restXmlListFieldLevelEncryptionConfigsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListFieldLevelEncryptionProfilesCommand = async ( @@ -9655,33 +7484,22 @@ const deserializeAws_restXmlListFieldLevelEncryptionProfilesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListFunctionsCommand = async ( @@ -9708,41 +7526,25 @@ const deserializeAws_restXmlListFunctionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListInvalidationsCommand = async ( @@ -9769,49 +7571,28 @@ const deserializeAws_restXmlListInvalidationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListKeyGroupsCommand = async ( @@ -9838,33 +7619,22 @@ const deserializeAws_restXmlListKeyGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListOriginRequestPoliciesCommand = async ( @@ -9891,49 +7661,28 @@ const deserializeAws_restXmlListOriginRequestPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListPublicKeysCommand = async ( @@ -9960,33 +7709,22 @@ const deserializeAws_restXmlListPublicKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListRealtimeLogConfigsCommand = async ( @@ -10013,49 +7751,28 @@ const deserializeAws_restXmlListRealtimeLogConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListResponseHeadersPoliciesCommand = async ( @@ -10082,49 +7799,28 @@ const deserializeAws_restXmlListResponseHeadersPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListStreamingDistributionsCommand = async ( @@ -10151,33 +7847,22 @@ const deserializeAws_restXmlListStreamingDistributionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTagsForResourceCommand = async ( @@ -10204,57 +7889,31 @@ const deserializeAws_restXmlListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidTagging": case "com.amazonaws.cloudfront#InvalidTagging": - response = { - ...(await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context); case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPublishFunctionCommand = async ( @@ -10281,65 +7940,34 @@ const deserializeAws_restXmlPublishFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFunctionExists": case "com.amazonaws.cloudfront#NoSuchFunctionExists": - response = { - ...(await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlTagResourceCommand = async ( @@ -10364,57 +7992,31 @@ const deserializeAws_restXmlTagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidTagging": case "com.amazonaws.cloudfront#InvalidTagging": - response = { - ...(await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context); case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlTestFunctionCommand = async ( @@ -10441,65 +8043,34 @@ const deserializeAws_restXmlTestFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFunctionExists": case "com.amazonaws.cloudfront#NoSuchFunctionExists": - response = { - ...(await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context); case "TestFunctionFailed": case "com.amazonaws.cloudfront#TestFunctionFailed": - response = { - ...(await deserializeAws_restXmlTestFunctionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTestFunctionFailedResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUntagResourceCommand = async ( @@ -10524,57 +8095,31 @@ const deserializeAws_restXmlUntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidTagging": case "com.amazonaws.cloudfront#InvalidTagging": - response = { - ...(await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTaggingResponse(parsedOutput, context); case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateCachePolicyCommand = async ( @@ -10605,113 +8150,52 @@ const deserializeAws_restXmlUpdateCachePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CachePolicyAlreadyExists": case "com.amazonaws.cloudfront#CachePolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlCachePolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCachePolicyAlreadyExistsResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "TooManyCookiesInCachePolicy": case "com.amazonaws.cloudfront#TooManyCookiesInCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyCookiesInCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookiesInCachePolicyResponse(parsedOutput, context); case "TooManyHeadersInCachePolicy": case "com.amazonaws.cloudfront#TooManyHeadersInCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInCachePolicyResponse(parsedOutput, context); case "TooManyQueryStringsInCachePolicy": case "com.amazonaws.cloudfront#TooManyQueryStringsInCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringsInCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringsInCachePolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateCloudFrontOriginAccessIdentityCommand = async ( @@ -10742,89 +8226,43 @@ const deserializeAws_restXmlUpdateCloudFrontOriginAccessIdentityCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "NoSuchCloudFrontOriginAccessIdentity": case "com.amazonaws.cloudfront#NoSuchCloudFrontOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateDistributionCommand = async ( @@ -10855,509 +8293,208 @@ const deserializeAws_restXmlUpdateDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CNAMEAlreadyExists": case "com.amazonaws.cloudfront#CNAMEAlreadyExists": - response = { - ...(await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context); case "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior": case "com.amazonaws.cloudfront#IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior": - response = { - ...(await deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse( + parsedOutput, + context + ); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidDefaultRootObject": case "com.amazonaws.cloudfront#InvalidDefaultRootObject": - response = { - ...(await deserializeAws_restXmlInvalidDefaultRootObjectResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidDefaultRootObjectResponse(parsedOutput, context); case "InvalidErrorCode": case "com.amazonaws.cloudfront#InvalidErrorCode": - response = { - ...(await deserializeAws_restXmlInvalidErrorCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidErrorCodeResponse(parsedOutput, context); case "InvalidForwardCookies": case "com.amazonaws.cloudfront#InvalidForwardCookies": - response = { - ...(await deserializeAws_restXmlInvalidForwardCookiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidForwardCookiesResponse(parsedOutput, context); case "InvalidFunctionAssociation": case "com.amazonaws.cloudfront#InvalidFunctionAssociation": - response = { - ...(await deserializeAws_restXmlInvalidFunctionAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidFunctionAssociationResponse(parsedOutput, context); case "InvalidGeoRestrictionParameter": case "com.amazonaws.cloudfront#InvalidGeoRestrictionParameter": - response = { - ...(await deserializeAws_restXmlInvalidGeoRestrictionParameterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidGeoRestrictionParameterResponse(parsedOutput, context); case "InvalidHeadersForS3Origin": case "com.amazonaws.cloudfront#InvalidHeadersForS3Origin": - response = { - ...(await deserializeAws_restXmlInvalidHeadersForS3OriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidHeadersForS3OriginResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "InvalidLambdaFunctionAssociation": case "com.amazonaws.cloudfront#InvalidLambdaFunctionAssociation": - response = { - ...(await deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse(parsedOutput, context); case "InvalidLocationCode": case "com.amazonaws.cloudfront#InvalidLocationCode": - response = { - ...(await deserializeAws_restXmlInvalidLocationCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidLocationCodeResponse(parsedOutput, context); case "InvalidMinimumProtocolVersion": case "com.amazonaws.cloudfront#InvalidMinimumProtocolVersion": - response = { - ...(await deserializeAws_restXmlInvalidMinimumProtocolVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidMinimumProtocolVersionResponse(parsedOutput, context); case "InvalidOriginAccessIdentity": case "com.amazonaws.cloudfront#InvalidOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context); case "InvalidOriginKeepaliveTimeout": case "com.amazonaws.cloudfront#InvalidOriginKeepaliveTimeout": - response = { - ...(await deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse(parsedOutput, context); case "InvalidOriginReadTimeout": case "com.amazonaws.cloudfront#InvalidOriginReadTimeout": - response = { - ...(await deserializeAws_restXmlInvalidOriginReadTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginReadTimeoutResponse(parsedOutput, context); case "InvalidQueryStringParameters": case "com.amazonaws.cloudfront#InvalidQueryStringParameters": - response = { - ...(await deserializeAws_restXmlInvalidQueryStringParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidQueryStringParametersResponse(parsedOutput, context); case "InvalidRelativePath": case "com.amazonaws.cloudfront#InvalidRelativePath": - response = { - ...(await deserializeAws_restXmlInvalidRelativePathResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRelativePathResponse(parsedOutput, context); case "InvalidRequiredProtocol": case "com.amazonaws.cloudfront#InvalidRequiredProtocol": - response = { - ...(await deserializeAws_restXmlInvalidRequiredProtocolResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRequiredProtocolResponse(parsedOutput, context); case "InvalidResponseCode": case "com.amazonaws.cloudfront#InvalidResponseCode": - response = { - ...(await deserializeAws_restXmlInvalidResponseCodeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidResponseCodeResponse(parsedOutput, context); case "InvalidTTLOrder": case "com.amazonaws.cloudfront#InvalidTTLOrder": - response = { - ...(await deserializeAws_restXmlInvalidTTLOrderResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTTLOrderResponse(parsedOutput, context); case "InvalidViewerCertificate": case "com.amazonaws.cloudfront#InvalidViewerCertificate": - response = { - ...(await deserializeAws_restXmlInvalidViewerCertificateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidViewerCertificateResponse(parsedOutput, context); case "InvalidWebACLId": case "com.amazonaws.cloudfront#InvalidWebACLId": - response = { - ...(await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidWebACLIdResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "NoSuchCachePolicy": case "com.amazonaws.cloudfront#NoSuchCachePolicy": - response = { - ...(await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCachePolicyResponse(parsedOutput, context); case "NoSuchDistribution": case "com.amazonaws.cloudfront#NoSuchDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDistributionResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); case "NoSuchOrigin": case "com.amazonaws.cloudfront#NoSuchOrigin": - response = { - ...(await deserializeAws_restXmlNoSuchOriginResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "RealtimeLogConfigOwnerMismatch": case "com.amazonaws.cloudfront#RealtimeLogConfigOwnerMismatch": - response = { - ...(await deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse(parsedOutput, context); case "TooManyCacheBehaviors": case "com.amazonaws.cloudfront#TooManyCacheBehaviors": - response = { - ...(await deserializeAws_restXmlTooManyCacheBehaviorsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCacheBehaviorsResponse(parsedOutput, context); case "TooManyCertificates": case "com.amazonaws.cloudfront#TooManyCertificates": - response = { - ...(await deserializeAws_restXmlTooManyCertificatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCertificatesResponse(parsedOutput, context); case "TooManyCookieNamesInWhiteList": case "com.amazonaws.cloudfront#TooManyCookieNamesInWhiteList": - response = { - ...(await deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse(parsedOutput, context); case "TooManyDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionCNAMEsResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToCachePolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToCachePolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse( + parsedOutput, + context + ); case "TooManyDistributionsAssociatedToKeyGroup": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToKeyGroup": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse(parsedOutput, context); case "TooManyDistributionsAssociatedToOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse( + parsedOutput, + context + ); case "TooManyDistributionsAssociatedToResponseHeadersPolicy": case "com.amazonaws.cloudfront#TooManyDistributionsAssociatedToResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse( + parsedOutput, + context + ); case "TooManyDistributionsWithFunctionAssociations": case "com.amazonaws.cloudfront#TooManyDistributionsWithFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse(parsedOutput, context); case "TooManyDistributionsWithLambdaAssociations": case "com.amazonaws.cloudfront#TooManyDistributionsWithLambdaAssociations": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse(parsedOutput, context); case "TooManyDistributionsWithSingleFunctionARN": case "com.amazonaws.cloudfront#TooManyDistributionsWithSingleFunctionARN": - response = { - ...(await deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse(parsedOutput, context); case "TooManyFunctionAssociations": case "com.amazonaws.cloudfront#TooManyFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFunctionAssociationsResponse(parsedOutput, context); case "TooManyHeadersInForwardedValues": case "com.amazonaws.cloudfront#TooManyHeadersInForwardedValues": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse(parsedOutput, context); case "TooManyKeyGroupsAssociatedToDistribution": case "com.amazonaws.cloudfront#TooManyKeyGroupsAssociatedToDistribution": - response = { - ...(await deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse(parsedOutput, context); case "TooManyLambdaFunctionAssociations": case "com.amazonaws.cloudfront#TooManyLambdaFunctionAssociations": - response = { - ...(await deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse(parsedOutput, context); case "TooManyOriginCustomHeaders": case "com.amazonaws.cloudfront#TooManyOriginCustomHeaders": - response = { - ...(await deserializeAws_restXmlTooManyOriginCustomHeadersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginCustomHeadersResponse(parsedOutput, context); case "TooManyOriginGroupsPerDistribution": case "com.amazonaws.cloudfront#TooManyOriginGroupsPerDistribution": - response = { - ...(await deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse(parsedOutput, context); case "TooManyOrigins": case "com.amazonaws.cloudfront#TooManyOrigins": - response = { - ...(await deserializeAws_restXmlTooManyOriginsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyOriginsResponse(parsedOutput, context); case "TooManyQueryStringParameters": case "com.amazonaws.cloudfront#TooManyQueryStringParameters": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringParametersResponse(parsedOutput, context); case "TooManyTrustedSigners": case "com.amazonaws.cloudfront#TooManyTrustedSigners": - response = { - ...(await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context); case "TrustedKeyGroupDoesNotExist": case "com.amazonaws.cloudfront#TrustedKeyGroupDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse(parsedOutput, context); case "TrustedSignerDoesNotExist": case "com.amazonaws.cloudfront#TrustedSignerDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateFieldLevelEncryptionConfigCommand = async ( @@ -11388,113 +8525,52 @@ const deserializeAws_restXmlUpdateFieldLevelEncryptionConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionConfig": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionConfig": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionProfile": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionProfile": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "QueryArgProfileEmpty": case "com.amazonaws.cloudfront#QueryArgProfileEmpty": - response = { - ...(await deserializeAws_restXmlQueryArgProfileEmptyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlQueryArgProfileEmptyResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionContentTypeProfiles": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionContentTypeProfiles": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionContentTypeProfilesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionContentTypeProfilesResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionQueryArgProfiles": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionQueryArgProfiles": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionQueryArgProfilesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionQueryArgProfilesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateFieldLevelEncryptionProfileCommand = async ( @@ -11525,121 +8601,55 @@ const deserializeAws_restXmlUpdateFieldLevelEncryptionProfileCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "FieldLevelEncryptionProfileAlreadyExists": case "com.amazonaws.cloudfront#FieldLevelEncryptionProfileAlreadyExists": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionProfileAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionProfileAlreadyExistsResponse(parsedOutput, context); case "FieldLevelEncryptionProfileSizeExceeded": case "com.amazonaws.cloudfront#FieldLevelEncryptionProfileSizeExceeded": - response = { - ...(await deserializeAws_restXmlFieldLevelEncryptionProfileSizeExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFieldLevelEncryptionProfileSizeExceededResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFieldLevelEncryptionProfile": case "com.amazonaws.cloudfront#NoSuchFieldLevelEncryptionProfile": - response = { - ...(await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse(parsedOutput, context); case "NoSuchPublicKey": case "com.amazonaws.cloudfront#NoSuchPublicKey": - response = { - ...(await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionEncryptionEntities": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionEncryptionEntities": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionEncryptionEntitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionEncryptionEntitiesResponse(parsedOutput, context); case "TooManyFieldLevelEncryptionFieldPatterns": case "com.amazonaws.cloudfront#TooManyFieldLevelEncryptionFieldPatterns": - response = { - ...(await deserializeAws_restXmlTooManyFieldLevelEncryptionFieldPatternsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyFieldLevelEncryptionFieldPatternsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateFunctionCommand = async ( @@ -11670,73 +8680,37 @@ const deserializeAws_restXmlUpdateFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "FunctionSizeLimitExceeded": case "com.amazonaws.cloudfront#FunctionSizeLimitExceeded": - response = { - ...(await deserializeAws_restXmlFunctionSizeLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlFunctionSizeLimitExceededResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchFunctionExists": case "com.amazonaws.cloudfront#NoSuchFunctionExists": - response = { - ...(await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchFunctionExistsResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.cloudfront#UnsupportedOperation": - response = { - ...(await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateKeyGroupCommand = async ( @@ -11767,73 +8741,37 @@ const deserializeAws_restXmlUpdateKeyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "KeyGroupAlreadyExists": case "com.amazonaws.cloudfront#KeyGroupAlreadyExists": - response = { - ...(await deserializeAws_restXmlKeyGroupAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeyGroupAlreadyExistsResponse(parsedOutput, context); case "NoSuchResource": case "com.amazonaws.cloudfront#NoSuchResource": - response = { - ...(await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResourceResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "TooManyPublicKeysInKeyGroup": case "com.amazonaws.cloudfront#TooManyPublicKeysInKeyGroup": - response = { - ...(await deserializeAws_restXmlTooManyPublicKeysInKeyGroupResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyPublicKeysInKeyGroupResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateOriginRequestPolicyCommand = async ( @@ -11864,113 +8802,52 @@ const deserializeAws_restXmlUpdateOriginRequestPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchOriginRequestPolicy": case "com.amazonaws.cloudfront#NoSuchOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchOriginRequestPolicyResponse(parsedOutput, context); case "OriginRequestPolicyAlreadyExists": case "com.amazonaws.cloudfront#OriginRequestPolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlOriginRequestPolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlOriginRequestPolicyAlreadyExistsResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "TooManyCookiesInOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyCookiesInOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyCookiesInOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCookiesInOriginRequestPolicyResponse(parsedOutput, context); case "TooManyHeadersInOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyHeadersInOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyHeadersInOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHeadersInOriginRequestPolicyResponse(parsedOutput, context); case "TooManyQueryStringsInOriginRequestPolicy": case "com.amazonaws.cloudfront#TooManyQueryStringsInOriginRequestPolicy": - response = { - ...(await deserializeAws_restXmlTooManyQueryStringsInOriginRequestPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyQueryStringsInOriginRequestPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdatePublicKeyCommand = async ( @@ -12001,81 +8878,40 @@ const deserializeAws_restXmlUpdatePublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CannotChangeImmutablePublicKeyFields": case "com.amazonaws.cloudfront#CannotChangeImmutablePublicKeyFields": - response = { - ...(await deserializeAws_restXmlCannotChangeImmutablePublicKeyFieldsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCannotChangeImmutablePublicKeyFieldsResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchPublicKey": case "com.amazonaws.cloudfront#NoSuchPublicKey": - response = { - ...(await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicKeyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateRealtimeLogConfigCommand = async ( @@ -12104,49 +8940,28 @@ const deserializeAws_restXmlUpdateRealtimeLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "NoSuchRealtimeLogConfig": case "com.amazonaws.cloudfront#NoSuchRealtimeLogConfig": - response = { - ...(await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchRealtimeLogConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateResponseHeadersPolicyCommand = async ( @@ -12177,97 +8992,46 @@ const deserializeAws_restXmlUpdateResponseHeadersPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "NoSuchResponseHeadersPolicy": case "com.amazonaws.cloudfront#NoSuchResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "ResponseHeadersPolicyAlreadyExists": case "com.amazonaws.cloudfront#ResponseHeadersPolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlResponseHeadersPolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlResponseHeadersPolicyAlreadyExistsResponse(parsedOutput, context); case "TooManyCustomHeadersInResponseHeadersPolicy": case "com.amazonaws.cloudfront#TooManyCustomHeadersInResponseHeadersPolicy": - response = { - ...(await deserializeAws_restXmlTooManyCustomHeadersInResponseHeadersPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyCustomHeadersInResponseHeadersPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateStreamingDistributionCommand = async ( @@ -12298,2288 +9062,2090 @@ const deserializeAws_restXmlUpdateStreamingDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDenied": case "com.amazonaws.cloudfront#AccessDenied": - response = { - ...(await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlAccessDeniedResponse(parsedOutput, context); case "CNAMEAlreadyExists": case "com.amazonaws.cloudfront#CNAMEAlreadyExists": - response = { - ...(await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlCNAMEAlreadyExistsResponse(parsedOutput, context); case "IllegalUpdate": case "com.amazonaws.cloudfront#IllegalUpdate": - response = { - ...(await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIllegalUpdateResponse(parsedOutput, context); case "InconsistentQuantities": case "com.amazonaws.cloudfront#InconsistentQuantities": - response = { - ...(await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInconsistentQuantitiesResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.cloudfront#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidIfMatchVersion": case "com.amazonaws.cloudfront#InvalidIfMatchVersion": - response = { - ...(await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidIfMatchVersionResponse(parsedOutput, context); case "InvalidOriginAccessIdentity": case "com.amazonaws.cloudfront#InvalidOriginAccessIdentity": - response = { - ...(await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidOriginAccessIdentityResponse(parsedOutput, context); case "MissingBody": case "com.amazonaws.cloudfront#MissingBody": - response = { - ...(await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlMissingBodyResponse(parsedOutput, context); case "NoSuchStreamingDistribution": case "com.amazonaws.cloudfront#NoSuchStreamingDistribution": - response = { - ...(await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchStreamingDistributionResponse(parsedOutput, context); case "PreconditionFailed": case "com.amazonaws.cloudfront#PreconditionFailed": - response = { - ...(await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPreconditionFailedResponse(parsedOutput, context); case "TooManyStreamingDistributionCNAMEs": case "com.amazonaws.cloudfront#TooManyStreamingDistributionCNAMEs": - response = { - ...(await deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse(parsedOutput, context); case "TooManyTrustedSigners": case "com.amazonaws.cloudfront#TooManyTrustedSigners": - response = { - ...(await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrustedSignersResponse(parsedOutput, context); case "TrustedSignerDoesNotExist": case "com.amazonaws.cloudfront#TrustedSignerDoesNotExist": - response = { - ...(await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrustedSignerDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restXmlAccessDeniedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDenied = { - name: "AccessDenied", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new AccessDenied({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlBatchTooLargeResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BatchTooLarge = { - name: "BatchTooLarge", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new BatchTooLarge({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlCachePolicyAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CachePolicyAlreadyExists = { - name: "CachePolicyAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new CachePolicyAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlCachePolicyInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CachePolicyInUse = { - name: "CachePolicyInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new CachePolicyInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlCannotChangeImmutablePublicKeyFieldsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CannotChangeImmutablePublicKeyFields = { - name: "CannotChangeImmutablePublicKeyFields", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new CannotChangeImmutablePublicKeyFields({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlCloudFrontOriginAccessIdentityAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CloudFrontOriginAccessIdentityAlreadyExists = { - name: "CloudFrontOriginAccessIdentityAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new CloudFrontOriginAccessIdentityAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlCloudFrontOriginAccessIdentityInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CloudFrontOriginAccessIdentityInUse = { - name: "CloudFrontOriginAccessIdentityInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new CloudFrontOriginAccessIdentityInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlCNAMEAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CNAMEAlreadyExists = { - name: "CNAMEAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new CNAMEAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDistributionAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DistributionAlreadyExists = { - name: "DistributionAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new DistributionAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDistributionNotDisabledResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DistributionNotDisabled = { - name: "DistributionNotDisabled", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new DistributionNotDisabled({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFieldLevelEncryptionConfigAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FieldLevelEncryptionConfigAlreadyExists = { - name: "FieldLevelEncryptionConfigAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FieldLevelEncryptionConfigAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFieldLevelEncryptionConfigInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FieldLevelEncryptionConfigInUse = { - name: "FieldLevelEncryptionConfigInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FieldLevelEncryptionConfigInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFieldLevelEncryptionProfileAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FieldLevelEncryptionProfileAlreadyExists = { - name: "FieldLevelEncryptionProfileAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FieldLevelEncryptionProfileAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFieldLevelEncryptionProfileInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FieldLevelEncryptionProfileInUse = { - name: "FieldLevelEncryptionProfileInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FieldLevelEncryptionProfileInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFieldLevelEncryptionProfileSizeExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FieldLevelEncryptionProfileSizeExceeded = { - name: "FieldLevelEncryptionProfileSizeExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FieldLevelEncryptionProfileSizeExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFunctionAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FunctionAlreadyExists = { - name: "FunctionAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FunctionAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFunctionInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FunctionInUse = { - name: "FunctionInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FunctionInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlFunctionSizeLimitExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FunctionSizeLimitExceeded = { - name: "FunctionSizeLimitExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new FunctionSizeLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlIllegalDeleteResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IllegalDelete = { - name: "IllegalDelete", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new IllegalDelete({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlIllegalFieldLevelEncryptionConfigAssociationWithCacheBehaviorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior = { - name: "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlIllegalUpdateResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IllegalUpdate = { - name: "IllegalUpdate", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new IllegalUpdate({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInconsistentQuantitiesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InconsistentQuantities = { - name: "InconsistentQuantities", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InconsistentQuantities({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidArgumentResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgument = { - name: "InvalidArgument", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidArgument({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidDefaultRootObjectResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidDefaultRootObject = { - name: "InvalidDefaultRootObject", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidDefaultRootObject({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidErrorCodeResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidErrorCode = { - name: "InvalidErrorCode", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidErrorCode({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidForwardCookiesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidForwardCookies = { - name: "InvalidForwardCookies", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidForwardCookies({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidFunctionAssociationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidFunctionAssociation = { - name: "InvalidFunctionAssociation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidFunctionAssociation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidGeoRestrictionParameterResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidGeoRestrictionParameter = { - name: "InvalidGeoRestrictionParameter", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidGeoRestrictionParameter({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidHeadersForS3OriginResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidHeadersForS3Origin = { - name: "InvalidHeadersForS3Origin", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidHeadersForS3Origin({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidIfMatchVersionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidIfMatchVersion = { - name: "InvalidIfMatchVersion", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidIfMatchVersion({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidLambdaFunctionAssociationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidLambdaFunctionAssociation = { - name: "InvalidLambdaFunctionAssociation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidLambdaFunctionAssociation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidLocationCodeResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidLocationCode = { - name: "InvalidLocationCode", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidLocationCode({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidMinimumProtocolVersionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidMinimumProtocolVersion = { - name: "InvalidMinimumProtocolVersion", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidMinimumProtocolVersion({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidOriginResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidOrigin = { - name: "InvalidOrigin", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidOrigin({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidOriginAccessIdentityResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidOriginAccessIdentity = { - name: "InvalidOriginAccessIdentity", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidOriginAccessIdentity({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidOriginKeepaliveTimeoutResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidOriginKeepaliveTimeout = { - name: "InvalidOriginKeepaliveTimeout", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidOriginKeepaliveTimeout({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidOriginReadTimeoutResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidOriginReadTimeout = { - name: "InvalidOriginReadTimeout", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidOriginReadTimeout({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidProtocolSettingsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidProtocolSettings = { - name: "InvalidProtocolSettings", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidProtocolSettings({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidQueryStringParametersResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidQueryStringParameters = { - name: "InvalidQueryStringParameters", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidQueryStringParameters({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidRelativePathResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRelativePath = { - name: "InvalidRelativePath", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidRelativePath({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidRequiredProtocolResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequiredProtocol = { - name: "InvalidRequiredProtocol", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidRequiredProtocol({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidResponseCodeResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidResponseCode = { - name: "InvalidResponseCode", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidResponseCode({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidTaggingResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTagging = { - name: "InvalidTagging", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidTagging({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidTTLOrderResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTTLOrder = { - name: "InvalidTTLOrder", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidTTLOrder({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidViewerCertificateResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidViewerCertificate = { - name: "InvalidViewerCertificate", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidViewerCertificate({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidWebACLIdResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidWebACLId = { - name: "InvalidWebACLId", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidWebACLId({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlKeyGroupAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KeyGroupAlreadyExists = { - name: "KeyGroupAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new KeyGroupAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlMissingBodyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MissingBody = { - name: "MissingBody", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new MissingBody({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchCachePolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchCachePolicy = { - name: "NoSuchCachePolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchCachePolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchCloudFrontOriginAccessIdentityResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchCloudFrontOriginAccessIdentity = { - name: "NoSuchCloudFrontOriginAccessIdentity", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchCloudFrontOriginAccessIdentity({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchDistributionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchDistribution = { - name: "NoSuchDistribution", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchDistribution({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchFieldLevelEncryptionConfigResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchFieldLevelEncryptionConfig = { - name: "NoSuchFieldLevelEncryptionConfig", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchFieldLevelEncryptionConfig({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchFieldLevelEncryptionProfileResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchFieldLevelEncryptionProfile = { - name: "NoSuchFieldLevelEncryptionProfile", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchFieldLevelEncryptionProfile({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchFunctionExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchFunctionExists = { - name: "NoSuchFunctionExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchFunctionExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchInvalidationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchInvalidation = { - name: "NoSuchInvalidation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchInvalidation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchOriginResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchOrigin = { - name: "NoSuchOrigin", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchOrigin({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchOriginRequestPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchOriginRequestPolicy = { - name: "NoSuchOriginRequestPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchOriginRequestPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchPublicKeyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchPublicKey = { - name: "NoSuchPublicKey", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchPublicKey({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchRealtimeLogConfigResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchRealtimeLogConfig = { - name: "NoSuchRealtimeLogConfig", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchRealtimeLogConfig({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchResourceResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchResource = { - name: "NoSuchResource", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchResource({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchResponseHeadersPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchResponseHeadersPolicy = { - name: "NoSuchResponseHeadersPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchResponseHeadersPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchStreamingDistributionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchStreamingDistribution = { - name: "NoSuchStreamingDistribution", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchStreamingDistribution({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlOriginRequestPolicyAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: OriginRequestPolicyAlreadyExists = { - name: "OriginRequestPolicyAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new OriginRequestPolicyAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlOriginRequestPolicyInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: OriginRequestPolicyInUse = { - name: "OriginRequestPolicyInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new OriginRequestPolicyInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlPreconditionFailedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailed = { - name: "PreconditionFailed", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new PreconditionFailed({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlPublicKeyAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PublicKeyAlreadyExists = { - name: "PublicKeyAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new PublicKeyAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlPublicKeyInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PublicKeyInUse = { - name: "PublicKeyInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new PublicKeyInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlQueryArgProfileEmptyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: QueryArgProfileEmpty = { - name: "QueryArgProfileEmpty", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new QueryArgProfileEmpty({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlRealtimeLogConfigAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RealtimeLogConfigAlreadyExists = { - name: "RealtimeLogConfigAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new RealtimeLogConfigAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlRealtimeLogConfigInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RealtimeLogConfigInUse = { - name: "RealtimeLogConfigInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new RealtimeLogConfigInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlRealtimeLogConfigOwnerMismatchResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RealtimeLogConfigOwnerMismatch = { - name: "RealtimeLogConfigOwnerMismatch", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new RealtimeLogConfigOwnerMismatch({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlResourceInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUse = { - name: "ResourceInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new ResourceInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlResponseHeadersPolicyAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResponseHeadersPolicyAlreadyExists = { - name: "ResponseHeadersPolicyAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new ResponseHeadersPolicyAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlResponseHeadersPolicyInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResponseHeadersPolicyInUse = { - name: "ResponseHeadersPolicyInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new ResponseHeadersPolicyInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlStreamingDistributionAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StreamingDistributionAlreadyExists = { - name: "StreamingDistributionAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new StreamingDistributionAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlStreamingDistributionNotDisabledResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StreamingDistributionNotDisabled = { - name: "StreamingDistributionNotDisabled", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new StreamingDistributionNotDisabled({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTestFunctionFailedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TestFunctionFailed = { - name: "TestFunctionFailed", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TestFunctionFailed({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCacheBehaviorsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCacheBehaviors = { - name: "TooManyCacheBehaviors", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCacheBehaviors({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCachePoliciesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCachePolicies = { - name: "TooManyCachePolicies", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCachePolicies({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCertificatesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCertificates = { - name: "TooManyCertificates", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCertificates({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCloudFrontOriginAccessIdentitiesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCloudFrontOriginAccessIdentities = { - name: "TooManyCloudFrontOriginAccessIdentities", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCloudFrontOriginAccessIdentities({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCookieNamesInWhiteListResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCookieNamesInWhiteList = { - name: "TooManyCookieNamesInWhiteList", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCookieNamesInWhiteList({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCookiesInCachePolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCookiesInCachePolicy = { - name: "TooManyCookiesInCachePolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCookiesInCachePolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCookiesInOriginRequestPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCookiesInOriginRequestPolicy = { - name: "TooManyCookiesInOriginRequestPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCookiesInOriginRequestPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyCustomHeadersInResponseHeadersPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyCustomHeadersInResponseHeadersPolicy = { - name: "TooManyCustomHeadersInResponseHeadersPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyCustomHeadersInResponseHeadersPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionCNAMEsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionCNAMEs = { - name: "TooManyDistributionCNAMEs", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionCNAMEs({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributions = { - name: "TooManyDistributions", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributions({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsAssociatedToCachePolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsAssociatedToCachePolicy = { - name: "TooManyDistributionsAssociatedToCachePolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsAssociatedToCachePolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsAssociatedToFieldLevelEncryptionConfigResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsAssociatedToFieldLevelEncryptionConfig = { - name: "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsAssociatedToFieldLevelEncryptionConfig({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsAssociatedToKeyGroupResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsAssociatedToKeyGroup = { - name: "TooManyDistributionsAssociatedToKeyGroup", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsAssociatedToKeyGroup({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsAssociatedToOriginRequestPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsAssociatedToOriginRequestPolicy = { - name: "TooManyDistributionsAssociatedToOriginRequestPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsAssociatedToOriginRequestPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsAssociatedToResponseHeadersPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsAssociatedToResponseHeadersPolicy = { - name: "TooManyDistributionsAssociatedToResponseHeadersPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsAssociatedToResponseHeadersPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsWithFunctionAssociationsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsWithFunctionAssociations = { - name: "TooManyDistributionsWithFunctionAssociations", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsWithFunctionAssociations({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsWithLambdaAssociationsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsWithLambdaAssociations = { - name: "TooManyDistributionsWithLambdaAssociations", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsWithLambdaAssociations({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyDistributionsWithSingleFunctionARNResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyDistributionsWithSingleFunctionARN = { - name: "TooManyDistributionsWithSingleFunctionARN", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyDistributionsWithSingleFunctionARN({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFieldLevelEncryptionConfigsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFieldLevelEncryptionConfigs = { - name: "TooManyFieldLevelEncryptionConfigs", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFieldLevelEncryptionConfigs({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFieldLevelEncryptionContentTypeProfilesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFieldLevelEncryptionContentTypeProfiles = { - name: "TooManyFieldLevelEncryptionContentTypeProfiles", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFieldLevelEncryptionContentTypeProfiles({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFieldLevelEncryptionEncryptionEntitiesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFieldLevelEncryptionEncryptionEntities = { - name: "TooManyFieldLevelEncryptionEncryptionEntities", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFieldLevelEncryptionEncryptionEntities({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFieldLevelEncryptionFieldPatternsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFieldLevelEncryptionFieldPatterns = { - name: "TooManyFieldLevelEncryptionFieldPatterns", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFieldLevelEncryptionFieldPatterns({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFieldLevelEncryptionProfilesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFieldLevelEncryptionProfiles = { - name: "TooManyFieldLevelEncryptionProfiles", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFieldLevelEncryptionProfiles({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFieldLevelEncryptionQueryArgProfilesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFieldLevelEncryptionQueryArgProfiles = { - name: "TooManyFieldLevelEncryptionQueryArgProfiles", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFieldLevelEncryptionQueryArgProfiles({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFunctionAssociationsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFunctionAssociations = { - name: "TooManyFunctionAssociations", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFunctionAssociations({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyFunctionsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyFunctions = { - name: "TooManyFunctions", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyFunctions({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyHeadersInCachePolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyHeadersInCachePolicy = { - name: "TooManyHeadersInCachePolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyHeadersInCachePolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyHeadersInForwardedValuesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyHeadersInForwardedValues = { - name: "TooManyHeadersInForwardedValues", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyHeadersInForwardedValues({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyHeadersInOriginRequestPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyHeadersInOriginRequestPolicy = { - name: "TooManyHeadersInOriginRequestPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyHeadersInOriginRequestPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyInvalidationsInProgressResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyInvalidationsInProgress = { - name: "TooManyInvalidationsInProgress", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyInvalidationsInProgress({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyKeyGroupsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyKeyGroups = { - name: "TooManyKeyGroups", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyKeyGroups({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyKeyGroupsAssociatedToDistributionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyKeyGroupsAssociatedToDistribution = { - name: "TooManyKeyGroupsAssociatedToDistribution", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyKeyGroupsAssociatedToDistribution({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyLambdaFunctionAssociationsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyLambdaFunctionAssociations = { - name: "TooManyLambdaFunctionAssociations", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyLambdaFunctionAssociations({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyOriginCustomHeadersResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyOriginCustomHeaders = { - name: "TooManyOriginCustomHeaders", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyOriginCustomHeaders({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyOriginGroupsPerDistributionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyOriginGroupsPerDistribution = { - name: "TooManyOriginGroupsPerDistribution", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyOriginGroupsPerDistribution({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyOriginRequestPoliciesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyOriginRequestPolicies = { - name: "TooManyOriginRequestPolicies", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyOriginRequestPolicies({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyOriginsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyOrigins = { - name: "TooManyOrigins", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyOrigins({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyPublicKeysResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyPublicKeys = { - name: "TooManyPublicKeys", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyPublicKeys({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyPublicKeysInKeyGroupResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyPublicKeysInKeyGroup = { - name: "TooManyPublicKeysInKeyGroup", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyPublicKeysInKeyGroup({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyQueryStringParametersResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyQueryStringParameters = { - name: "TooManyQueryStringParameters", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyQueryStringParameters({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyQueryStringsInCachePolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyQueryStringsInCachePolicy = { - name: "TooManyQueryStringsInCachePolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyQueryStringsInCachePolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyQueryStringsInOriginRequestPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyQueryStringsInOriginRequestPolicy = { - name: "TooManyQueryStringsInOriginRequestPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyQueryStringsInOriginRequestPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyRealtimeLogConfigsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRealtimeLogConfigs = { - name: "TooManyRealtimeLogConfigs", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyRealtimeLogConfigs({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyResponseHeadersPoliciesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyResponseHeadersPolicies = { - name: "TooManyResponseHeadersPolicies", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyResponseHeadersPolicies({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyStreamingDistributionCNAMEsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyStreamingDistributionCNAMEs = { - name: "TooManyStreamingDistributionCNAMEs", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyStreamingDistributionCNAMEs({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyStreamingDistributionsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyStreamingDistributions = { - name: "TooManyStreamingDistributions", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyStreamingDistributions({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyTrustedSignersResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTrustedSigners = { - name: "TooManyTrustedSigners", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyTrustedSigners({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTrustedKeyGroupDoesNotExistResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TrustedKeyGroupDoesNotExist = { - name: "TrustedKeyGroupDoesNotExist", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TrustedKeyGroupDoesNotExist({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTrustedSignerDoesNotExistResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TrustedSignerDoesNotExist = { - name: "TrustedSignerDoesNotExist", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TrustedSignerDoesNotExist({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlUnsupportedOperationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedOperation = { - name: "UnsupportedOperation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new UnsupportedOperation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const serializeAws_restXmlAccessControlAllowHeadersList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-cloudhsm-v2/src/index.ts b/clients/client-cloudhsm-v2/src/index.ts index df352416a8c1f..1dab0d5c02009 100644 --- a/clients/client-cloudhsm-v2/src/index.ts +++ b/clients/client-cloudhsm-v2/src/index.ts @@ -3,3 +3,4 @@ export * from "./CloudHSMV2Client"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CloudHSMV2ServiceException } from "./models/CloudHSMV2ServiceException"; diff --git a/clients/client-cloudhsm-v2/src/models/CloudHSMV2ServiceException.ts b/clients/client-cloudhsm-v2/src/models/CloudHSMV2ServiceException.ts new file mode 100644 index 0000000000000..2edd295d58874 --- /dev/null +++ b/clients/client-cloudhsm-v2/src/models/CloudHSMV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudHSMV2 service. + */ +export class CloudHSMV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudHSMV2ServiceException.prototype); + } +} diff --git a/clients/client-cloudhsm-v2/src/models/models_0.ts b/clients/client-cloudhsm-v2/src/models/models_0.ts index 37ea64ed2252e..3758bcbdd74da 100644 --- a/clients/client-cloudhsm-v2/src/models/models_0.ts +++ b/clients/client-cloudhsm-v2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudHSMV2ServiceException as __BaseException } from "./CloudHSMV2ServiceException"; export enum BackupState { CREATE_IN_PROGRESS = "CREATE_IN_PROGRESS", @@ -146,57 +149,129 @@ export namespace BackupRetentionPolicy { *

The request was rejected because the requester does not have permission to perform the * requested operation.

*/ -export interface CloudHsmAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "CloudHsmAccessDeniedException"; - $fault: "client"; +export class CloudHsmAccessDeniedException extends __BaseException { + readonly name: "CloudHsmAccessDeniedException" = "CloudHsmAccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmAccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmAccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

The request was rejected because of an AWS CloudHSM internal failure. The request can * be retried.

*/ -export interface CloudHsmInternalFailureException extends __SmithyException, $MetadataBearer { - name: "CloudHsmInternalFailureException"; - $fault: "server"; +export class CloudHsmInternalFailureException extends __BaseException { + readonly name: "CloudHsmInternalFailureException" = "CloudHsmInternalFailureException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmInternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmInternalFailureException.prototype); + this.Message = opts.Message; + } } /** *

The request was rejected because it is not a valid request.

*/ -export interface CloudHsmInvalidRequestException extends __SmithyException, $MetadataBearer { - name: "CloudHsmInvalidRequestException"; - $fault: "client"; +export class CloudHsmInvalidRequestException extends __BaseException { + readonly name: "CloudHsmInvalidRequestException" = "CloudHsmInvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmInvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmInvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The request was rejected because it refers to a resource that cannot be * found.

*/ -export interface CloudHsmResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "CloudHsmResourceNotFoundException"; - $fault: "client"; +export class CloudHsmResourceNotFoundException extends __BaseException { + readonly name: "CloudHsmResourceNotFoundException" = "CloudHsmResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The request was rejected because an error occurred.

*/ -export interface CloudHsmServiceException extends __SmithyException, $MetadataBearer { - name: "CloudHsmServiceException"; - $fault: "client"; +export class CloudHsmServiceException extends __BaseException { + readonly name: "CloudHsmServiceException" = "CloudHsmServiceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmServiceException.prototype); + this.Message = opts.Message; + } } /** *

The request was rejected because of a tagging failure. Verify the tag conditions in all applicable policies, and then retry the request.

*/ -export interface CloudHsmTagException extends __SmithyException, $MetadataBearer { - name: "CloudHsmTagException"; - $fault: "client"; +export class CloudHsmTagException extends __BaseException { + readonly name: "CloudHsmTagException" = "CloudHsmTagException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmTagException.prototype); + this.Message = opts.Message; + } } export interface CopyBackupToRegionRequest { diff --git a/clients/client-cloudhsm-v2/src/protocols/Aws_json1_1.ts b/clients/client-cloudhsm-v2/src/protocols/Aws_json1_1.ts index 3629b99c38341..f88089e218ef6 100644 --- a/clients/client-cloudhsm-v2/src/protocols/Aws_json1_1.ts +++ b/clients/client-cloudhsm-v2/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CopyBackupToRegionCommandInput, CopyBackupToRegionCommandOutput } from "../commands/CopyBackupToRegionCommand"; @@ -33,6 +32,7 @@ import { ModifyClusterCommandInput, ModifyClusterCommandOutput } from "../comman import { RestoreBackupCommandInput, RestoreBackupCommandOutput } from "../commands/RestoreBackupCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { CloudHSMV2ServiceException as __BaseException } from "../models/CloudHSMV2ServiceException"; import { Backup, BackupRetentionPolicy, @@ -299,73 +299,37 @@ const deserializeAws_json1_1CopyBackupToRegionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateClusterCommand = async ( @@ -393,73 +357,37 @@ const deserializeAws_json1_1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHsmCommand = async ( @@ -487,65 +415,34 @@ const deserializeAws_json1_1CreateHsmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBackupCommand = async ( @@ -573,65 +470,34 @@ const deserializeAws_json1_1DeleteBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteClusterCommand = async ( @@ -659,73 +525,37 @@ const deserializeAws_json1_1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteHsmCommand = async ( @@ -753,65 +583,34 @@ const deserializeAws_json1_1DeleteHsmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBackupsCommand = async ( @@ -839,73 +638,37 @@ const deserializeAws_json1_1DescribeBackupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClustersCommand = async ( @@ -933,65 +696,34 @@ const deserializeAws_json1_1DescribeClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InitializeClusterCommand = async ( @@ -1019,65 +751,34 @@ const deserializeAws_json1_1InitializeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -1105,73 +806,37 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyBackupAttributesCommand = async ( @@ -1199,65 +864,34 @@ const deserializeAws_json1_1ModifyBackupAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyClusterCommand = async ( @@ -1285,65 +919,34 @@ const deserializeAws_json1_1ModifyClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreBackupCommand = async ( @@ -1371,65 +974,34 @@ const deserializeAws_json1_1RestoreBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1457,73 +1029,37 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1551,73 +1087,37 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmAccessDeniedException": case "com.amazonaws.cloudhsmv2#CloudHsmAccessDeniedException": - response = { - ...(await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse(parsedOutput, context); case "CloudHsmInternalFailureException": case "com.amazonaws.cloudhsmv2#CloudHsmInternalFailureException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse(parsedOutput, context); case "CloudHsmInvalidRequestException": case "com.amazonaws.cloudhsmv2#CloudHsmInvalidRequestException": - response = { - ...(await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse(parsedOutput, context); case "CloudHsmResourceNotFoundException": case "com.amazonaws.cloudhsmv2#CloudHsmResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsmv2#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "CloudHsmTagException": case "com.amazonaws.cloudhsmv2#CloudHsmTagException": - response = { - ...(await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmTagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse = async ( @@ -1626,13 +1126,11 @@ const deserializeAws_json1_1CloudHsmAccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmAccessDeniedException(body, context); - const contents: CloudHsmAccessDeniedException = { - name: "CloudHsmAccessDeniedException", - $fault: "client", + const exception = new CloudHsmAccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse = async ( @@ -1641,13 +1139,11 @@ const deserializeAws_json1_1CloudHsmInternalFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmInternalFailureException(body, context); - const contents: CloudHsmInternalFailureException = { - name: "CloudHsmInternalFailureException", - $fault: "server", + const exception = new CloudHsmInternalFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse = async ( @@ -1656,13 +1152,11 @@ const deserializeAws_json1_1CloudHsmInvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmInvalidRequestException(body, context); - const contents: CloudHsmInvalidRequestException = { - name: "CloudHsmInvalidRequestException", - $fault: "client", + const exception = new CloudHsmInvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse = async ( @@ -1671,13 +1165,11 @@ const deserializeAws_json1_1CloudHsmResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmResourceNotFoundException(body, context); - const contents: CloudHsmResourceNotFoundException = { - name: "CloudHsmResourceNotFoundException", - $fault: "client", + const exception = new CloudHsmResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmServiceExceptionResponse = async ( @@ -1686,13 +1178,11 @@ const deserializeAws_json1_1CloudHsmServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmServiceException(body, context); - const contents: CloudHsmServiceException = { - name: "CloudHsmServiceException", - $fault: "client", + const exception = new CloudHsmServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmTagExceptionResponse = async ( @@ -1701,13 +1191,11 @@ const deserializeAws_json1_1CloudHsmTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmTagException(body, context); - const contents: CloudHsmTagException = { - name: "CloudHsmTagException", - $fault: "client", + const exception = new CloudHsmTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BackupRetentionPolicy = (input: BackupRetentionPolicy, context: __SerdeContext): any => { diff --git a/clients/client-cloudhsm/src/index.ts b/clients/client-cloudhsm/src/index.ts index 07c70026bed65..330b5750561bd 100644 --- a/clients/client-cloudhsm/src/index.ts +++ b/clients/client-cloudhsm/src/index.ts @@ -2,3 +2,4 @@ export * from "./CloudHSM"; export * from "./CloudHSMClient"; export * from "./commands"; export * from "./models"; +export { CloudHSMServiceException } from "./models/CloudHSMServiceException"; diff --git a/clients/client-cloudhsm/src/models/CloudHSMServiceException.ts b/clients/client-cloudhsm/src/models/CloudHSMServiceException.ts new file mode 100644 index 0000000000000..502f321fd66e1 --- /dev/null +++ b/clients/client-cloudhsm/src/models/CloudHSMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudHSM service. + */ +export class CloudHSMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudHSMServiceException.prototype); + } +} diff --git a/clients/client-cloudhsm/src/models/models_0.ts b/clients/client-cloudhsm/src/models/models_0.ts index 078fa3b01263e..ca642b6d49daa 100644 --- a/clients/client-cloudhsm/src/models/models_0.ts +++ b/clients/client-cloudhsm/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudHSMServiceException as __BaseException } from "./CloudHSMServiceException"; /** *

A key-value pair that identifies or specifies metadata about an AWS CloudHSM @@ -65,52 +68,76 @@ export namespace AddTagsToResourceResponse { /** *

Indicates that an internal error occurred.

*/ -export interface CloudHsmInternalException extends __SmithyException, $MetadataBearer { - name: "CloudHsmInternalException"; - $fault: "server"; +export class CloudHsmInternalException extends __BaseException { + readonly name: "CloudHsmInternalException" = "CloudHsmInternalException"; + readonly $fault: "server" = "server"; /** - *

Additional information about the error.

+ *

Indicates if the action can be retried.

*/ - message?: string; + retryable?: boolean; /** - *

Indicates if the action can be retried.

+ * @internal */ - retryable?: boolean; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmInternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmInternalException.prototype); + this.retryable = opts.retryable; + } } /** *

Indicates that an exception occurred in the AWS CloudHSM service.

*/ -export interface CloudHsmServiceException extends __SmithyException, $MetadataBearer { - name: "CloudHsmServiceException"; - $fault: "client"; +export class CloudHsmServiceException extends __BaseException { + readonly name: "CloudHsmServiceException" = "CloudHsmServiceException"; + readonly $fault: "client" = "client"; /** - *

Additional information about the error.

+ *

Indicates if the action can be retried.

*/ - message?: string; + retryable?: boolean; /** - *

Indicates if the action can be retried.

+ * @internal */ - retryable?: boolean; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmServiceException.prototype); + this.retryable = opts.retryable; + } } /** *

Indicates that one or more of the request parameters are not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

Additional information about the error.

+ *

Indicates if the action can be retried.

*/ - message?: string; + retryable?: boolean; /** - *

Indicates if the action can be retried.

+ * @internal */ - retryable?: boolean; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.retryable = opts.retryable; + } } export enum ClientVersion { diff --git a/clients/client-cloudhsm/src/protocols/Aws_json1_1.ts b/clients/client-cloudhsm/src/protocols/Aws_json1_1.ts index 107c8acbda967..cda0935395dc1 100644 --- a/clients/client-cloudhsm/src/protocols/Aws_json1_1.ts +++ b/clients/client-cloudhsm/src/protocols/Aws_json1_1.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectBoolean as __expectBoolean, expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectBoolean as __expectBoolean, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddTagsToResourceCommandInput, AddTagsToResourceCommandOutput } from "../commands/AddTagsToResourceCommand"; @@ -35,6 +37,7 @@ import { RemoveTagsFromResourceCommandInput, RemoveTagsFromResourceCommandOutput, } from "../commands/RemoveTagsFromResourceCommand"; +import { CloudHSMServiceException as __BaseException } from "../models/CloudHSMServiceException"; import { AddTagsToResourceRequest, AddTagsToResourceResponse, @@ -367,49 +370,28 @@ const deserializeAws_json1_1AddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHapgCommand = async ( @@ -437,49 +419,28 @@ const deserializeAws_json1_1CreateHapgCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHsmCommand = async ( @@ -507,49 +468,28 @@ const deserializeAws_json1_1CreateHsmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLunaClientCommand = async ( @@ -577,49 +517,28 @@ const deserializeAws_json1_1CreateLunaClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteHapgCommand = async ( @@ -647,49 +566,28 @@ const deserializeAws_json1_1DeleteHapgCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteHsmCommand = async ( @@ -717,49 +615,28 @@ const deserializeAws_json1_1DeleteHsmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLunaClientCommand = async ( @@ -787,49 +664,28 @@ const deserializeAws_json1_1DeleteLunaClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHapgCommand = async ( @@ -857,49 +713,28 @@ const deserializeAws_json1_1DescribeHapgCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHsmCommand = async ( @@ -927,49 +762,28 @@ const deserializeAws_json1_1DescribeHsmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLunaClientCommand = async ( @@ -997,49 +811,28 @@ const deserializeAws_json1_1DescribeLunaClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConfigCommand = async ( @@ -1067,49 +860,28 @@ const deserializeAws_json1_1GetConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAvailableZonesCommand = async ( @@ -1137,49 +909,28 @@ const deserializeAws_json1_1ListAvailableZonesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHapgsCommand = async ( @@ -1207,49 +958,28 @@ const deserializeAws_json1_1ListHapgsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHsmsCommand = async ( @@ -1277,49 +1007,28 @@ const deserializeAws_json1_1ListHsmsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLunaClientsCommand = async ( @@ -1347,49 +1056,28 @@ const deserializeAws_json1_1ListLunaClientsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1417,49 +1105,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyHapgCommand = async ( @@ -1487,49 +1154,28 @@ const deserializeAws_json1_1ModifyHapgCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyHsmCommand = async ( @@ -1557,49 +1203,28 @@ const deserializeAws_json1_1ModifyHsmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyLunaClientCommand = async ( @@ -1627,33 +1252,22 @@ const deserializeAws_json1_1ModifyLunaClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromResourceCommand = async ( @@ -1681,49 +1295,28 @@ const deserializeAws_json1_1RemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmInternalException": case "com.amazonaws.cloudhsm#CloudHsmInternalException": - response = { - ...(await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmInternalExceptionResponse(parsedOutput, context); case "CloudHsmServiceException": case "com.amazonaws.cloudhsm#CloudHsmServiceException": - response = { - ...(await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.cloudhsm#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CloudHsmInternalExceptionResponse = async ( @@ -1732,13 +1325,11 @@ const deserializeAws_json1_1CloudHsmInternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmInternalException(body, context); - const contents: CloudHsmInternalException = { - name: "CloudHsmInternalException", - $fault: "server", + const exception = new CloudHsmInternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmServiceExceptionResponse = async ( @@ -1747,13 +1338,11 @@ const deserializeAws_json1_1CloudHsmServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmServiceException(body, context); - const contents: CloudHsmServiceException = { - name: "CloudHsmServiceException", - $fault: "client", + const exception = new CloudHsmServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -1762,13 +1351,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsToResourceRequest = ( diff --git a/clients/client-cloudsearch-domain/src/index.ts b/clients/client-cloudsearch-domain/src/index.ts index d2a79c9463210..e1a3a987bd396 100644 --- a/clients/client-cloudsearch-domain/src/index.ts +++ b/clients/client-cloudsearch-domain/src/index.ts @@ -2,3 +2,4 @@ export * from "./CloudSearchDomain"; export * from "./CloudSearchDomainClient"; export * from "./commands"; export * from "./models"; +export { CloudSearchDomainServiceException } from "./models/CloudSearchDomainServiceException"; diff --git a/clients/client-cloudsearch-domain/src/models/CloudSearchDomainServiceException.ts b/clients/client-cloudsearch-domain/src/models/CloudSearchDomainServiceException.ts new file mode 100644 index 0000000000000..46961b8609b73 --- /dev/null +++ b/clients/client-cloudsearch-domain/src/models/CloudSearchDomainServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudSearchDomain service. + */ +export class CloudSearchDomainServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudSearchDomainServiceException.prototype); + } +} diff --git a/clients/client-cloudsearch-domain/src/models/models_0.ts b/clients/client-cloudsearch-domain/src/models/models_0.ts index 7029e4d5e27ea..74a2dab22d60a 100644 --- a/clients/client-cloudsearch-domain/src/models/models_0.ts +++ b/clients/client-cloudsearch-domain/src/models/models_0.ts @@ -1,16 +1,26 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { CloudSearchDomainServiceException as __BaseException } from "./CloudSearchDomainServiceException"; + /** *

Information about any problems encountered while processing a search request.

*/ -export interface SearchException extends __SmithyException, $MetadataBearer { - name: "SearchException"; - $fault: "client"; +export class SearchException extends __BaseException { + readonly name: "SearchException" = "SearchException"; + readonly $fault: "client" = "client"; /** - *

A description of the error returned by the search service.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SearchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SearchException.prototype); + } } export type QueryParser = "dismax" | "lucene" | "simple" | "structured"; @@ -674,18 +684,26 @@ export namespace SuggestResponse { /** *

Information about any problems encountered while processing an upload request.

*/ -export interface DocumentServiceException extends __SmithyException, $MetadataBearer { - name: "DocumentServiceException"; - $fault: "client"; +export class DocumentServiceException extends __BaseException { + readonly name: "DocumentServiceException" = "DocumentServiceException"; + readonly $fault: "client" = "client"; /** *

The return status of a document upload request, error or success.

*/ status?: string; /** - *

The description of the errors returned by the document service.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentServiceException.prototype); + this.status = opts.status; + } } export type ContentType = "application/json" | "application/xml"; diff --git a/clients/client-cloudsearch-domain/src/protocols/Aws_restJson1.ts b/clients/client-cloudsearch-domain/src/protocols/Aws_restJson1.ts index 941d979d1cfd6..047fbf9b84c22 100644 --- a/clients/client-cloudsearch-domain/src/protocols/Aws_restJson1.ts +++ b/clients/client-cloudsearch-domain/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -9,15 +10,14 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { SearchCommandInput, SearchCommandOutput } from "../commands/SearchCommand"; import { SuggestCommandInput, SuggestCommandOutput } from "../commands/SuggestCommand"; import { UploadDocumentsCommandInput, UploadDocumentsCommandOutput } from "../commands/UploadDocumentsCommand"; +import { CloudSearchDomainServiceException as __BaseException } from "../models/CloudSearchDomainServiceException"; import { Bucket, BucketInfo, @@ -166,33 +166,22 @@ const deserializeAws_restJson1SearchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "SearchException": case "com.amazonaws.cloudsearchdomain#SearchException": - response = { - ...(await deserializeAws_restJson1SearchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SearchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SuggestCommand = async ( @@ -225,33 +214,22 @@ const deserializeAws_restJson1SuggestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "SearchException": case "com.amazonaws.cloudsearchdomain#SearchException": - response = { - ...(await deserializeAws_restJson1SearchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SearchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UploadDocumentsCommand = async ( @@ -292,46 +270,29 @@ const deserializeAws_restJson1UploadDocumentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DocumentServiceException": case "com.amazonaws.cloudsearchdomain#DocumentServiceException": - response = { - ...(await deserializeAws_restJson1DocumentServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DocumentServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1DocumentServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DocumentServiceException = { - name: "DocumentServiceException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - status: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -339,24 +300,27 @@ const deserializeAws_restJson1DocumentServiceExceptionResponse = async ( if (data.status !== undefined && data.status !== null) { contents.status = __expectString(data.status); } - return contents; + const exception = new DocumentServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SearchExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SearchException = { - name: "SearchException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SearchException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1Bucket = (output: any, context: __SerdeContext): Bucket => { diff --git a/clients/client-cloudsearch/src/index.ts b/clients/client-cloudsearch/src/index.ts index 8748d869d1471..00c5362ebae4a 100644 --- a/clients/client-cloudsearch/src/index.ts +++ b/clients/client-cloudsearch/src/index.ts @@ -2,3 +2,4 @@ export * from "./CloudSearch"; export * from "./CloudSearchClient"; export * from "./commands"; export * from "./models"; +export { CloudSearchServiceException } from "./models/CloudSearchServiceException"; diff --git a/clients/client-cloudsearch/src/models/CloudSearchServiceException.ts b/clients/client-cloudsearch/src/models/CloudSearchServiceException.ts new file mode 100644 index 0000000000000..07a286a36b68f --- /dev/null +++ b/clients/client-cloudsearch/src/models/CloudSearchServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudSearch service. + */ +export class CloudSearchServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudSearchServiceException.prototype); + } +} diff --git a/clients/client-cloudsearch/src/models/models_0.ts b/clients/client-cloudsearch/src/models/models_0.ts index 5a7b88447e124..50f45afcebf29 100644 --- a/clients/client-cloudsearch/src/models/models_0.ts +++ b/clients/client-cloudsearch/src/models/models_0.ts @@ -1,11 +1,14 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudSearchServiceException as __BaseException } from "./CloudSearchServiceException"; /** *

An error occurred while processing the request.

*/ -export interface BaseException extends __SmithyException, $MetadataBearer { - name: "BaseException"; - $fault: "client"; +export class BaseException extends __BaseException { + readonly name: "BaseException" = "BaseException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -15,6 +18,19 @@ export interface BaseException extends __SmithyException, $MetadataBearer { *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BaseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BaseException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** @@ -59,9 +75,9 @@ export namespace BuildSuggestersResponse { *

An internal error occurred while processing the request. If this problem persists, * report an issue from the Service Health Dashboard.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; /** *

A machine-parsable string error or warning code.

*/ @@ -71,14 +87,27 @@ export interface InternalException extends __SmithyException, $MetadataBearer { *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The request was rejected because it attempted to reference a resource that does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -88,14 +117,27 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The request was rejected because it has invalid parameters.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -105,6 +147,19 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** @@ -257,9 +312,9 @@ export namespace CreateDomainResponse { /** *

The request was rejected because a resource limit has already been met.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -269,14 +324,27 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** *

The request was rejected because it attempted to create a resource that already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -286,6 +354,19 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export type AlgorithmicStemming = "full" | "light" | "minimal" | "none"; @@ -512,9 +593,9 @@ export namespace DefineAnalysisSchemeResponse { /** *

The request was rejected because it specified an invalid type definition.

*/ -export interface InvalidTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidTypeException"; - $fault: "client"; +export class InvalidTypeException extends __BaseException { + readonly name: "InvalidTypeException" = "InvalidTypeException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -524,6 +605,19 @@ export interface InvalidTypeException extends __SmithyException, $MetadataBearer *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTypeException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** @@ -1758,9 +1852,9 @@ export namespace DescribeAvailabilityOptionsResponse { /** *

The request was rejected because it attempted an operation which is not enabled.

*/ -export interface DisabledOperationException extends __SmithyException, $MetadataBearer { - name: "DisabledOperationException"; - $fault: "client"; +export class DisabledOperationException extends __BaseException { + readonly name: "DisabledOperationException" = "DisabledOperationException"; + readonly $fault: "client" = "client"; /** *

A machine-parsable string error or warning code.

*/ @@ -1770,6 +1864,19 @@ export interface DisabledOperationException extends __SmithyException, $Metadata *

A human-readable string error or warning message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DisabledOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DisabledOperationException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } /** diff --git a/clients/client-cloudsearch/src/protocols/Aws_query.ts b/clients/client-cloudsearch/src/protocols/Aws_query.ts index b4cbbba2ed6bf..b18e7ea7c14b1 100644 --- a/clients/client-cloudsearch/src/protocols/Aws_query.ts +++ b/clients/client-cloudsearch/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -15,10 +16,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -88,6 +87,7 @@ import { UpdateServiceAccessPoliciesCommandInput, UpdateServiceAccessPoliciesCommandOutput, } from "../commands/UpdateServiceAccessPoliciesCommand"; +import { CloudSearchServiceException as __BaseException } from "../models/CloudSearchServiceException"; import { AccessPoliciesStatus, AnalysisOptions, @@ -620,57 +620,31 @@ const deserializeAws_queryBuildSuggestersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDomainCommand = async ( @@ -698,65 +672,34 @@ const deserializeAws_queryCreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudsearch#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_queryResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDefineAnalysisSchemeCommand = async ( @@ -784,73 +727,37 @@ const deserializeAws_queryDefineAnalysisSchemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDefineExpressionCommand = async ( @@ -878,73 +785,37 @@ const deserializeAws_queryDefineExpressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDefineIndexFieldCommand = async ( @@ -972,73 +843,37 @@ const deserializeAws_queryDefineIndexFieldCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDefineSuggesterCommand = async ( @@ -1066,73 +901,37 @@ const deserializeAws_queryDefineSuggesterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAnalysisSchemeCommand = async ( @@ -1160,65 +959,34 @@ const deserializeAws_queryDeleteAnalysisSchemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDomainCommand = async ( @@ -1246,41 +1014,25 @@ const deserializeAws_queryDeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteExpressionCommand = async ( @@ -1308,65 +1060,34 @@ const deserializeAws_queryDeleteExpressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteIndexFieldCommand = async ( @@ -1394,65 +1115,34 @@ const deserializeAws_queryDeleteIndexFieldCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSuggesterCommand = async ( @@ -1480,65 +1170,34 @@ const deserializeAws_queryDeleteSuggesterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAnalysisSchemesCommand = async ( @@ -1566,49 +1225,28 @@ const deserializeAws_queryDescribeAnalysisSchemesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAvailabilityOptionsCommand = async ( @@ -1636,73 +1274,37 @@ const deserializeAws_queryDescribeAvailabilityOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.cloudsearch#DisabledOperationException": - response = { - ...(await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDomainEndpointOptionsCommand = async ( @@ -1733,65 +1335,34 @@ const deserializeAws_queryDescribeDomainEndpointOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.cloudsearch#DisabledOperationException": - response = { - ...(await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDomainsCommand = async ( @@ -1819,41 +1390,25 @@ const deserializeAws_queryDescribeDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeExpressionsCommand = async ( @@ -1881,49 +1436,28 @@ const deserializeAws_queryDescribeExpressionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeIndexFieldsCommand = async ( @@ -1951,49 +1485,28 @@ const deserializeAws_queryDescribeIndexFieldsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeScalingParametersCommand = async ( @@ -2021,49 +1534,28 @@ const deserializeAws_queryDescribeScalingParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeServiceAccessPoliciesCommand = async ( @@ -2094,49 +1586,28 @@ const deserializeAws_queryDescribeServiceAccessPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeSuggestersCommand = async ( @@ -2164,49 +1635,28 @@ const deserializeAws_queryDescribeSuggestersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryIndexDocumentsCommand = async ( @@ -2234,57 +1684,31 @@ const deserializeAws_queryIndexDocumentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListDomainNamesCommand = async ( @@ -2312,33 +1736,22 @@ const deserializeAws_queryListDomainNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateAvailabilityOptionsCommand = async ( @@ -2366,81 +1779,40 @@ const deserializeAws_queryUpdateAvailabilityOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.cloudsearch#DisabledOperationException": - response = { - ...(await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateDomainEndpointOptionsCommand = async ( @@ -2468,81 +1840,40 @@ const deserializeAws_queryUpdateDomainEndpointOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.cloudsearch#DisabledOperationException": - response = { - ...(await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateScalingParametersCommand = async ( @@ -2570,73 +1901,37 @@ const deserializeAws_queryUpdateScalingParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateServiceAccessPoliciesCommand = async ( @@ -2664,73 +1959,37 @@ const deserializeAws_queryUpdateServiceAccessPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.cloudsearch#BaseException": - response = { - ...(await deserializeAws_queryBaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudsearch#InternalException": - response = { - ...(await deserializeAws_queryInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.cloudsearch#InvalidTypeException": - response = { - ...(await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudsearch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudsearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.cloudsearch#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryBaseExceptionResponse = async ( @@ -2739,13 +1998,11 @@ const deserializeAws_queryBaseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBaseException(body.Error, context); - const contents: BaseException = { - name: "BaseException", - $fault: "client", + const exception = new BaseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDisabledOperationExceptionResponse = async ( @@ -2754,13 +2011,11 @@ const deserializeAws_queryDisabledOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDisabledOperationException(body.Error, context); - const contents: DisabledOperationException = { - name: "DisabledOperationException", - $fault: "client", + const exception = new DisabledOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInternalExceptionResponse = async ( @@ -2769,13 +2024,11 @@ const deserializeAws_queryInternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInternalException(body.Error, context); - const contents: InternalException = { - name: "InternalException", - $fault: "server", + const exception = new InternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidTypeExceptionResponse = async ( @@ -2784,13 +2037,11 @@ const deserializeAws_queryInvalidTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidTypeException(body.Error, context); - const contents: InvalidTypeException = { - name: "InvalidTypeException", - $fault: "client", + const exception = new InvalidTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededExceptionResponse = async ( @@ -2799,13 +2050,11 @@ const deserializeAws_queryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededException(body.Error, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceAlreadyExistsExceptionResponse = async ( @@ -2814,13 +2063,11 @@ const deserializeAws_queryResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceAlreadyExistsException(body.Error, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundExceptionResponse = async ( @@ -2829,13 +2076,11 @@ const deserializeAws_queryResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundException(body.Error, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryValidationExceptionResponse = async ( @@ -2844,13 +2089,11 @@ const deserializeAws_queryValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryValidationException(body.Error, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAnalysisOptions = (input: AnalysisOptions, context: __SerdeContext): any => { diff --git a/clients/client-cloudtrail/src/index.ts b/clients/client-cloudtrail/src/index.ts index 48fd822bc6f15..e5673a78d93cc 100644 --- a/clients/client-cloudtrail/src/index.ts +++ b/clients/client-cloudtrail/src/index.ts @@ -3,3 +3,4 @@ export * from "./CloudTrailClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CloudTrailServiceException } from "./models/CloudTrailServiceException"; diff --git a/clients/client-cloudtrail/src/models/CloudTrailServiceException.ts b/clients/client-cloudtrail/src/models/CloudTrailServiceException.ts new file mode 100644 index 0000000000000..57351bb2c977e --- /dev/null +++ b/clients/client-cloudtrail/src/models/CloudTrailServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudTrail service. + */ +export class CloudTrailServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudTrailServiceException.prototype); + } +} diff --git a/clients/client-cloudtrail/src/models/models_0.ts b/clients/client-cloudtrail/src/models/models_0.ts index 90fe9671654c3..e68ed923f28eb 100644 --- a/clients/client-cloudtrail/src/models/models_0.ts +++ b/clients/client-cloudtrail/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudTrailServiceException as __BaseException } from "./CloudTrailServiceException"; /** *

A custom key-value pair associated with a resource such as a CloudTrail trail.

@@ -72,13 +75,25 @@ export namespace AddTagsResponse { * arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail *

*/ -export interface CloudTrailARNInvalidException extends __SmithyException, $MetadataBearer { - name: "CloudTrailARNInvalidException"; - $fault: "client"; +export class CloudTrailARNInvalidException extends __BaseException { + readonly name: "CloudTrailARNInvalidException" = "CloudTrailARNInvalidException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudTrailARNInvalidException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudTrailARNInvalidException.prototype); + this.Message = opts.Message; + } } /** @@ -86,50 +101,98 @@ export interface CloudTrailARNInvalidException extends __SmithyException, $Metad * This can occur when you try to run an operation on a trail before CloudTrail has time to fully load the trail. * If this exception occurs, wait a few minutes, and then try the operation again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The specified event data store was not found.

*/ -export interface EventDataStoreNotFoundException extends __SmithyException, $MetadataBearer { - name: "EventDataStoreNotFoundException"; - $fault: "client"; +export class EventDataStoreNotFoundException extends __BaseException { + readonly name: "EventDataStoreNotFoundException" = "EventDataStoreNotFoundException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDataStoreNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDataStoreNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The event data store against which you ran your query is inactive.

*/ -export interface InactiveEventDataStoreException extends __SmithyException, $MetadataBearer { - name: "InactiveEventDataStoreException"; - $fault: "client"; +export class InactiveEventDataStoreException extends __BaseException { + readonly name: "InactiveEventDataStoreException" = "InactiveEventDataStoreException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InactiveEventDataStoreException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InactiveEventDataStoreException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the specified tag key or values are not valid. * It can also occur if there are duplicate tags or too many tags on the resource.

*/ -export interface InvalidTagParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidTagParameterException"; - $fault: "client"; +export class InvalidTagParameterException extends __BaseException { + readonly name: "InvalidTagParameterException" = "InvalidTagParameterException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagParameterException.prototype); + this.Message = opts.Message; + } } /** @@ -153,13 +216,25 @@ export interface InvalidTagParameterException extends __SmithyException, $Metada * * */ -export interface InvalidTrailNameException extends __SmithyException, $MetadataBearer { - name: "InvalidTrailNameException"; - $fault: "client"; +export class InvalidTrailNameException extends __BaseException { + readonly name: "InvalidTrailNameException" = "InvalidTrailNameException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTrailNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTrailNameException.prototype); + this.Message = opts.Message; + } } /** @@ -167,73 +242,145 @@ export interface InvalidTrailNameException extends __SmithyException, $MetadataB * organization in Organizations. For more information, see * Prepare For Creating a Trail For Your Organization.

*/ -export interface NotOrganizationMasterAccountException extends __SmithyException, $MetadataBearer { - name: "NotOrganizationMasterAccountException"; - $fault: "client"; +export class NotOrganizationMasterAccountException extends __BaseException { + readonly name: "NotOrganizationMasterAccountException" = "NotOrganizationMasterAccountException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotOrganizationMasterAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotOrganizationMasterAccountException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the requested operation is not permitted.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the specified resource is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the specified resource type is not supported by CloudTrail.

*/ -export interface ResourceTypeNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ResourceTypeNotSupportedException"; - $fault: "client"; +export class ResourceTypeNotSupportedException extends __BaseException { + readonly name: "ResourceTypeNotSupportedException" = "ResourceTypeNotSupportedException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceTypeNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceTypeNotSupportedException.prototype); + this.Message = opts.Message; + } } /** *

The number of tags per trail has exceeded the permitted amount. Currently, the limit is 50.

*/ -export interface TagsLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagsLimitExceededException"; - $fault: "client"; +export class TagsLimitExceededException extends __BaseException { + readonly name: "TagsLimitExceededException" = "TagsLimitExceededException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagsLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagsLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the requested operation is not supported.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + } } /** @@ -631,50 +778,98 @@ export namespace CancelQueryResponse { /** *

The specified event data store ARN is not valid or does not map to an event data store in your account.

*/ -export interface EventDataStoreARNInvalidException extends __SmithyException, $MetadataBearer { - name: "EventDataStoreARNInvalidException"; - $fault: "client"; +export class EventDataStoreARNInvalidException extends __BaseException { + readonly name: "EventDataStoreARNInvalidException" = "EventDataStoreARNInvalidException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDataStoreARNInvalidException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDataStoreARNInvalidException.prototype); + this.Message = opts.Message; + } } /** *

The specified query cannot be canceled because it is in the FINISHED, FAILED, or * CANCELLED state.

*/ -export interface InactiveQueryException extends __SmithyException, $MetadataBearer { - name: "InactiveQueryException"; - $fault: "client"; +export class InactiveQueryException extends __BaseException { + readonly name: "InactiveQueryException" = "InactiveQueryException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InactiveQueryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InactiveQueryException.prototype); + this.Message = opts.Message; + } } /** *

The request includes a parameter that is not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } /** *

The query ID does not exist or does not map to a query.

*/ -export interface QueryIdNotFoundException extends __SmithyException, $MetadataBearer { - name: "QueryIdNotFoundException"; - $fault: "client"; +export class QueryIdNotFoundException extends __BaseException { + readonly name: "QueryIdNotFoundException" = "QueryIdNotFoundException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueryIdNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueryIdNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -682,13 +877,25 @@ export interface QueryIdNotFoundException extends __SmithyException, $MetadataBe * see Enabling Trusted Access with Other Amazon Web Services Services * and Prepare For Creating a Trail For Your Organization.

*/ -export interface CloudTrailAccessNotEnabledException extends __SmithyException, $MetadataBearer { - name: "CloudTrailAccessNotEnabledException"; - $fault: "client"; +export class CloudTrailAccessNotEnabledException extends __BaseException { + readonly name: "CloudTrailAccessNotEnabledException" = "CloudTrailAccessNotEnabledException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudTrailAccessNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudTrailAccessNotEnabledException.prototype); + this.Message = opts.Message; + } } export interface CreateEventDataStoreRequest { @@ -818,25 +1025,49 @@ export namespace CreateEventDataStoreResponse { /** *

An event data store with that name already exists.

*/ -export interface EventDataStoreAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EventDataStoreAlreadyExistsException"; - $fault: "client"; +export class EventDataStoreAlreadyExistsException extends __BaseException { + readonly name: "EventDataStoreAlreadyExistsException" = "EventDataStoreAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDataStoreAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDataStoreAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

Your account has used the maximum number of event data stores.

*/ -export interface EventDataStoreMaxLimitExceededException extends __SmithyException, $MetadataBearer { - name: "EventDataStoreMaxLimitExceededException"; - $fault: "client"; +export class EventDataStoreMaxLimitExceededException extends __BaseException { + readonly name: "EventDataStoreMaxLimitExceededException" = "EventDataStoreMaxLimitExceededException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDataStoreMaxLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDataStoreMaxLimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -844,13 +1075,26 @@ export interface EventDataStoreMaxLimitExceededException extends __SmithyExcepti * creating an organization trail in a required service. For more information, see * Prepare For Creating a Trail For Your Organization.

*/ -export interface InsufficientDependencyServiceAccessPermissionException extends __SmithyException, $MetadataBearer { - name: "InsufficientDependencyServiceAccessPermissionException"; - $fault: "client"; +export class InsufficientDependencyServiceAccessPermissionException extends __BaseException { + readonly name: "InsufficientDependencyServiceAccessPermissionException" = + "InsufficientDependencyServiceAccessPermissionException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDependencyServiceAccessPermissionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDependencyServiceAccessPermissionException.prototype); + this.Message = opts.Message; + } } /** @@ -858,26 +1102,50 @@ export interface InsufficientDependencyServiceAccessPermissionException extends * creating an organization trail. For more information, see * Prepare For Creating a Trail For Your Organization.

*/ -export interface OrganizationNotInAllFeaturesModeException extends __SmithyException, $MetadataBearer { - name: "OrganizationNotInAllFeaturesModeException"; - $fault: "client"; +export class OrganizationNotInAllFeaturesModeException extends __BaseException { + readonly name: "OrganizationNotInAllFeaturesModeException" = "OrganizationNotInAllFeaturesModeException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationNotInAllFeaturesModeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationNotInAllFeaturesModeException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the request is made from an Amazon Web Services account that is not a member of an organization. * To make this request, sign in using the credentials of an account that belongs to an organization.

*/ -export interface OrganizationsNotInUseException extends __SmithyException, $MetadataBearer { - name: "OrganizationsNotInUseException"; - $fault: "client"; +export class OrganizationsNotInUseException extends __BaseException { + readonly name: "OrganizationsNotInUseException" = "OrganizationsNotInUseException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationsNotInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationsNotInUseException.prototype); + this.Message = opts.Message; + } } /** @@ -885,25 +1153,49 @@ export interface OrganizationsNotInUseException extends __SmithyException, $Meta * This can occur when you are creating or updating a trail to send notifications to an Amazon SNS topic that * is in a suspended Amazon Web Services account.

*/ -export interface CloudTrailInvalidClientTokenIdException extends __SmithyException, $MetadataBearer { - name: "CloudTrailInvalidClientTokenIdException"; - $fault: "client"; +export class CloudTrailInvalidClientTokenIdException extends __BaseException { + readonly name: "CloudTrailInvalidClientTokenIdException" = "CloudTrailInvalidClientTokenIdException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudTrailInvalidClientTokenIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudTrailInvalidClientTokenIdException.prototype); + this.Message = opts.Message; + } } /** *

Cannot set a CloudWatch Logs delivery for this region.

*/ -export interface CloudWatchLogsDeliveryUnavailableException extends __SmithyException, $MetadataBearer { - name: "CloudWatchLogsDeliveryUnavailableException"; - $fault: "client"; +export class CloudWatchLogsDeliveryUnavailableException extends __BaseException { + readonly name: "CloudWatchLogsDeliveryUnavailableException" = "CloudWatchLogsDeliveryUnavailableException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudWatchLogsDeliveryUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudWatchLogsDeliveryUnavailableException.prototype); + this.Message = opts.Message; + } } /** @@ -1125,133 +1417,265 @@ export namespace CreateTrailResponse { /** *

This exception is thrown when the policy on the S3 bucket or KMS key is not sufficient.

*/ -export interface InsufficientEncryptionPolicyException extends __SmithyException, $MetadataBearer { - name: "InsufficientEncryptionPolicyException"; - $fault: "client"; +export class InsufficientEncryptionPolicyException extends __BaseException { + readonly name: "InsufficientEncryptionPolicyException" = "InsufficientEncryptionPolicyException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientEncryptionPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientEncryptionPolicyException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the policy on the S3 bucket is not sufficient.

*/ -export interface InsufficientS3BucketPolicyException extends __SmithyException, $MetadataBearer { - name: "InsufficientS3BucketPolicyException"; - $fault: "client"; +export class InsufficientS3BucketPolicyException extends __BaseException { + readonly name: "InsufficientS3BucketPolicyException" = "InsufficientS3BucketPolicyException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientS3BucketPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientS3BucketPolicyException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the policy on the Amazon SNS topic is not sufficient.

*/ -export interface InsufficientSnsTopicPolicyException extends __SmithyException, $MetadataBearer { - name: "InsufficientSnsTopicPolicyException"; - $fault: "client"; +export class InsufficientSnsTopicPolicyException extends __BaseException { + readonly name: "InsufficientSnsTopicPolicyException" = "InsufficientSnsTopicPolicyException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientSnsTopicPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientSnsTopicPolicyException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the provided CloudWatch Logs log group is not valid.

*/ -export interface InvalidCloudWatchLogsLogGroupArnException extends __SmithyException, $MetadataBearer { - name: "InvalidCloudWatchLogsLogGroupArnException"; - $fault: "client"; +export class InvalidCloudWatchLogsLogGroupArnException extends __BaseException { + readonly name: "InvalidCloudWatchLogsLogGroupArnException" = "InvalidCloudWatchLogsLogGroupArnException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCloudWatchLogsLogGroupArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCloudWatchLogsLogGroupArnException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the provided role is not valid.

*/ -export interface InvalidCloudWatchLogsRoleArnException extends __SmithyException, $MetadataBearer { - name: "InvalidCloudWatchLogsRoleArnException"; - $fault: "client"; +export class InvalidCloudWatchLogsRoleArnException extends __BaseException { + readonly name: "InvalidCloudWatchLogsRoleArnException" = "InvalidCloudWatchLogsRoleArnException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCloudWatchLogsRoleArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCloudWatchLogsRoleArnException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the KMS key ARN is not valid.

*/ -export interface InvalidKmsKeyIdException extends __SmithyException, $MetadataBearer { - name: "InvalidKmsKeyIdException"; - $fault: "client"; +export class InvalidKmsKeyIdException extends __BaseException { + readonly name: "InvalidKmsKeyIdException" = "InvalidKmsKeyIdException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKmsKeyIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKmsKeyIdException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the combination of parameters provided is not valid.

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the provided S3 bucket name is not valid.

*/ -export interface InvalidS3BucketNameException extends __SmithyException, $MetadataBearer { - name: "InvalidS3BucketNameException"; - $fault: "client"; +export class InvalidS3BucketNameException extends __BaseException { + readonly name: "InvalidS3BucketNameException" = "InvalidS3BucketNameException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3BucketNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3BucketNameException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the provided S3 prefix is not valid.

*/ -export interface InvalidS3PrefixException extends __SmithyException, $MetadataBearer { - name: "InvalidS3PrefixException"; - $fault: "client"; +export class InvalidS3PrefixException extends __BaseException { + readonly name: "InvalidS3PrefixException" = "InvalidS3PrefixException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3PrefixException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3PrefixException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the provided SNS topic name is not valid.

*/ -export interface InvalidSnsTopicNameException extends __SmithyException, $MetadataBearer { - name: "InvalidSnsTopicNameException"; - $fault: "client"; +export class InvalidSnsTopicNameException extends __BaseException { + readonly name: "InvalidSnsTopicNameException" = "InvalidSnsTopicNameException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSnsTopicNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSnsTopicNameException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when there is an issue with the specified KMS key and the trail can’t be updated.

*/ -export interface KmsException extends __SmithyException, $MetadataBearer { - name: "KmsException"; - $fault: "client"; +export class KmsException extends __BaseException { + readonly name: "KmsException" = "KmsException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KmsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KmsException.prototype); + this.Message = opts.Message; + } } /** @@ -1259,13 +1683,25 @@ export interface KmsException extends __SmithyException, $MetadataBearer { * *

This exception is no longer in use.

*/ -export interface KmsKeyDisabledException extends __SmithyException, $MetadataBearer { - name: "KmsKeyDisabledException"; - $fault: "client"; +export class KmsKeyDisabledException extends __BaseException { + readonly name: "KmsKeyDisabledException" = "KmsKeyDisabledException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KmsKeyDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KmsKeyDisabledException.prototype); + this.Message = opts.Message; + } } /** @@ -1273,61 +1709,121 @@ export interface KmsKeyDisabledException extends __SmithyException, $MetadataBea * KMS key are not in the same region, or when the KMS key associated with the Amazon SNS * topic either does not exist or is not in the same region.

*/ -export interface KmsKeyNotFoundException extends __SmithyException, $MetadataBearer { - name: "KmsKeyNotFoundException"; - $fault: "client"; +export class KmsKeyNotFoundException extends __BaseException { + readonly name: "KmsKeyNotFoundException" = "KmsKeyNotFoundException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KmsKeyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KmsKeyNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the maximum number of trails is reached.

*/ -export interface MaximumNumberOfTrailsExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumNumberOfTrailsExceededException"; - $fault: "client"; +export class MaximumNumberOfTrailsExceededException extends __BaseException { + readonly name: "MaximumNumberOfTrailsExceededException" = "MaximumNumberOfTrailsExceededException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumNumberOfTrailsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumNumberOfTrailsExceededException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the specified S3 bucket does not exist.

*/ -export interface S3BucketDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "S3BucketDoesNotExistException"; - $fault: "client"; +export class S3BucketDoesNotExistException extends __BaseException { + readonly name: "S3BucketDoesNotExistException" = "S3BucketDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "S3BucketDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, S3BucketDoesNotExistException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the specified trail already exists.

*/ -export interface TrailAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "TrailAlreadyExistsException"; - $fault: "client"; +export class TrailAlreadyExistsException extends __BaseException { + readonly name: "TrailAlreadyExistsException" = "TrailAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrailAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrailAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

This exception is no longer in use.

*/ -export interface TrailNotProvidedException extends __SmithyException, $MetadataBearer { - name: "TrailNotProvidedException"; - $fault: "client"; +export class TrailNotProvidedException extends __BaseException { + readonly name: "TrailNotProvidedException" = "TrailNotProvidedException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrailNotProvidedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrailNotProvidedException.prototype); + this.Message = opts.Message; + } } export interface DeleteEventDataStoreRequest { @@ -1360,13 +1856,25 @@ export namespace DeleteEventDataStoreResponse { /** *

The event data store cannot be deleted because termination protection is enabled for it.

*/ -export interface EventDataStoreTerminationProtectedException extends __SmithyException, $MetadataBearer { - name: "EventDataStoreTerminationProtectedException"; - $fault: "client"; +export class EventDataStoreTerminationProtectedException extends __BaseException { + readonly name: "EventDataStoreTerminationProtectedException" = "EventDataStoreTerminationProtectedException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDataStoreTerminationProtectedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDataStoreTerminationProtectedException.prototype); + this.Message = opts.Message; + } } /** @@ -1408,25 +1916,49 @@ export namespace DeleteTrailResponse { /** *

This exception is thrown when an operation is called on a trail from a region other than the region in which the trail was created.

*/ -export interface InvalidHomeRegionException extends __SmithyException, $MetadataBearer { - name: "InvalidHomeRegionException"; - $fault: "client"; +export class InvalidHomeRegionException extends __BaseException { + readonly name: "InvalidHomeRegionException" = "InvalidHomeRegionException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidHomeRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidHomeRegionException.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the trail with the given name is not found.

*/ -export interface TrailNotFoundException extends __SmithyException, $MetadataBearer { - name: "TrailNotFoundException"; - $fault: "client"; +export class TrailNotFoundException extends __BaseException { + readonly name: "TrailNotFoundException" = "TrailNotFoundException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrailNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrailNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeQueryRequest { @@ -2174,13 +2706,25 @@ export namespace GetInsightSelectorsResponse { /** *

If you run GetInsightSelectors on a trail that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException.

*/ -export interface InsightNotEnabledException extends __SmithyException, $MetadataBearer { - name: "InsightNotEnabledException"; - $fault: "client"; +export class InsightNotEnabledException extends __BaseException { + readonly name: "InsightNotEnabledException" = "InsightNotEnabledException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsightNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsightNotEnabledException.prototype); + this.Message = opts.Message; + } } export interface GetQueryResultsRequest { @@ -2278,25 +2822,49 @@ export namespace GetQueryResultsResponse { /** *

This exception is thrown if the limit specified is not valid.

*/ -export interface InvalidMaxResultsException extends __SmithyException, $MetadataBearer { - name: "InvalidMaxResultsException"; - $fault: "client"; +export class InvalidMaxResultsException extends __BaseException { + readonly name: "InvalidMaxResultsException" = "InvalidMaxResultsException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMaxResultsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMaxResultsException.prototype); + this.Message = opts.Message; + } } /** *

A token that is not valid, or a token that was previously used in a request with different parameters. This exception is thrown if the token is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface GetTrailRequest { @@ -2583,25 +3151,49 @@ export namespace ListEventDataStoresResponse { /** *

Occurs if the timestamp values are not valid. Either the start time occurs after the end time, or the time range is outside the range of possible values.

*/ -export interface InvalidTimeRangeException extends __SmithyException, $MetadataBearer { - name: "InvalidTimeRangeException"; - $fault: "client"; +export class InvalidTimeRangeException extends __BaseException { + readonly name: "InvalidTimeRangeException" = "InvalidTimeRangeException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTimeRangeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTimeRangeException.prototype); + this.Message = opts.Message; + } } /** *

Reserved for future use.

*/ -export interface InvalidTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidTokenException"; - $fault: "client"; +export class InvalidTokenException extends __BaseException { + readonly name: "InvalidTokenException" = "InvalidTokenException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTokenException.prototype); + this.Message = opts.Message; + } } /** @@ -2701,25 +3293,49 @@ export namespace ListPublicKeysResponse { * about writing a query, see Create * or edit a query in the CloudTrail User Guide.

*/ -export interface InvalidDateRangeException extends __SmithyException, $MetadataBearer { - name: "InvalidDateRangeException"; - $fault: "client"; +export class InvalidDateRangeException extends __BaseException { + readonly name: "InvalidDateRangeException" = "InvalidDateRangeException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDateRangeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDateRangeException.prototype); + this.Message = opts.Message; + } } /** *

The query status is not valid for the operation.

*/ -export interface InvalidQueryStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidQueryStatusException"; - $fault: "client"; +export class InvalidQueryStatusException extends __BaseException { + readonly name: "InvalidQueryStatusException" = "InvalidQueryStatusException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidQueryStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidQueryStatusException.prototype); + this.Message = opts.Message; + } } export interface ListQueriesRequest { @@ -2968,25 +3584,49 @@ export namespace ListTrailsResponse { /** *

Occurs if an event category that is not valid is specified as a value of EventCategory.

*/ -export interface InvalidEventCategoryException extends __SmithyException, $MetadataBearer { - name: "InvalidEventCategoryException"; - $fault: "client"; +export class InvalidEventCategoryException extends __BaseException { + readonly name: "InvalidEventCategoryException" = "InvalidEventCategoryException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventCategoryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventCategoryException.prototype); + this.Message = opts.Message; + } } /** *

Occurs when a lookup attribute is specified that is not valid.

*/ -export interface InvalidLookupAttributesException extends __SmithyException, $MetadataBearer { - name: "InvalidLookupAttributesException"; - $fault: "client"; +export class InvalidLookupAttributesException extends __BaseException { + readonly name: "InvalidLookupAttributesException" = "InvalidLookupAttributesException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLookupAttributesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLookupAttributesException.prototype); + this.Message = opts.Message; + } } export enum EventCategory { @@ -3213,13 +3853,25 @@ export namespace LookupEventsResponse { * * */ -export interface InvalidEventSelectorsException extends __SmithyException, $MetadataBearer { - name: "InvalidEventSelectorsException"; - $fault: "client"; +export class InvalidEventSelectorsException extends __BaseException { + readonly name: "InvalidEventSelectorsException" = "InvalidEventSelectorsException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventSelectorsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventSelectorsException.prototype); + this.Message = opts.Message; + } } export interface PutEventSelectorsRequest { @@ -3314,13 +3966,25 @@ export namespace PutEventSelectorsResponse { *

The formatting or syntax of the InsightSelectors JSON statement in your PutInsightSelectors or GetInsightSelectors request * is not valid, or the specified insight type in the InsightSelectors statement is not a valid insight type.

*/ -export interface InvalidInsightSelectorsException extends __SmithyException, $MetadataBearer { - name: "InvalidInsightSelectorsException"; - $fault: "client"; +export class InvalidInsightSelectorsException extends __BaseException { + readonly name: "InvalidInsightSelectorsException" = "InvalidInsightSelectorsException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInsightSelectorsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInsightSelectorsException.prototype); + this.Message = opts.Message; + } } export interface PutInsightSelectorsRequest { @@ -3410,13 +4074,25 @@ export namespace RemoveTagsResponse { /** *

The event data store is not in a status that supports the operation.

*/ -export interface InvalidEventDataStoreStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidEventDataStoreStatusException"; - $fault: "client"; +export class InvalidEventDataStoreStatusException extends __BaseException { + readonly name: "InvalidEventDataStoreStatusException" = "InvalidEventDataStoreStatusException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventDataStoreStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventDataStoreStatusException.prototype); + this.Message = opts.Message; + } } export interface RestoreEventDataStoreRequest { @@ -3540,26 +4216,50 @@ export namespace StartLoggingResponse { * about writing a query, see Create * or edit a query in the CloudTrail User Guide.

*/ -export interface InvalidQueryStatementException extends __SmithyException, $MetadataBearer { - name: "InvalidQueryStatementException"; - $fault: "client"; +export class InvalidQueryStatementException extends __BaseException { + readonly name: "InvalidQueryStatementException" = "InvalidQueryStatementException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidQueryStatementException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidQueryStatementException.prototype); + this.Message = opts.Message; + } } /** *

You are already running the maximum number of concurrent queries. Wait a minute for some queries to finish, and then * run the query again.

*/ -export interface MaxConcurrentQueriesException extends __SmithyException, $MetadataBearer { - name: "MaxConcurrentQueriesException"; - $fault: "client"; +export class MaxConcurrentQueriesException extends __BaseException { + readonly name: "MaxConcurrentQueriesException" = "MaxConcurrentQueriesException"; + readonly $fault: "client" = "client"; /** *

Brief description of the exception returned by the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxConcurrentQueriesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxConcurrentQueriesException.prototype); + this.Message = opts.Message; + } } export interface StartQueryRequest { diff --git a/clients/client-cloudtrail/src/protocols/Aws_json1_1.ts b/clients/client-cloudtrail/src/protocols/Aws_json1_1.ts index b719f492fee7e..39bee60f22150 100644 --- a/clients/client-cloudtrail/src/protocols/Aws_json1_1.ts +++ b/clients/client-cloudtrail/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddTagsCommandInput, AddTagsCommandOutput } from "../commands/AddTagsCommand"; @@ -67,6 +66,7 @@ import { UpdateEventDataStoreCommandOutput, } from "../commands/UpdateEventDataStoreCommand"; import { UpdateTrailCommandInput, UpdateTrailCommandOutput } from "../commands/UpdateTrailCommand"; +import { CloudTrailServiceException as __BaseException } from "../models/CloudTrailServiceException"; import { AddTagsRequest, AddTagsResponse, @@ -605,121 +605,55 @@ const deserializeAws_json1_1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailARNInvalidException": case "com.amazonaws.cloudtrail#CloudTrailARNInvalidException": - response = { - ...(await deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloudtrail#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.cloudtrail#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudtrail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceTypeNotSupportedException": case "com.amazonaws.cloudtrail#ResourceTypeNotSupportedException": - response = { - ...(await deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse(parsedOutput, context); case "TagsLimitExceededException": case "com.amazonaws.cloudtrail#TagsLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagsLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelQueryCommand = async ( @@ -747,97 +681,46 @@ const deserializeAws_json1_1CancelQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.cloudtrail#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InactiveQueryException": case "com.amazonaws.cloudtrail#InactiveQueryException": - response = { - ...(await deserializeAws_json1_1InactiveQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveQueryExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "QueryIdNotFoundException": case "com.amazonaws.cloudtrail#QueryIdNotFoundException": - response = { - ...(await deserializeAws_json1_1QueryIdNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1QueryIdNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEventDataStoreCommand = async ( @@ -865,124 +748,58 @@ const deserializeAws_json1_1CreateEventDataStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailAccessNotEnabledException": case "com.amazonaws.cloudtrail#CloudTrailAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloudtrail#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EventDataStoreAlreadyExistsException": case "com.amazonaws.cloudtrail#EventDataStoreAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EventDataStoreAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreAlreadyExistsExceptionResponse(parsedOutput, context); case "EventDataStoreMaxLimitExceededException": case "com.amazonaws.cloudtrail#EventDataStoreMaxLimitExceededException": - response = { - ...(await deserializeAws_json1_1EventDataStoreMaxLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreMaxLimitExceededExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.cloudtrail#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "OrganizationNotInAllFeaturesModeException": case "com.amazonaws.cloudtrail#OrganizationNotInAllFeaturesModeException": - response = { - ...(await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context); case "OrganizationsNotInUseException": case "com.amazonaws.cloudtrail#OrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTrailCommand = async ( @@ -1010,260 +827,109 @@ const deserializeAws_json1_1CreateTrailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailAccessNotEnabledException": case "com.amazonaws.cloudtrail#CloudTrailAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context); case "CloudTrailInvalidClientTokenIdException": case "com.amazonaws.cloudtrail#CloudTrailInvalidClientTokenIdException": - response = { - ...(await deserializeAws_json1_1CloudTrailInvalidClientTokenIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailInvalidClientTokenIdExceptionResponse(parsedOutput, context); case "CloudWatchLogsDeliveryUnavailableException": case "com.amazonaws.cloudtrail#CloudWatchLogsDeliveryUnavailableException": - response = { - ...(await deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.cloudtrail#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InsufficientEncryptionPolicyException": case "com.amazonaws.cloudtrail#InsufficientEncryptionPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse(parsedOutput, context); case "InsufficientS3BucketPolicyException": case "com.amazonaws.cloudtrail#InsufficientS3BucketPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse(parsedOutput, context); case "InsufficientSnsTopicPolicyException": case "com.amazonaws.cloudtrail#InsufficientSnsTopicPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientSnsTopicPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientSnsTopicPolicyExceptionResponse(parsedOutput, context); case "InvalidCloudWatchLogsLogGroupArnException": case "com.amazonaws.cloudtrail#InvalidCloudWatchLogsLogGroupArnException": - response = { - ...(await deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnExceptionResponse(parsedOutput, context); case "InvalidCloudWatchLogsRoleArnException": case "com.amazonaws.cloudtrail#InvalidCloudWatchLogsRoleArnException": - response = { - ...(await deserializeAws_json1_1InvalidCloudWatchLogsRoleArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCloudWatchLogsRoleArnExceptionResponse(parsedOutput, context); case "InvalidKmsKeyIdException": case "com.amazonaws.cloudtrail#InvalidKmsKeyIdException": - response = { - ...(await deserializeAws_json1_1InvalidKmsKeyIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKmsKeyIdExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudtrail#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidS3BucketNameException": case "com.amazonaws.cloudtrail#InvalidS3BucketNameException": - response = { - ...(await deserializeAws_json1_1InvalidS3BucketNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3BucketNameExceptionResponse(parsedOutput, context); case "InvalidS3PrefixException": case "com.amazonaws.cloudtrail#InvalidS3PrefixException": - response = { - ...(await deserializeAws_json1_1InvalidS3PrefixExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3PrefixExceptionResponse(parsedOutput, context); case "InvalidSnsTopicNameException": case "com.amazonaws.cloudtrail#InvalidSnsTopicNameException": - response = { - ...(await deserializeAws_json1_1InvalidSnsTopicNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSnsTopicNameExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.cloudtrail#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.cloudtrail#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "KmsKeyDisabledException": case "com.amazonaws.cloudtrail#KmsKeyDisabledException": - response = { - ...(await deserializeAws_json1_1KmsKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyDisabledExceptionResponse(parsedOutput, context); case "KmsKeyNotFoundException": case "com.amazonaws.cloudtrail#KmsKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1KmsKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyNotFoundExceptionResponse(parsedOutput, context); case "MaximumNumberOfTrailsExceededException": case "com.amazonaws.cloudtrail#MaximumNumberOfTrailsExceededException": - response = { - ...(await deserializeAws_json1_1MaximumNumberOfTrailsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumNumberOfTrailsExceededExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "OrganizationNotInAllFeaturesModeException": case "com.amazonaws.cloudtrail#OrganizationNotInAllFeaturesModeException": - response = { - ...(await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context); case "OrganizationsNotInUseException": case "com.amazonaws.cloudtrail#OrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context); case "S3BucketDoesNotExistException": case "com.amazonaws.cloudtrail#S3BucketDoesNotExistException": - response = { - ...(await deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse(parsedOutput, context); case "TrailAlreadyExistsException": case "com.amazonaws.cloudtrail#TrailAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1TrailAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailAlreadyExistsExceptionResponse(parsedOutput, context); case "TrailNotProvidedException": case "com.amazonaws.cloudtrail#TrailNotProvidedException": - response = { - ...(await deserializeAws_json1_1TrailNotProvidedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotProvidedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventDataStoreCommand = async ( @@ -1291,92 +957,46 @@ const deserializeAws_json1_1DeleteEventDataStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "EventDataStoreTerminationProtectedException": case "com.amazonaws.cloudtrail#EventDataStoreTerminationProtectedException": - response = { - ...(await deserializeAws_json1_1EventDataStoreTerminationProtectedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreTerminationProtectedExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTrailCommand = async ( @@ -1404,92 +1024,46 @@ const deserializeAws_json1_1DeleteTrailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.cloudtrail#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidHomeRegionException": case "com.amazonaws.cloudtrail#InvalidHomeRegionException": - response = { - ...(await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeQueryCommand = async ( @@ -1517,81 +1091,40 @@ const deserializeAws_json1_1DescribeQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "QueryIdNotFoundException": case "com.amazonaws.cloudtrail#QueryIdNotFoundException": - response = { - ...(await deserializeAws_json1_1QueryIdNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1QueryIdNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrailsCommand = async ( @@ -1619,49 +1152,28 @@ const deserializeAws_json1_1DescribeTrailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEventDataStoreCommand = async ( @@ -1689,65 +1201,34 @@ const deserializeAws_json1_1GetEventDataStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEventSelectorsCommand = async ( @@ -1775,57 +1256,31 @@ const deserializeAws_json1_1GetEventSelectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInsightSelectorsCommand = async ( @@ -1853,65 +1308,34 @@ const deserializeAws_json1_1GetInsightSelectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsightNotEnabledException": case "com.amazonaws.cloudtrail#InsightNotEnabledException": - response = { - ...(await deserializeAws_json1_1InsightNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsightNotEnabledExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQueryResultsCommand = async ( @@ -1939,97 +1363,46 @@ const deserializeAws_json1_1GetQueryResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.cloudtrail#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.cloudtrail#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "QueryIdNotFoundException": case "com.amazonaws.cloudtrail#QueryIdNotFoundException": - response = { - ...(await deserializeAws_json1_1QueryIdNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1QueryIdNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTrailCommand = async ( @@ -2057,57 +1430,31 @@ const deserializeAws_json1_1GetTrailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTrailStatusCommand = async ( @@ -2135,57 +1482,31 @@ const deserializeAws_json1_1GetTrailStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventDataStoresCommand = async ( @@ -2213,57 +1534,31 @@ const deserializeAws_json1_1ListEventDataStoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidMaxResultsException": case "com.amazonaws.cloudtrail#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.cloudtrail#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPublicKeysCommand = async ( @@ -2291,57 +1586,31 @@ const deserializeAws_json1_1ListPublicKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTimeRangeException": case "com.amazonaws.cloudtrail#InvalidTimeRangeException": - response = { - ...(await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.cloudtrail#InvalidTokenException": - response = { - ...(await deserializeAws_json1_1InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTokenExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListQueriesCommand = async ( @@ -2369,105 +1638,49 @@ const deserializeAws_json1_1ListQueriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidDateRangeException": case "com.amazonaws.cloudtrail#InvalidDateRangeException": - response = { - ...(await deserializeAws_json1_1InvalidDateRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDateRangeExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.cloudtrail#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.cloudtrail#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidQueryStatusException": case "com.amazonaws.cloudtrail#InvalidQueryStatusException": - response = { - ...(await deserializeAws_json1_1InvalidQueryStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidQueryStatusExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -2495,97 +1708,46 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailARNInvalidException": case "com.amazonaws.cloudtrail#CloudTrailARNInvalidException": - response = { - ...(await deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.cloudtrail#InvalidTokenException": - response = { - ...(await deserializeAws_json1_1InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTokenExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudtrail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceTypeNotSupportedException": case "com.amazonaws.cloudtrail#ResourceTypeNotSupportedException": - response = { - ...(await deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTrailsCommand = async ( @@ -2613,41 +1775,25 @@ const deserializeAws_json1_1ListTrailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1LookupEventsCommand = async ( @@ -2675,81 +1821,40 @@ const deserializeAws_json1_1LookupEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEventCategoryException": case "com.amazonaws.cloudtrail#InvalidEventCategoryException": - response = { - ...(await deserializeAws_json1_1InvalidEventCategoryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventCategoryExceptionResponse(parsedOutput, context); case "InvalidLookupAttributesException": case "com.amazonaws.cloudtrail#InvalidLookupAttributesException": - response = { - ...(await deserializeAws_json1_1InvalidLookupAttributesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLookupAttributesExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.cloudtrail#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.cloudtrail#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidTimeRangeException": case "com.amazonaws.cloudtrail#InvalidTimeRangeException": - response = { - ...(await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEventSelectorsCommand = async ( @@ -2777,92 +1882,46 @@ const deserializeAws_json1_1PutEventSelectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidEventSelectorsException": case "com.amazonaws.cloudtrail#InvalidEventSelectorsException": - response = { - ...(await deserializeAws_json1_1InvalidEventSelectorsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventSelectorsExceptionResponse(parsedOutput, context); case "InvalidHomeRegionException": case "com.amazonaws.cloudtrail#InvalidHomeRegionException": - response = { - ...(await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutInsightSelectorsCommand = async ( @@ -2890,113 +1949,52 @@ const deserializeAws_json1_1PutInsightSelectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientEncryptionPolicyException": case "com.amazonaws.cloudtrail#InsufficientEncryptionPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse(parsedOutput, context); case "InsufficientS3BucketPolicyException": case "com.amazonaws.cloudtrail#InsufficientS3BucketPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse(parsedOutput, context); case "InvalidHomeRegionException": case "com.amazonaws.cloudtrail#InvalidHomeRegionException": - response = { - ...(await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context); case "InvalidInsightSelectorsException": case "com.amazonaws.cloudtrail#InvalidInsightSelectorsException": - response = { - ...(await deserializeAws_json1_1InvalidInsightSelectorsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInsightSelectorsExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.cloudtrail#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "S3BucketDoesNotExistException": case "com.amazonaws.cloudtrail#S3BucketDoesNotExistException": - response = { - ...(await deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsCommand = async ( @@ -3024,105 +2022,49 @@ const deserializeAws_json1_1RemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailARNInvalidException": case "com.amazonaws.cloudtrail#CloudTrailARNInvalidException": - response = { - ...(await deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.cloudtrail#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudtrail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceTypeNotSupportedException": case "com.amazonaws.cloudtrail#ResourceTypeNotSupportedException": - response = { - ...(await deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreEventDataStoreCommand = async ( @@ -3150,124 +2092,58 @@ const deserializeAws_json1_1RestoreEventDataStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailAccessNotEnabledException": case "com.amazonaws.cloudtrail#CloudTrailAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context); case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreMaxLimitExceededException": case "com.amazonaws.cloudtrail#EventDataStoreMaxLimitExceededException": - response = { - ...(await deserializeAws_json1_1EventDataStoreMaxLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreMaxLimitExceededExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidEventDataStoreStatusException": case "com.amazonaws.cloudtrail#InvalidEventDataStoreStatusException": - response = { - ...(await deserializeAws_json1_1InvalidEventDataStoreStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventDataStoreStatusExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "OrganizationNotInAllFeaturesModeException": case "com.amazonaws.cloudtrail#OrganizationNotInAllFeaturesModeException": - response = { - ...(await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context); case "OrganizationsNotInUseException": case "com.amazonaws.cloudtrail#OrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartLoggingCommand = async ( @@ -3295,84 +2171,43 @@ const deserializeAws_json1_1StartLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidHomeRegionException": case "com.amazonaws.cloudtrail#InvalidHomeRegionException": - response = { - ...(await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartQueryCommand = async ( @@ -3400,89 +2235,43 @@ const deserializeAws_json1_1StartQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidQueryStatementException": case "com.amazonaws.cloudtrail#InvalidQueryStatementException": - response = { - ...(await deserializeAws_json1_1InvalidQueryStatementExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidQueryStatementExceptionResponse(parsedOutput, context); case "MaxConcurrentQueriesException": case "com.amazonaws.cloudtrail#MaxConcurrentQueriesException": - response = { - ...(await deserializeAws_json1_1MaxConcurrentQueriesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxConcurrentQueriesExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopLoggingCommand = async ( @@ -3510,84 +2299,43 @@ const deserializeAws_json1_1StopLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidHomeRegionException": case "com.amazonaws.cloudtrail#InvalidHomeRegionException": - response = { - ...(await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEventDataStoreCommand = async ( @@ -3615,116 +2363,55 @@ const deserializeAws_json1_1UpdateEventDataStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailAccessNotEnabledException": case "com.amazonaws.cloudtrail#CloudTrailAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context); case "EventDataStoreARNInvalidException": case "com.amazonaws.cloudtrail#EventDataStoreARNInvalidException": - response = { - ...(await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse(parsedOutput, context); case "EventDataStoreNotFoundException": case "com.amazonaws.cloudtrail#EventDataStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse(parsedOutput, context); case "InactiveEventDataStoreException": case "com.amazonaws.cloudtrail#InactiveEventDataStoreException": - response = { - ...(await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InactiveEventDataStoreExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InvalidParameterException": case "com.amazonaws.cloudtrail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "OrganizationNotInAllFeaturesModeException": case "com.amazonaws.cloudtrail#OrganizationNotInAllFeaturesModeException": - response = { - ...(await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context); case "OrganizationsNotInUseException": case "com.amazonaws.cloudtrail#OrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTrailCommand = async ( @@ -3752,252 +2439,106 @@ const deserializeAws_json1_1UpdateTrailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudTrailAccessNotEnabledException": case "com.amazonaws.cloudtrail#CloudTrailAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse(parsedOutput, context); case "CloudTrailInvalidClientTokenIdException": case "com.amazonaws.cloudtrail#CloudTrailInvalidClientTokenIdException": - response = { - ...(await deserializeAws_json1_1CloudTrailInvalidClientTokenIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudTrailInvalidClientTokenIdExceptionResponse(parsedOutput, context); case "CloudWatchLogsDeliveryUnavailableException": case "com.amazonaws.cloudtrail#CloudWatchLogsDeliveryUnavailableException": - response = { - ...(await deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableExceptionResponse(parsedOutput, context); case "InsufficientDependencyServiceAccessPermissionException": case "com.amazonaws.cloudtrail#InsufficientDependencyServiceAccessPermissionException": - response = { - ...(await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse( + parsedOutput, + context + ); case "InsufficientEncryptionPolicyException": case "com.amazonaws.cloudtrail#InsufficientEncryptionPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse(parsedOutput, context); case "InsufficientS3BucketPolicyException": case "com.amazonaws.cloudtrail#InsufficientS3BucketPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse(parsedOutput, context); case "InsufficientSnsTopicPolicyException": case "com.amazonaws.cloudtrail#InsufficientSnsTopicPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientSnsTopicPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientSnsTopicPolicyExceptionResponse(parsedOutput, context); case "InvalidCloudWatchLogsLogGroupArnException": case "com.amazonaws.cloudtrail#InvalidCloudWatchLogsLogGroupArnException": - response = { - ...(await deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnExceptionResponse(parsedOutput, context); case "InvalidCloudWatchLogsRoleArnException": case "com.amazonaws.cloudtrail#InvalidCloudWatchLogsRoleArnException": - response = { - ...(await deserializeAws_json1_1InvalidCloudWatchLogsRoleArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCloudWatchLogsRoleArnExceptionResponse(parsedOutput, context); case "InvalidEventSelectorsException": case "com.amazonaws.cloudtrail#InvalidEventSelectorsException": - response = { - ...(await deserializeAws_json1_1InvalidEventSelectorsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventSelectorsExceptionResponse(parsedOutput, context); case "InvalidHomeRegionException": case "com.amazonaws.cloudtrail#InvalidHomeRegionException": - response = { - ...(await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHomeRegionExceptionResponse(parsedOutput, context); case "InvalidKmsKeyIdException": case "com.amazonaws.cloudtrail#InvalidKmsKeyIdException": - response = { - ...(await deserializeAws_json1_1InvalidKmsKeyIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKmsKeyIdExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudtrail#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidS3BucketNameException": case "com.amazonaws.cloudtrail#InvalidS3BucketNameException": - response = { - ...(await deserializeAws_json1_1InvalidS3BucketNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3BucketNameExceptionResponse(parsedOutput, context); case "InvalidS3PrefixException": case "com.amazonaws.cloudtrail#InvalidS3PrefixException": - response = { - ...(await deserializeAws_json1_1InvalidS3PrefixExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3PrefixExceptionResponse(parsedOutput, context); case "InvalidSnsTopicNameException": case "com.amazonaws.cloudtrail#InvalidSnsTopicNameException": - response = { - ...(await deserializeAws_json1_1InvalidSnsTopicNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSnsTopicNameExceptionResponse(parsedOutput, context); case "InvalidTrailNameException": case "com.amazonaws.cloudtrail#InvalidTrailNameException": - response = { - ...(await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrailNameExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.cloudtrail#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "KmsKeyDisabledException": case "com.amazonaws.cloudtrail#KmsKeyDisabledException": - response = { - ...(await deserializeAws_json1_1KmsKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyDisabledExceptionResponse(parsedOutput, context); case "KmsKeyNotFoundException": case "com.amazonaws.cloudtrail#KmsKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1KmsKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyNotFoundExceptionResponse(parsedOutput, context); case "NotOrganizationMasterAccountException": case "com.amazonaws.cloudtrail#NotOrganizationMasterAccountException": - response = { - ...(await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.cloudtrail#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "OrganizationNotInAllFeaturesModeException": case "com.amazonaws.cloudtrail#OrganizationNotInAllFeaturesModeException": - response = { - ...(await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context); case "OrganizationsNotInUseException": case "com.amazonaws.cloudtrail#OrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationsNotInUseExceptionResponse(parsedOutput, context); case "S3BucketDoesNotExistException": case "com.amazonaws.cloudtrail#S3BucketDoesNotExistException": - response = { - ...(await deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse(parsedOutput, context); case "TrailNotFoundException": case "com.amazonaws.cloudtrail#TrailNotFoundException": - response = { - ...(await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotFoundExceptionResponse(parsedOutput, context); case "TrailNotProvidedException": case "com.amazonaws.cloudtrail#TrailNotProvidedException": - response = { - ...(await deserializeAws_json1_1TrailNotProvidedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TrailNotProvidedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cloudtrail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse = async ( @@ -4006,13 +2547,11 @@ const deserializeAws_json1_1CloudTrailAccessNotEnabledExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudTrailAccessNotEnabledException(body, context); - const contents: CloudTrailAccessNotEnabledException = { - name: "CloudTrailAccessNotEnabledException", - $fault: "client", + const exception = new CloudTrailAccessNotEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse = async ( @@ -4021,13 +2560,11 @@ const deserializeAws_json1_1CloudTrailARNInvalidExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudTrailARNInvalidException(body, context); - const contents: CloudTrailARNInvalidException = { - name: "CloudTrailARNInvalidException", - $fault: "client", + const exception = new CloudTrailARNInvalidException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudTrailInvalidClientTokenIdExceptionResponse = async ( @@ -4036,13 +2573,11 @@ const deserializeAws_json1_1CloudTrailInvalidClientTokenIdExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudTrailInvalidClientTokenIdException(body, context); - const contents: CloudTrailInvalidClientTokenIdException = { - name: "CloudTrailInvalidClientTokenIdException", - $fault: "client", + const exception = new CloudTrailInvalidClientTokenIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableExceptionResponse = async ( @@ -4051,13 +2586,11 @@ const deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudWatchLogsDeliveryUnavailableException(body, context); - const contents: CloudWatchLogsDeliveryUnavailableException = { - name: "CloudWatchLogsDeliveryUnavailableException", - $fault: "client", + const exception = new CloudWatchLogsDeliveryUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -4066,13 +2599,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EventDataStoreAlreadyExistsExceptionResponse = async ( @@ -4081,13 +2612,11 @@ const deserializeAws_json1_1EventDataStoreAlreadyExistsExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EventDataStoreAlreadyExistsException(body, context); - const contents: EventDataStoreAlreadyExistsException = { - name: "EventDataStoreAlreadyExistsException", - $fault: "client", + const exception = new EventDataStoreAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse = async ( @@ -4096,13 +2625,11 @@ const deserializeAws_json1_1EventDataStoreARNInvalidExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EventDataStoreARNInvalidException(body, context); - const contents: EventDataStoreARNInvalidException = { - name: "EventDataStoreARNInvalidException", - $fault: "client", + const exception = new EventDataStoreARNInvalidException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EventDataStoreMaxLimitExceededExceptionResponse = async ( @@ -4111,13 +2638,11 @@ const deserializeAws_json1_1EventDataStoreMaxLimitExceededExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EventDataStoreMaxLimitExceededException(body, context); - const contents: EventDataStoreMaxLimitExceededException = { - name: "EventDataStoreMaxLimitExceededException", - $fault: "client", + const exception = new EventDataStoreMaxLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse = async ( @@ -4126,13 +2651,11 @@ const deserializeAws_json1_1EventDataStoreNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EventDataStoreNotFoundException(body, context); - const contents: EventDataStoreNotFoundException = { - name: "EventDataStoreNotFoundException", - $fault: "client", + const exception = new EventDataStoreNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EventDataStoreTerminationProtectedExceptionResponse = async ( @@ -4141,13 +2664,11 @@ const deserializeAws_json1_1EventDataStoreTerminationProtectedExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EventDataStoreTerminationProtectedException(body, context); - const contents: EventDataStoreTerminationProtectedException = { - name: "EventDataStoreTerminationProtectedException", - $fault: "client", + const exception = new EventDataStoreTerminationProtectedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InactiveEventDataStoreExceptionResponse = async ( @@ -4156,13 +2677,11 @@ const deserializeAws_json1_1InactiveEventDataStoreExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InactiveEventDataStoreException(body, context); - const contents: InactiveEventDataStoreException = { - name: "InactiveEventDataStoreException", - $fault: "client", + const exception = new InactiveEventDataStoreException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InactiveQueryExceptionResponse = async ( @@ -4171,13 +2690,11 @@ const deserializeAws_json1_1InactiveQueryExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InactiveQueryException(body, context); - const contents: InactiveQueryException = { - name: "InactiveQueryException", - $fault: "client", + const exception = new InactiveQueryException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsightNotEnabledExceptionResponse = async ( @@ -4186,13 +2703,11 @@ const deserializeAws_json1_1InsightNotEnabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsightNotEnabledException(body, context); - const contents: InsightNotEnabledException = { - name: "InsightNotEnabledException", - $fault: "client", + const exception = new InsightNotEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExceptionResponse = async ( @@ -4201,13 +2716,11 @@ const deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionExcepti ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientDependencyServiceAccessPermissionException(body, context); - const contents: InsufficientDependencyServiceAccessPermissionException = { - name: "InsufficientDependencyServiceAccessPermissionException", - $fault: "client", + const exception = new InsufficientDependencyServiceAccessPermissionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse = async ( @@ -4216,13 +2729,11 @@ const deserializeAws_json1_1InsufficientEncryptionPolicyExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientEncryptionPolicyException(body, context); - const contents: InsufficientEncryptionPolicyException = { - name: "InsufficientEncryptionPolicyException", - $fault: "client", + const exception = new InsufficientEncryptionPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse = async ( @@ -4231,13 +2742,11 @@ const deserializeAws_json1_1InsufficientS3BucketPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientS3BucketPolicyException(body, context); - const contents: InsufficientS3BucketPolicyException = { - name: "InsufficientS3BucketPolicyException", - $fault: "client", + const exception = new InsufficientS3BucketPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientSnsTopicPolicyExceptionResponse = async ( @@ -4246,13 +2755,11 @@ const deserializeAws_json1_1InsufficientSnsTopicPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientSnsTopicPolicyException(body, context); - const contents: InsufficientSnsTopicPolicyException = { - name: "InsufficientSnsTopicPolicyException", - $fault: "client", + const exception = new InsufficientSnsTopicPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnExceptionResponse = async ( @@ -4261,13 +2768,11 @@ const deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCloudWatchLogsLogGroupArnException(body, context); - const contents: InvalidCloudWatchLogsLogGroupArnException = { - name: "InvalidCloudWatchLogsLogGroupArnException", - $fault: "client", + const exception = new InvalidCloudWatchLogsLogGroupArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCloudWatchLogsRoleArnExceptionResponse = async ( @@ -4276,13 +2781,11 @@ const deserializeAws_json1_1InvalidCloudWatchLogsRoleArnExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCloudWatchLogsRoleArnException(body, context); - const contents: InvalidCloudWatchLogsRoleArnException = { - name: "InvalidCloudWatchLogsRoleArnException", - $fault: "client", + const exception = new InvalidCloudWatchLogsRoleArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDateRangeExceptionResponse = async ( @@ -4291,13 +2794,11 @@ const deserializeAws_json1_1InvalidDateRangeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDateRangeException(body, context); - const contents: InvalidDateRangeException = { - name: "InvalidDateRangeException", - $fault: "client", + const exception = new InvalidDateRangeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEventCategoryExceptionResponse = async ( @@ -4306,13 +2807,11 @@ const deserializeAws_json1_1InvalidEventCategoryExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEventCategoryException(body, context); - const contents: InvalidEventCategoryException = { - name: "InvalidEventCategoryException", - $fault: "client", + const exception = new InvalidEventCategoryException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEventDataStoreStatusExceptionResponse = async ( @@ -4321,13 +2820,11 @@ const deserializeAws_json1_1InvalidEventDataStoreStatusExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEventDataStoreStatusException(body, context); - const contents: InvalidEventDataStoreStatusException = { - name: "InvalidEventDataStoreStatusException", - $fault: "client", + const exception = new InvalidEventDataStoreStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEventSelectorsExceptionResponse = async ( @@ -4336,13 +2833,11 @@ const deserializeAws_json1_1InvalidEventSelectorsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEventSelectorsException(body, context); - const contents: InvalidEventSelectorsException = { - name: "InvalidEventSelectorsException", - $fault: "client", + const exception = new InvalidEventSelectorsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidHomeRegionExceptionResponse = async ( @@ -4351,13 +2846,11 @@ const deserializeAws_json1_1InvalidHomeRegionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidHomeRegionException(body, context); - const contents: InvalidHomeRegionException = { - name: "InvalidHomeRegionException", - $fault: "client", + const exception = new InvalidHomeRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInsightSelectorsExceptionResponse = async ( @@ -4366,13 +2859,11 @@ const deserializeAws_json1_1InvalidInsightSelectorsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInsightSelectorsException(body, context); - const contents: InvalidInsightSelectorsException = { - name: "InvalidInsightSelectorsException", - $fault: "client", + const exception = new InvalidInsightSelectorsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKmsKeyIdExceptionResponse = async ( @@ -4381,13 +2872,11 @@ const deserializeAws_json1_1InvalidKmsKeyIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKmsKeyIdException(body, context); - const contents: InvalidKmsKeyIdException = { - name: "InvalidKmsKeyIdException", - $fault: "client", + const exception = new InvalidKmsKeyIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLookupAttributesExceptionResponse = async ( @@ -4396,13 +2885,11 @@ const deserializeAws_json1_1InvalidLookupAttributesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLookupAttributesException(body, context); - const contents: InvalidLookupAttributesException = { - name: "InvalidLookupAttributesException", - $fault: "client", + const exception = new InvalidLookupAttributesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMaxResultsExceptionResponse = async ( @@ -4411,13 +2898,11 @@ const deserializeAws_json1_1InvalidMaxResultsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMaxResultsException(body, context); - const contents: InvalidMaxResultsException = { - name: "InvalidMaxResultsException", - $fault: "client", + const exception = new InvalidMaxResultsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -4426,13 +2911,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ( @@ -4441,13 +2924,11 @@ const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterCombinationException(body, context); - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", + const exception = new InvalidParameterCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -4456,13 +2937,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidQueryStatementExceptionResponse = async ( @@ -4471,13 +2950,11 @@ const deserializeAws_json1_1InvalidQueryStatementExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidQueryStatementException(body, context); - const contents: InvalidQueryStatementException = { - name: "InvalidQueryStatementException", - $fault: "client", + const exception = new InvalidQueryStatementException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidQueryStatusExceptionResponse = async ( @@ -4486,13 +2963,11 @@ const deserializeAws_json1_1InvalidQueryStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidQueryStatusException(body, context); - const contents: InvalidQueryStatusException = { - name: "InvalidQueryStatusException", - $fault: "client", + const exception = new InvalidQueryStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidS3BucketNameExceptionResponse = async ( @@ -4501,13 +2976,11 @@ const deserializeAws_json1_1InvalidS3BucketNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidS3BucketNameException(body, context); - const contents: InvalidS3BucketNameException = { - name: "InvalidS3BucketNameException", - $fault: "client", + const exception = new InvalidS3BucketNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidS3PrefixExceptionResponse = async ( @@ -4516,13 +2989,11 @@ const deserializeAws_json1_1InvalidS3PrefixExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidS3PrefixException(body, context); - const contents: InvalidS3PrefixException = { - name: "InvalidS3PrefixException", - $fault: "client", + const exception = new InvalidS3PrefixException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSnsTopicNameExceptionResponse = async ( @@ -4531,13 +3002,11 @@ const deserializeAws_json1_1InvalidSnsTopicNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSnsTopicNameException(body, context); - const contents: InvalidSnsTopicNameException = { - name: "InvalidSnsTopicNameException", - $fault: "client", + const exception = new InvalidSnsTopicNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagParameterExceptionResponse = async ( @@ -4546,13 +3015,11 @@ const deserializeAws_json1_1InvalidTagParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagParameterException(body, context); - const contents: InvalidTagParameterException = { - name: "InvalidTagParameterException", - $fault: "client", + const exception = new InvalidTagParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTimeRangeExceptionResponse = async ( @@ -4561,13 +3028,11 @@ const deserializeAws_json1_1InvalidTimeRangeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTimeRangeException(body, context); - const contents: InvalidTimeRangeException = { - name: "InvalidTimeRangeException", - $fault: "client", + const exception = new InvalidTimeRangeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTokenExceptionResponse = async ( @@ -4576,13 +3041,11 @@ const deserializeAws_json1_1InvalidTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTokenException(body, context); - const contents: InvalidTokenException = { - name: "InvalidTokenException", - $fault: "client", + const exception = new InvalidTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTrailNameExceptionResponse = async ( @@ -4591,13 +3054,11 @@ const deserializeAws_json1_1InvalidTrailNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTrailNameException(body, context); - const contents: InvalidTrailNameException = { - name: "InvalidTrailNameException", - $fault: "client", + const exception = new InvalidTrailNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KmsExceptionResponse = async ( @@ -4606,13 +3067,11 @@ const deserializeAws_json1_1KmsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KmsException(body, context); - const contents: KmsException = { - name: "KmsException", - $fault: "client", + const exception = new KmsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KmsKeyDisabledExceptionResponse = async ( @@ -4621,13 +3080,11 @@ const deserializeAws_json1_1KmsKeyDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KmsKeyDisabledException(body, context); - const contents: KmsKeyDisabledException = { - name: "KmsKeyDisabledException", - $fault: "client", + const exception = new KmsKeyDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KmsKeyNotFoundExceptionResponse = async ( @@ -4636,13 +3093,11 @@ const deserializeAws_json1_1KmsKeyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KmsKeyNotFoundException(body, context); - const contents: KmsKeyNotFoundException = { - name: "KmsKeyNotFoundException", - $fault: "client", + const exception = new KmsKeyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxConcurrentQueriesExceptionResponse = async ( @@ -4651,13 +3106,11 @@ const deserializeAws_json1_1MaxConcurrentQueriesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxConcurrentQueriesException(body, context); - const contents: MaxConcurrentQueriesException = { - name: "MaxConcurrentQueriesException", - $fault: "client", + const exception = new MaxConcurrentQueriesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumNumberOfTrailsExceededExceptionResponse = async ( @@ -4666,13 +3119,11 @@ const deserializeAws_json1_1MaximumNumberOfTrailsExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumNumberOfTrailsExceededException(body, context); - const contents: MaximumNumberOfTrailsExceededException = { - name: "MaximumNumberOfTrailsExceededException", - $fault: "client", + const exception = new MaximumNumberOfTrailsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse = async ( @@ -4681,13 +3132,11 @@ const deserializeAws_json1_1NotOrganizationMasterAccountExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotOrganizationMasterAccountException(body, context); - const contents: NotOrganizationMasterAccountException = { - name: "NotOrganizationMasterAccountException", - $fault: "client", + const exception = new NotOrganizationMasterAccountException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( @@ -4696,13 +3145,11 @@ const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotPermittedException(body, context); - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", + const exception = new OperationNotPermittedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse = async ( @@ -4711,13 +3158,11 @@ const deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationNotInAllFeaturesModeException(body, context); - const contents: OrganizationNotInAllFeaturesModeException = { - name: "OrganizationNotInAllFeaturesModeException", - $fault: "client", + const exception = new OrganizationNotInAllFeaturesModeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationsNotInUseExceptionResponse = async ( @@ -4726,13 +3171,11 @@ const deserializeAws_json1_1OrganizationsNotInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationsNotInUseException(body, context); - const contents: OrganizationsNotInUseException = { - name: "OrganizationsNotInUseException", - $fault: "client", + const exception = new OrganizationsNotInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1QueryIdNotFoundExceptionResponse = async ( @@ -4741,13 +3184,11 @@ const deserializeAws_json1_1QueryIdNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1QueryIdNotFoundException(body, context); - const contents: QueryIdNotFoundException = { - name: "QueryIdNotFoundException", - $fault: "client", + const exception = new QueryIdNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -4756,13 +3197,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse = async ( @@ -4771,13 +3210,11 @@ const deserializeAws_json1_1ResourceTypeNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceTypeNotSupportedException(body, context); - const contents: ResourceTypeNotSupportedException = { - name: "ResourceTypeNotSupportedException", - $fault: "client", + const exception = new ResourceTypeNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse = async ( @@ -4786,13 +3223,11 @@ const deserializeAws_json1_1S3BucketDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1S3BucketDoesNotExistException(body, context); - const contents: S3BucketDoesNotExistException = { - name: "S3BucketDoesNotExistException", - $fault: "client", + const exception = new S3BucketDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagsLimitExceededExceptionResponse = async ( @@ -4801,13 +3236,11 @@ const deserializeAws_json1_1TagsLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagsLimitExceededException(body, context); - const contents: TagsLimitExceededException = { - name: "TagsLimitExceededException", - $fault: "client", + const exception = new TagsLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TrailAlreadyExistsExceptionResponse = async ( @@ -4816,13 +3249,11 @@ const deserializeAws_json1_1TrailAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TrailAlreadyExistsException(body, context); - const contents: TrailAlreadyExistsException = { - name: "TrailAlreadyExistsException", - $fault: "client", + const exception = new TrailAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TrailNotFoundExceptionResponse = async ( @@ -4831,13 +3262,11 @@ const deserializeAws_json1_1TrailNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TrailNotFoundException(body, context); - const contents: TrailNotFoundException = { - name: "TrailNotFoundException", - $fault: "client", + const exception = new TrailNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TrailNotProvidedExceptionResponse = async ( @@ -4846,13 +3275,11 @@ const deserializeAws_json1_1TrailNotProvidedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TrailNotProvidedException(body, context); - const contents: TrailNotProvidedException = { - name: "TrailNotProvidedException", - $fault: "client", + const exception = new TrailNotProvidedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -4861,13 +3288,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsRequest = (input: AddTagsRequest, context: __SerdeContext): any => { diff --git a/clients/client-cloudwatch-events/src/index.ts b/clients/client-cloudwatch-events/src/index.ts index f36bb69b9f14c..cfe7e35da4edb 100644 --- a/clients/client-cloudwatch-events/src/index.ts +++ b/clients/client-cloudwatch-events/src/index.ts @@ -2,3 +2,4 @@ export * from "./CloudWatchEvents"; export * from "./CloudWatchEventsClient"; export * from "./commands"; export * from "./models"; +export { CloudWatchEventsServiceException } from "./models/CloudWatchEventsServiceException"; diff --git a/clients/client-cloudwatch-events/src/models/CloudWatchEventsServiceException.ts b/clients/client-cloudwatch-events/src/models/CloudWatchEventsServiceException.ts new file mode 100644 index 0000000000000..118b71f4858b9 --- /dev/null +++ b/clients/client-cloudwatch-events/src/models/CloudWatchEventsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudWatchEvents service. + */ +export class CloudWatchEventsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudWatchEventsServiceException.prototype); + } +} diff --git a/clients/client-cloudwatch-events/src/models/models_0.ts b/clients/client-cloudwatch-events/src/models/models_0.ts index ca9518ee50ad6..ac6be06c6cf90 100644 --- a/clients/client-cloudwatch-events/src/models/models_0.ts +++ b/clients/client-cloudwatch-events/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudWatchEventsServiceException as __BaseException } from "./CloudWatchEventsServiceException"; export interface ActivateEventSourceRequest { /** @@ -19,46 +22,96 @@ export namespace ActivateEventSourceRequest { /** *

There is concurrent modification on a rule, target, archive, or replay.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** *

This exception occurs due to unexpected causes.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; - message?: string; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + } } /** *

The specified state is not a valid state for an event source.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; - message?: string; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + } } /** *

The operation you are attempting is not available in this region.

*/ -export interface OperationDisabledException extends __SmithyException, $MetadataBearer { - name: "OperationDisabledException"; - $fault: "client"; - message?: string; +export class OperationDisabledException extends __BaseException { + readonly name: "OperationDisabledException" = "OperationDisabledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationDisabledException.prototype); + } } /** *

An entity that you specified does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum ApiDestinationState { @@ -259,10 +312,20 @@ export namespace CancelReplayResponse { *

An error occurred because a replay can be canceled only when the state is Running or * Starting.

*/ -export interface IllegalStatusException extends __SmithyException, $MetadataBearer { - name: "IllegalStatusException"; - $fault: "client"; - message?: string; +export class IllegalStatusException extends __BaseException { + readonly name: "IllegalStatusException" = "IllegalStatusException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalStatusException.prototype); + } } export interface CreateApiDestinationRequest { @@ -342,19 +405,39 @@ export namespace CreateApiDestinationResponse { *

The request failed because it attempted to create resource beyond the allowed service * quota.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource you are trying to create already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } export interface CreateArchiveRequest { @@ -428,10 +511,20 @@ export namespace CreateArchiveResponse { /** *

The event pattern is not valid.

*/ -export interface InvalidEventPatternException extends __SmithyException, $MetadataBearer { - name: "InvalidEventPatternException"; - $fault: "client"; - message?: string; +export class InvalidEventPatternException extends __BaseException { + readonly name: "InvalidEventPatternException" = "InvalidEventPatternException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventPatternException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventPatternException.prototype); + } } export enum ConnectionAuthorizationType { @@ -1158,10 +1251,20 @@ export namespace DeleteRuleRequest { * using DisableRule, EnableRule, PutTargets, * PutRule, TagResource, or UntagResource.

*/ -export interface ManagedRuleException extends __SmithyException, $MetadataBearer { - name: "ManagedRuleException"; - $fault: "client"; - message?: string; +export class ManagedRuleException extends __BaseException { + readonly name: "ManagedRuleException" = "ManagedRuleException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ManagedRuleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ManagedRuleException.prototype); + } } export interface DescribeApiDestinationRequest { @@ -3996,10 +4099,20 @@ export namespace PutPartnerEventsResponse { /** *

The event bus policy is too long. For more information, see the limits.

*/ -export interface PolicyLengthExceededException extends __SmithyException, $MetadataBearer { - name: "PolicyLengthExceededException"; - $fault: "client"; - message?: string; +export class PolicyLengthExceededException extends __BaseException { + readonly name: "PolicyLengthExceededException" = "PolicyLengthExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyLengthExceededException.prototype); + } } /** diff --git a/clients/client-cloudwatch-events/src/protocols/Aws_json1_1.ts b/clients/client-cloudwatch-events/src/protocols/Aws_json1_1.ts index 45877e0251270..a23034ab65180 100644 --- a/clients/client-cloudwatch-events/src/protocols/Aws_json1_1.ts +++ b/clients/client-cloudwatch-events/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -116,6 +115,7 @@ import { } from "../commands/UpdateApiDestinationCommand"; import { UpdateArchiveCommandInput, UpdateArchiveCommandOutput } from "../commands/UpdateArchiveCommand"; import { UpdateConnectionCommandInput, UpdateConnectionCommandOutput } from "../commands/UpdateConnectionCommand"; +import { CloudWatchEventsServiceException as __BaseException } from "../models/CloudWatchEventsServiceException"; import { ActivateEventSourceRequest, ApiDestination, @@ -966,65 +966,34 @@ const deserializeAws_json1_1ActivateEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.cloudwatchevents#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelReplayCommand = async ( @@ -1052,57 +1021,31 @@ const deserializeAws_json1_1CancelReplayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IllegalStatusException": case "com.amazonaws.cloudwatchevents#IllegalStatusException": - response = { - ...(await deserializeAws_json1_1IllegalStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalStatusExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApiDestinationCommand = async ( @@ -1130,57 +1073,31 @@ const deserializeAws_json1_1CreateApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateArchiveCommand = async ( @@ -1208,73 +1125,37 @@ const deserializeAws_json1_1CreateArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.cloudwatchevents#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConnectionCommand = async ( @@ -1302,49 +1183,28 @@ const deserializeAws_json1_1CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEventBusCommand = async ( @@ -1372,81 +1232,40 @@ const deserializeAws_json1_1CreateEventBusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.cloudwatchevents#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePartnerEventSourceCommand = async ( @@ -1474,65 +1293,34 @@ const deserializeAws_json1_1CreatePartnerEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeactivateEventSourceCommand = async ( @@ -1557,65 +1345,34 @@ const deserializeAws_json1_1DeactivateEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.cloudwatchevents#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeauthorizeConnectionCommand = async ( @@ -1643,49 +1400,28 @@ const deserializeAws_json1_1DeauthorizeConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApiDestinationCommand = async ( @@ -1713,49 +1449,28 @@ const deserializeAws_json1_1DeleteApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteArchiveCommand = async ( @@ -1783,49 +1498,28 @@ const deserializeAws_json1_1DeleteArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectionCommand = async ( @@ -1853,49 +1547,28 @@ const deserializeAws_json1_1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventBusCommand = async ( @@ -1920,41 +1593,25 @@ const deserializeAws_json1_1DeleteEventBusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePartnerEventSourceCommand = async ( @@ -1979,49 +1636,28 @@ const deserializeAws_json1_1DeletePartnerEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleCommand = async ( @@ -2046,57 +1682,31 @@ const deserializeAws_json1_1DeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApiDestinationCommand = async ( @@ -2124,41 +1734,25 @@ const deserializeAws_json1_1DescribeApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeArchiveCommand = async ( @@ -2186,49 +1780,28 @@ const deserializeAws_json1_1DescribeArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionCommand = async ( @@ -2256,41 +1829,25 @@ const deserializeAws_json1_1DescribeConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventBusCommand = async ( @@ -2318,41 +1875,25 @@ const deserializeAws_json1_1DescribeEventBusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventSourceCommand = async ( @@ -2380,49 +1921,28 @@ const deserializeAws_json1_1DescribeEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePartnerEventSourceCommand = async ( @@ -2450,49 +1970,28 @@ const deserializeAws_json1_1DescribePartnerEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplayCommand = async ( @@ -2520,41 +2019,25 @@ const deserializeAws_json1_1DescribeReplayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRuleCommand = async ( @@ -2582,41 +2065,25 @@ const deserializeAws_json1_1DescribeRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableRuleCommand = async ( @@ -2641,57 +2108,31 @@ const deserializeAws_json1_1DisableRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableRuleCommand = async ( @@ -2716,57 +2157,31 @@ const deserializeAws_json1_1EnableRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApiDestinationsCommand = async ( @@ -2794,33 +2209,22 @@ const deserializeAws_json1_1ListApiDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListArchivesCommand = async ( @@ -2848,41 +2252,25 @@ const deserializeAws_json1_1ListArchivesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListConnectionsCommand = async ( @@ -2910,33 +2298,22 @@ const deserializeAws_json1_1ListConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventBusesCommand = async ( @@ -2964,33 +2341,22 @@ const deserializeAws_json1_1ListEventBusesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventSourcesCommand = async ( @@ -3018,41 +2384,25 @@ const deserializeAws_json1_1ListEventSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPartnerEventSourceAccountsCommand = async ( @@ -3080,49 +2430,28 @@ const deserializeAws_json1_1ListPartnerEventSourceAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPartnerEventSourcesCommand = async ( @@ -3150,41 +2479,25 @@ const deserializeAws_json1_1ListPartnerEventSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReplaysCommand = async ( @@ -3212,33 +2525,22 @@ const deserializeAws_json1_1ListReplaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRuleNamesByTargetCommand = async ( @@ -3266,41 +2568,25 @@ const deserializeAws_json1_1ListRuleNamesByTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRulesCommand = async ( @@ -3328,41 +2614,25 @@ const deserializeAws_json1_1ListRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3390,41 +2660,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTargetsByRuleCommand = async ( @@ -3452,41 +2706,25 @@ const deserializeAws_json1_1ListTargetsByRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEventsCommand = async ( @@ -3514,33 +2752,22 @@ const deserializeAws_json1_1PutEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPartnerEventsCommand = async ( @@ -3568,41 +2795,25 @@ const deserializeAws_json1_1PutPartnerEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPermissionCommand = async ( @@ -3627,65 +2838,34 @@ const deserializeAws_json1_1PutPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "PolicyLengthExceededException": case "com.amazonaws.cloudwatchevents#PolicyLengthExceededException": - response = { - ...(await deserializeAws_json1_1PolicyLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyLengthExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRuleCommand = async ( @@ -3713,73 +2893,37 @@ const deserializeAws_json1_1PutRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.cloudwatchevents#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutTargetsCommand = async ( @@ -3807,65 +2951,34 @@ const deserializeAws_json1_1PutTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemovePermissionCommand = async ( @@ -3890,57 +3003,31 @@ const deserializeAws_json1_1RemovePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.cloudwatchevents#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTargetsCommand = async ( @@ -3968,57 +3055,31 @@ const deserializeAws_json1_1RemoveTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartReplayCommand = async ( @@ -4046,65 +3107,34 @@ const deserializeAws_json1_1StartReplayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.cloudwatchevents#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4132,57 +3162,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestEventPatternCommand = async ( @@ -4210,41 +3214,25 @@ const deserializeAws_json1_1TestEventPatternCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.cloudwatchevents#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -4272,57 +3260,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.cloudwatchevents#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApiDestinationCommand = async ( @@ -4350,57 +3312,31 @@ const deserializeAws_json1_1UpdateApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateArchiveCommand = async ( @@ -4428,65 +3364,34 @@ const deserializeAws_json1_1UpdateArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.cloudwatchevents#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConnectionCommand = async ( @@ -4514,57 +3419,31 @@ const deserializeAws_json1_1UpdateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatchevents#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.cloudwatchevents#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchevents#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -4573,13 +3452,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IllegalStatusExceptionResponse = async ( @@ -4588,13 +3465,11 @@ const deserializeAws_json1_1IllegalStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IllegalStatusException(body, context); - const contents: IllegalStatusException = { - name: "IllegalStatusException", - $fault: "client", + const exception = new IllegalStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalExceptionResponse = async ( @@ -4603,13 +3478,11 @@ const deserializeAws_json1_1InternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalException(body, context); - const contents: InternalException = { - name: "InternalException", - $fault: "server", + const exception = new InternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEventPatternExceptionResponse = async ( @@ -4618,13 +3491,11 @@ const deserializeAws_json1_1InvalidEventPatternExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEventPatternException(body, context); - const contents: InvalidEventPatternException = { - name: "InvalidEventPatternException", - $fault: "client", + const exception = new InvalidEventPatternException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -4633,13 +3504,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -4648,13 +3517,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ManagedRuleExceptionResponse = async ( @@ -4663,13 +3530,11 @@ const deserializeAws_json1_1ManagedRuleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ManagedRuleException(body, context); - const contents: ManagedRuleException = { - name: "ManagedRuleException", - $fault: "client", + const exception = new ManagedRuleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationDisabledExceptionResponse = async ( @@ -4678,13 +3543,11 @@ const deserializeAws_json1_1OperationDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationDisabledException(body, context); - const contents: OperationDisabledException = { - name: "OperationDisabledException", - $fault: "client", + const exception = new OperationDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyLengthExceededExceptionResponse = async ( @@ -4693,13 +3556,11 @@ const deserializeAws_json1_1PolicyLengthExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyLengthExceededException(body, context); - const contents: PolicyLengthExceededException = { - name: "PolicyLengthExceededException", - $fault: "client", + const exception = new PolicyLengthExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -4708,13 +3569,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -4723,13 +3582,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActivateEventSourceRequest = ( diff --git a/clients/client-cloudwatch-logs/src/index.ts b/clients/client-cloudwatch-logs/src/index.ts index e62055e1b7b5c..e13da6c3ea548 100644 --- a/clients/client-cloudwatch-logs/src/index.ts +++ b/clients/client-cloudwatch-logs/src/index.ts @@ -3,3 +3,4 @@ export * from "./CloudWatchLogsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CloudWatchLogsServiceException } from "./models/CloudWatchLogsServiceException"; diff --git a/clients/client-cloudwatch-logs/src/models/CloudWatchLogsServiceException.ts b/clients/client-cloudwatch-logs/src/models/CloudWatchLogsServiceException.ts new file mode 100644 index 0000000000000..6239c49f81eee --- /dev/null +++ b/clients/client-cloudwatch-logs/src/models/CloudWatchLogsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudWatchLogs service. + */ +export class CloudWatchLogsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudWatchLogsServiceException.prototype); + } +} diff --git a/clients/client-cloudwatch-logs/src/models/models_0.ts b/clients/client-cloudwatch-logs/src/models/models_0.ts index 87240fe44f742..981db7409d5f0 100644 --- a/clients/client-cloudwatch-logs/src/models/models_0.ts +++ b/clients/client-cloudwatch-logs/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudWatchLogsServiceException as __BaseException } from "./CloudWatchLogsServiceException"; export interface AssociateKmsKeyRequest { /** @@ -25,37 +28,77 @@ export namespace AssociateKmsKeyRequest { /** *

A parameter is specified incorrectly.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

Multiple requests to update the same resource were in conflict.

*/ -export interface OperationAbortedException extends __SmithyException, $MetadataBearer { - name: "OperationAbortedException"; - $fault: "client"; - message?: string; +export class OperationAbortedException extends __BaseException { + readonly name: "OperationAbortedException" = "OperationAbortedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationAbortedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationAbortedException.prototype); + } } /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The service cannot complete the request.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } export interface CancelExportTaskRequest { @@ -77,10 +120,20 @@ export namespace CancelExportTaskRequest { /** *

The operation is not valid on the specified resource.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; - message?: string; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + } } export interface CreateExportTaskRequest { @@ -154,19 +207,39 @@ export namespace CreateExportTaskResponse { /** *

You have reached the maximum number of resources that can be created.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } export interface CreateLogGroupRequest { @@ -225,11 +298,22 @@ export namespace CreateLogStreamRequest { /** *

The event was already logged.

*/ -export interface DataAlreadyAcceptedException extends __SmithyException, $MetadataBearer { - name: "DataAlreadyAcceptedException"; - $fault: "client"; +export class DataAlreadyAcceptedException extends __BaseException { + readonly name: "DataAlreadyAcceptedException" = "DataAlreadyAcceptedException"; + readonly $fault: "client" = "client"; expectedSequenceToken?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataAlreadyAcceptedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataAlreadyAcceptedException.prototype); + this.expectedSequenceToken = opts.expectedSequenceToken; + } } export interface DeleteDestinationRequest { @@ -2025,11 +2109,22 @@ export namespace InputLogEvent { * the expectedSequenceToken field in the InvalidSequenceTokenException * message.

*/ -export interface InvalidSequenceTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidSequenceTokenException"; - $fault: "client"; +export class InvalidSequenceTokenException extends __BaseException { + readonly name: "InvalidSequenceTokenException" = "InvalidSequenceTokenException"; + readonly $fault: "client" = "client"; expectedSequenceToken?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSequenceTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSequenceTokenException.prototype); + this.expectedSequenceToken = opts.expectedSequenceToken; + } } export interface ListTagsLogGroupRequest { @@ -2232,10 +2327,20 @@ export namespace PutLogEventsResponse { /** *

The most likely cause is an invalid Amazon Web Services access key ID or secret key.

*/ -export interface UnrecognizedClientException extends __SmithyException, $MetadataBearer { - name: "UnrecognizedClientException"; - $fault: "client"; - message?: string; +export class UnrecognizedClientException extends __BaseException { + readonly name: "UnrecognizedClientException" = "UnrecognizedClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnrecognizedClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnrecognizedClientException.prototype); + } } export interface PutMetricFilterRequest { @@ -2550,15 +2655,26 @@ export namespace QueryCompileError { *

For more information about valid query syntax, see * CloudWatch Logs Insights Query Syntax.

*/ -export interface MalformedQueryException extends __SmithyException, $MetadataBearer { - name: "MalformedQueryException"; - $fault: "client"; +export class MalformedQueryException extends __BaseException { + readonly name: "MalformedQueryException" = "MalformedQueryException"; + readonly $fault: "client" = "client"; /** *

Reserved.

*/ queryCompileError?: QueryCompileError; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedQueryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedQueryException.prototype); + this.queryCompileError = opts.queryCompileError; + } } export interface StartQueryRequest { diff --git a/clients/client-cloudwatch-logs/src/protocols/Aws_json1_1.ts b/clients/client-cloudwatch-logs/src/protocols/Aws_json1_1.ts index 3a9624e5391fe..c53e91a6cccb0 100644 --- a/clients/client-cloudwatch-logs/src/protocols/Aws_json1_1.ts +++ b/clients/client-cloudwatch-logs/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssociateKmsKeyCommandInput, AssociateKmsKeyCommandOutput } from "../commands/AssociateKmsKeyCommand"; @@ -94,6 +93,7 @@ import { StopQueryCommandInput, StopQueryCommandOutput } from "../commands/StopQ import { TagLogGroupCommandInput, TagLogGroupCommandOutput } from "../commands/TagLogGroupCommand"; import { TestMetricFilterCommandInput, TestMetricFilterCommandOutput } from "../commands/TestMetricFilterCommand"; import { UntagLogGroupCommandInput, UntagLogGroupCommandOutput } from "../commands/UntagLogGroupCommand"; +import { CloudWatchLogsServiceException as __BaseException } from "../models/CloudWatchLogsServiceException"; import { AssociateKmsKeyRequest, CancelExportTaskRequest, @@ -765,57 +765,31 @@ const deserializeAws_json1_1AssociateKmsKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelExportTaskCommand = async ( @@ -840,57 +814,31 @@ const deserializeAws_json1_1CancelExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOperationException": case "com.amazonaws.cloudwatchlogs#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateExportTaskCommand = async ( @@ -918,73 +866,37 @@ const deserializeAws_json1_1CreateExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchlogs#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLogGroupCommand = async ( @@ -1009,65 +921,34 @@ const deserializeAws_json1_1CreateLogGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchlogs#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLogStreamCommand = async ( @@ -1092,57 +973,31 @@ const deserializeAws_json1_1CreateLogStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.cloudwatchlogs#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDestinationCommand = async ( @@ -1167,57 +1022,31 @@ const deserializeAws_json1_1DeleteDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLogGroupCommand = async ( @@ -1242,57 +1071,31 @@ const deserializeAws_json1_1DeleteLogGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLogStreamCommand = async ( @@ -1317,57 +1120,31 @@ const deserializeAws_json1_1DeleteLogStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMetricFilterCommand = async ( @@ -1392,57 +1169,31 @@ const deserializeAws_json1_1DeleteMetricFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteQueryDefinitionCommand = async ( @@ -1470,49 +1221,28 @@ const deserializeAws_json1_1DeleteQueryDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourcePolicyCommand = async ( @@ -1537,49 +1267,28 @@ const deserializeAws_json1_1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRetentionPolicyCommand = async ( @@ -1604,57 +1313,31 @@ const deserializeAws_json1_1DeleteRetentionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSubscriptionFilterCommand = async ( @@ -1679,57 +1362,31 @@ const deserializeAws_json1_1DeleteSubscriptionFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDestinationsCommand = async ( @@ -1757,41 +1414,25 @@ const deserializeAws_json1_1DescribeDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExportTasksCommand = async ( @@ -1819,41 +1460,25 @@ const deserializeAws_json1_1DescribeExportTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLogGroupsCommand = async ( @@ -1881,41 +1506,25 @@ const deserializeAws_json1_1DescribeLogGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLogStreamsCommand = async ( @@ -1943,49 +1552,28 @@ const deserializeAws_json1_1DescribeLogStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMetricFiltersCommand = async ( @@ -2013,49 +1601,28 @@ const deserializeAws_json1_1DescribeMetricFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeQueriesCommand = async ( @@ -2083,49 +1650,28 @@ const deserializeAws_json1_1DescribeQueriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeQueryDefinitionsCommand = async ( @@ -2153,41 +1699,25 @@ const deserializeAws_json1_1DescribeQueryDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeResourcePoliciesCommand = async ( @@ -2215,41 +1745,25 @@ const deserializeAws_json1_1DescribeResourcePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSubscriptionFiltersCommand = async ( @@ -2277,49 +1791,28 @@ const deserializeAws_json1_1DescribeSubscriptionFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateKmsKeyCommand = async ( @@ -2344,57 +1837,31 @@ const deserializeAws_json1_1DisassociateKmsKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1FilterLogEventsCommand = async ( @@ -2422,49 +1889,28 @@ const deserializeAws_json1_1FilterLogEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLogEventsCommand = async ( @@ -2492,49 +1938,28 @@ const deserializeAws_json1_1GetLogEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLogGroupFieldsCommand = async ( @@ -2562,57 +1987,31 @@ const deserializeAws_json1_1GetLogGroupFieldsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLogRecordCommand = async ( @@ -2640,57 +2039,31 @@ const deserializeAws_json1_1GetLogRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQueryResultsCommand = async ( @@ -2718,49 +2091,28 @@ const deserializeAws_json1_1GetQueryResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsLogGroupCommand = async ( @@ -2788,41 +2140,25 @@ const deserializeAws_json1_1ListTagsLogGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutDestinationCommand = async ( @@ -2850,49 +2186,28 @@ const deserializeAws_json1_1PutDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutDestinationPolicyCommand = async ( @@ -2917,49 +2232,28 @@ const deserializeAws_json1_1PutDestinationPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLogEventsCommand = async ( @@ -2987,73 +2281,37 @@ const deserializeAws_json1_1PutLogEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataAlreadyAcceptedException": case "com.amazonaws.cloudwatchlogs#DataAlreadyAcceptedException": - response = { - ...(await deserializeAws_json1_1DataAlreadyAcceptedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataAlreadyAcceptedExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSequenceTokenException": case "com.amazonaws.cloudwatchlogs#InvalidSequenceTokenException": - response = { - ...(await deserializeAws_json1_1InvalidSequenceTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSequenceTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnrecognizedClientException": case "com.amazonaws.cloudwatchlogs#UnrecognizedClientException": - response = { - ...(await deserializeAws_json1_1UnrecognizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnrecognizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutMetricFilterCommand = async ( @@ -3078,65 +2336,34 @@ const deserializeAws_json1_1PutMetricFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutQueryDefinitionCommand = async ( @@ -3164,57 +2391,31 @@ const deserializeAws_json1_1PutQueryDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourcePolicyCommand = async ( @@ -3242,49 +2443,28 @@ const deserializeAws_json1_1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRetentionPolicyCommand = async ( @@ -3309,57 +2489,31 @@ const deserializeAws_json1_1PutRetentionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutSubscriptionFilterCommand = async ( @@ -3384,65 +2538,34 @@ const deserializeAws_json1_1PutSubscriptionFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationAbortedException": case "com.amazonaws.cloudwatchlogs#OperationAbortedException": - response = { - ...(await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationAbortedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartQueryCommand = async ( @@ -3470,65 +2593,34 @@ const deserializeAws_json1_1StartQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatchlogs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedQueryException": case "com.amazonaws.cloudwatchlogs#MalformedQueryException": - response = { - ...(await deserializeAws_json1_1MalformedQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedQueryExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopQueryCommand = async ( @@ -3556,49 +2648,28 @@ const deserializeAws_json1_1StopQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagLogGroupCommand = async ( @@ -3623,41 +2694,25 @@ const deserializeAws_json1_1TagLogGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestMetricFilterCommand = async ( @@ -3685,41 +2740,25 @@ const deserializeAws_json1_1TestMetricFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.cloudwatchlogs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.cloudwatchlogs#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagLogGroupCommand = async ( @@ -3744,33 +2783,22 @@ const deserializeAws_json1_1UntagLogGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.cloudwatchlogs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DataAlreadyAcceptedExceptionResponse = async ( @@ -3779,13 +2807,11 @@ const deserializeAws_json1_1DataAlreadyAcceptedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataAlreadyAcceptedException(body, context); - const contents: DataAlreadyAcceptedException = { - name: "DataAlreadyAcceptedException", - $fault: "client", + const exception = new DataAlreadyAcceptedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( @@ -3794,13 +2820,11 @@ const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOperationException(body, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -3809,13 +2833,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSequenceTokenExceptionResponse = async ( @@ -3824,13 +2846,11 @@ const deserializeAws_json1_1InvalidSequenceTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSequenceTokenException(body, context); - const contents: InvalidSequenceTokenException = { - name: "InvalidSequenceTokenException", - $fault: "client", + const exception = new InvalidSequenceTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -3839,13 +2859,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MalformedQueryExceptionResponse = async ( @@ -3854,13 +2872,11 @@ const deserializeAws_json1_1MalformedQueryExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MalformedQueryException(body, context); - const contents: MalformedQueryException = { - name: "MalformedQueryException", - $fault: "client", + const exception = new MalformedQueryException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationAbortedExceptionResponse = async ( @@ -3869,13 +2885,11 @@ const deserializeAws_json1_1OperationAbortedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationAbortedException(body, context); - const contents: OperationAbortedException = { - name: "OperationAbortedException", - $fault: "client", + const exception = new OperationAbortedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -3884,13 +2898,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3899,13 +2911,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -3914,13 +2924,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnrecognizedClientExceptionResponse = async ( @@ -3929,13 +2937,11 @@ const deserializeAws_json1_1UnrecognizedClientExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnrecognizedClientException(body, context); - const contents: UnrecognizedClientException = { - name: "UnrecognizedClientException", - $fault: "client", + const exception = new UnrecognizedClientException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateKmsKeyRequest = (input: AssociateKmsKeyRequest, context: __SerdeContext): any => { diff --git a/clients/client-cloudwatch/src/index.ts b/clients/client-cloudwatch/src/index.ts index 89646da15cd72..7f509efab4574 100644 --- a/clients/client-cloudwatch/src/index.ts +++ b/clients/client-cloudwatch/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { CloudWatchServiceException } from "./models/CloudWatchServiceException"; diff --git a/clients/client-cloudwatch/src/models/CloudWatchServiceException.ts b/clients/client-cloudwatch/src/models/CloudWatchServiceException.ts new file mode 100644 index 0000000000000..c9f8967192447 --- /dev/null +++ b/clients/client-cloudwatch/src/models/CloudWatchServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CloudWatch service. + */ +export class CloudWatchServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CloudWatchServiceException.prototype); + } +} diff --git a/clients/client-cloudwatch/src/models/models_0.ts b/clients/client-cloudwatch/src/models/models_0.ts index 21937015815b1..cb6a76bf32165 100644 --- a/clients/client-cloudwatch/src/models/models_0.ts +++ b/clients/client-cloudwatch/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CloudWatchServiceException as __BaseException } from "./CloudWatchServiceException"; export type AlarmType = "CompositeAlarm" | "MetricAlarm"; @@ -618,10 +621,22 @@ export namespace CompositeAlarm { /** *

More than one process tried to modify a resource at the same time.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** @@ -686,20 +701,41 @@ export namespace DashboardValidationMessage { /** *

Some part of the dashboard data is invalid.

*/ -export interface DashboardInvalidInputError extends __SmithyException, $MetadataBearer { - name: "DashboardInvalidInputError"; - $fault: "client"; - message?: string; +export class DashboardInvalidInputError extends __BaseException { + readonly name: "DashboardInvalidInputError" = "DashboardInvalidInputError"; + readonly $fault: "client" = "client"; dashboardValidationMessages?: DashboardValidationMessage[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DashboardInvalidInputError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DashboardInvalidInputError.prototype); + this.dashboardValidationMessages = opts.dashboardValidationMessages; + } } /** *

The specified dashboard does not exist.

*/ -export interface DashboardNotFoundError extends __SmithyException, $MetadataBearer { - name: "DashboardNotFoundError"; - $fault: "client"; - message?: string; +export class DashboardNotFoundError extends __BaseException { + readonly name: "DashboardNotFoundError" = "DashboardNotFoundError"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DashboardNotFoundError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DashboardNotFoundError.prototype); + } } /** @@ -776,13 +812,20 @@ export namespace DeleteAlarmsInput { /** *

The named resource does not exist.

*/ -export interface ResourceNotFound extends __SmithyException, $MetadataBearer { - name: "ResourceNotFound"; - $fault: "client"; +export class ResourceNotFound extends __BaseException { + readonly name: "ResourceNotFound" = "ResourceNotFound"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFound.prototype); + } } export interface DeleteAnomalyDetectorInput { @@ -909,60 +952,107 @@ export namespace DeleteAnomalyDetectorOutput { /** *

Request processing has failed due to some unknown error, exception, or failure.

*/ -export interface InternalServiceFault extends __SmithyException, $MetadataBearer { - name: "InternalServiceFault"; - $fault: "server"; +export class InternalServiceFault extends __BaseException { + readonly name: "InternalServiceFault" = "InternalServiceFault"; + readonly $fault: "server" = "server"; /** *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceFault", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceFault.prototype); + this.Message = opts.Message; + } } /** *

Parameters were used together that cannot be used together.

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + } } /** *

The value of an input parameter is bad or out-of-range.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** *

An input parameter that is required is missing.

*/ -export interface MissingRequiredParameterException extends __SmithyException, $MetadataBearer { - name: "MissingRequiredParameterException"; - $fault: "client"; +export class MissingRequiredParameterException extends __BaseException { + readonly name: "MissingRequiredParameterException" = "MissingRequiredParameterException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingRequiredParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingRequiredParameterException.prototype); + } } /** *

The named resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; ResourceType?: string; ResourceId?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.ResourceType = opts.ResourceType; + this.ResourceId = opts.ResourceId; + this.Message = opts.Message; + } } export interface DeleteDashboardsInput { @@ -1134,13 +1224,20 @@ export namespace DescribeAlarmHistoryOutput { /** *

The next token specified is invalid.

*/ -export interface InvalidNextToken extends __SmithyException, $MetadataBearer { - name: "InvalidNextToken"; - $fault: "client"; +export class InvalidNextToken extends __BaseException { + readonly name: "InvalidNextToken" = "InvalidNextToken"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextToken.prototype); + } } export interface DescribeAlarmsInput { @@ -1777,10 +1874,22 @@ export namespace EnableInsightRulesOutput { /** *

The operation exceeded one or more limits.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface GetDashboardInput { @@ -3056,13 +3165,20 @@ export namespace PutAnomalyDetectorOutput { /** *

The quota for alarms for this customer has already been reached.

*/ -export interface LimitExceededFault extends __SmithyException, $MetadataBearer { - name: "LimitExceededFault"; - $fault: "client"; +export class LimitExceededFault extends __BaseException { + readonly name: "LimitExceededFault" = "LimitExceededFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededFault.prototype); + } } export interface PutCompositeAlarmInput { @@ -3799,13 +3915,20 @@ export namespace PutMetricStreamOutput { /** *

Data was not syntactically valid JSON.

*/ -export interface InvalidFormatFault extends __SmithyException, $MetadataBearer { - name: "InvalidFormatFault"; - $fault: "client"; +export class InvalidFormatFault extends __BaseException { + readonly name: "InvalidFormatFault" = "InvalidFormatFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFormatFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFormatFault.prototype); + } } export interface SetAlarmStateInput { diff --git a/clients/client-cloudwatch/src/protocols/Aws_query.ts b/clients/client-cloudwatch/src/protocols/Aws_query.ts index 700185c8fdc05..cc086ae15fc52 100644 --- a/clients/client-cloudwatch/src/protocols/Aws_query.ts +++ b/clients/client-cloudwatch/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -15,10 +16,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -92,6 +91,7 @@ import { StartMetricStreamsCommandInput, StartMetricStreamsCommandOutput } from import { StopMetricStreamsCommandInput, StopMetricStreamsCommandOutput } from "../commands/StopMetricStreamsCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { CloudWatchServiceException as __BaseException } from "../models/CloudWatchServiceException"; import { AlarmHistoryItem, AlarmType, @@ -803,33 +803,22 @@ const deserializeAws_queryDeleteAlarmsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.cloudwatch#ResourceNotFound": - response = { - ...(await deserializeAws_queryResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAnomalyDetectorCommand = async ( @@ -857,65 +846,34 @@ const deserializeAws_queryDeleteAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDashboardsCommand = async ( @@ -943,49 +901,28 @@ const deserializeAws_queryDeleteDashboardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DashboardNotFoundError": case "com.amazonaws.cloudwatch#DashboardNotFoundError": - response = { - ...(await deserializeAws_queryDashboardNotFoundErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDashboardNotFoundErrorResponse(parsedOutput, context); case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteInsightRulesCommand = async ( @@ -1013,41 +950,25 @@ const deserializeAws_queryDeleteInsightRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteMetricStreamCommand = async ( @@ -1075,49 +996,28 @@ const deserializeAws_queryDeleteMetricStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAlarmHistoryCommand = async ( @@ -1145,33 +1045,22 @@ const deserializeAws_queryDescribeAlarmHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.cloudwatch#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAlarmsCommand = async ( @@ -1199,33 +1088,22 @@ const deserializeAws_queryDescribeAlarmsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.cloudwatch#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAlarmsForMetricCommand = async ( @@ -1253,25 +1131,19 @@ const deserializeAws_queryDescribeAlarmsForMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAnomalyDetectorsCommand = async ( @@ -1299,57 +1171,31 @@ const deserializeAws_queryDescribeAnomalyDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.cloudwatch#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeInsightRulesCommand = async ( @@ -1377,33 +1223,22 @@ const deserializeAws_queryDescribeInsightRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.cloudwatch#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisableAlarmActionsCommand = async ( @@ -1428,25 +1263,19 @@ const deserializeAws_queryDisableAlarmActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisableInsightRulesCommand = async ( @@ -1474,41 +1303,25 @@ const deserializeAws_queryDisableInsightRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableAlarmActionsCommand = async ( @@ -1533,25 +1346,19 @@ const deserializeAws_queryEnableAlarmActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableInsightRulesCommand = async ( @@ -1579,49 +1386,28 @@ const deserializeAws_queryEnableInsightRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetDashboardCommand = async ( @@ -1649,49 +1435,28 @@ const deserializeAws_queryGetDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DashboardNotFoundError": case "com.amazonaws.cloudwatch#DashboardNotFoundError": - response = { - ...(await deserializeAws_queryDashboardNotFoundErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDashboardNotFoundErrorResponse(parsedOutput, context); case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetInsightRuleReportCommand = async ( @@ -1719,49 +1484,28 @@ const deserializeAws_queryGetInsightRuleReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetMetricDataCommand = async ( @@ -1789,33 +1533,22 @@ const deserializeAws_queryGetMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextToken": case "com.amazonaws.cloudwatch#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetMetricStatisticsCommand = async ( @@ -1843,57 +1576,31 @@ const deserializeAws_queryGetMetricStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetMetricStreamCommand = async ( @@ -1921,65 +1628,34 @@ const deserializeAws_queryGetMetricStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetMetricWidgetImageCommand = async ( @@ -2007,25 +1683,19 @@ const deserializeAws_queryGetMetricWidgetImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListDashboardsCommand = async ( @@ -2053,41 +1723,25 @@ const deserializeAws_queryListDashboardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListMetricsCommand = async ( @@ -2115,41 +1769,25 @@ const deserializeAws_queryListMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListMetricStreamsCommand = async ( @@ -2177,57 +1815,31 @@ const deserializeAws_queryListMetricStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.cloudwatch#InvalidNextToken": - response = { - ...(await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNextTokenResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -2255,49 +1867,28 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutAnomalyDetectorCommand = async ( @@ -2325,65 +1916,34 @@ const deserializeAws_queryPutAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutCompositeAlarmCommand = async ( @@ -2408,33 +1968,22 @@ const deserializeAws_queryPutCompositeAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.cloudwatch#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutDashboardCommand = async ( @@ -2462,41 +2011,25 @@ const deserializeAws_queryPutDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DashboardInvalidInputError": case "com.amazonaws.cloudwatch#DashboardInvalidInputError": - response = { - ...(await deserializeAws_queryDashboardInvalidInputErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDashboardInvalidInputErrorResponse(parsedOutput, context); case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutInsightRuleCommand = async ( @@ -2524,49 +2057,28 @@ const deserializeAws_queryPutInsightRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cloudwatch#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutMetricAlarmCommand = async ( @@ -2591,33 +2103,22 @@ const deserializeAws_queryPutMetricAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.cloudwatch#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutMetricDataCommand = async ( @@ -2642,57 +2143,31 @@ const deserializeAws_queryPutMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutMetricStreamCommand = async ( @@ -2720,65 +2195,34 @@ const deserializeAws_queryPutMetricStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatch#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.cloudwatch#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetAlarmStateCommand = async ( @@ -2803,41 +2247,25 @@ const deserializeAws_querySetAlarmStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidFormatFault": case "com.amazonaws.cloudwatch#InvalidFormatFault": - response = { - ...(await deserializeAws_queryInvalidFormatFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidFormatFaultResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.cloudwatch#ResourceNotFound": - response = { - ...(await deserializeAws_queryResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartMetricStreamsCommand = async ( @@ -2865,49 +2293,28 @@ const deserializeAws_queryStartMetricStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopMetricStreamsCommand = async ( @@ -2935,49 +2342,28 @@ const deserializeAws_queryStopMetricStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.cloudwatch#MissingRequiredParameterException": - response = { - ...(await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRequiredParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagResourceCommand = async ( @@ -3005,57 +2391,31 @@ const deserializeAws_queryTagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatch#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagResourceCommand = async ( @@ -3083,57 +2443,31 @@ const deserializeAws_queryUntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cloudwatch#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceFault": case "com.amazonaws.cloudwatch#InternalServiceFault": - response = { - ...(await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalServiceFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.cloudwatch#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cloudwatch#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryConcurrentModificationExceptionResponse = async ( @@ -3142,13 +2476,11 @@ const deserializeAws_queryConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryConcurrentModificationException(body.Error, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDashboardInvalidInputErrorResponse = async ( @@ -3157,13 +2489,11 @@ const deserializeAws_queryDashboardInvalidInputErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDashboardInvalidInputError(body.Error, context); - const contents: DashboardInvalidInputError = { - name: "DashboardInvalidInputError", - $fault: "client", + const exception = new DashboardInvalidInputError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDashboardNotFoundErrorResponse = async ( @@ -3172,13 +2502,11 @@ const deserializeAws_queryDashboardNotFoundErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDashboardNotFoundError(body.Error, context); - const contents: DashboardNotFoundError = { - name: "DashboardNotFoundError", - $fault: "client", + const exception = new DashboardNotFoundError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInternalServiceFaultResponse = async ( @@ -3187,13 +2515,11 @@ const deserializeAws_queryInternalServiceFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInternalServiceFault(body.Error, context); - const contents: InternalServiceFault = { - name: "InternalServiceFault", - $fault: "server", + const exception = new InternalServiceFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidFormatFaultResponse = async ( @@ -3202,13 +2528,11 @@ const deserializeAws_queryInvalidFormatFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidFormatFault(body.Error, context); - const contents: InvalidFormatFault = { - name: "InvalidFormatFault", - $fault: "client", + const exception = new InvalidFormatFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidNextTokenResponse = async ( @@ -3217,13 +2541,11 @@ const deserializeAws_queryInvalidNextTokenResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidNextToken(body.Error, context); - const contents: InvalidNextToken = { - name: "InvalidNextToken", - $fault: "client", + const exception = new InvalidNextToken({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidParameterCombinationExceptionResponse = async ( @@ -3232,13 +2554,11 @@ const deserializeAws_queryInvalidParameterCombinationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidParameterCombinationException(body.Error, context); - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", + const exception = new InvalidParameterCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidParameterValueExceptionResponse = async ( @@ -3247,13 +2567,11 @@ const deserializeAws_queryInvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidParameterValueException(body.Error, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededExceptionResponse = async ( @@ -3262,13 +2580,11 @@ const deserializeAws_queryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededException(body.Error, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededFaultResponse = async ( @@ -3277,13 +2593,11 @@ const deserializeAws_queryLimitExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededFault(body.Error, context); - const contents: LimitExceededFault = { - name: "LimitExceededFault", - $fault: "client", + const exception = new LimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMissingRequiredParameterExceptionResponse = async ( @@ -3292,13 +2606,11 @@ const deserializeAws_queryMissingRequiredParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMissingRequiredParameterException(body.Error, context); - const contents: MissingRequiredParameterException = { - name: "MissingRequiredParameterException", - $fault: "client", + const exception = new MissingRequiredParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundResponse = async ( @@ -3307,13 +2619,11 @@ const deserializeAws_queryResourceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFound(body.Error, context); - const contents: ResourceNotFound = { - name: "ResourceNotFound", - $fault: "client", + const exception = new ResourceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundExceptionResponse = async ( @@ -3322,13 +2632,11 @@ const deserializeAws_queryResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundException(body.Error, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAlarmNames = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-codeartifact/src/index.ts b/clients/client-codeartifact/src/index.ts index c0555fc55afe3..65ba6afa41235 100644 --- a/clients/client-codeartifact/src/index.ts +++ b/clients/client-codeartifact/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodeartifactClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodeartifactServiceException } from "./models/CodeartifactServiceException"; diff --git a/clients/client-codeartifact/src/models/CodeartifactServiceException.ts b/clients/client-codeartifact/src/models/CodeartifactServiceException.ts new file mode 100644 index 0000000000000..2f1349368cda6 --- /dev/null +++ b/clients/client-codeartifact/src/models/CodeartifactServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Codeartifact service. + */ +export class CodeartifactServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeartifactServiceException.prototype); + } +} diff --git a/clients/client-codeartifact/src/models/models_0.ts b/clients/client-codeartifact/src/models/models_0.ts index 82bae36394ec6..c3239dbbe9e7d 100644 --- a/clients/client-codeartifact/src/models/models_0.ts +++ b/clients/client-codeartifact/src/models/models_0.ts @@ -1,15 +1,28 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { CodeartifactServiceException as __BaseException } from "./CodeartifactServiceException"; + /** *

* The operation did not succeed because of an unauthorized access attempt. *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum HashAlgorithm { @@ -313,10 +326,9 @@ export enum ResourceType { * The operation did not succeed because prerequisites are not met. *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

* The ID of the resource. @@ -330,15 +342,39 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

*/ resourceType?: ResourceType | string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

The operation did not succeed because of an error that occurred inside AWS CodeArtifact.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** @@ -346,10 +382,9 @@ export interface InternalServerException extends __SmithyException, $MetadataBea * The operation did not succeed because the resource requested is not found in the service. *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

* The ID of the resource. @@ -363,6 +398,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

*/ resourceType?: ResourceType | string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -370,10 +419,9 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * The operation did not succeed because it would have exceeded a service limit for your account. *

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

* The ID of the resource. @@ -387,6 +435,20 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

*/ resourceType?: ResourceType | string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -394,16 +456,28 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad * The operation did not succeed because too many requests are sent to the service. *

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

* The time period, in seconds, to wait before retrying the request. *

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } export enum ValidationExceptionReason { @@ -419,16 +493,28 @@ export enum ValidationExceptionReason { * The operation did not succeed because a parameter in the request was sent with an invalid value. *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

* *

*/ reason?: ValidationExceptionReason | string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + } } export interface CopyPackageVersionsRequest { diff --git a/clients/client-codeartifact/src/protocols/Aws_restJson1.ts b/clients/client-codeartifact/src/protocols/Aws_restJson1.ts index 520ca18391b90..630d2c1d69a93 100644 --- a/clients/client-codeartifact/src/protocols/Aws_restJson1.ts +++ b/clients/client-codeartifact/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -118,6 +117,7 @@ import { UpdatePackageVersionsStatusCommandOutput, } from "../commands/UpdatePackageVersionsStatusCommand"; import { UpdateRepositoryCommandInput, UpdateRepositoryCommandOutput } from "../commands/UpdateRepositoryCommand"; +import { CodeartifactServiceException as __BaseException } from "../models/CodeartifactServiceException"; import { AccessDeniedException, AssetSummary, @@ -1185,81 +1185,40 @@ const deserializeAws_restJson1AssociateExternalConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CopyPackageVersionsCommand = async ( @@ -1295,81 +1254,40 @@ const deserializeAws_restJson1CopyPackageVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainCommand = async ( @@ -1398,81 +1316,40 @@ const deserializeAws_restJson1CreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRepositoryCommand = async ( @@ -1501,81 +1378,40 @@ const deserializeAws_restJson1CreateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainCommand = async ( @@ -1604,65 +1440,34 @@ const deserializeAws_restJson1DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainPermissionsPolicyCommand = async ( @@ -1691,73 +1496,37 @@ const deserializeAws_restJson1DeleteDomainPermissionsPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePackageVersionsCommand = async ( @@ -1793,73 +1562,37 @@ const deserializeAws_restJson1DeletePackageVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRepositoryCommand = async ( @@ -1888,73 +1621,37 @@ const deserializeAws_restJson1DeleteRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRepositoryPermissionsPolicyCommand = async ( @@ -1983,73 +1680,37 @@ const deserializeAws_restJson1DeleteRepositoryPermissionsPolicyCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainCommand = async ( @@ -2078,65 +1739,34 @@ const deserializeAws_restJson1DescribeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackageVersionCommand = async ( @@ -2165,73 +1795,37 @@ const deserializeAws_restJson1DescribePackageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRepositoryCommand = async ( @@ -2260,65 +1854,34 @@ const deserializeAws_restJson1DescribeRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateExternalConnectionCommand = async ( @@ -2347,81 +1910,40 @@ const deserializeAws_restJson1DisassociateExternalConnectionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisposePackageVersionsCommand = async ( @@ -2457,73 +1979,37 @@ const deserializeAws_restJson1DisposePackageVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAuthorizationTokenCommand = async ( @@ -2556,65 +2042,34 @@ const deserializeAws_restJson1GetAuthorizationTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainPermissionsPolicyCommand = async ( @@ -2643,65 +2098,34 @@ const deserializeAws_restJson1GetDomainPermissionsPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPackageVersionAssetCommand = async ( @@ -2740,73 +2164,37 @@ const deserializeAws_restJson1GetPackageVersionAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPackageVersionReadmeCommand = async ( @@ -2855,65 +2243,34 @@ const deserializeAws_restJson1GetPackageVersionReadmeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRepositoryEndpointCommand = async ( @@ -2942,65 +2299,34 @@ const deserializeAws_restJson1GetRepositoryEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRepositoryPermissionsPolicyCommand = async ( @@ -3029,65 +2355,34 @@ const deserializeAws_restJson1GetRepositoryPermissionsPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainsCommand = async ( @@ -3120,57 +2415,31 @@ const deserializeAws_restJson1ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackagesCommand = async ( @@ -3203,65 +2472,34 @@ const deserializeAws_restJson1ListPackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackageVersionAssetsCommand = async ( @@ -3314,65 +2552,34 @@ const deserializeAws_restJson1ListPackageVersionAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackageVersionDependenciesCommand = async ( @@ -3425,65 +2632,34 @@ const deserializeAws_restJson1ListPackageVersionDependenciesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackageVersionsCommand = async ( @@ -3532,65 +2708,34 @@ const deserializeAws_restJson1ListPackageVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRepositoriesCommand = async ( @@ -3623,57 +2768,31 @@ const deserializeAws_restJson1ListRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRepositoriesInDomainCommand = async ( @@ -3706,65 +2825,34 @@ const deserializeAws_restJson1ListRepositoriesInDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3793,57 +2881,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDomainPermissionsPolicyCommand = async ( @@ -3872,81 +2934,40 @@ const deserializeAws_restJson1PutDomainPermissionsPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRepositoryPermissionsPolicyCommand = async ( @@ -3975,81 +2996,40 @@ const deserializeAws_restJson1PutRepositoryPermissionsPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4074,65 +3054,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4157,57 +3106,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePackageVersionsStatusCommand = async ( @@ -4243,73 +3166,37 @@ const deserializeAws_restJson1UpdatePackageVersionsStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRepositoryCommand = async ( @@ -4338,112 +3225,63 @@ const deserializeAws_restJson1UpdateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codeartifact#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codeartifact#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeartifact#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeartifact#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeartifact#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeartifact#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeartifact#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4454,38 +3292,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4496,21 +3330,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4521,20 +3352,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -4542,20 +3371,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4563,7 +3390,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1PackageVersionList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-codebuild/src/index.ts b/clients/client-codebuild/src/index.ts index e8498428efa04..9d6ef7dc0b3b0 100644 --- a/clients/client-codebuild/src/index.ts +++ b/clients/client-codebuild/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodeBuildClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodeBuildServiceException } from "./models/CodeBuildServiceException"; diff --git a/clients/client-codebuild/src/models/CodeBuildServiceException.ts b/clients/client-codebuild/src/models/CodeBuildServiceException.ts new file mode 100644 index 0000000000000..74bd59a9d32de --- /dev/null +++ b/clients/client-codebuild/src/models/CodeBuildServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeBuild service. + */ +export class CodeBuildServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeBuildServiceException.prototype); + } +} diff --git a/clients/client-codebuild/src/models/models_0.ts b/clients/client-codebuild/src/models/models_0.ts index 8830a4853648c..9d82bf619bd05 100644 --- a/clients/client-codebuild/src/models/models_0.ts +++ b/clients/client-codebuild/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeBuildServiceException as __BaseException } from "./CodeBuildServiceException"; /** *

An Amazon Web Services service limit was exceeded for the calling Amazon Web Services account.

*/ -export interface AccountLimitExceededException extends __SmithyException, $MetadataBearer { - name: "AccountLimitExceededException"; - $fault: "client"; - message?: string; +export class AccountLimitExceededException extends __BaseException { + readonly name: "AccountLimitExceededException" = "AccountLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountLimitExceededException.prototype); + } } export enum ArtifactNamespace { @@ -96,10 +108,20 @@ export namespace BatchDeleteBuildsOutput { /** *

The input value that was provided is not valid.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - message?: string; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + } } export interface BatchGetBuildBatchesInput { @@ -3930,10 +3952,20 @@ export namespace CreateProjectOutput { *

The specified Amazon Web Services resource cannot be created, because an Amazon Web Services resource with the same * settings already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } export interface CreateReportGroupInput { @@ -4057,19 +4089,39 @@ export namespace CreateWebhookOutput { /** *

There was a problem with the underlying OAuth provider.

*/ -export interface OAuthProviderException extends __SmithyException, $MetadataBearer { - name: "OAuthProviderException"; - $fault: "client"; - message?: string; +export class OAuthProviderException extends __BaseException { + readonly name: "OAuthProviderException" = "OAuthProviderException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OAuthProviderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OAuthProviderException.prototype); + } } /** *

The specified Amazon Web Services resource cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DeleteBuildBatchInput { diff --git a/clients/client-codebuild/src/protocols/Aws_json1_1.ts b/clients/client-codebuild/src/protocols/Aws_json1_1.ts index 53c72f4174d6c..d752c5686373f 100644 --- a/clients/client-codebuild/src/protocols/Aws_json1_1.ts +++ b/clients/client-codebuild/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchDeleteBuildsCommandInput, BatchDeleteBuildsCommandOutput } from "../commands/BatchDeleteBuildsCommand"; @@ -109,6 +108,7 @@ import { } from "../commands/UpdateProjectVisibilityCommand"; import { UpdateReportGroupCommandInput, UpdateReportGroupCommandOutput } from "../commands/UpdateReportGroupCommand"; import { UpdateWebhookCommandInput, UpdateWebhookCommandOutput } from "../commands/UpdateWebhookCommand"; +import { CodeBuildServiceException as __BaseException } from "../models/CodeBuildServiceException"; import { AccountLimitExceededException, BatchDeleteBuildsInput, @@ -871,33 +871,22 @@ const deserializeAws_json1_1BatchDeleteBuildsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetBuildBatchesCommand = async ( @@ -925,33 +914,22 @@ const deserializeAws_json1_1BatchGetBuildBatchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetBuildsCommand = async ( @@ -979,33 +957,22 @@ const deserializeAws_json1_1BatchGetBuildsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetProjectsCommand = async ( @@ -1033,33 +1000,22 @@ const deserializeAws_json1_1BatchGetProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetReportGroupsCommand = async ( @@ -1087,33 +1043,22 @@ const deserializeAws_json1_1BatchGetReportGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetReportsCommand = async ( @@ -1141,33 +1086,22 @@ const deserializeAws_json1_1BatchGetReportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProjectCommand = async ( @@ -1195,49 +1129,28 @@ const deserializeAws_json1_1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountLimitExceededException": case "com.amazonaws.codebuild#AccountLimitExceededException": - response = { - ...(await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.codebuild#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateReportGroupCommand = async ( @@ -1265,49 +1178,28 @@ const deserializeAws_json1_1CreateReportGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountLimitExceededException": case "com.amazonaws.codebuild#AccountLimitExceededException": - response = { - ...(await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.codebuild#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWebhookCommand = async ( @@ -1335,57 +1227,31 @@ const deserializeAws_json1_1CreateWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OAuthProviderException": case "com.amazonaws.codebuild#OAuthProviderException": - response = { - ...(await deserializeAws_json1_1OAuthProviderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OAuthProviderExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.codebuild#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBuildBatchCommand = async ( @@ -1413,33 +1279,22 @@ const deserializeAws_json1_1DeleteBuildBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProjectCommand = async ( @@ -1467,33 +1322,22 @@ const deserializeAws_json1_1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReportCommand = async ( @@ -1521,33 +1365,22 @@ const deserializeAws_json1_1DeleteReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReportGroupCommand = async ( @@ -1575,33 +1408,22 @@ const deserializeAws_json1_1DeleteReportGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourcePolicyCommand = async ( @@ -1629,33 +1451,22 @@ const deserializeAws_json1_1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSourceCredentialsCommand = async ( @@ -1683,41 +1494,25 @@ const deserializeAws_json1_1DeleteSourceCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWebhookCommand = async ( @@ -1745,49 +1540,28 @@ const deserializeAws_json1_1DeleteWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OAuthProviderException": case "com.amazonaws.codebuild#OAuthProviderException": - response = { - ...(await deserializeAws_json1_1OAuthProviderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OAuthProviderExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCodeCoveragesCommand = async ( @@ -1815,33 +1589,22 @@ const deserializeAws_json1_1DescribeCodeCoveragesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTestCasesCommand = async ( @@ -1869,41 +1632,25 @@ const deserializeAws_json1_1DescribeTestCasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetReportGroupTrendCommand = async ( @@ -1931,41 +1678,25 @@ const deserializeAws_json1_1GetReportGroupTrendCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourcePolicyCommand = async ( @@ -1993,41 +1724,25 @@ const deserializeAws_json1_1GetResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportSourceCredentialsCommand = async ( @@ -2055,49 +1770,28 @@ const deserializeAws_json1_1ImportSourceCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountLimitExceededException": case "com.amazonaws.codebuild#AccountLimitExceededException": - response = { - ...(await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.codebuild#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InvalidateProjectCacheCommand = async ( @@ -2125,41 +1819,25 @@ const deserializeAws_json1_1InvalidateProjectCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBuildBatchesCommand = async ( @@ -2187,33 +1865,22 @@ const deserializeAws_json1_1ListBuildBatchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBuildBatchesForProjectCommand = async ( @@ -2241,41 +1908,25 @@ const deserializeAws_json1_1ListBuildBatchesForProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBuildsCommand = async ( @@ -2303,33 +1954,22 @@ const deserializeAws_json1_1ListBuildsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBuildsForProjectCommand = async ( @@ -2357,41 +1997,25 @@ const deserializeAws_json1_1ListBuildsForProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCuratedEnvironmentImagesCommand = async ( @@ -2419,25 +2043,19 @@ const deserializeAws_json1_1ListCuratedEnvironmentImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProjectsCommand = async ( @@ -2465,33 +2083,22 @@ const deserializeAws_json1_1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReportGroupsCommand = async ( @@ -2519,33 +2126,22 @@ const deserializeAws_json1_1ListReportGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReportsCommand = async ( @@ -2573,33 +2169,22 @@ const deserializeAws_json1_1ListReportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReportsForReportGroupCommand = async ( @@ -2627,41 +2212,25 @@ const deserializeAws_json1_1ListReportsForReportGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSharedProjectsCommand = async ( @@ -2689,33 +2258,22 @@ const deserializeAws_json1_1ListSharedProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSharedReportGroupsCommand = async ( @@ -2743,33 +2301,22 @@ const deserializeAws_json1_1ListSharedReportGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSourceCredentialsCommand = async ( @@ -2797,33 +2344,22 @@ const deserializeAws_json1_1ListSourceCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourcePolicyCommand = async ( @@ -2851,41 +2387,25 @@ const deserializeAws_json1_1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetryBuildCommand = async ( @@ -2913,49 +2433,28 @@ const deserializeAws_json1_1RetryBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountLimitExceededException": case "com.amazonaws.codebuild#AccountLimitExceededException": - response = { - ...(await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetryBuildBatchCommand = async ( @@ -2983,41 +2482,25 @@ const deserializeAws_json1_1RetryBuildBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartBuildCommand = async ( @@ -3045,49 +2528,28 @@ const deserializeAws_json1_1StartBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountLimitExceededException": case "com.amazonaws.codebuild#AccountLimitExceededException": - response = { - ...(await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountLimitExceededExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartBuildBatchCommand = async ( @@ -3115,41 +2577,25 @@ const deserializeAws_json1_1StartBuildBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopBuildCommand = async ( @@ -3177,41 +2623,25 @@ const deserializeAws_json1_1StopBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopBuildBatchCommand = async ( @@ -3239,41 +2669,25 @@ const deserializeAws_json1_1StopBuildBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProjectCommand = async ( @@ -3301,41 +2715,25 @@ const deserializeAws_json1_1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProjectVisibilityCommand = async ( @@ -3363,41 +2761,25 @@ const deserializeAws_json1_1UpdateProjectVisibilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateReportGroupCommand = async ( @@ -3425,41 +2807,25 @@ const deserializeAws_json1_1UpdateReportGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWebhookCommand = async ( @@ -3487,49 +2853,28 @@ const deserializeAws_json1_1UpdateWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.codebuild#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OAuthProviderException": case "com.amazonaws.codebuild#OAuthProviderException": - response = { - ...(await deserializeAws_json1_1OAuthProviderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OAuthProviderExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codebuild#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccountLimitExceededExceptionResponse = async ( @@ -3538,13 +2883,11 @@ const deserializeAws_json1_1AccountLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccountLimitExceededException(body, context); - const contents: AccountLimitExceededException = { - name: "AccountLimitExceededException", - $fault: "client", + const exception = new AccountLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -3553,13 +2896,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OAuthProviderExceptionResponse = async ( @@ -3568,13 +2909,11 @@ const deserializeAws_json1_1OAuthProviderExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OAuthProviderException(body, context); - const contents: OAuthProviderException = { - name: "OAuthProviderException", - $fault: "client", + const exception = new OAuthProviderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -3583,13 +2922,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3598,13 +2935,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BatchDeleteBuildsInput = (input: BatchDeleteBuildsInput, context: __SerdeContext): any => { diff --git a/clients/client-codecommit/src/index.ts b/clients/client-codecommit/src/index.ts index 48393e45c0d24..785ebd30b4cf8 100644 --- a/clients/client-codecommit/src/index.ts +++ b/clients/client-codecommit/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodeCommitClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodeCommitServiceException } from "./models/CodeCommitServiceException"; diff --git a/clients/client-codecommit/src/models/CodeCommitServiceException.ts b/clients/client-codecommit/src/models/CodeCommitServiceException.ts new file mode 100644 index 0000000000000..3aefffcaabc53 --- /dev/null +++ b/clients/client-codecommit/src/models/CodeCommitServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeCommit service. + */ +export class CodeCommitServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeCommitServiceException.prototype); + } +} diff --git a/clients/client-codecommit/src/models/models_0.ts b/clients/client-codecommit/src/models/models_0.ts index 356f475f1ffc4..5f1ce8427268b 100644 --- a/clients/client-codecommit/src/models/models_0.ts +++ b/clients/client-codecommit/src/models/models_0.ts @@ -1,15 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeCommitServiceException as __BaseException } from "./CodeCommitServiceException"; /** *

The specified Amazon Resource Name (ARN) does not exist in the AWS account.

*/ -export interface ActorDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ActorDoesNotExistException"; - $fault: "client"; +export class ActorDoesNotExistException extends __BaseException { + readonly name: "ActorDoesNotExistException" = "ActorDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActorDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActorDoesNotExistException.prototype); + } } export enum ApprovalState { @@ -122,25 +132,39 @@ export namespace ApprovalRule { /** *

The content for the approval rule is empty. You must provide some content for an approval rule. The content cannot be null.

*/ -export interface ApprovalRuleContentRequiredException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleContentRequiredException"; - $fault: "client"; +export class ApprovalRuleContentRequiredException extends __BaseException { + readonly name: "ApprovalRuleContentRequiredException" = "ApprovalRuleContentRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleContentRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleContentRequiredException.prototype); + } } /** *

The specified approval rule does not exist.

*/ -export interface ApprovalRuleDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleDoesNotExistException"; - $fault: "client"; +export class ApprovalRuleDoesNotExistException extends __BaseException { + readonly name: "ApprovalRuleDoesNotExistException" = "ApprovalRuleDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleDoesNotExistException.prototype); + } } /** @@ -176,25 +200,39 @@ export namespace ApprovalRuleEventMetadata { *

An approval rule with that name already exists. Approval rule names must be unique * within the scope of a pull request.

*/ -export interface ApprovalRuleNameAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleNameAlreadyExistsException"; - $fault: "client"; +export class ApprovalRuleNameAlreadyExistsException extends __BaseException { + readonly name: "ApprovalRuleNameAlreadyExistsException" = "ApprovalRuleNameAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleNameAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleNameAlreadyExistsException.prototype); + } } /** *

An approval rule name is required, but was not specified.

*/ -export interface ApprovalRuleNameRequiredException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleNameRequiredException"; - $fault: "client"; +export class ApprovalRuleNameRequiredException extends __BaseException { + readonly name: "ApprovalRuleNameRequiredException" = "ApprovalRuleNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleNameRequiredException.prototype); + } } export enum OverrideStatus { @@ -283,39 +321,60 @@ export namespace ApprovalRuleTemplate { /** *

The content for the approval rule template is empty. You must provide some content for an approval rule template. The content cannot be null.

*/ -export interface ApprovalRuleTemplateContentRequiredException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleTemplateContentRequiredException"; - $fault: "client"; +export class ApprovalRuleTemplateContentRequiredException extends __BaseException { + readonly name: "ApprovalRuleTemplateContentRequiredException" = "ApprovalRuleTemplateContentRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleTemplateContentRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleTemplateContentRequiredException.prototype); + } } /** *

The specified approval rule template does not exist. Verify that the name is correct and that you are signed in to the AWS Region where the template * was created, and then try again.

*/ -export interface ApprovalRuleTemplateDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleTemplateDoesNotExistException"; - $fault: "client"; +export class ApprovalRuleTemplateDoesNotExistException extends __BaseException { + readonly name: "ApprovalRuleTemplateDoesNotExistException" = "ApprovalRuleTemplateDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleTemplateDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleTemplateDoesNotExistException.prototype); + } } /** *

The approval rule template is associated with one or more repositories. You cannot delete a template that is associated with a repository. Remove * all associations, and then try again.

*/ -export interface ApprovalRuleTemplateInUseException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleTemplateInUseException"; - $fault: "client"; +export class ApprovalRuleTemplateInUseException extends __BaseException { + readonly name: "ApprovalRuleTemplateInUseException" = "ApprovalRuleTemplateInUseException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleTemplateInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleTemplateInUseException.prototype); + } } /** @@ -323,25 +382,39 @@ export interface ApprovalRuleTemplateInUseException extends __SmithyException, $ * that name already exists in this AWS Region for your AWS account. Approval rule template * names must be unique.

*/ -export interface ApprovalRuleTemplateNameAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleTemplateNameAlreadyExistsException"; - $fault: "client"; +export class ApprovalRuleTemplateNameAlreadyExistsException extends __BaseException { + readonly name: "ApprovalRuleTemplateNameAlreadyExistsException" = "ApprovalRuleTemplateNameAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleTemplateNameAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleTemplateNameAlreadyExistsException.prototype); + } } /** *

An approval rule template name is required, but was not specified.

*/ -export interface ApprovalRuleTemplateNameRequiredException extends __SmithyException, $MetadataBearer { - name: "ApprovalRuleTemplateNameRequiredException"; - $fault: "client"; +export class ApprovalRuleTemplateNameRequiredException extends __BaseException { + readonly name: "ApprovalRuleTemplateNameRequiredException" = "ApprovalRuleTemplateNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalRuleTemplateNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalRuleTemplateNameRequiredException.prototype); + } } /** @@ -371,13 +444,20 @@ export namespace ApprovalStateChangedEventMetadata { /** *

An approval state is required, but was not specified.

*/ -export interface ApprovalStateRequiredException extends __SmithyException, $MetadataBearer { - name: "ApprovalStateRequiredException"; - $fault: "client"; +export class ApprovalStateRequiredException extends __BaseException { + readonly name: "ApprovalStateRequiredException" = "ApprovalStateRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalStateRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalStateRequiredException.prototype); + } } export interface AssociateApprovalRuleTemplateWithRepositoryInput { @@ -404,61 +484,96 @@ export namespace AssociateApprovalRuleTemplateWithRepositoryInput { /** *

An encryption integrity check failed.

*/ -export interface EncryptionIntegrityChecksFailedException extends __SmithyException, $MetadataBearer { - name: "EncryptionIntegrityChecksFailedException"; - $fault: "server"; +export class EncryptionIntegrityChecksFailedException extends __BaseException { + readonly name: "EncryptionIntegrityChecksFailedException" = "EncryptionIntegrityChecksFailedException"; + readonly $fault: "server" = "server"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EncryptionIntegrityChecksFailedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, EncryptionIntegrityChecksFailedException.prototype); + } } /** *

An encryption key could not be accessed.

*/ -export interface EncryptionKeyAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "EncryptionKeyAccessDeniedException"; - $fault: "client"; +export class EncryptionKeyAccessDeniedException extends __BaseException { + readonly name: "EncryptionKeyAccessDeniedException" = "EncryptionKeyAccessDeniedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EncryptionKeyAccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EncryptionKeyAccessDeniedException.prototype); + } } /** *

The encryption key is disabled.

*/ -export interface EncryptionKeyDisabledException extends __SmithyException, $MetadataBearer { - name: "EncryptionKeyDisabledException"; - $fault: "client"; +export class EncryptionKeyDisabledException extends __BaseException { + readonly name: "EncryptionKeyDisabledException" = "EncryptionKeyDisabledException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EncryptionKeyDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EncryptionKeyDisabledException.prototype); + } } /** *

No encryption key was found.

*/ -export interface EncryptionKeyNotFoundException extends __SmithyException, $MetadataBearer { - name: "EncryptionKeyNotFoundException"; - $fault: "client"; +export class EncryptionKeyNotFoundException extends __BaseException { + readonly name: "EncryptionKeyNotFoundException" = "EncryptionKeyNotFoundException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EncryptionKeyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EncryptionKeyNotFoundException.prototype); + } } /** *

The encryption key is not available.

*/ -export interface EncryptionKeyUnavailableException extends __SmithyException, $MetadataBearer { - name: "EncryptionKeyUnavailableException"; - $fault: "client"; +export class EncryptionKeyUnavailableException extends __BaseException { + readonly name: "EncryptionKeyUnavailableException" = "EncryptionKeyUnavailableException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EncryptionKeyUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EncryptionKeyUnavailableException.prototype); + } } /** @@ -467,13 +582,20 @@ export interface EncryptionKeyUnavailableException extends __SmithyException, $M * see AWS * CodeCommit User Guide.

*/ -export interface InvalidApprovalRuleTemplateNameException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalRuleTemplateNameException"; - $fault: "client"; +export class InvalidApprovalRuleTemplateNameException extends __BaseException { + readonly name: "InvalidApprovalRuleTemplateNameException" = "InvalidApprovalRuleTemplateNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalRuleTemplateNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalRuleTemplateNameException.prototype); + } } /** @@ -485,62 +607,98 @@ export interface InvalidApprovalRuleTemplateNameException extends __SmithyExcept * specified repository does not exist.

* */ -export interface InvalidRepositoryNameException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryNameException"; - $fault: "client"; +export class InvalidRepositoryNameException extends __BaseException { + readonly name: "InvalidRepositoryNameException" = "InvalidRepositoryNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryNameException.prototype); + } } /** *

The maximum number of approval rule templates for a repository has been exceeded. You cannot associate more than 25 * approval rule templates with a repository.

*/ -export interface MaximumRuleTemplatesAssociatedWithRepositoryException extends __SmithyException, $MetadataBearer { - name: "MaximumRuleTemplatesAssociatedWithRepositoryException"; - $fault: "client"; +export class MaximumRuleTemplatesAssociatedWithRepositoryException extends __BaseException { + readonly name: "MaximumRuleTemplatesAssociatedWithRepositoryException" = + "MaximumRuleTemplatesAssociatedWithRepositoryException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumRuleTemplatesAssociatedWithRepositoryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumRuleTemplatesAssociatedWithRepositoryException.prototype); + } } /** *

The specified repository does not exist.

*/ -export interface RepositoryDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "RepositoryDoesNotExistException"; - $fault: "client"; +export class RepositoryDoesNotExistException extends __BaseException { + readonly name: "RepositoryDoesNotExistException" = "RepositoryDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryDoesNotExistException.prototype); + } } /** *

A repository name is required, but was not specified.

*/ -export interface RepositoryNameRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryNameRequiredException"; - $fault: "client"; +export class RepositoryNameRequiredException extends __BaseException { + readonly name: "RepositoryNameRequiredException" = "RepositoryNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNameRequiredException.prototype); + } } /** *

The specified Amazon Resource Name (ARN) does not exist in the AWS account.

*/ -export interface AuthorDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "AuthorDoesNotExistException"; - $fault: "client"; +export class AuthorDoesNotExistException extends __BaseException { + readonly name: "AuthorDoesNotExistException" = "AuthorDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorDoesNotExistException.prototype); + } } export interface BatchAssociateApprovalRuleTemplateWithRepositoriesInput { @@ -620,25 +778,39 @@ export namespace BatchAssociateApprovalRuleTemplateWithRepositoriesOutput { /** *

The maximum number of allowed repository names was exceeded. Currently, this number is 100.

*/ -export interface MaximumRepositoryNamesExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumRepositoryNamesExceededException"; - $fault: "client"; +export class MaximumRepositoryNamesExceededException extends __BaseException { + readonly name: "MaximumRepositoryNamesExceededException" = "MaximumRepositoryNamesExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumRepositoryNamesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumRepositoryNamesExceededException.prototype); + } } /** *

At least one repository name object is required, but was not specified.

*/ -export interface RepositoryNamesRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryNamesRequiredException"; - $fault: "client"; +export class RepositoryNamesRequiredException extends __BaseException { + readonly name: "RepositoryNamesRequiredException" = "RepositoryNamesRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNamesRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNamesRequiredException.prototype); + } } export enum ConflictDetailLevelTypeEnum { @@ -1117,158 +1289,249 @@ export namespace BatchDescribeMergeConflictsOutput { /** *

The specified commit does not exist or no commit was specified, and the specified repository has no default branch.

*/ -export interface CommitDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "CommitDoesNotExistException"; - $fault: "client"; +export class CommitDoesNotExistException extends __BaseException { + readonly name: "CommitDoesNotExistException" = "CommitDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitDoesNotExistException.prototype); + } } /** *

A commit was not specified.

*/ -export interface CommitRequiredException extends __SmithyException, $MetadataBearer { - name: "CommitRequiredException"; - $fault: "client"; +export class CommitRequiredException extends __BaseException { + readonly name: "CommitRequiredException" = "CommitRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitRequiredException.prototype); + } } /** *

The specified commit is not valid.

*/ -export interface InvalidCommitException extends __SmithyException, $MetadataBearer { - name: "InvalidCommitException"; - $fault: "client"; +export class InvalidCommitException extends __BaseException { + readonly name: "InvalidCommitException" = "InvalidCommitException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCommitException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCommitException.prototype); + } } /** *

The specified conflict detail level is not valid.

*/ -export interface InvalidConflictDetailLevelException extends __SmithyException, $MetadataBearer { - name: "InvalidConflictDetailLevelException"; - $fault: "client"; +export class InvalidConflictDetailLevelException extends __BaseException { + readonly name: "InvalidConflictDetailLevelException" = "InvalidConflictDetailLevelException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConflictDetailLevelException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConflictDetailLevelException.prototype); + } } /** *

The specified conflict resolution strategy is not valid.

*/ -export interface InvalidConflictResolutionStrategyException extends __SmithyException, $MetadataBearer { - name: "InvalidConflictResolutionStrategyException"; - $fault: "client"; +export class InvalidConflictResolutionStrategyException extends __BaseException { + readonly name: "InvalidConflictResolutionStrategyException" = "InvalidConflictResolutionStrategyException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConflictResolutionStrategyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConflictResolutionStrategyException.prototype); + } } /** *

The specified continuation token is not valid.

*/ -export interface InvalidContinuationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidContinuationTokenException"; - $fault: "client"; +export class InvalidContinuationTokenException extends __BaseException { + readonly name: "InvalidContinuationTokenException" = "InvalidContinuationTokenException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidContinuationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidContinuationTokenException.prototype); + } } /** *

The specified value for the number of conflict files to return is not valid.

*/ -export interface InvalidMaxConflictFilesException extends __SmithyException, $MetadataBearer { - name: "InvalidMaxConflictFilesException"; - $fault: "client"; +export class InvalidMaxConflictFilesException extends __BaseException { + readonly name: "InvalidMaxConflictFilesException" = "InvalidMaxConflictFilesException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMaxConflictFilesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMaxConflictFilesException.prototype); + } } /** *

The specified value for the number of merge hunks to return is not valid.

*/ -export interface InvalidMaxMergeHunksException extends __SmithyException, $MetadataBearer { - name: "InvalidMaxMergeHunksException"; - $fault: "client"; +export class InvalidMaxMergeHunksException extends __BaseException { + readonly name: "InvalidMaxMergeHunksException" = "InvalidMaxMergeHunksException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMaxMergeHunksException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMaxMergeHunksException.prototype); + } } /** *

The specified merge option is not valid for this operation. Not all merge strategies are supported for all operations.

*/ -export interface InvalidMergeOptionException extends __SmithyException, $MetadataBearer { - name: "InvalidMergeOptionException"; - $fault: "client"; +export class InvalidMergeOptionException extends __BaseException { + readonly name: "InvalidMergeOptionException" = "InvalidMergeOptionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMergeOptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMergeOptionException.prototype); + } } /** *

The number of files to load exceeds the allowed limit.

*/ -export interface MaximumFileContentToLoadExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumFileContentToLoadExceededException"; - $fault: "client"; +export class MaximumFileContentToLoadExceededException extends __BaseException { + readonly name: "MaximumFileContentToLoadExceededException" = "MaximumFileContentToLoadExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumFileContentToLoadExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumFileContentToLoadExceededException.prototype); + } } /** *

The number of items to compare between the source or destination branches and the merge base has exceeded the maximum allowed.

*/ -export interface MaximumItemsToCompareExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumItemsToCompareExceededException"; - $fault: "client"; +export class MaximumItemsToCompareExceededException extends __BaseException { + readonly name: "MaximumItemsToCompareExceededException" = "MaximumItemsToCompareExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumItemsToCompareExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumItemsToCompareExceededException.prototype); + } } /** *

A merge option or stategy is required, and none was provided.

*/ -export interface MergeOptionRequiredException extends __SmithyException, $MetadataBearer { - name: "MergeOptionRequiredException"; - $fault: "client"; +export class MergeOptionRequiredException extends __BaseException { + readonly name: "MergeOptionRequiredException" = "MergeOptionRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MergeOptionRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MergeOptionRequiredException.prototype); + } } /** *

The divergence between the tips of the provided commit specifiers is too great to determine whether there might be * any merge conflicts. Locally compare the specifiers using git diff or a diff tool.

*/ -export interface TipsDivergenceExceededException extends __SmithyException, $MetadataBearer { - name: "TipsDivergenceExceededException"; - $fault: "client"; +export class TipsDivergenceExceededException extends __BaseException { + readonly name: "TipsDivergenceExceededException" = "TipsDivergenceExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TipsDivergenceExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TipsDivergenceExceededException.prototype); + } } export interface BatchDisassociateApprovalRuleTemplateFromRepositoriesInput { @@ -1513,25 +1776,39 @@ export namespace BatchGetCommitsOutput { /** *

The maximum number of allowed commit IDs in a batch request is 100. Verify that your batch requests contains no more than 100 commit IDs, and then try again.

*/ -export interface CommitIdsLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CommitIdsLimitExceededException"; - $fault: "client"; +export class CommitIdsLimitExceededException extends __BaseException { + readonly name: "CommitIdsLimitExceededException" = "CommitIdsLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitIdsLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitIdsLimitExceededException.prototype); + } } /** *

A list of commit IDs is required, but was either not specified or the list was empty.

*/ -export interface CommitIdsListRequiredException extends __SmithyException, $MetadataBearer { - name: "CommitIdsListRequiredException"; - $fault: "client"; +export class CommitIdsListRequiredException extends __BaseException { + readonly name: "CommitIdsListRequiredException" = "CommitIdsListRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitIdsListRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitIdsListRequiredException.prototype); + } } /** @@ -1647,37 +1924,58 @@ export namespace BatchGetRepositoriesOutput { /** *

The before commit ID and the after commit ID are the same, which is not valid. The before commit ID and the after commit ID must be different commit IDs.

*/ -export interface BeforeCommitIdAndAfterCommitIdAreSameException extends __SmithyException, $MetadataBearer { - name: "BeforeCommitIdAndAfterCommitIdAreSameException"; - $fault: "client"; +export class BeforeCommitIdAndAfterCommitIdAreSameException extends __BaseException { + readonly name: "BeforeCommitIdAndAfterCommitIdAreSameException" = "BeforeCommitIdAndAfterCommitIdAreSameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BeforeCommitIdAndAfterCommitIdAreSameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BeforeCommitIdAndAfterCommitIdAreSameException.prototype); + } } /** *

The specified blob does not exist.

*/ -export interface BlobIdDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "BlobIdDoesNotExistException"; - $fault: "client"; +export class BlobIdDoesNotExistException extends __BaseException { + readonly name: "BlobIdDoesNotExistException" = "BlobIdDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BlobIdDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BlobIdDoesNotExistException.prototype); + } } /** *

A blob ID is required, but was not specified.

*/ -export interface BlobIdRequiredException extends __SmithyException, $MetadataBearer { - name: "BlobIdRequiredException"; - $fault: "client"; +export class BlobIdRequiredException extends __BaseException { + readonly name: "BlobIdRequiredException" = "BlobIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BlobIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BlobIdRequiredException.prototype); + } } /** @@ -1730,13 +2028,20 @@ export namespace BlobMetadata { /** *

The specified branch does not exist.

*/ -export interface BranchDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "BranchDoesNotExistException"; - $fault: "client"; +export class BranchDoesNotExistException extends __BaseException { + readonly name: "BranchDoesNotExistException" = "BranchDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BranchDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BranchDoesNotExistException.prototype); + } } /** @@ -1767,64 +2072,99 @@ export namespace BranchInfo { *

Cannot create the branch with the specified name because the commit conflicts with an existing branch with the same name. * Branch names must be unique.

*/ -export interface BranchNameExistsException extends __SmithyException, $MetadataBearer { - name: "BranchNameExistsException"; - $fault: "client"; +export class BranchNameExistsException extends __BaseException { + readonly name: "BranchNameExistsException" = "BranchNameExistsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BranchNameExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BranchNameExistsException.prototype); + } } /** *

The specified branch name is not valid because it is a tag name. Enter the name of a * branch in the repository. For a list of valid branch names, use ListBranches.

*/ -export interface BranchNameIsTagNameException extends __SmithyException, $MetadataBearer { - name: "BranchNameIsTagNameException"; - $fault: "client"; +export class BranchNameIsTagNameException extends __BaseException { + readonly name: "BranchNameIsTagNameException" = "BranchNameIsTagNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BranchNameIsTagNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BranchNameIsTagNameException.prototype); + } } /** *

A branch name is required, but was not specified.

*/ -export interface BranchNameRequiredException extends __SmithyException, $MetadataBearer { - name: "BranchNameRequiredException"; - $fault: "client"; +export class BranchNameRequiredException extends __BaseException { + readonly name: "BranchNameRequiredException" = "BranchNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BranchNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BranchNameRequiredException.prototype); + } } /** *

The approval rule cannot be deleted from the pull request because it was created by an * approval rule template and applied to the pull request automatically.

*/ -export interface CannotDeleteApprovalRuleFromTemplateException extends __SmithyException, $MetadataBearer { - name: "CannotDeleteApprovalRuleFromTemplateException"; - $fault: "client"; +export class CannotDeleteApprovalRuleFromTemplateException extends __BaseException { + readonly name: "CannotDeleteApprovalRuleFromTemplateException" = "CannotDeleteApprovalRuleFromTemplateException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CannotDeleteApprovalRuleFromTemplateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CannotDeleteApprovalRuleFromTemplateException.prototype); + } } /** *

The approval rule cannot be modified for the pull request because it was created by an * approval rule template and applied to the pull request automatically.

*/ -export interface CannotModifyApprovalRuleFromTemplateException extends __SmithyException, $MetadataBearer { - name: "CannotModifyApprovalRuleFromTemplateException"; - $fault: "client"; +export class CannotModifyApprovalRuleFromTemplateException extends __BaseException { + readonly name: "CannotModifyApprovalRuleFromTemplateException" = "CannotModifyApprovalRuleFromTemplateException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CannotModifyApprovalRuleFromTemplateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CannotModifyApprovalRuleFromTemplateException.prototype); + } } /** @@ -1834,13 +2174,20 @@ export interface CannotModifyApprovalRuleFromTemplateException extends __SmithyE * parameters and a token is included, the request returns information about the initial * request that used that token.

*/ -export interface ClientRequestTokenRequiredException extends __SmithyException, $MetadataBearer { - name: "ClientRequestTokenRequiredException"; - $fault: "client"; +export class ClientRequestTokenRequiredException extends __BaseException { + readonly name: "ClientRequestTokenRequiredException" = "ClientRequestTokenRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientRequestTokenRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientRequestTokenRequiredException.prototype); + } } export interface CreateApprovalRuleTemplateInput { @@ -1935,13 +2282,20 @@ export namespace CreateApprovalRuleTemplateOutput { /** *

The content of the approval rule template is not valid.

*/ -export interface InvalidApprovalRuleTemplateContentException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalRuleTemplateContentException"; - $fault: "client"; +export class InvalidApprovalRuleTemplateContentException extends __BaseException { + readonly name: "InvalidApprovalRuleTemplateContentException" = "InvalidApprovalRuleTemplateContentException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalRuleTemplateContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalRuleTemplateContentException.prototype); + } } /** @@ -1950,37 +2304,58 @@ export interface InvalidApprovalRuleTemplateContentException extends __SmithyExc * CodeCommit, see AWS CodeCommit User * Guide.

*/ -export interface InvalidApprovalRuleTemplateDescriptionException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalRuleTemplateDescriptionException"; - $fault: "client"; +export class InvalidApprovalRuleTemplateDescriptionException extends __BaseException { + readonly name: "InvalidApprovalRuleTemplateDescriptionException" = "InvalidApprovalRuleTemplateDescriptionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalRuleTemplateDescriptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalRuleTemplateDescriptionException.prototype); + } } /** *

The maximum number of approval rule templates has been exceeded for this AWS Region.

*/ -export interface NumberOfRuleTemplatesExceededException extends __SmithyException, $MetadataBearer { - name: "NumberOfRuleTemplatesExceededException"; - $fault: "client"; +export class NumberOfRuleTemplatesExceededException extends __BaseException { + readonly name: "NumberOfRuleTemplatesExceededException" = "NumberOfRuleTemplatesExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NumberOfRuleTemplatesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NumberOfRuleTemplatesExceededException.prototype); + } } /** *

A commit ID was not specified.

*/ -export interface CommitIdRequiredException extends __SmithyException, $MetadataBearer { - name: "CommitIdRequiredException"; - $fault: "client"; +export class CommitIdRequiredException extends __BaseException { + readonly name: "CommitIdRequiredException" = "CommitIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitIdRequiredException.prototype); + } } /** @@ -2015,37 +2390,58 @@ export namespace CreateBranchInput { /** *

The specified reference name is not valid.

*/ -export interface InvalidBranchNameException extends __SmithyException, $MetadataBearer { - name: "InvalidBranchNameException"; - $fault: "client"; +export class InvalidBranchNameException extends __BaseException { + readonly name: "InvalidBranchNameException" = "InvalidBranchNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBranchNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBranchNameException.prototype); + } } /** *

The specified commit ID is not valid.

*/ -export interface InvalidCommitIdException extends __SmithyException, $MetadataBearer { - name: "InvalidCommitIdException"; - $fault: "client"; +export class InvalidCommitIdException extends __BaseException { + readonly name: "InvalidCommitIdException" = "InvalidCommitIdException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCommitIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCommitIdException.prototype); + } } /** *

The commit message is too long. Provide a shorter string.

*/ -export interface CommitMessageLengthExceededException extends __SmithyException, $MetadataBearer { - name: "CommitMessageLengthExceededException"; - $fault: "client"; +export class CommitMessageLengthExceededException extends __BaseException { + readonly name: "CommitMessageLengthExceededException" = "CommitMessageLengthExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitMessageLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitMessageLengthExceededException.prototype); + } } /** @@ -2286,13 +2682,20 @@ export namespace CreateCommitOutput { *

A file cannot be added to the repository because the specified path name has the same name as a file that already exists in this repository. * Either provide a different name for the file, or specify a different path for the file.

*/ -export interface DirectoryNameConflictsWithFileNameException extends __SmithyException, $MetadataBearer { - name: "DirectoryNameConflictsWithFileNameException"; - $fault: "client"; +export class DirectoryNameConflictsWithFileNameException extends __BaseException { + readonly name: "DirectoryNameConflictsWithFileNameException" = "DirectoryNameConflictsWithFileNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryNameConflictsWithFileNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryNameConflictsWithFileNameException.prototype); + } } /** @@ -2300,13 +2703,20 @@ export interface DirectoryNameConflictsWithFileNameException extends __SmithyExc * specified for the same file. You cannot provide both. Either specify a source file or * provide the file content directly.

*/ -export interface FileContentAndSourceFileSpecifiedException extends __SmithyException, $MetadataBearer { - name: "FileContentAndSourceFileSpecifiedException"; - $fault: "client"; +export class FileContentAndSourceFileSpecifiedException extends __BaseException { + readonly name: "FileContentAndSourceFileSpecifiedException" = "FileContentAndSourceFileSpecifiedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileContentAndSourceFileSpecifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileContentAndSourceFileSpecifiedException.prototype); + } } /** @@ -2314,77 +2724,119 @@ export interface FileContentAndSourceFileSpecifiedException extends __SmithyExce * the combined file content change size is 7 MB. Consider making these changes using a Git * client.

*/ -export interface FileContentSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "FileContentSizeLimitExceededException"; - $fault: "client"; +export class FileContentSizeLimitExceededException extends __BaseException { + readonly name: "FileContentSizeLimitExceededException" = "FileContentSizeLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileContentSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileContentSizeLimitExceededException.prototype); + } } /** *

The specified file does not exist. Verify that you have used the correct file name, * full path, and extension.

*/ -export interface FileDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "FileDoesNotExistException"; - $fault: "client"; +export class FileDoesNotExistException extends __BaseException { + readonly name: "FileDoesNotExistException" = "FileDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileDoesNotExistException.prototype); + } } /** *

The commit cannot be created because no files have been specified as added, updated, or changed (PutFile or DeleteFile) for the commit.

*/ -export interface FileEntryRequiredException extends __SmithyException, $MetadataBearer { - name: "FileEntryRequiredException"; - $fault: "client"; +export class FileEntryRequiredException extends __BaseException { + readonly name: "FileEntryRequiredException" = "FileEntryRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileEntryRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileEntryRequiredException.prototype); + } } /** *

The commit cannot be created because no file mode has been specified. A file mode is * required to update mode permissions for a file.

*/ -export interface FileModeRequiredException extends __SmithyException, $MetadataBearer { - name: "FileModeRequiredException"; - $fault: "client"; +export class FileModeRequiredException extends __BaseException { + readonly name: "FileModeRequiredException" = "FileModeRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileModeRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileModeRequiredException.prototype); + } } /** *

A file cannot be added to the repository because the specified file name has the same name as a directory in this repository. Either provide * another name for the file, or add the file in a directory that does not match the file name.

*/ -export interface FileNameConflictsWithDirectoryNameException extends __SmithyException, $MetadataBearer { - name: "FileNameConflictsWithDirectoryNameException"; - $fault: "client"; +export class FileNameConflictsWithDirectoryNameException extends __BaseException { + readonly name: "FileNameConflictsWithDirectoryNameException" = "FileNameConflictsWithDirectoryNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileNameConflictsWithDirectoryNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileNameConflictsWithDirectoryNameException.prototype); + } } /** *

The commit cannot be created because a specified file path points to a submodule. Verify that the destination files * have valid file paths that do not point to a submodule.

*/ -export interface FilePathConflictsWithSubmodulePathException extends __SmithyException, $MetadataBearer { - name: "FilePathConflictsWithSubmodulePathException"; - $fault: "client"; +export class FilePathConflictsWithSubmodulePathException extends __BaseException { + readonly name: "FilePathConflictsWithSubmodulePathException" = "FilePathConflictsWithSubmodulePathException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FilePathConflictsWithSubmodulePathException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FilePathConflictsWithSubmodulePathException.prototype); + } } /** @@ -2392,186 +2844,291 @@ export interface FilePathConflictsWithSubmodulePathException extends __SmithyExc * folder whose contents exceed the limit of 6 MB. Either reduce the number and size of your changes, * or split the changes across multiple folders.

*/ -export interface FolderContentSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "FolderContentSizeLimitExceededException"; - $fault: "client"; +export class FolderContentSizeLimitExceededException extends __BaseException { + readonly name: "FolderContentSizeLimitExceededException" = "FolderContentSizeLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FolderContentSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FolderContentSizeLimitExceededException.prototype); + } } /** *

The specified deletion parameter is not valid.

*/ -export interface InvalidDeletionParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidDeletionParameterException"; - $fault: "client"; +export class InvalidDeletionParameterException extends __BaseException { + readonly name: "InvalidDeletionParameterException" = "InvalidDeletionParameterException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeletionParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeletionParameterException.prototype); + } } /** *

The specified email address either contains one or more characters that are not allowed, or it exceeds the maximum number of characters * allowed for an email address.

*/ -export interface InvalidEmailException extends __SmithyException, $MetadataBearer { - name: "InvalidEmailException"; - $fault: "client"; +export class InvalidEmailException extends __BaseException { + readonly name: "InvalidEmailException" = "InvalidEmailException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEmailException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEmailException.prototype); + } } /** *

The specified file mode permission is not valid. For a list of valid file mode permissions, see PutFile.

*/ -export interface InvalidFileModeException extends __SmithyException, $MetadataBearer { - name: "InvalidFileModeException"; - $fault: "client"; +export class InvalidFileModeException extends __BaseException { + readonly name: "InvalidFileModeException" = "InvalidFileModeException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFileModeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFileModeException.prototype); + } } /** *

The parent commit ID is not valid. The commit ID cannot be empty, and must match the head commit ID for the branch of the repository where you * want to add or update a file.

*/ -export interface InvalidParentCommitIdException extends __SmithyException, $MetadataBearer { - name: "InvalidParentCommitIdException"; - $fault: "client"; +export class InvalidParentCommitIdException extends __BaseException { + readonly name: "InvalidParentCommitIdException" = "InvalidParentCommitIdException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParentCommitIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParentCommitIdException.prototype); + } } /** *

The specified path is not valid.

*/ -export interface InvalidPathException extends __SmithyException, $MetadataBearer { - name: "InvalidPathException"; - $fault: "client"; +export class InvalidPathException extends __BaseException { + readonly name: "InvalidPathException" = "InvalidPathException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPathException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPathException.prototype); + } } /** *

The number of specified files to change as part of this commit exceeds the maximum number of files * that can be changed in a single commit. Consider using a Git client for these changes.

*/ -export interface MaximumFileEntriesExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumFileEntriesExceededException"; - $fault: "client"; +export class MaximumFileEntriesExceededException extends __BaseException { + readonly name: "MaximumFileEntriesExceededException" = "MaximumFileEntriesExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumFileEntriesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumFileEntriesExceededException.prototype); + } } /** *

The user name is not valid because it has exceeded the character limit for author names.

*/ -export interface NameLengthExceededException extends __SmithyException, $MetadataBearer { - name: "NameLengthExceededException"; - $fault: "client"; +export class NameLengthExceededException extends __BaseException { + readonly name: "NameLengthExceededException" = "NameLengthExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NameLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NameLengthExceededException.prototype); + } } /** *

The commit cannot be created because no changes will be made to the repository as a result of this commit. A commit must contain at least one change.

*/ -export interface NoChangeException extends __SmithyException, $MetadataBearer { - name: "NoChangeException"; - $fault: "client"; +export class NoChangeException extends __BaseException { + readonly name: "NoChangeException" = "NoChangeException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoChangeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoChangeException.prototype); + } } /** *

The parent commit ID is not valid because it does not exist. The specified parent commit ID does not exist in the specified branch of the repository.

*/ -export interface ParentCommitDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ParentCommitDoesNotExistException"; - $fault: "client"; +export class ParentCommitDoesNotExistException extends __BaseException { + readonly name: "ParentCommitDoesNotExistException" = "ParentCommitDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParentCommitDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParentCommitDoesNotExistException.prototype); + } } /** *

The file could not be added because the provided parent commit ID is not the current tip of the specified branch. To view the full commit ID of the current head * of the branch, use GetBranch.

*/ -export interface ParentCommitIdOutdatedException extends __SmithyException, $MetadataBearer { - name: "ParentCommitIdOutdatedException"; - $fault: "client"; +export class ParentCommitIdOutdatedException extends __BaseException { + readonly name: "ParentCommitIdOutdatedException" = "ParentCommitIdOutdatedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParentCommitIdOutdatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParentCommitIdOutdatedException.prototype); + } } /** *

A parent commit ID is required. To view the full commit ID of a branch in a repository, use GetBranch or a Git command * (for example, git pull or git log).

*/ -export interface ParentCommitIdRequiredException extends __SmithyException, $MetadataBearer { - name: "ParentCommitIdRequiredException"; - $fault: "client"; +export class ParentCommitIdRequiredException extends __BaseException { + readonly name: "ParentCommitIdRequiredException" = "ParentCommitIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParentCommitIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParentCommitIdRequiredException.prototype); + } } /** *

The folderPath for a location cannot be null.

*/ -export interface PathRequiredException extends __SmithyException, $MetadataBearer { - name: "PathRequiredException"; - $fault: "client"; +export class PathRequiredException extends __BaseException { + readonly name: "PathRequiredException" = "PathRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PathRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PathRequiredException.prototype); + } } /** *

The commit cannot be created because one or more files specified in the commit reference both a file and a folder.

*/ -export interface PutFileEntryConflictException extends __SmithyException, $MetadataBearer { - name: "PutFileEntryConflictException"; - $fault: "client"; +export class PutFileEntryConflictException extends __BaseException { + readonly name: "PutFileEntryConflictException" = "PutFileEntryConflictException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PutFileEntryConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PutFileEntryConflictException.prototype); + } } /** *

The commit cannot be created because one of the changes specifies copying or moving a .gitkeep file.

*/ -export interface RestrictedSourceFileException extends __SmithyException, $MetadataBearer { - name: "RestrictedSourceFileException"; - $fault: "client"; +export class RestrictedSourceFileException extends __BaseException { + readonly name: "RestrictedSourceFileException" = "RestrictedSourceFileException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RestrictedSourceFileException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RestrictedSourceFileException.prototype); + } } /** @@ -2579,25 +3136,39 @@ export interface RestrictedSourceFileException extends __SmithyException, $Metad * you cannot make the same delete request to the same file in the same file path twice, or make a delete request and a move request to the same * file as part of the same commit.

*/ -export interface SamePathRequestException extends __SmithyException, $MetadataBearer { - name: "SamePathRequestException"; - $fault: "client"; +export class SamePathRequestException extends __BaseException { + readonly name: "SamePathRequestException" = "SamePathRequestException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SamePathRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SamePathRequestException.prototype); + } } /** *

The commit cannot be created because no source files or file content have been specified for the commit.

*/ -export interface SourceFileOrContentRequiredException extends __SmithyException, $MetadataBearer { - name: "SourceFileOrContentRequiredException"; - $fault: "client"; +export class SourceFileOrContentRequiredException extends __BaseException { + readonly name: "SourceFileOrContentRequiredException" = "SourceFileOrContentRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceFileOrContentRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceFileOrContentRequiredException.prototype); + } } /** @@ -2855,38 +3426,59 @@ export namespace CreatePullRequestOutput { *

The client request token is not valid. Either the token is not in a valid format, or * the token has been used in a previous request and cannot be reused.

*/ -export interface IdempotencyParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotencyParameterMismatchException"; - $fault: "client"; +export class IdempotencyParameterMismatchException extends __BaseException { + readonly name: "IdempotencyParameterMismatchException" = "IdempotencyParameterMismatchException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotencyParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotencyParameterMismatchException.prototype); + } } /** *

The client request token is not valid.

*/ -export interface InvalidClientRequestTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidClientRequestTokenException"; - $fault: "client"; +export class InvalidClientRequestTokenException extends __BaseException { + readonly name: "InvalidClientRequestTokenException" = "InvalidClientRequestTokenException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientRequestTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientRequestTokenException.prototype); + } } /** *

The pull request description is not valid. Descriptions cannot be more than 1,000 * characters.

*/ -export interface InvalidDescriptionException extends __SmithyException, $MetadataBearer { - name: "InvalidDescriptionException"; - $fault: "client"; +export class InvalidDescriptionException extends __BaseException { + readonly name: "InvalidDescriptionException" = "InvalidDescriptionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDescriptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDescriptionException.prototype); + } } /** @@ -2894,160 +3486,251 @@ export interface InvalidDescriptionException extends __SmithyException, $Metadat * Git references format (for example, refs/heads/master). For more information, see Git Internals - * Git References or consult your Git documentation.

*/ -export interface InvalidReferenceNameException extends __SmithyException, $MetadataBearer { - name: "InvalidReferenceNameException"; - $fault: "client"; +export class InvalidReferenceNameException extends __BaseException { + readonly name: "InvalidReferenceNameException" = "InvalidReferenceNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReferenceNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReferenceNameException.prototype); + } } /** *

The target for the pull request is not valid. A target must contain the full values for the repository name, source branch, and destination branch for the pull request.

*/ -export interface InvalidTargetException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetException"; - $fault: "client"; +export class InvalidTargetException extends __BaseException { + readonly name: "InvalidTargetException" = "InvalidTargetException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetException.prototype); + } } /** *

The targets for the pull request is not valid or not in a valid format. Targets are a list of target objects. Each target object must contain the full values for * the repository name, source branch, and destination branch for a pull request.

*/ -export interface InvalidTargetsException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetsException"; - $fault: "client"; +export class InvalidTargetsException extends __BaseException { + readonly name: "InvalidTargetsException" = "InvalidTargetsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetsException.prototype); + } } /** *

The title of the pull request is not valid. Pull request titles cannot exceed 100 characters in length.

*/ -export interface InvalidTitleException extends __SmithyException, $MetadataBearer { - name: "InvalidTitleException"; - $fault: "client"; +export class InvalidTitleException extends __BaseException { + readonly name: "InvalidTitleException" = "InvalidTitleException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTitleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTitleException.prototype); + } } /** *

You cannot create the pull request because the repository has too many open pull requests. * The maximum number of open pull requests for a repository is 1,000. Close one or more open pull requests, and then try again.

*/ -export interface MaximumOpenPullRequestsExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumOpenPullRequestsExceededException"; - $fault: "client"; +export class MaximumOpenPullRequestsExceededException extends __BaseException { + readonly name: "MaximumOpenPullRequestsExceededException" = "MaximumOpenPullRequestsExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumOpenPullRequestsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumOpenPullRequestsExceededException.prototype); + } } /** *

You cannot include more than one repository in a pull request. Make sure you have specified only one repository name in your request, and then try again.

*/ -export interface MultipleRepositoriesInPullRequestException extends __SmithyException, $MetadataBearer { - name: "MultipleRepositoriesInPullRequestException"; - $fault: "client"; +export class MultipleRepositoriesInPullRequestException extends __BaseException { + readonly name: "MultipleRepositoriesInPullRequestException" = "MultipleRepositoriesInPullRequestException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MultipleRepositoriesInPullRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MultipleRepositoriesInPullRequestException.prototype); + } } /** *

The specified reference does not exist. You must provide a full commit ID.

*/ -export interface ReferenceDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ReferenceDoesNotExistException"; - $fault: "client"; +export class ReferenceDoesNotExistException extends __BaseException { + readonly name: "ReferenceDoesNotExistException" = "ReferenceDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReferenceDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReferenceDoesNotExistException.prototype); + } } /** *

A reference name is required, but none was provided.

*/ -export interface ReferenceNameRequiredException extends __SmithyException, $MetadataBearer { - name: "ReferenceNameRequiredException"; - $fault: "client"; +export class ReferenceNameRequiredException extends __BaseException { + readonly name: "ReferenceNameRequiredException" = "ReferenceNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReferenceNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReferenceNameRequiredException.prototype); + } } /** *

The specified reference is not a supported type.

*/ -export interface ReferenceTypeNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ReferenceTypeNotSupportedException"; - $fault: "client"; +export class ReferenceTypeNotSupportedException extends __BaseException { + readonly name: "ReferenceTypeNotSupportedException" = "ReferenceTypeNotSupportedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReferenceTypeNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReferenceTypeNotSupportedException.prototype); + } } /** *

The source branch and destination branch for the pull request are the same. You must * specify different branches for the source and destination.

*/ -export interface SourceAndDestinationAreSameException extends __SmithyException, $MetadataBearer { - name: "SourceAndDestinationAreSameException"; - $fault: "client"; +export class SourceAndDestinationAreSameException extends __BaseException { + readonly name: "SourceAndDestinationAreSameException" = "SourceAndDestinationAreSameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceAndDestinationAreSameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceAndDestinationAreSameException.prototype); + } } /** *

A pull request target is required. It cannot be empty or null. A pull request target must contain the full values for the repository name, source branch, and destination branch for the pull request.

*/ -export interface TargetRequiredException extends __SmithyException, $MetadataBearer { - name: "TargetRequiredException"; - $fault: "client"; +export class TargetRequiredException extends __BaseException { + readonly name: "TargetRequiredException" = "TargetRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetRequiredException.prototype); + } } /** *

An array of target objects is required. It cannot be empty or null.

*/ -export interface TargetsRequiredException extends __SmithyException, $MetadataBearer { - name: "TargetsRequiredException"; - $fault: "client"; +export class TargetsRequiredException extends __BaseException { + readonly name: "TargetsRequiredException" = "TargetsRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetsRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetsRequiredException.prototype); + } } /** *

A pull request title is required. It cannot be empty or null.

*/ -export interface TitleRequiredException extends __SmithyException, $MetadataBearer { - name: "TitleRequiredException"; - $fault: "client"; +export class TitleRequiredException extends __BaseException { + readonly name: "TitleRequiredException" = "TitleRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TitleRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TitleRequiredException.prototype); + } } export interface CreatePullRequestApprovalRuleInput { @@ -3137,85 +3820,134 @@ export namespace CreatePullRequestApprovalRuleOutput { /** *

The content for the approval rule is not valid.

*/ -export interface InvalidApprovalRuleContentException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalRuleContentException"; - $fault: "client"; +export class InvalidApprovalRuleContentException extends __BaseException { + readonly name: "InvalidApprovalRuleContentException" = "InvalidApprovalRuleContentException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalRuleContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalRuleContentException.prototype); + } } /** *

The name for the approval rule is not valid.

*/ -export interface InvalidApprovalRuleNameException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalRuleNameException"; - $fault: "client"; +export class InvalidApprovalRuleNameException extends __BaseException { + readonly name: "InvalidApprovalRuleNameException" = "InvalidApprovalRuleNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalRuleNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalRuleNameException.prototype); + } } /** *

The pull request ID is not valid. Make sure that you have provided the full ID and that the pull request is in the specified repository, and then try again.

*/ -export interface InvalidPullRequestIdException extends __SmithyException, $MetadataBearer { - name: "InvalidPullRequestIdException"; - $fault: "client"; +export class InvalidPullRequestIdException extends __BaseException { + readonly name: "InvalidPullRequestIdException" = "InvalidPullRequestIdException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPullRequestIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPullRequestIdException.prototype); + } } /** *

The approval rule cannot be added. The pull request has the maximum number of approval rules associated with it.

*/ -export interface NumberOfRulesExceededException extends __SmithyException, $MetadataBearer { - name: "NumberOfRulesExceededException"; - $fault: "client"; +export class NumberOfRulesExceededException extends __BaseException { + readonly name: "NumberOfRulesExceededException" = "NumberOfRulesExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NumberOfRulesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NumberOfRulesExceededException.prototype); + } } /** *

The pull request status cannot be updated because it is already closed.

*/ -export interface PullRequestAlreadyClosedException extends __SmithyException, $MetadataBearer { - name: "PullRequestAlreadyClosedException"; - $fault: "client"; +export class PullRequestAlreadyClosedException extends __BaseException { + readonly name: "PullRequestAlreadyClosedException" = "PullRequestAlreadyClosedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullRequestAlreadyClosedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullRequestAlreadyClosedException.prototype); + } } /** *

The pull request ID could not be found. Make sure that you have specified the correct repository name and pull request ID, and then try again.

*/ -export interface PullRequestDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "PullRequestDoesNotExistException"; - $fault: "client"; +export class PullRequestDoesNotExistException extends __BaseException { + readonly name: "PullRequestDoesNotExistException" = "PullRequestDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullRequestDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullRequestDoesNotExistException.prototype); + } } /** *

A pull request ID is required, but none was provided.

*/ -export interface PullRequestIdRequiredException extends __SmithyException, $MetadataBearer { - name: "PullRequestIdRequiredException"; - $fault: "client"; +export class PullRequestIdRequiredException extends __BaseException { + readonly name: "PullRequestIdRequiredException" = "PullRequestIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullRequestIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullRequestIdRequiredException.prototype); + } } /** @@ -3283,97 +4015,153 @@ export namespace CreateRepositoryOutput { /** *

The specified repository description is not valid.

*/ -export interface InvalidRepositoryDescriptionException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryDescriptionException"; - $fault: "client"; +export class InvalidRepositoryDescriptionException extends __BaseException { + readonly name: "InvalidRepositoryDescriptionException" = "InvalidRepositoryDescriptionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryDescriptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryDescriptionException.prototype); + } } /** *

The specified tag is not valid. Key names cannot be prefixed with aws:.

*/ -export interface InvalidSystemTagUsageException extends __SmithyException, $MetadataBearer { - name: "InvalidSystemTagUsageException"; - $fault: "client"; +export class InvalidSystemTagUsageException extends __BaseException { + readonly name: "InvalidSystemTagUsageException" = "InvalidSystemTagUsageException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSystemTagUsageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSystemTagUsageException.prototype); + } } /** *

The map of tags is not valid.

*/ -export interface InvalidTagsMapException extends __SmithyException, $MetadataBearer { - name: "InvalidTagsMapException"; - $fault: "client"; +export class InvalidTagsMapException extends __BaseException { + readonly name: "InvalidTagsMapException" = "InvalidTagsMapException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagsMapException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagsMapException.prototype); + } } /** *

A repository resource limit was exceeded.

*/ -export interface RepositoryLimitExceededException extends __SmithyException, $MetadataBearer { - name: "RepositoryLimitExceededException"; - $fault: "client"; +export class RepositoryLimitExceededException extends __BaseException { + readonly name: "RepositoryLimitExceededException" = "RepositoryLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryLimitExceededException.prototype); + } } /** *

The specified repository name already exists.

*/ -export interface RepositoryNameExistsException extends __SmithyException, $MetadataBearer { - name: "RepositoryNameExistsException"; - $fault: "client"; +export class RepositoryNameExistsException extends __BaseException { + readonly name: "RepositoryNameExistsException" = "RepositoryNameExistsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNameExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNameExistsException.prototype); + } } /** *

The tag policy is not valid.

*/ -export interface TagPolicyException extends __SmithyException, $MetadataBearer { - name: "TagPolicyException"; - $fault: "client"; +export class TagPolicyException extends __BaseException { + readonly name: "TagPolicyException" = "TagPolicyException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagPolicyException.prototype); + } } /** *

The maximum number of tags for an AWS CodeCommit resource has been exceeded.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** *

The merge cannot be completed because the target branch has been modified. Another user might have modified the target branch while the merge was in progress. Wait a few minutes, and then try again.

*/ -export interface ConcurrentReferenceUpdateException extends __SmithyException, $MetadataBearer { - name: "ConcurrentReferenceUpdateException"; - $fault: "client"; +export class ConcurrentReferenceUpdateException extends __BaseException { + readonly name: "ConcurrentReferenceUpdateException" = "ConcurrentReferenceUpdateException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentReferenceUpdateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentReferenceUpdateException.prototype); + } } export enum ReplacementTypeEnum { @@ -3548,97 +4336,154 @@ export namespace CreateUnreferencedMergeCommitOutput { /** *

The specified conflict resolution list is not valid.

*/ -export interface InvalidConflictResolutionException extends __SmithyException, $MetadataBearer { - name: "InvalidConflictResolutionException"; - $fault: "client"; +export class InvalidConflictResolutionException extends __BaseException { + readonly name: "InvalidConflictResolutionException" = "InvalidConflictResolutionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConflictResolutionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConflictResolutionException.prototype); + } } /** *

Automerge was specified for resolving the conflict, but the replacement type is not valid or content is missing.

*/ -export interface InvalidReplacementContentException extends __SmithyException, $MetadataBearer { - name: "InvalidReplacementContentException"; - $fault: "client"; +export class InvalidReplacementContentException extends __BaseException { + readonly name: "InvalidReplacementContentException" = "InvalidReplacementContentException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReplacementContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReplacementContentException.prototype); + } } /** *

Automerge was specified for resolving the conflict, but the specified replacement type is not valid.

*/ -export interface InvalidReplacementTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidReplacementTypeException"; - $fault: "client"; +export class InvalidReplacementTypeException extends __BaseException { + readonly name: "InvalidReplacementTypeException" = "InvalidReplacementTypeException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReplacementTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReplacementTypeException.prototype); + } } /** *

The pull request cannot be merged automatically into the destination branch. You must manually merge the branches and resolve any conflicts.

*/ -export interface ManualMergeRequiredException extends __SmithyException, $MetadataBearer { - name: "ManualMergeRequiredException"; - $fault: "client"; +export class ManualMergeRequiredException extends __BaseException { + readonly name: "ManualMergeRequiredException" = "ManualMergeRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ManualMergeRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ManualMergeRequiredException.prototype); + } } /** *

The number of allowed conflict resolution entries was exceeded.

*/ -export interface MaximumConflictResolutionEntriesExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumConflictResolutionEntriesExceededException"; - $fault: "client"; +export class MaximumConflictResolutionEntriesExceededException extends __BaseException { + readonly name: "MaximumConflictResolutionEntriesExceededException" = + "MaximumConflictResolutionEntriesExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumConflictResolutionEntriesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumConflictResolutionEntriesExceededException.prototype); + } } /** *

More than one conflict resolution entries exists for the conflict. A conflict can have only one conflict resolution entry.

*/ -export interface MultipleConflictResolutionEntriesException extends __SmithyException, $MetadataBearer { - name: "MultipleConflictResolutionEntriesException"; - $fault: "client"; +export class MultipleConflictResolutionEntriesException extends __BaseException { + readonly name: "MultipleConflictResolutionEntriesException" = "MultipleConflictResolutionEntriesException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MultipleConflictResolutionEntriesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MultipleConflictResolutionEntriesException.prototype); + } } /** *

USE_NEW_CONTENT was specified, but no replacement content has been provided.

*/ -export interface ReplacementContentRequiredException extends __SmithyException, $MetadataBearer { - name: "ReplacementContentRequiredException"; - $fault: "client"; +export class ReplacementContentRequiredException extends __BaseException { + readonly name: "ReplacementContentRequiredException" = "ReplacementContentRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplacementContentRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplacementContentRequiredException.prototype); + } } /** *

A replacement type is required.

*/ -export interface ReplacementTypeRequiredException extends __SmithyException, $MetadataBearer { - name: "ReplacementTypeRequiredException"; - $fault: "client"; +export class ReplacementTypeRequiredException extends __BaseException { + readonly name: "ReplacementTypeRequiredException" = "ReplacementTypeRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplacementTypeRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplacementTypeRequiredException.prototype); + } } export interface DeleteApprovalRuleTemplateInput { @@ -3677,13 +4522,20 @@ export namespace DeleteApprovalRuleTemplateOutput { /** *

The specified branch is the default branch for the repository, and cannot be deleted. To delete this branch, you must first set another branch as the default branch.

*/ -export interface DefaultBranchCannotBeDeletedException extends __SmithyException, $MetadataBearer { - name: "DefaultBranchCannotBeDeletedException"; - $fault: "client"; +export class DefaultBranchCannotBeDeletedException extends __BaseException { + readonly name: "DefaultBranchCannotBeDeletedException" = "DefaultBranchCannotBeDeletedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DefaultBranchCannotBeDeletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DefaultBranchCannotBeDeletedException.prototype); + } } /** @@ -3732,38 +4584,59 @@ export namespace DeleteBranchOutput { /** *

This comment has already been deleted. You cannot edit or delete a deleted comment.

*/ -export interface CommentDeletedException extends __SmithyException, $MetadataBearer { - name: "CommentDeletedException"; - $fault: "client"; +export class CommentDeletedException extends __BaseException { + readonly name: "CommentDeletedException" = "CommentDeletedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommentDeletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommentDeletedException.prototype); + } } /** *

No comment exists with the provided ID. Verify that you have used the correct ID, and * then try again.

*/ -export interface CommentDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "CommentDoesNotExistException"; - $fault: "client"; +export class CommentDoesNotExistException extends __BaseException { + readonly name: "CommentDoesNotExistException" = "CommentDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommentDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommentDoesNotExistException.prototype); + } } /** *

The comment ID is missing or null. A comment ID is required.

*/ -export interface CommentIdRequiredException extends __SmithyException, $MetadataBearer { - name: "CommentIdRequiredException"; - $fault: "client"; +export class CommentIdRequiredException extends __BaseException { + readonly name: "CommentIdRequiredException" = "CommentIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommentIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommentIdRequiredException.prototype); + } } export interface DeleteCommentContentInput { @@ -3869,13 +4742,20 @@ export namespace DeleteCommentContentOutput { /** *

The comment ID is not in a valid format. Make sure that you have provided the full comment ID.

*/ -export interface InvalidCommentIdException extends __SmithyException, $MetadataBearer { - name: "InvalidCommentIdException"; - $fault: "client"; +export class InvalidCommentIdException extends __BaseException { + readonly name: "InvalidCommentIdException" = "InvalidCommentIdException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCommentIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCommentIdException.prototype); + } } export interface DeleteFileInput { @@ -4422,37 +5302,58 @@ export namespace DescribePullRequestEventsOutput { *

The Amazon Resource Name (ARN) is not valid. Make sure that you have provided the full ARN for the user who initiated the change for the pull request, * and then try again.

*/ -export interface InvalidActorArnException extends __SmithyException, $MetadataBearer { - name: "InvalidActorArnException"; - $fault: "client"; +export class InvalidActorArnException extends __BaseException { + readonly name: "InvalidActorArnException" = "InvalidActorArnException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidActorArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidActorArnException.prototype); + } } /** *

The specified number of maximum results is not valid.

*/ -export interface InvalidMaxResultsException extends __SmithyException, $MetadataBearer { - name: "InvalidMaxResultsException"; - $fault: "client"; +export class InvalidMaxResultsException extends __BaseException { + readonly name: "InvalidMaxResultsException" = "InvalidMaxResultsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMaxResultsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMaxResultsException.prototype); + } } /** *

The pull request event type is not valid.

*/ -export interface InvalidPullRequestEventTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidPullRequestEventTypeException"; - $fault: "client"; +export class InvalidPullRequestEventTypeException extends __BaseException { + readonly name: "InvalidPullRequestEventTypeException" = "InvalidPullRequestEventTypeException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPullRequestEventTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPullRequestEventTypeException.prototype); + } } export interface DisassociateApprovalRuleTemplateFromRepositoryInput { @@ -4553,37 +5454,58 @@ export namespace EvaluatePullRequestApprovalRulesOutput { /** *

The revision ID is not valid. Use GetPullRequest to determine the value.

*/ -export interface InvalidRevisionIdException extends __SmithyException, $MetadataBearer { - name: "InvalidRevisionIdException"; - $fault: "client"; +export class InvalidRevisionIdException extends __BaseException { + readonly name: "InvalidRevisionIdException" = "InvalidRevisionIdException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRevisionIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRevisionIdException.prototype); + } } /** *

A revision ID is required, but was not provided.

*/ -export interface RevisionIdRequiredException extends __SmithyException, $MetadataBearer { - name: "RevisionIdRequiredException"; - $fault: "client"; +export class RevisionIdRequiredException extends __BaseException { + readonly name: "RevisionIdRequiredException" = "RevisionIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RevisionIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RevisionIdRequiredException.prototype); + } } /** *

The revision ID provided in the request does not match the current revision ID. Use GetPullRequest to retrieve the current revision ID.

*/ -export interface RevisionNotCurrentException extends __SmithyException, $MetadataBearer { - name: "RevisionNotCurrentException"; - $fault: "client"; +export class RevisionNotCurrentException extends __BaseException { + readonly name: "RevisionNotCurrentException" = "RevisionNotCurrentException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RevisionNotCurrentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RevisionNotCurrentException.prototype); + } } export interface GetApprovalRuleTemplateInput { @@ -4622,13 +5544,20 @@ export namespace GetApprovalRuleTemplateOutput { *

The specified file exceeds the file size limit for AWS CodeCommit. For more information about limits in AWS CodeCommit, see * AWS CodeCommit User Guide.

*/ -export interface FileTooLargeException extends __SmithyException, $MetadataBearer { - name: "FileTooLargeException"; - $fault: "client"; +export class FileTooLargeException extends __BaseException { + readonly name: "FileTooLargeException" = "FileTooLargeException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileTooLargeException.prototype); + } } /** @@ -4677,13 +5606,20 @@ export namespace GetBlobOutput { /** *

The specified blob is not valid.

*/ -export interface InvalidBlobIdException extends __SmithyException, $MetadataBearer { - name: "InvalidBlobIdException"; - $fault: "client"; +export class InvalidBlobIdException extends __BaseException { + readonly name: "InvalidBlobIdException" = "InvalidBlobIdException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBlobIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBlobIdException.prototype); + } } /** @@ -4876,13 +5812,20 @@ export namespace GetCommentReactionsOutput { /** *

The Amazon Resource Name (ARN) of the user or identity is not valid.

*/ -export interface InvalidReactionUserArnException extends __SmithyException, $MetadataBearer { - name: "InvalidReactionUserArnException"; - $fault: "client"; +export class InvalidReactionUserArnException extends __BaseException { + readonly name: "InvalidReactionUserArnException" = "InvalidReactionUserArnException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReactionUserArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReactionUserArnException.prototype); + } } export interface GetCommentsForComparedCommitInput { @@ -5159,25 +6102,39 @@ export namespace GetCommentsForPullRequestOutput { /** *

The repository does not contain any pull requests with that pull request ID. Use GetPullRequest to verify the correct repository name for the pull request ID.

*/ -export interface RepositoryNotAssociatedWithPullRequestException extends __SmithyException, $MetadataBearer { - name: "RepositoryNotAssociatedWithPullRequestException"; - $fault: "client"; +export class RepositoryNotAssociatedWithPullRequestException extends __BaseException { + readonly name: "RepositoryNotAssociatedWithPullRequestException" = "RepositoryNotAssociatedWithPullRequestException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNotAssociatedWithPullRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNotAssociatedWithPullRequestException.prototype); + } } /** *

The specified commit ID does not exist.

*/ -export interface CommitIdDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "CommitIdDoesNotExistException"; - $fault: "client"; +export class CommitIdDoesNotExistException extends __BaseException { + readonly name: "CommitIdDoesNotExistException" = "CommitIdDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommitIdDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommitIdDoesNotExistException.prototype); + } } /** @@ -5335,13 +6292,20 @@ export namespace GetDifferencesOutput { /** *

The specified path does not exist.

*/ -export interface PathDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "PathDoesNotExistException"; - $fault: "client"; +export class PathDoesNotExistException extends __BaseException { + readonly name: "PathDoesNotExistException" = "PathDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PathDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PathDoesNotExistException.prototype); + } } export interface GetFileInput { @@ -5425,13 +6389,20 @@ export namespace GetFileOutput { *

The specified folder does not exist. Either the folder name is not correct, or you did * not enter the full path to the folder.

*/ -export interface FolderDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "FolderDoesNotExistException"; - $fault: "client"; +export class FolderDoesNotExistException extends __BaseException { + readonly name: "FolderDoesNotExistException" = "FolderDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FolderDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FolderDoesNotExistException.prototype); + } } export interface GetFolderInput { @@ -5819,25 +6790,39 @@ export namespace GetMergeConflictsOutput { /** *

The destination commit specifier is not valid. You must provide a valid branch name, tag, or full commit ID.

*/ -export interface InvalidDestinationCommitSpecifierException extends __SmithyException, $MetadataBearer { - name: "InvalidDestinationCommitSpecifierException"; - $fault: "client"; +export class InvalidDestinationCommitSpecifierException extends __BaseException { + readonly name: "InvalidDestinationCommitSpecifierException" = "InvalidDestinationCommitSpecifierException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDestinationCommitSpecifierException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDestinationCommitSpecifierException.prototype); + } } /** *

The source commit specifier is not valid. You must provide a valid branch name, tag, or full commit ID.

*/ -export interface InvalidSourceCommitSpecifierException extends __SmithyException, $MetadataBearer { - name: "InvalidSourceCommitSpecifierException"; - $fault: "client"; +export class InvalidSourceCommitSpecifierException extends __BaseException { + readonly name: "InvalidSourceCommitSpecifierException" = "InvalidSourceCommitSpecifierException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSourceCommitSpecifierException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSourceCommitSpecifierException.prototype); + } } export interface GetMergeOptionsInput { @@ -6308,25 +7293,39 @@ export namespace ListBranchesOutput { /** *

The Amazon Resource Name (ARN) is not valid. Make sure that you have provided the full ARN for the author of the pull request, and then try again.

*/ -export interface InvalidAuthorArnException extends __SmithyException, $MetadataBearer { - name: "InvalidAuthorArnException"; - $fault: "client"; +export class InvalidAuthorArnException extends __BaseException { + readonly name: "InvalidAuthorArnException" = "InvalidAuthorArnException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAuthorArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAuthorArnException.prototype); + } } /** *

The pull request status is not valid. The only valid values are OPEN and CLOSED.

*/ -export interface InvalidPullRequestStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidPullRequestStatusException"; - $fault: "client"; +export class InvalidPullRequestStatusException extends __BaseException { + readonly name: "InvalidPullRequestStatusException" = "InvalidPullRequestStatusException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPullRequestStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPullRequestStatusException.prototype); + } } export interface ListPullRequestsInput { @@ -6391,23 +7390,37 @@ export namespace ListPullRequestsOutput { /** *

The specified sort order is not valid.

*/ -export interface InvalidOrderException extends __SmithyException, $MetadataBearer { - name: "InvalidOrderException"; - $fault: "client"; +export class InvalidOrderException extends __BaseException { + readonly name: "InvalidOrderException" = "InvalidOrderException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOrderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOrderException.prototype); + } } /** *

The specified sort by value is not valid.

*/ -export interface InvalidSortByException extends __SmithyException, $MetadataBearer { - name: "InvalidSortByException"; - $fault: "client"; +export class InvalidSortByException extends __BaseException { + readonly name: "InvalidSortByException" = "InvalidSortByException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSortByException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSortByException.prototype); + } } diff --git a/clients/client-codecommit/src/models/models_1.ts b/clients/client-codecommit/src/models/models_1.ts index caaeabb95fd65..a5b1071f28991 100644 --- a/clients/client-codecommit/src/models/models_1.ts +++ b/clients/client-codecommit/src/models/models_1.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { CodeCommitServiceException as __BaseException } from "./CodeCommitServiceException"; import { ApprovalRule, ApprovalRuleTemplate, @@ -160,13 +162,20 @@ export namespace ListRepositoriesForApprovalRuleTemplateOutput { * CodeCommit Resources and Operations * in the AWS CodeCommit User Guide.

*/ -export interface InvalidResourceArnException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceArnException"; - $fault: "client"; +export class InvalidResourceArnException extends __BaseException { + readonly name: "InvalidResourceArnException" = "InvalidResourceArnException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceArnException.prototype); + } } export interface ListTagsForResourceInput { @@ -218,25 +227,39 @@ export namespace ListTagsForResourceOutput { * CodeCommit Resources and Operations * in the AWS CodeCommit User Guide.

*/ -export interface ResourceArnRequiredException extends __SmithyException, $MetadataBearer { - name: "ResourceArnRequiredException"; - $fault: "client"; +export class ResourceArnRequiredException extends __BaseException { + readonly name: "ResourceArnRequiredException" = "ResourceArnRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceArnRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceArnRequiredException.prototype); + } } /** *

The specified target branch is not valid.

*/ -export interface InvalidTargetBranchException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetBranchException"; - $fault: "client"; +export class InvalidTargetBranchException extends __BaseException { + readonly name: "InvalidTargetBranchException" = "InvalidTargetBranchException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetBranchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetBranchException.prototype); + } } export interface MergeBranchesByFastForwardInput { @@ -537,26 +560,40 @@ export namespace MergePullRequestByFastForwardOutput { /** *

The pull request cannot be merged because one or more approval rules applied to the pull request have conditions that have not been met.

*/ -export interface PullRequestApprovalRulesNotSatisfiedException extends __SmithyException, $MetadataBearer { - name: "PullRequestApprovalRulesNotSatisfiedException"; - $fault: "client"; +export class PullRequestApprovalRulesNotSatisfiedException extends __BaseException { + readonly name: "PullRequestApprovalRulesNotSatisfiedException" = "PullRequestApprovalRulesNotSatisfiedException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullRequestApprovalRulesNotSatisfiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullRequestApprovalRulesNotSatisfiedException.prototype); + } } /** *

The tip of the source branch in the destination repository does not match the tip of the source branch specified in your request. * The pull request might have been updated. Make sure that you have the latest changes.

*/ -export interface TipOfSourceReferenceIsDifferentException extends __SmithyException, $MetadataBearer { - name: "TipOfSourceReferenceIsDifferentException"; - $fault: "client"; +export class TipOfSourceReferenceIsDifferentException extends __BaseException { + readonly name: "TipOfSourceReferenceIsDifferentException" = "TipOfSourceReferenceIsDifferentException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TipOfSourceReferenceIsDifferentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TipOfSourceReferenceIsDifferentException.prototype); + } } export interface MergePullRequestBySquashInput { @@ -738,25 +775,39 @@ export namespace MergePullRequestByThreeWayOutput { /** *

The override status is not valid. Valid statuses are OVERRIDE and REVOKE.

*/ -export interface InvalidOverrideStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidOverrideStatusException"; - $fault: "client"; +export class InvalidOverrideStatusException extends __BaseException { + readonly name: "InvalidOverrideStatusException" = "InvalidOverrideStatusException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOverrideStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOverrideStatusException.prototype); + } } /** *

The pull request has already had its approval rules set to override.

*/ -export interface OverrideAlreadySetException extends __SmithyException, $MetadataBearer { - name: "OverrideAlreadySetException"; - $fault: "client"; +export class OverrideAlreadySetException extends __BaseException { + readonly name: "OverrideAlreadySetException" = "OverrideAlreadySetException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OverrideAlreadySetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OverrideAlreadySetException.prototype); + } } export interface OverridePullRequestApprovalRulesInput { @@ -792,74 +843,116 @@ export namespace OverridePullRequestApprovalRulesInput { /** *

An override status is required, but no value was provided. Valid values include OVERRIDE and REVOKE.

*/ -export interface OverrideStatusRequiredException extends __SmithyException, $MetadataBearer { - name: "OverrideStatusRequiredException"; - $fault: "client"; +export class OverrideStatusRequiredException extends __BaseException { + readonly name: "OverrideStatusRequiredException" = "OverrideStatusRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OverrideStatusRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OverrideStatusRequiredException.prototype); + } } /** *

The comment is empty. You must provide some content for a comment. The content cannot be null.

*/ -export interface CommentContentRequiredException extends __SmithyException, $MetadataBearer { - name: "CommentContentRequiredException"; - $fault: "client"; +export class CommentContentRequiredException extends __BaseException { + readonly name: "CommentContentRequiredException" = "CommentContentRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommentContentRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommentContentRequiredException.prototype); + } } /** *

The comment is too large. Comments are limited to 1,000 characters.

*/ -export interface CommentContentSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CommentContentSizeLimitExceededException"; - $fault: "client"; +export class CommentContentSizeLimitExceededException extends __BaseException { + readonly name: "CommentContentSizeLimitExceededException" = "CommentContentSizeLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommentContentSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommentContentSizeLimitExceededException.prototype); + } } /** *

The location of the file is not valid. Make sure that you include the file name and * extension.

*/ -export interface InvalidFileLocationException extends __SmithyException, $MetadataBearer { - name: "InvalidFileLocationException"; - $fault: "client"; +export class InvalidFileLocationException extends __BaseException { + readonly name: "InvalidFileLocationException" = "InvalidFileLocationException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFileLocationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFileLocationException.prototype); + } } /** *

The position is not valid. Make sure that the line number exists in the version of the file you want to comment on.

*/ -export interface InvalidFilePositionException extends __SmithyException, $MetadataBearer { - name: "InvalidFilePositionException"; - $fault: "client"; +export class InvalidFilePositionException extends __BaseException { + readonly name: "InvalidFilePositionException" = "InvalidFilePositionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilePositionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilePositionException.prototype); + } } /** *

Either the enum is not in a valid format, or the specified file version enum is not valid in respect to the current file version.

*/ -export interface InvalidRelativeFileVersionEnumException extends __SmithyException, $MetadataBearer { - name: "InvalidRelativeFileVersionEnumException"; - $fault: "client"; +export class InvalidRelativeFileVersionEnumException extends __BaseException { + readonly name: "InvalidRelativeFileVersionEnumException" = "InvalidRelativeFileVersionEnumException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRelativeFileVersionEnumException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRelativeFileVersionEnumException.prototype); + } } export interface PostCommentForComparedCommitInput { @@ -1108,13 +1201,20 @@ export namespace PostCommentReplyOutput { /** *

The value of the reaction is not valid. For more information, see the AWS CodeCommit User Guide.

*/ -export interface InvalidReactionValueException extends __SmithyException, $MetadataBearer { - name: "InvalidReactionValueException"; - $fault: "client"; +export class InvalidReactionValueException extends __BaseException { + readonly name: "InvalidReactionValueException" = "InvalidReactionValueException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReactionValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReactionValueException.prototype); + } } export interface PutCommentReactionInput { @@ -1142,37 +1242,58 @@ export namespace PutCommentReactionInput { /** *

The number of reactions has been exceeded. Reactions are limited to one reaction per user for each individual comment ID.

*/ -export interface ReactionLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ReactionLimitExceededException"; - $fault: "client"; +export class ReactionLimitExceededException extends __BaseException { + readonly name: "ReactionLimitExceededException" = "ReactionLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReactionLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReactionLimitExceededException.prototype); + } } /** *

A reaction value is required.

*/ -export interface ReactionValueRequiredException extends __SmithyException, $MetadataBearer { - name: "ReactionValueRequiredException"; - $fault: "client"; +export class ReactionValueRequiredException extends __BaseException { + readonly name: "ReactionValueRequiredException" = "ReactionValueRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReactionValueRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReactionValueRequiredException.prototype); + } } /** *

The file cannot be added because it is empty. Empty files cannot be added to the repository with this API.

*/ -export interface FileContentRequiredException extends __SmithyException, $MetadataBearer { - name: "FileContentRequiredException"; - $fault: "client"; +export class FileContentRequiredException extends __BaseException { + readonly name: "FileContentRequiredException" = "FileContentRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileContentRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileContentRequiredException.prototype); + } } export interface PutFileInput { @@ -1272,73 +1393,115 @@ export namespace PutFileOutput { *

The file was not added or updated because the content of the file is exactly the same as the content of that file in the repository and branch * that you specified.

*/ -export interface SameFileContentException extends __SmithyException, $MetadataBearer { - name: "SameFileContentException"; - $fault: "client"; +export class SameFileContentException extends __BaseException { + readonly name: "SameFileContentException" = "SameFileContentException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SameFileContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SameFileContentException.prototype); + } } /** *

One or more branch names specified for the trigger is not valid.

*/ -export interface InvalidRepositoryTriggerBranchNameException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryTriggerBranchNameException"; - $fault: "client"; +export class InvalidRepositoryTriggerBranchNameException extends __BaseException { + readonly name: "InvalidRepositoryTriggerBranchNameException" = "InvalidRepositoryTriggerBranchNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryTriggerBranchNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryTriggerBranchNameException.prototype); + } } /** *

The custom data provided for the trigger is not valid.

*/ -export interface InvalidRepositoryTriggerCustomDataException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryTriggerCustomDataException"; - $fault: "client"; +export class InvalidRepositoryTriggerCustomDataException extends __BaseException { + readonly name: "InvalidRepositoryTriggerCustomDataException" = "InvalidRepositoryTriggerCustomDataException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryTriggerCustomDataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryTriggerCustomDataException.prototype); + } } /** *

The Amazon Resource Name (ARN) for the trigger is not valid for the specified destination. The most common reason for this error is that the ARN does not meet the requirements for the service type.

*/ -export interface InvalidRepositoryTriggerDestinationArnException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryTriggerDestinationArnException"; - $fault: "client"; +export class InvalidRepositoryTriggerDestinationArnException extends __BaseException { + readonly name: "InvalidRepositoryTriggerDestinationArnException" = "InvalidRepositoryTriggerDestinationArnException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryTriggerDestinationArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryTriggerDestinationArnException.prototype); + } } /** *

One or more events specified for the trigger is not valid. Check to make sure that all events specified match the requirements for allowed events.

*/ -export interface InvalidRepositoryTriggerEventsException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryTriggerEventsException"; - $fault: "client"; +export class InvalidRepositoryTriggerEventsException extends __BaseException { + readonly name: "InvalidRepositoryTriggerEventsException" = "InvalidRepositoryTriggerEventsException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryTriggerEventsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryTriggerEventsException.prototype); + } } /** *

The name of the trigger is not valid.

*/ -export interface InvalidRepositoryTriggerNameException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryTriggerNameException"; - $fault: "client"; +export class InvalidRepositoryTriggerNameException extends __BaseException { + readonly name: "InvalidRepositoryTriggerNameException" = "InvalidRepositoryTriggerNameException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryTriggerNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryTriggerNameException.prototype); + } } /** @@ -1346,37 +1509,58 @@ export interface InvalidRepositoryTriggerNameException extends __SmithyException * repository. Triggers must be created in the same Region as the target for the * trigger.

*/ -export interface InvalidRepositoryTriggerRegionException extends __SmithyException, $MetadataBearer { - name: "InvalidRepositoryTriggerRegionException"; - $fault: "client"; +export class InvalidRepositoryTriggerRegionException extends __BaseException { + readonly name: "InvalidRepositoryTriggerRegionException" = "InvalidRepositoryTriggerRegionException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRepositoryTriggerRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRepositoryTriggerRegionException.prototype); + } } /** *

The number of branches for the trigger was exceeded.

*/ -export interface MaximumBranchesExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumBranchesExceededException"; - $fault: "client"; +export class MaximumBranchesExceededException extends __BaseException { + readonly name: "MaximumBranchesExceededException" = "MaximumBranchesExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumBranchesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumBranchesExceededException.prototype); + } } /** *

The number of triggers allowed for the repository was exceeded.

*/ -export interface MaximumRepositoryTriggersExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumRepositoryTriggersExceededException"; - $fault: "client"; +export class MaximumRepositoryTriggersExceededException extends __BaseException { + readonly name: "MaximumRepositoryTriggersExceededException" = "MaximumRepositoryTriggersExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumRepositoryTriggersExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumRepositoryTriggersExceededException.prototype); + } } /** @@ -1426,62 +1610,99 @@ export namespace PutRepositoryTriggersOutput { *

At least one branch name is required, but was not specified in the trigger * configuration.

*/ -export interface RepositoryTriggerBranchNameListRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryTriggerBranchNameListRequiredException"; - $fault: "client"; +export class RepositoryTriggerBranchNameListRequiredException extends __BaseException { + readonly name: "RepositoryTriggerBranchNameListRequiredException" = + "RepositoryTriggerBranchNameListRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryTriggerBranchNameListRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryTriggerBranchNameListRequiredException.prototype); + } } /** *

A destination ARN for the target service for the trigger is required, but was not * specified.

*/ -export interface RepositoryTriggerDestinationArnRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryTriggerDestinationArnRequiredException"; - $fault: "client"; +export class RepositoryTriggerDestinationArnRequiredException extends __BaseException { + readonly name: "RepositoryTriggerDestinationArnRequiredException" = + "RepositoryTriggerDestinationArnRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryTriggerDestinationArnRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryTriggerDestinationArnRequiredException.prototype); + } } /** *

At least one event for the trigger is required, but was not specified.

*/ -export interface RepositoryTriggerEventsListRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryTriggerEventsListRequiredException"; - $fault: "client"; +export class RepositoryTriggerEventsListRequiredException extends __BaseException { + readonly name: "RepositoryTriggerEventsListRequiredException" = "RepositoryTriggerEventsListRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryTriggerEventsListRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryTriggerEventsListRequiredException.prototype); + } } /** *

A name for the trigger is required, but was not specified.

*/ -export interface RepositoryTriggerNameRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryTriggerNameRequiredException"; - $fault: "client"; +export class RepositoryTriggerNameRequiredException extends __BaseException { + readonly name: "RepositoryTriggerNameRequiredException" = "RepositoryTriggerNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryTriggerNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryTriggerNameRequiredException.prototype); + } } /** *

The list of triggers for the repository is required, but was not specified.

*/ -export interface RepositoryTriggersListRequiredException extends __SmithyException, $MetadataBearer { - name: "RepositoryTriggersListRequiredException"; - $fault: "client"; +export class RepositoryTriggersListRequiredException extends __BaseException { + readonly name: "RepositoryTriggersListRequiredException" = "RepositoryTriggersListRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryTriggersListRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryTriggersListRequiredException.prototype); + } } export interface TagResourceInput { @@ -1508,13 +1729,20 @@ export namespace TagResourceInput { /** *

A map of tags is required.

*/ -export interface TagsMapRequiredException extends __SmithyException, $MetadataBearer { - name: "TagsMapRequiredException"; - $fault: "client"; +export class TagsMapRequiredException extends __BaseException { + readonly name: "TagsMapRequiredException" = "TagsMapRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagsMapRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagsMapRequiredException.prototype); + } } /** @@ -1593,25 +1821,39 @@ export namespace TestRepositoryTriggersOutput { /** *

The list of tags is not valid.

*/ -export interface InvalidTagKeysListException extends __SmithyException, $MetadataBearer { - name: "InvalidTagKeysListException"; - $fault: "client"; +export class InvalidTagKeysListException extends __BaseException { + readonly name: "InvalidTagKeysListException" = "InvalidTagKeysListException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagKeysListException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagKeysListException.prototype); + } } /** *

A list of tag keys is required. The list cannot be empty or null.

*/ -export interface TagKeysListRequiredException extends __SmithyException, $MetadataBearer { - name: "TagKeysListRequiredException"; - $fault: "client"; +export class TagKeysListRequiredException extends __BaseException { + readonly name: "TagKeysListRequiredException" = "TagKeysListRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagKeysListRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagKeysListRequiredException.prototype); + } } export interface UntagResourceInput { @@ -1638,13 +1880,20 @@ export namespace UntagResourceInput { /** *

The SHA-256 hash signature for the rule content is not valid.

*/ -export interface InvalidRuleContentSha256Exception extends __SmithyException, $MetadataBearer { - name: "InvalidRuleContentSha256Exception"; - $fault: "client"; +export class InvalidRuleContentSha256Exception extends __BaseException { + readonly name: "InvalidRuleContentSha256Exception" = "InvalidRuleContentSha256Exception"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRuleContentSha256Exception", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRuleContentSha256Exception.prototype); + } } export interface UpdateApprovalRuleTemplateContentInput { @@ -1769,13 +2018,20 @@ export namespace UpdateApprovalRuleTemplateNameOutput { /** *

You cannot modify or delete this comment. Only comment authors can modify or delete their comments.

*/ -export interface CommentNotCreatedByCallerException extends __SmithyException, $MetadataBearer { - name: "CommentNotCreatedByCallerException"; - $fault: "client"; +export class CommentNotCreatedByCallerException extends __BaseException { + readonly name: "CommentNotCreatedByCallerException" = "CommentNotCreatedByCallerException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CommentNotCreatedByCallerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CommentNotCreatedByCallerException.prototype); + } } export interface UpdateCommentInput { @@ -1932,38 +2188,59 @@ export namespace UpdatePullRequestApprovalRuleContentOutput { /** *

The state for the approval is not valid. Valid values include APPROVE and REVOKE.

*/ -export interface InvalidApprovalStateException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalStateException"; - $fault: "client"; +export class InvalidApprovalStateException extends __BaseException { + readonly name: "InvalidApprovalStateException" = "InvalidApprovalStateException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalStateException.prototype); + } } /** *

The number of approvals required for the approval rule exceeds the maximum number allowed.

*/ -export interface MaximumNumberOfApprovalsExceededException extends __SmithyException, $MetadataBearer { - name: "MaximumNumberOfApprovalsExceededException"; - $fault: "client"; +export class MaximumNumberOfApprovalsExceededException extends __BaseException { + readonly name: "MaximumNumberOfApprovalsExceededException" = "MaximumNumberOfApprovalsExceededException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumNumberOfApprovalsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumNumberOfApprovalsExceededException.prototype); + } } /** *

The approval cannot be applied because the user approving the pull request matches the user who created the pull request. You cannot approve a pull * request that you created.

*/ -export interface PullRequestCannotBeApprovedByAuthorException extends __SmithyException, $MetadataBearer { - name: "PullRequestCannotBeApprovedByAuthorException"; - $fault: "client"; +export class PullRequestCannotBeApprovedByAuthorException extends __BaseException { + readonly name: "PullRequestCannotBeApprovedByAuthorException" = "PullRequestCannotBeApprovedByAuthorException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullRequestCannotBeApprovedByAuthorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullRequestCannotBeApprovedByAuthorException.prototype); + } } export interface UpdatePullRequestApprovalStateInput { @@ -2033,25 +2310,39 @@ export namespace UpdatePullRequestDescriptionOutput { /** *

The pull request status update is not valid. The only valid update is from OPEN to CLOSED.

*/ -export interface InvalidPullRequestStatusUpdateException extends __SmithyException, $MetadataBearer { - name: "InvalidPullRequestStatusUpdateException"; - $fault: "client"; +export class InvalidPullRequestStatusUpdateException extends __BaseException { + readonly name: "InvalidPullRequestStatusUpdateException" = "InvalidPullRequestStatusUpdateException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPullRequestStatusUpdateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPullRequestStatusUpdateException.prototype); + } } /** *

A pull request status is required, but none was provided.

*/ -export interface PullRequestStatusRequiredException extends __SmithyException, $MetadataBearer { - name: "PullRequestStatusRequiredException"; - $fault: "client"; +export class PullRequestStatusRequiredException extends __BaseException { + readonly name: "PullRequestStatusRequiredException" = "PullRequestStatusRequiredException"; + readonly $fault: "client" = "client"; /** - *

Any message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullRequestStatusRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullRequestStatusRequiredException.prototype); + } } export interface UpdatePullRequestStatusInput { diff --git a/clients/client-codecommit/src/protocols/Aws_json1_1.ts b/clients/client-codecommit/src/protocols/Aws_json1_1.ts index dbed74d893e3f..974fbeb91f8ed 100644 --- a/clients/client-codecommit/src/protocols/Aws_json1_1.ts +++ b/clients/client-codecommit/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -239,6 +238,7 @@ import { UpdateRepositoryNameCommandInput, UpdateRepositoryNameCommandOutput, } from "../commands/UpdateRepositoryNameCommand"; +import { CodeCommitServiceException as __BaseException } from "../models/CodeCommitServiceException"; import { ActorDoesNotExistException, Approval, @@ -1653,124 +1653,58 @@ const deserializeAws_json1_1AssociateApprovalRuleTemplateWithRepositoryCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "MaximumRuleTemplatesAssociatedWithRepositoryException": case "com.amazonaws.codecommit#MaximumRuleTemplatesAssociatedWithRepositoryException": - response = { - ...(await deserializeAws_json1_1MaximumRuleTemplatesAssociatedWithRepositoryExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumRuleTemplatesAssociatedWithRepositoryExceptionResponse( + parsedOutput, + context + ); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchAssociateApprovalRuleTemplateWithRepositoriesCommand = async ( @@ -1798,105 +1732,49 @@ const deserializeAws_json1_1BatchAssociateApprovalRuleTemplateWithRepositoriesCo ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "MaximumRepositoryNamesExceededException": case "com.amazonaws.codecommit#MaximumRepositoryNamesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse(parsedOutput, context); case "RepositoryNamesRequiredException": case "com.amazonaws.codecommit#RepositoryNamesRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDescribeMergeConflictsCommand = async ( @@ -1924,193 +1802,82 @@ const deserializeAws_json1_1BatchDescribeMergeConflictsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxConflictFilesException": case "com.amazonaws.codecommit#InvalidMaxConflictFilesException": - response = { - ...(await deserializeAws_json1_1InvalidMaxConflictFilesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxConflictFilesExceptionResponse(parsedOutput, context); case "InvalidMaxMergeHunksException": case "com.amazonaws.codecommit#InvalidMaxMergeHunksException": - response = { - ...(await deserializeAws_json1_1InvalidMaxMergeHunksExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxMergeHunksExceptionResponse(parsedOutput, context); case "InvalidMergeOptionException": case "com.amazonaws.codecommit#InvalidMergeOptionException": - response = { - ...(await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MergeOptionRequiredException": case "com.amazonaws.codecommit#MergeOptionRequiredException": - response = { - ...(await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDisassociateApprovalRuleTemplateFromRepositoriesCommand = async ( @@ -2138,105 +1905,49 @@ const deserializeAws_json1_1BatchDisassociateApprovalRuleTemplateFromRepositorie ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "MaximumRepositoryNamesExceededException": case "com.amazonaws.codecommit#MaximumRepositoryNamesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse(parsedOutput, context); case "RepositoryNamesRequiredException": case "com.amazonaws.codecommit#RepositoryNamesRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetCommitsCommand = async ( @@ -2264,105 +1975,49 @@ const deserializeAws_json1_1BatchGetCommitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitIdsLimitExceededException": case "com.amazonaws.codecommit#CommitIdsLimitExceededException": - response = { - ...(await deserializeAws_json1_1CommitIdsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdsLimitExceededExceptionResponse(parsedOutput, context); case "CommitIdsListRequiredException": case "com.amazonaws.codecommit#CommitIdsListRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdsListRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdsListRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetRepositoriesCommand = async ( @@ -2390,89 +2045,43 @@ const deserializeAws_json1_1BatchGetRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "MaximumRepositoryNamesExceededException": case "com.amazonaws.codecommit#MaximumRepositoryNamesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse(parsedOutput, context); case "RepositoryNamesRequiredException": case "com.amazonaws.codecommit#RepositoryNamesRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApprovalRuleTemplateCommand = async ( @@ -2500,81 +2109,40 @@ const deserializeAws_json1_1CreateApprovalRuleTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateContentRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateContentRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateContentRequiredExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameAlreadyExistsException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateContentException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateContentException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateContentExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateDescriptionException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateDescriptionException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "NumberOfRuleTemplatesExceededException": case "com.amazonaws.codecommit#NumberOfRuleTemplatesExceededException": - response = { - ...(await deserializeAws_json1_1NumberOfRuleTemplatesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NumberOfRuleTemplatesExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBranchCommand = async ( @@ -2599,137 +2167,61 @@ const deserializeAws_json1_1CreateBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchNameExistsException": case "com.amazonaws.codecommit#BranchNameExistsException": - response = { - ...(await deserializeAws_json1_1BranchNameExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameExistsExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitIdRequiredException": case "com.amazonaws.codecommit#CommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCommitCommand = async ( @@ -2757,329 +2249,133 @@ const deserializeAws_json1_1CreateCommitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameIsTagNameException": case "com.amazonaws.codecommit#BranchNameIsTagNameException": - response = { - ...(await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "DirectoryNameConflictsWithFileNameException": case "com.amazonaws.codecommit#DirectoryNameConflictsWithFileNameException": - response = { - ...(await deserializeAws_json1_1DirectoryNameConflictsWithFileNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryNameConflictsWithFileNameExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentAndSourceFileSpecifiedException": case "com.amazonaws.codecommit#FileContentAndSourceFileSpecifiedException": - response = { - ...(await deserializeAws_json1_1FileContentAndSourceFileSpecifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentAndSourceFileSpecifiedExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FileDoesNotExistException": case "com.amazonaws.codecommit#FileDoesNotExistException": - response = { - ...(await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context); case "FileEntryRequiredException": case "com.amazonaws.codecommit#FileEntryRequiredException": - response = { - ...(await deserializeAws_json1_1FileEntryRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileEntryRequiredExceptionResponse(parsedOutput, context); case "FileModeRequiredException": case "com.amazonaws.codecommit#FileModeRequiredException": - response = { - ...(await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context); case "FileNameConflictsWithDirectoryNameException": case "com.amazonaws.codecommit#FileNameConflictsWithDirectoryNameException": - response = { - ...(await deserializeAws_json1_1FileNameConflictsWithDirectoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileNameConflictsWithDirectoryNameExceptionResponse(parsedOutput, context); case "FilePathConflictsWithSubmodulePathException": case "com.amazonaws.codecommit#FilePathConflictsWithSubmodulePathException": - response = { - ...(await deserializeAws_json1_1FilePathConflictsWithSubmodulePathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FilePathConflictsWithSubmodulePathExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidDeletionParameterException": case "com.amazonaws.codecommit#InvalidDeletionParameterException": - response = { - ...(await deserializeAws_json1_1InvalidDeletionParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeletionParameterExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidParentCommitIdException": case "com.amazonaws.codecommit#InvalidParentCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidParentCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParentCommitIdExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "MaximumFileEntriesExceededException": case "com.amazonaws.codecommit#MaximumFileEntriesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileEntriesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileEntriesExceededExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "NoChangeException": case "com.amazonaws.codecommit#NoChangeException": - response = { - ...(await deserializeAws_json1_1NoChangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoChangeExceptionResponse(parsedOutput, context); case "ParentCommitDoesNotExistException": case "com.amazonaws.codecommit#ParentCommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse(parsedOutput, context); case "ParentCommitIdOutdatedException": case "com.amazonaws.codecommit#ParentCommitIdOutdatedException": - response = { - ...(await deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse(parsedOutput, context); case "ParentCommitIdRequiredException": case "com.amazonaws.codecommit#ParentCommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "PutFileEntryConflictException": case "com.amazonaws.codecommit#PutFileEntryConflictException": - response = { - ...(await deserializeAws_json1_1PutFileEntryConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PutFileEntryConflictExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RestrictedSourceFileException": case "com.amazonaws.codecommit#RestrictedSourceFileException": - response = { - ...(await deserializeAws_json1_1RestrictedSourceFileExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RestrictedSourceFileExceptionResponse(parsedOutput, context); case "SamePathRequestException": case "com.amazonaws.codecommit#SamePathRequestException": - response = { - ...(await deserializeAws_json1_1SamePathRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SamePathRequestExceptionResponse(parsedOutput, context); case "SourceFileOrContentRequiredException": case "com.amazonaws.codecommit#SourceFileOrContentRequiredException": - response = { - ...(await deserializeAws_json1_1SourceFileOrContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SourceFileOrContentRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePullRequestCommand = async ( @@ -3107,225 +2403,94 @@ const deserializeAws_json1_1CreatePullRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientRequestTokenRequiredException": case "com.amazonaws.codecommit#ClientRequestTokenRequiredException": - response = { - ...(await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "IdempotencyParameterMismatchException": case "com.amazonaws.codecommit#IdempotencyParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientRequestTokenException": case "com.amazonaws.codecommit#InvalidClientRequestTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context); case "InvalidDescriptionException": case "com.amazonaws.codecommit#InvalidDescriptionException": - response = { - ...(await deserializeAws_json1_1InvalidDescriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDescriptionExceptionResponse(parsedOutput, context); case "InvalidReferenceNameException": case "com.amazonaws.codecommit#InvalidReferenceNameException": - response = { - ...(await deserializeAws_json1_1InvalidReferenceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReferenceNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidTargetException": case "com.amazonaws.codecommit#InvalidTargetException": - response = { - ...(await deserializeAws_json1_1InvalidTargetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetExceptionResponse(parsedOutput, context); case "InvalidTargetsException": case "com.amazonaws.codecommit#InvalidTargetsException": - response = { - ...(await deserializeAws_json1_1InvalidTargetsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetsExceptionResponse(parsedOutput, context); case "InvalidTitleException": case "com.amazonaws.codecommit#InvalidTitleException": - response = { - ...(await deserializeAws_json1_1InvalidTitleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTitleExceptionResponse(parsedOutput, context); case "MaximumOpenPullRequestsExceededException": case "com.amazonaws.codecommit#MaximumOpenPullRequestsExceededException": - response = { - ...(await deserializeAws_json1_1MaximumOpenPullRequestsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumOpenPullRequestsExceededExceptionResponse(parsedOutput, context); case "MultipleRepositoriesInPullRequestException": case "com.amazonaws.codecommit#MultipleRepositoriesInPullRequestException": - response = { - ...(await deserializeAws_json1_1MultipleRepositoriesInPullRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleRepositoriesInPullRequestExceptionResponse(parsedOutput, context); case "ReferenceDoesNotExistException": case "com.amazonaws.codecommit#ReferenceDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ReferenceDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReferenceDoesNotExistExceptionResponse(parsedOutput, context); case "ReferenceNameRequiredException": case "com.amazonaws.codecommit#ReferenceNameRequiredException": - response = { - ...(await deserializeAws_json1_1ReferenceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReferenceNameRequiredExceptionResponse(parsedOutput, context); case "ReferenceTypeNotSupportedException": case "com.amazonaws.codecommit#ReferenceTypeNotSupportedException": - response = { - ...(await deserializeAws_json1_1ReferenceTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReferenceTypeNotSupportedExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "SourceAndDestinationAreSameException": case "com.amazonaws.codecommit#SourceAndDestinationAreSameException": - response = { - ...(await deserializeAws_json1_1SourceAndDestinationAreSameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SourceAndDestinationAreSameExceptionResponse(parsedOutput, context); case "TargetRequiredException": case "com.amazonaws.codecommit#TargetRequiredException": - response = { - ...(await deserializeAws_json1_1TargetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetRequiredExceptionResponse(parsedOutput, context); case "TargetsRequiredException": case "com.amazonaws.codecommit#TargetsRequiredException": - response = { - ...(await deserializeAws_json1_1TargetsRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetsRequiredExceptionResponse(parsedOutput, context); case "TitleRequiredException": case "com.amazonaws.codecommit#TitleRequiredException": - response = { - ...(await deserializeAws_json1_1TitleRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TitleRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePullRequestApprovalRuleCommand = async ( @@ -3353,145 +2518,64 @@ const deserializeAws_json1_1CreatePullRequestApprovalRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleContentRequiredException": case "com.amazonaws.codecommit#ApprovalRuleContentRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleContentRequiredExceptionResponse(parsedOutput, context); case "ApprovalRuleNameAlreadyExistsException": case "com.amazonaws.codecommit#ApprovalRuleNameAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleNameAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleNameAlreadyExistsExceptionResponse(parsedOutput, context); case "ApprovalRuleNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleContentException": case "com.amazonaws.codecommit#InvalidApprovalRuleContentException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleContentExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "NumberOfRulesExceededException": case "com.amazonaws.codecommit#NumberOfRulesExceededException": - response = { - ...(await deserializeAws_json1_1NumberOfRulesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NumberOfRulesExceededExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRepositoryCommand = async ( @@ -3519,137 +2603,61 @@ const deserializeAws_json1_1CreateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryDescriptionException": case "com.amazonaws.codecommit#InvalidRepositoryDescriptionException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryDescriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryDescriptionExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidSystemTagUsageException": case "com.amazonaws.codecommit#InvalidSystemTagUsageException": - response = { - ...(await deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse(parsedOutput, context); case "InvalidTagsMapException": case "com.amazonaws.codecommit#InvalidTagsMapException": - response = { - ...(await deserializeAws_json1_1InvalidTagsMapExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsMapExceptionResponse(parsedOutput, context); case "RepositoryLimitExceededException": case "com.amazonaws.codecommit#RepositoryLimitExceededException": - response = { - ...(await deserializeAws_json1_1RepositoryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryLimitExceededExceptionResponse(parsedOutput, context); case "RepositoryNameExistsException": case "com.amazonaws.codecommit#RepositoryNameExistsException": - response = { - ...(await deserializeAws_json1_1RepositoryNameExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameExistsExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.codecommit#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codecommit#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUnreferencedMergeCommitCommand = async ( @@ -3677,316 +2685,130 @@ const deserializeAws_json1_1CreateUnreferencedMergeCommitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FileModeRequiredException": case "com.amazonaws.codecommit#FileModeRequiredException": - response = { - ...(await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionException": case "com.amazonaws.codecommit#InvalidConflictResolutionException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidMergeOptionException": case "com.amazonaws.codecommit#InvalidMergeOptionException": - response = { - ...(await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidReplacementContentException": case "com.amazonaws.codecommit#InvalidReplacementContentException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context); case "InvalidReplacementTypeException": case "com.amazonaws.codecommit#InvalidReplacementTypeException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "MaximumConflictResolutionEntriesExceededException": case "com.amazonaws.codecommit#MaximumConflictResolutionEntriesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( + parsedOutput, + context + ); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MergeOptionRequiredException": case "com.amazonaws.codecommit#MergeOptionRequiredException": - response = { - ...(await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context); case "MultipleConflictResolutionEntriesException": case "com.amazonaws.codecommit#MultipleConflictResolutionEntriesException": - response = { - ...(await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "ReplacementContentRequiredException": case "com.amazonaws.codecommit#ReplacementContentRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context); case "ReplacementTypeRequiredException": case "com.amazonaws.codecommit#ReplacementTypeRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApprovalRuleTemplateCommand = async ( @@ -4014,49 +2836,28 @@ const deserializeAws_json1_1DeleteApprovalRuleTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateInUseException": case "com.amazonaws.codecommit#ApprovalRuleTemplateInUseException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateInUseExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBranchCommand = async ( @@ -4084,113 +2885,52 @@ const deserializeAws_json1_1DeleteBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "DefaultBranchCannotBeDeletedException": case "com.amazonaws.codecommit#DefaultBranchCannotBeDeletedException": - response = { - ...(await deserializeAws_json1_1DefaultBranchCannotBeDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DefaultBranchCannotBeDeletedExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCommentContentCommand = async ( @@ -4218,57 +2958,31 @@ const deserializeAws_json1_1DeleteCommentContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommentDeletedException": case "com.amazonaws.codecommit#CommentDeletedException": - response = { - ...(await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context); case "CommentDoesNotExistException": case "com.amazonaws.codecommit#CommentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context); case "CommentIdRequiredException": case "com.amazonaws.codecommit#CommentIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidCommentIdException": case "com.amazonaws.codecommit#InvalidCommentIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFileCommand = async ( @@ -4296,201 +3010,85 @@ const deserializeAws_json1_1DeleteFileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameIsTagNameException": case "com.amazonaws.codecommit#BranchNameIsTagNameException": - response = { - ...(await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileDoesNotExistException": case "com.amazonaws.codecommit#FileDoesNotExistException": - response = { - ...(await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidParentCommitIdException": case "com.amazonaws.codecommit#InvalidParentCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidParentCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParentCommitIdExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "ParentCommitDoesNotExistException": case "com.amazonaws.codecommit#ParentCommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse(parsedOutput, context); case "ParentCommitIdOutdatedException": case "com.amazonaws.codecommit#ParentCommitIdOutdatedException": - response = { - ...(await deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse(parsedOutput, context); case "ParentCommitIdRequiredException": case "com.amazonaws.codecommit#ParentCommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePullRequestApprovalRuleCommand = async ( @@ -4518,121 +3116,55 @@ const deserializeAws_json1_1DeletePullRequestApprovalRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse(parsedOutput, context); case "CannotDeleteApprovalRuleFromTemplateException": case "com.amazonaws.codecommit#CannotDeleteApprovalRuleFromTemplateException": - response = { - ...(await deserializeAws_json1_1CannotDeleteApprovalRuleFromTemplateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CannotDeleteApprovalRuleFromTemplateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRepositoryCommand = async ( @@ -4660,81 +3192,40 @@ const deserializeAws_json1_1DeleteRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMergeConflictsCommand = async ( @@ -4762,209 +3253,88 @@ const deserializeAws_json1_1DescribeMergeConflictsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileDoesNotExistException": case "com.amazonaws.codecommit#FileDoesNotExistException": - response = { - ...(await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxMergeHunksException": case "com.amazonaws.codecommit#InvalidMaxMergeHunksException": - response = { - ...(await deserializeAws_json1_1InvalidMaxMergeHunksExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxMergeHunksExceptionResponse(parsedOutput, context); case "InvalidMergeOptionException": case "com.amazonaws.codecommit#InvalidMergeOptionException": - response = { - ...(await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MergeOptionRequiredException": case "com.amazonaws.codecommit#MergeOptionRequiredException": - response = { - ...(await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePullRequestEventsCommand = async ( @@ -4992,129 +3362,58 @@ const deserializeAws_json1_1DescribePullRequestEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActorDoesNotExistException": case "com.amazonaws.codecommit#ActorDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ActorDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActorDoesNotExistExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidActorArnException": case "com.amazonaws.codecommit#InvalidActorArnException": - response = { - ...(await deserializeAws_json1_1InvalidActorArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidActorArnExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidPullRequestEventTypeException": case "com.amazonaws.codecommit#InvalidPullRequestEventTypeException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestEventTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestEventTypeExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateApprovalRuleTemplateFromRepositoryCommand = async ( @@ -5139,113 +3438,52 @@ const deserializeAws_json1_1DisassociateApprovalRuleTemplateFromRepositoryComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EvaluatePullRequestApprovalRulesCommand = async ( @@ -5273,113 +3511,52 @@ const deserializeAws_json1_1EvaluatePullRequestApprovalRulesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRevisionIdException": case "com.amazonaws.codecommit#InvalidRevisionIdException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RevisionIdRequiredException": case "com.amazonaws.codecommit#RevisionIdRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context); case "RevisionNotCurrentException": case "com.amazonaws.codecommit#RevisionNotCurrentException": - response = { - ...(await deserializeAws_json1_1RevisionNotCurrentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionNotCurrentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetApprovalRuleTemplateCommand = async ( @@ -5407,49 +3584,28 @@ const deserializeAws_json1_1GetApprovalRuleTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBlobCommand = async ( @@ -5477,121 +3633,55 @@ const deserializeAws_json1_1GetBlobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BlobIdDoesNotExistException": case "com.amazonaws.codecommit#BlobIdDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BlobIdDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BlobIdDoesNotExistExceptionResponse(parsedOutput, context); case "BlobIdRequiredException": case "com.amazonaws.codecommit#BlobIdRequiredException": - response = { - ...(await deserializeAws_json1_1BlobIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BlobIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileTooLargeException": case "com.amazonaws.codecommit#FileTooLargeException": - response = { - ...(await deserializeAws_json1_1FileTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileTooLargeExceptionResponse(parsedOutput, context); case "InvalidBlobIdException": case "com.amazonaws.codecommit#InvalidBlobIdException": - response = { - ...(await deserializeAws_json1_1InvalidBlobIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBlobIdExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBranchCommand = async ( @@ -5619,113 +3709,52 @@ const deserializeAws_json1_1GetBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCommentCommand = async ( @@ -5753,97 +3782,46 @@ const deserializeAws_json1_1GetCommentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommentDeletedException": case "com.amazonaws.codecommit#CommentDeletedException": - response = { - ...(await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context); case "CommentDoesNotExistException": case "com.amazonaws.codecommit#CommentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context); case "CommentIdRequiredException": case "com.amazonaws.codecommit#CommentIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommentIdException": case "com.amazonaws.codecommit#InvalidCommentIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCommentReactionsCommand = async ( @@ -5871,81 +3849,40 @@ const deserializeAws_json1_1GetCommentReactionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommentDeletedException": case "com.amazonaws.codecommit#CommentDeletedException": - response = { - ...(await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context); case "CommentDoesNotExistException": case "com.amazonaws.codecommit#CommentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context); case "CommentIdRequiredException": case "com.amazonaws.codecommit#CommentIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidCommentIdException": case "com.amazonaws.codecommit#InvalidCommentIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidReactionUserArnException": case "com.amazonaws.codecommit#InvalidReactionUserArnException": - response = { - ...(await deserializeAws_json1_1InvalidReactionUserArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReactionUserArnExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCommentsForComparedCommitCommand = async ( @@ -5973,129 +3910,58 @@ const deserializeAws_json1_1GetCommentsForComparedCommitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitIdRequiredException": case "com.amazonaws.codecommit#CommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCommentsForPullRequestCommand = async ( @@ -6123,161 +3989,70 @@ const deserializeAws_json1_1GetCommentsForPullRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitIdRequiredException": case "com.amazonaws.codecommit#CommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryNotAssociatedWithPullRequestException": case "com.amazonaws.codecommit#RepositoryNotAssociatedWithPullRequestException": - response = { - ...(await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCommitCommand = async ( @@ -6305,113 +4080,52 @@ const deserializeAws_json1_1GetCommitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitIdDoesNotExistException": case "com.amazonaws.codecommit#CommitIdDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitIdDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdDoesNotExistExceptionResponse(parsedOutput, context); case "CommitIdRequiredException": case "com.amazonaws.codecommit#CommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDifferencesCommand = async ( @@ -6439,153 +4153,67 @@ const deserializeAws_json1_1GetDifferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "PathDoesNotExistException": case "com.amazonaws.codecommit#PathDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PathDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFileCommand = async ( @@ -6613,137 +4241,61 @@ const deserializeAws_json1_1GetFileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileDoesNotExistException": case "com.amazonaws.codecommit#FileDoesNotExistException": - response = { - ...(await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileDoesNotExistExceptionResponse(parsedOutput, context); case "FileTooLargeException": case "com.amazonaws.codecommit#FileTooLargeException": - response = { - ...(await deserializeAws_json1_1FileTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileTooLargeExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFolderCommand = async ( @@ -6771,129 +4323,58 @@ const deserializeAws_json1_1GetFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FolderDoesNotExistException": case "com.amazonaws.codecommit#FolderDoesNotExistException": - response = { - ...(await deserializeAws_json1_1FolderDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMergeCommitCommand = async ( @@ -6921,129 +4402,58 @@ const deserializeAws_json1_1GetMergeCommitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMergeConflictsCommand = async ( @@ -7071,201 +4481,85 @@ const deserializeAws_json1_1GetMergeConflictsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidDestinationCommitSpecifierException": case "com.amazonaws.codecommit#InvalidDestinationCommitSpecifierException": - response = { - ...(await deserializeAws_json1_1InvalidDestinationCommitSpecifierExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDestinationCommitSpecifierExceptionResponse(parsedOutput, context); case "InvalidMaxConflictFilesException": case "com.amazonaws.codecommit#InvalidMaxConflictFilesException": - response = { - ...(await deserializeAws_json1_1InvalidMaxConflictFilesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxConflictFilesExceptionResponse(parsedOutput, context); case "InvalidMergeOptionException": case "com.amazonaws.codecommit#InvalidMergeOptionException": - response = { - ...(await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMergeOptionExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidSourceCommitSpecifierException": case "com.amazonaws.codecommit#InvalidSourceCommitSpecifierException": - response = { - ...(await deserializeAws_json1_1InvalidSourceCommitSpecifierExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSourceCommitSpecifierExceptionResponse(parsedOutput, context); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MergeOptionRequiredException": case "com.amazonaws.codecommit#MergeOptionRequiredException": - response = { - ...(await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MergeOptionRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMergeOptionsCommand = async ( @@ -7293,153 +4587,67 @@ const deserializeAws_json1_1GetMergeOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPullRequestCommand = async ( @@ -7467,89 +4675,43 @@ const deserializeAws_json1_1GetPullRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPullRequestApprovalStatesCommand = async ( @@ -7577,105 +4739,49 @@ const deserializeAws_json1_1GetPullRequestApprovalStatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRevisionIdException": case "com.amazonaws.codecommit#InvalidRevisionIdException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RevisionIdRequiredException": case "com.amazonaws.codecommit#RevisionIdRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPullRequestOverrideStateCommand = async ( @@ -7703,105 +4809,49 @@ const deserializeAws_json1_1GetPullRequestOverrideStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRevisionIdException": case "com.amazonaws.codecommit#InvalidRevisionIdException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RevisionIdRequiredException": case "com.amazonaws.codecommit#RevisionIdRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRepositoryCommand = async ( @@ -7829,89 +4879,43 @@ const deserializeAws_json1_1GetRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRepositoryTriggersCommand = async ( @@ -7939,89 +4943,43 @@ const deserializeAws_json1_1GetRepositoryTriggersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApprovalRuleTemplatesCommand = async ( @@ -8049,41 +5007,25 @@ const deserializeAws_json1_1ListApprovalRuleTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociatedApprovalRuleTemplatesForRepositoryCommand = async ( @@ -8111,105 +5053,49 @@ const deserializeAws_json1_1ListAssociatedApprovalRuleTemplatesForRepositoryComm ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBranchesCommand = async ( @@ -8237,97 +5123,46 @@ const deserializeAws_json1_1ListBranchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPullRequestsCommand = async ( @@ -8355,129 +5190,58 @@ const deserializeAws_json1_1ListPullRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorDoesNotExistException": case "com.amazonaws.codecommit#AuthorDoesNotExistException": - response = { - ...(await deserializeAws_json1_1AuthorDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorDoesNotExistExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidAuthorArnException": case "com.amazonaws.codecommit#InvalidAuthorArnException": - response = { - ...(await deserializeAws_json1_1InvalidAuthorArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAuthorArnExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidPullRequestStatusException": case "com.amazonaws.codecommit#InvalidPullRequestStatusException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestStatusExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRepositoriesCommand = async ( @@ -8505,49 +5269,28 @@ const deserializeAws_json1_1ListRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidOrderException": case "com.amazonaws.codecommit#InvalidOrderException": - response = { - ...(await deserializeAws_json1_1InvalidOrderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOrderExceptionResponse(parsedOutput, context); case "InvalidSortByException": case "com.amazonaws.codecommit#InvalidSortByException": - response = { - ...(await deserializeAws_json1_1InvalidSortByExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSortByExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRepositoriesForApprovalRuleTemplateCommand = async ( @@ -8575,105 +5318,49 @@ const deserializeAws_json1_1ListRepositoriesForApprovalRuleTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "InvalidContinuationTokenException": case "com.amazonaws.codecommit#InvalidContinuationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidContinuationTokenExceptionResponse(parsedOutput, context); case "InvalidMaxResultsException": case "com.amazonaws.codecommit#InvalidMaxResultsException": - response = { - ...(await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMaxResultsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -8701,57 +5388,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidResourceArnException": case "com.amazonaws.codecommit#InvalidResourceArnException": - response = { - ...(await deserializeAws_json1_1InvalidResourceArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceArnExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "ResourceArnRequiredException": case "com.amazonaws.codecommit#ResourceArnRequiredException": - response = { - ...(await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergeBranchesByFastForwardCommand = async ( @@ -8779,177 +5440,76 @@ const deserializeAws_json1_1MergeBranchesByFastForwardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameIsTagNameException": case "com.amazonaws.codecommit#BranchNameIsTagNameException": - response = { - ...(await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidTargetBranchException": case "com.amazonaws.codecommit#InvalidTargetBranchException": - response = { - ...(await deserializeAws_json1_1InvalidTargetBranchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetBranchExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergeBranchesBySquashCommand = async ( @@ -8977,340 +5537,139 @@ const deserializeAws_json1_1MergeBranchesBySquashCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameIsTagNameException": case "com.amazonaws.codecommit#BranchNameIsTagNameException": - response = { - ...(await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FileModeRequiredException": case "com.amazonaws.codecommit#FileModeRequiredException": - response = { - ...(await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionException": case "com.amazonaws.codecommit#InvalidConflictResolutionException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidReplacementContentException": case "com.amazonaws.codecommit#InvalidReplacementContentException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context); case "InvalidReplacementTypeException": case "com.amazonaws.codecommit#InvalidReplacementTypeException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidTargetBranchException": case "com.amazonaws.codecommit#InvalidTargetBranchException": - response = { - ...(await deserializeAws_json1_1InvalidTargetBranchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetBranchExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "MaximumConflictResolutionEntriesExceededException": case "com.amazonaws.codecommit#MaximumConflictResolutionEntriesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( + parsedOutput, + context + ); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MultipleConflictResolutionEntriesException": case "com.amazonaws.codecommit#MultipleConflictResolutionEntriesException": - response = { - ...(await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "ReplacementContentRequiredException": case "com.amazonaws.codecommit#ReplacementContentRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context); case "ReplacementTypeRequiredException": case "com.amazonaws.codecommit#ReplacementTypeRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergeBranchesByThreeWayCommand = async ( @@ -9338,340 +5697,139 @@ const deserializeAws_json1_1MergeBranchesByThreeWayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameIsTagNameException": case "com.amazonaws.codecommit#BranchNameIsTagNameException": - response = { - ...(await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "CommitRequiredException": case "com.amazonaws.codecommit#CommitRequiredException": - response = { - ...(await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitRequiredExceptionResponse(parsedOutput, context); case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FileModeRequiredException": case "com.amazonaws.codecommit#FileModeRequiredException": - response = { - ...(await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileModeRequiredExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidCommitException": case "com.amazonaws.codecommit#InvalidCommitException": - response = { - ...(await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionException": case "com.amazonaws.codecommit#InvalidConflictResolutionException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidReplacementContentException": case "com.amazonaws.codecommit#InvalidReplacementContentException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context); case "InvalidReplacementTypeException": case "com.amazonaws.codecommit#InvalidReplacementTypeException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidTargetBranchException": case "com.amazonaws.codecommit#InvalidTargetBranchException": - response = { - ...(await deserializeAws_json1_1InvalidTargetBranchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetBranchExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "MaximumConflictResolutionEntriesExceededException": case "com.amazonaws.codecommit#MaximumConflictResolutionEntriesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( + parsedOutput, + context + ); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MultipleConflictResolutionEntriesException": case "com.amazonaws.codecommit#MultipleConflictResolutionEntriesException": - response = { - ...(await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "ReplacementContentRequiredException": case "com.amazonaws.codecommit#ReplacementContentRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context); case "ReplacementTypeRequiredException": case "com.amazonaws.codecommit#ReplacementTypeRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergePullRequestByFastForwardCommand = async ( @@ -9699,177 +5857,76 @@ const deserializeAws_json1_1MergePullRequestByFastForwardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestApprovalRulesNotSatisfiedException": case "com.amazonaws.codecommit#PullRequestApprovalRulesNotSatisfiedException": - response = { - ...(await deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "ReferenceDoesNotExistException": case "com.amazonaws.codecommit#ReferenceDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ReferenceDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReferenceDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryNotAssociatedWithPullRequestException": case "com.amazonaws.codecommit#RepositoryNotAssociatedWithPullRequestException": - response = { - ...(await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context); case "TipOfSourceReferenceIsDifferentException": case "com.amazonaws.codecommit#TipOfSourceReferenceIsDifferentException": - response = { - ...(await deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergePullRequestBySquashCommand = async ( @@ -9897,332 +5954,136 @@ const deserializeAws_json1_1MergePullRequestBySquashCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionException": case "com.amazonaws.codecommit#InvalidConflictResolutionException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidReplacementContentException": case "com.amazonaws.codecommit#InvalidReplacementContentException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context); case "InvalidReplacementTypeException": case "com.amazonaws.codecommit#InvalidReplacementTypeException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "MaximumConflictResolutionEntriesExceededException": case "com.amazonaws.codecommit#MaximumConflictResolutionEntriesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( + parsedOutput, + context + ); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MultipleConflictResolutionEntriesException": case "com.amazonaws.codecommit#MultipleConflictResolutionEntriesException": - response = { - ...(await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestApprovalRulesNotSatisfiedException": case "com.amazonaws.codecommit#PullRequestApprovalRulesNotSatisfiedException": - response = { - ...(await deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "ReplacementContentRequiredException": case "com.amazonaws.codecommit#ReplacementContentRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context); case "ReplacementTypeRequiredException": case "com.amazonaws.codecommit#ReplacementTypeRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryNotAssociatedWithPullRequestException": case "com.amazonaws.codecommit#RepositoryNotAssociatedWithPullRequestException": - response = { - ...(await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context); case "TipOfSourceReferenceIsDifferentException": case "com.amazonaws.codecommit#TipOfSourceReferenceIsDifferentException": - response = { - ...(await deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergePullRequestByThreeWayCommand = async ( @@ -10250,332 +6111,136 @@ const deserializeAws_json1_1MergePullRequestByThreeWayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "ConcurrentReferenceUpdateException": case "com.amazonaws.codecommit#ConcurrentReferenceUpdateException": - response = { - ...(await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidConflictDetailLevelException": case "com.amazonaws.codecommit#InvalidConflictDetailLevelException": - response = { - ...(await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionException": case "com.amazonaws.codecommit#InvalidConflictResolutionException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionExceptionResponse(parsedOutput, context); case "InvalidConflictResolutionStrategyException": case "com.amazonaws.codecommit#InvalidConflictResolutionStrategyException": - response = { - ...(await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidReplacementContentException": case "com.amazonaws.codecommit#InvalidReplacementContentException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementContentExceptionResponse(parsedOutput, context); case "InvalidReplacementTypeException": case "com.amazonaws.codecommit#InvalidReplacementTypeException": - response = { - ...(await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReplacementTypeExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "ManualMergeRequiredException": case "com.amazonaws.codecommit#ManualMergeRequiredException": - response = { - ...(await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManualMergeRequiredExceptionResponse(parsedOutput, context); case "MaximumConflictResolutionEntriesExceededException": case "com.amazonaws.codecommit#MaximumConflictResolutionEntriesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse( + parsedOutput, + context + ); case "MaximumFileContentToLoadExceededException": case "com.amazonaws.codecommit#MaximumFileContentToLoadExceededException": - response = { - ...(await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse(parsedOutput, context); case "MaximumItemsToCompareExceededException": case "com.amazonaws.codecommit#MaximumItemsToCompareExceededException": - response = { - ...(await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse(parsedOutput, context); case "MultipleConflictResolutionEntriesException": case "com.amazonaws.codecommit#MultipleConflictResolutionEntriesException": - response = { - ...(await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestApprovalRulesNotSatisfiedException": case "com.amazonaws.codecommit#PullRequestApprovalRulesNotSatisfiedException": - response = { - ...(await deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "ReplacementContentRequiredException": case "com.amazonaws.codecommit#ReplacementContentRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementContentRequiredExceptionResponse(parsedOutput, context); case "ReplacementTypeRequiredException": case "com.amazonaws.codecommit#ReplacementTypeRequiredException": - response = { - ...(await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryNotAssociatedWithPullRequestException": case "com.amazonaws.codecommit#RepositoryNotAssociatedWithPullRequestException": - response = { - ...(await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context); case "TipOfSourceReferenceIsDifferentException": case "com.amazonaws.codecommit#TipOfSourceReferenceIsDifferentException": - response = { - ...(await deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse(parsedOutput, context); case "TipsDivergenceExceededException": case "com.amazonaws.codecommit#TipsDivergenceExceededException": - response = { - ...(await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TipsDivergenceExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1OverridePullRequestApprovalRulesCommand = async ( @@ -10600,145 +6265,64 @@ const deserializeAws_json1_1OverridePullRequestApprovalRulesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidOverrideStatusException": case "com.amazonaws.codecommit#InvalidOverrideStatusException": - response = { - ...(await deserializeAws_json1_1InvalidOverrideStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOverrideStatusExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRevisionIdException": case "com.amazonaws.codecommit#InvalidRevisionIdException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context); case "OverrideAlreadySetException": case "com.amazonaws.codecommit#OverrideAlreadySetException": - response = { - ...(await deserializeAws_json1_1OverrideAlreadySetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OverrideAlreadySetExceptionResponse(parsedOutput, context); case "OverrideStatusRequiredException": case "com.amazonaws.codecommit#OverrideStatusRequiredException": - response = { - ...(await deserializeAws_json1_1OverrideStatusRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OverrideStatusRequiredExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RevisionIdRequiredException": case "com.amazonaws.codecommit#RevisionIdRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context); case "RevisionNotCurrentException": case "com.amazonaws.codecommit#RevisionNotCurrentException": - response = { - ...(await deserializeAws_json1_1RevisionNotCurrentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionNotCurrentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PostCommentForComparedCommitCommand = async ( @@ -10766,209 +6350,88 @@ const deserializeAws_json1_1PostCommentForComparedCommitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BeforeCommitIdAndAfterCommitIdAreSameException": case "com.amazonaws.codecommit#BeforeCommitIdAndAfterCommitIdAreSameException": - response = { - ...(await deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameExceptionResponse(parsedOutput, context); case "ClientRequestTokenRequiredException": case "com.amazonaws.codecommit#ClientRequestTokenRequiredException": - response = { - ...(await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context); case "CommentContentRequiredException": case "com.amazonaws.codecommit#CommentContentRequiredException": - response = { - ...(await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context); case "CommentContentSizeLimitExceededException": case "com.amazonaws.codecommit#CommentContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitIdRequiredException": case "com.amazonaws.codecommit#CommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "IdempotencyParameterMismatchException": case "com.amazonaws.codecommit#IdempotencyParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientRequestTokenException": case "com.amazonaws.codecommit#InvalidClientRequestTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidFileLocationException": case "com.amazonaws.codecommit#InvalidFileLocationException": - response = { - ...(await deserializeAws_json1_1InvalidFileLocationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileLocationExceptionResponse(parsedOutput, context); case "InvalidFilePositionException": case "com.amazonaws.codecommit#InvalidFilePositionException": - response = { - ...(await deserializeAws_json1_1InvalidFilePositionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilePositionExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRelativeFileVersionEnumException": case "com.amazonaws.codecommit#InvalidRelativeFileVersionEnumException": - response = { - ...(await deserializeAws_json1_1InvalidRelativeFileVersionEnumExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRelativeFileVersionEnumExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "PathDoesNotExistException": case "com.amazonaws.codecommit#PathDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PathDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathDoesNotExistExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PostCommentForPullRequestCommand = async ( @@ -10996,241 +6459,100 @@ const deserializeAws_json1_1PostCommentForPullRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BeforeCommitIdAndAfterCommitIdAreSameException": case "com.amazonaws.codecommit#BeforeCommitIdAndAfterCommitIdAreSameException": - response = { - ...(await deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameExceptionResponse(parsedOutput, context); case "ClientRequestTokenRequiredException": case "com.amazonaws.codecommit#ClientRequestTokenRequiredException": - response = { - ...(await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context); case "CommentContentRequiredException": case "com.amazonaws.codecommit#CommentContentRequiredException": - response = { - ...(await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context); case "CommentContentSizeLimitExceededException": case "com.amazonaws.codecommit#CommentContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "CommitDoesNotExistException": case "com.amazonaws.codecommit#CommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitDoesNotExistExceptionResponse(parsedOutput, context); case "CommitIdRequiredException": case "com.amazonaws.codecommit#CommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitIdRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "IdempotencyParameterMismatchException": case "com.amazonaws.codecommit#IdempotencyParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientRequestTokenException": case "com.amazonaws.codecommit#InvalidClientRequestTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context); case "InvalidCommitIdException": case "com.amazonaws.codecommit#InvalidCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommitIdExceptionResponse(parsedOutput, context); case "InvalidFileLocationException": case "com.amazonaws.codecommit#InvalidFileLocationException": - response = { - ...(await deserializeAws_json1_1InvalidFileLocationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileLocationExceptionResponse(parsedOutput, context); case "InvalidFilePositionException": case "com.amazonaws.codecommit#InvalidFilePositionException": - response = { - ...(await deserializeAws_json1_1InvalidFilePositionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilePositionExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRelativeFileVersionEnumException": case "com.amazonaws.codecommit#InvalidRelativeFileVersionEnumException": - response = { - ...(await deserializeAws_json1_1InvalidRelativeFileVersionEnumExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRelativeFileVersionEnumExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "PathDoesNotExistException": case "com.amazonaws.codecommit#PathDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PathDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathDoesNotExistExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryNotAssociatedWithPullRequestException": case "com.amazonaws.codecommit#RepositoryNotAssociatedWithPullRequestException": - response = { - ...(await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PostCommentReplyCommand = async ( @@ -11258,89 +6580,43 @@ const deserializeAws_json1_1PostCommentReplyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientRequestTokenRequiredException": case "com.amazonaws.codecommit#ClientRequestTokenRequiredException": - response = { - ...(await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse(parsedOutput, context); case "CommentContentRequiredException": case "com.amazonaws.codecommit#CommentContentRequiredException": - response = { - ...(await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context); case "CommentContentSizeLimitExceededException": case "com.amazonaws.codecommit#CommentContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "CommentDoesNotExistException": case "com.amazonaws.codecommit#CommentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context); case "CommentIdRequiredException": case "com.amazonaws.codecommit#CommentIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context); case "IdempotencyParameterMismatchException": case "com.amazonaws.codecommit#IdempotencyParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientRequestTokenException": case "com.amazonaws.codecommit#InvalidClientRequestTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse(parsedOutput, context); case "InvalidCommentIdException": case "com.amazonaws.codecommit#InvalidCommentIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutCommentReactionCommand = async ( @@ -11365,81 +6641,40 @@ const deserializeAws_json1_1PutCommentReactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommentDeletedException": case "com.amazonaws.codecommit#CommentDeletedException": - response = { - ...(await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context); case "CommentDoesNotExistException": case "com.amazonaws.codecommit#CommentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context); case "CommentIdRequiredException": case "com.amazonaws.codecommit#CommentIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidCommentIdException": case "com.amazonaws.codecommit#InvalidCommentIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context); case "InvalidReactionValueException": case "com.amazonaws.codecommit#InvalidReactionValueException": - response = { - ...(await deserializeAws_json1_1InvalidReactionValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidReactionValueExceptionResponse(parsedOutput, context); case "ReactionLimitExceededException": case "com.amazonaws.codecommit#ReactionLimitExceededException": - response = { - ...(await deserializeAws_json1_1ReactionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReactionLimitExceededExceptionResponse(parsedOutput, context); case "ReactionValueRequiredException": case "com.amazonaws.codecommit#ReactionValueRequiredException": - response = { - ...(await deserializeAws_json1_1ReactionValueRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReactionValueRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutFileCommand = async ( @@ -11467,265 +6702,109 @@ const deserializeAws_json1_1PutFileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameIsTagNameException": case "com.amazonaws.codecommit#BranchNameIsTagNameException": - response = { - ...(await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameIsTagNameExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "CommitMessageLengthExceededException": case "com.amazonaws.codecommit#CommitMessageLengthExceededException": - response = { - ...(await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse(parsedOutput, context); case "DirectoryNameConflictsWithFileNameException": case "com.amazonaws.codecommit#DirectoryNameConflictsWithFileNameException": - response = { - ...(await deserializeAws_json1_1DirectoryNameConflictsWithFileNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryNameConflictsWithFileNameExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "FileContentRequiredException": case "com.amazonaws.codecommit#FileContentRequiredException": - response = { - ...(await deserializeAws_json1_1FileContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentRequiredExceptionResponse(parsedOutput, context); case "FileContentSizeLimitExceededException": case "com.amazonaws.codecommit#FileContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "FileNameConflictsWithDirectoryNameException": case "com.amazonaws.codecommit#FileNameConflictsWithDirectoryNameException": - response = { - ...(await deserializeAws_json1_1FileNameConflictsWithDirectoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileNameConflictsWithDirectoryNameExceptionResponse(parsedOutput, context); case "FilePathConflictsWithSubmodulePathException": case "com.amazonaws.codecommit#FilePathConflictsWithSubmodulePathException": - response = { - ...(await deserializeAws_json1_1FilePathConflictsWithSubmodulePathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FilePathConflictsWithSubmodulePathExceptionResponse(parsedOutput, context); case "FolderContentSizeLimitExceededException": case "com.amazonaws.codecommit#FolderContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidDeletionParameterException": case "com.amazonaws.codecommit#InvalidDeletionParameterException": - response = { - ...(await deserializeAws_json1_1InvalidDeletionParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeletionParameterExceptionResponse(parsedOutput, context); case "InvalidEmailException": case "com.amazonaws.codecommit#InvalidEmailException": - response = { - ...(await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailExceptionResponse(parsedOutput, context); case "InvalidFileModeException": case "com.amazonaws.codecommit#InvalidFileModeException": - response = { - ...(await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileModeExceptionResponse(parsedOutput, context); case "InvalidParentCommitIdException": case "com.amazonaws.codecommit#InvalidParentCommitIdException": - response = { - ...(await deserializeAws_json1_1InvalidParentCommitIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParentCommitIdExceptionResponse(parsedOutput, context); case "InvalidPathException": case "com.amazonaws.codecommit#InvalidPathException": - response = { - ...(await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPathExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "NameLengthExceededException": case "com.amazonaws.codecommit#NameLengthExceededException": - response = { - ...(await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameLengthExceededExceptionResponse(parsedOutput, context); case "ParentCommitDoesNotExistException": case "com.amazonaws.codecommit#ParentCommitDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse(parsedOutput, context); case "ParentCommitIdOutdatedException": case "com.amazonaws.codecommit#ParentCommitIdOutdatedException": - response = { - ...(await deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse(parsedOutput, context); case "ParentCommitIdRequiredException": case "com.amazonaws.codecommit#ParentCommitIdRequiredException": - response = { - ...(await deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse(parsedOutput, context); case "PathRequiredException": case "com.amazonaws.codecommit#PathRequiredException": - response = { - ...(await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PathRequiredExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "SameFileContentException": case "com.amazonaws.codecommit#SameFileContentException": - response = { - ...(await deserializeAws_json1_1SameFileContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SameFileContentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRepositoryTriggersCommand = async ( @@ -11753,199 +6832,82 @@ const deserializeAws_json1_1PutRepositoryTriggersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerBranchNameException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerBranchNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerCustomDataException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerCustomDataException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerCustomDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerCustomDataExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerDestinationArnException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerDestinationArnException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerEventsException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerEventsException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerEventsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerEventsExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerNameException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerRegionException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerRegionException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerRegionExceptionResponse(parsedOutput, context); case "MaximumBranchesExceededException": case "com.amazonaws.codecommit#MaximumBranchesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumBranchesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumBranchesExceededExceptionResponse(parsedOutput, context); case "MaximumRepositoryTriggersExceededException": case "com.amazonaws.codecommit#MaximumRepositoryTriggersExceededException": - response = { - ...(await deserializeAws_json1_1MaximumRepositoryTriggersExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumRepositoryTriggersExceededExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerBranchNameListRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerBranchNameListRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerDestinationArnRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerDestinationArnRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerEventsListRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerEventsListRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerEventsListRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerEventsListRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerNameRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggersListRequiredException": case "com.amazonaws.codecommit#RepositoryTriggersListRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggersListRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggersListRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -11970,97 +6932,46 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidResourceArnException": case "com.amazonaws.codecommit#InvalidResourceArnException": - response = { - ...(await deserializeAws_json1_1InvalidResourceArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceArnExceptionResponse(parsedOutput, context); case "InvalidSystemTagUsageException": case "com.amazonaws.codecommit#InvalidSystemTagUsageException": - response = { - ...(await deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse(parsedOutput, context); case "InvalidTagsMapException": case "com.amazonaws.codecommit#InvalidTagsMapException": - response = { - ...(await deserializeAws_json1_1InvalidTagsMapExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsMapExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "ResourceArnRequiredException": case "com.amazonaws.codecommit#ResourceArnRequiredException": - response = { - ...(await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.codecommit#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "TagsMapRequiredException": case "com.amazonaws.codecommit#TagsMapRequiredException": - response = { - ...(await deserializeAws_json1_1TagsMapRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagsMapRequiredExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codecommit#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestRepositoryTriggersCommand = async ( @@ -12088,199 +6999,82 @@ const deserializeAws_json1_1TestRepositoryTriggersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerBranchNameException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerBranchNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerCustomDataException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerCustomDataException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerCustomDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerCustomDataExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerDestinationArnException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerDestinationArnException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerEventsException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerEventsException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerEventsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerEventsExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerNameException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryTriggerRegionException": case "com.amazonaws.codecommit#InvalidRepositoryTriggerRegionException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryTriggerRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryTriggerRegionExceptionResponse(parsedOutput, context); case "MaximumBranchesExceededException": case "com.amazonaws.codecommit#MaximumBranchesExceededException": - response = { - ...(await deserializeAws_json1_1MaximumBranchesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumBranchesExceededExceptionResponse(parsedOutput, context); case "MaximumRepositoryTriggersExceededException": case "com.amazonaws.codecommit#MaximumRepositoryTriggersExceededException": - response = { - ...(await deserializeAws_json1_1MaximumRepositoryTriggersExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumRepositoryTriggersExceededExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerBranchNameListRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerBranchNameListRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerDestinationArnRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerDestinationArnRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerEventsListRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerEventsListRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerEventsListRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerEventsListRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggerNameRequiredException": case "com.amazonaws.codecommit#RepositoryTriggerNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggerNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggerNameRequiredExceptionResponse(parsedOutput, context); case "RepositoryTriggersListRequiredException": case "com.amazonaws.codecommit#RepositoryTriggersListRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryTriggersListRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryTriggersListRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -12305,97 +7099,46 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "InvalidResourceArnException": case "com.amazonaws.codecommit#InvalidResourceArnException": - response = { - ...(await deserializeAws_json1_1InvalidResourceArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceArnExceptionResponse(parsedOutput, context); case "InvalidSystemTagUsageException": case "com.amazonaws.codecommit#InvalidSystemTagUsageException": - response = { - ...(await deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse(parsedOutput, context); case "InvalidTagKeysListException": case "com.amazonaws.codecommit#InvalidTagKeysListException": - response = { - ...(await deserializeAws_json1_1InvalidTagKeysListExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagKeysListExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "ResourceArnRequiredException": case "com.amazonaws.codecommit#ResourceArnRequiredException": - response = { - ...(await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context); case "TagKeysListRequiredException": case "com.amazonaws.codecommit#TagKeysListRequiredException": - response = { - ...(await deserializeAws_json1_1TagKeysListRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagKeysListRequiredExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.codecommit#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codecommit#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApprovalRuleTemplateContentCommand = async ( @@ -12423,73 +7166,37 @@ const deserializeAws_json1_1UpdateApprovalRuleTemplateContentCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateContentRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateContentRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateContentRequiredExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateContentException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateContentException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateContentExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); case "InvalidRuleContentSha256Exception": case "com.amazonaws.codecommit#InvalidRuleContentSha256Exception": - response = { - ...(await deserializeAws_json1_1InvalidRuleContentSha256ExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRuleContentSha256ExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApprovalRuleTemplateDescriptionCommand = async ( @@ -12517,57 +7224,31 @@ const deserializeAws_json1_1UpdateApprovalRuleTemplateDescriptionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateDescriptionException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateDescriptionException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApprovalRuleTemplateNameCommand = async ( @@ -12595,57 +7276,31 @@ const deserializeAws_json1_1UpdateApprovalRuleTemplateNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleTemplateDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleTemplateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameAlreadyExistsException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsExceptionResponse(parsedOutput, context); case "ApprovalRuleTemplateNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleTemplateNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleTemplateNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleTemplateNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCommentCommand = async ( @@ -12673,81 +7328,40 @@ const deserializeAws_json1_1UpdateCommentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CommentContentRequiredException": case "com.amazonaws.codecommit#CommentContentRequiredException": - response = { - ...(await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentRequiredExceptionResponse(parsedOutput, context); case "CommentContentSizeLimitExceededException": case "com.amazonaws.codecommit#CommentContentSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse(parsedOutput, context); case "CommentDeletedException": case "com.amazonaws.codecommit#CommentDeletedException": - response = { - ...(await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDeletedExceptionResponse(parsedOutput, context); case "CommentDoesNotExistException": case "com.amazonaws.codecommit#CommentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentDoesNotExistExceptionResponse(parsedOutput, context); case "CommentIdRequiredException": case "com.amazonaws.codecommit#CommentIdRequiredException": - response = { - ...(await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentIdRequiredExceptionResponse(parsedOutput, context); case "CommentNotCreatedByCallerException": case "com.amazonaws.codecommit#CommentNotCreatedByCallerException": - response = { - ...(await deserializeAws_json1_1CommentNotCreatedByCallerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CommentNotCreatedByCallerExceptionResponse(parsedOutput, context); case "InvalidCommentIdException": case "com.amazonaws.codecommit#InvalidCommentIdException": - response = { - ...(await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommentIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDefaultBranchCommand = async ( @@ -12772,113 +7386,52 @@ const deserializeAws_json1_1UpdateDefaultBranchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BranchDoesNotExistException": case "com.amazonaws.codecommit#BranchDoesNotExistException": - response = { - ...(await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchDoesNotExistExceptionResponse(parsedOutput, context); case "BranchNameRequiredException": case "com.amazonaws.codecommit#BranchNameRequiredException": - response = { - ...(await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BranchNameRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidBranchNameException": case "com.amazonaws.codecommit#InvalidBranchNameException": - response = { - ...(await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBranchNameExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePullRequestApprovalRuleContentCommand = async ( @@ -12906,153 +7459,67 @@ const deserializeAws_json1_1UpdatePullRequestApprovalRuleContentCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalRuleContentRequiredException": case "com.amazonaws.codecommit#ApprovalRuleContentRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleContentRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleContentRequiredExceptionResponse(parsedOutput, context); case "ApprovalRuleDoesNotExistException": case "com.amazonaws.codecommit#ApprovalRuleDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleDoesNotExistExceptionResponse(parsedOutput, context); case "ApprovalRuleNameRequiredException": case "com.amazonaws.codecommit#ApprovalRuleNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse(parsedOutput, context); case "CannotModifyApprovalRuleFromTemplateException": case "com.amazonaws.codecommit#CannotModifyApprovalRuleFromTemplateException": - response = { - ...(await deserializeAws_json1_1CannotModifyApprovalRuleFromTemplateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CannotModifyApprovalRuleFromTemplateExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleContentException": case "com.amazonaws.codecommit#InvalidApprovalRuleContentException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleContentExceptionResponse(parsedOutput, context); case "InvalidApprovalRuleNameException": case "com.amazonaws.codecommit#InvalidApprovalRuleNameException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRuleContentSha256Exception": case "com.amazonaws.codecommit#InvalidRuleContentSha256Exception": - response = { - ...(await deserializeAws_json1_1InvalidRuleContentSha256ExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRuleContentSha256ExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePullRequestApprovalStateCommand = async ( @@ -13077,153 +7544,67 @@ const deserializeAws_json1_1UpdatePullRequestApprovalStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApprovalStateRequiredException": case "com.amazonaws.codecommit#ApprovalStateRequiredException": - response = { - ...(await deserializeAws_json1_1ApprovalStateRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalStateRequiredExceptionResponse(parsedOutput, context); case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidApprovalStateException": case "com.amazonaws.codecommit#InvalidApprovalStateException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalStateExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidRevisionIdException": case "com.amazonaws.codecommit#InvalidRevisionIdException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionIdExceptionResponse(parsedOutput, context); case "MaximumNumberOfApprovalsExceededException": case "com.amazonaws.codecommit#MaximumNumberOfApprovalsExceededException": - response = { - ...(await deserializeAws_json1_1MaximumNumberOfApprovalsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaximumNumberOfApprovalsExceededExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestCannotBeApprovedByAuthorException": case "com.amazonaws.codecommit#PullRequestCannotBeApprovedByAuthorException": - response = { - ...(await deserializeAws_json1_1PullRequestCannotBeApprovedByAuthorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestCannotBeApprovedByAuthorExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "RevisionIdRequiredException": case "com.amazonaws.codecommit#RevisionIdRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionIdRequiredExceptionResponse(parsedOutput, context); case "RevisionNotCurrentException": case "com.amazonaws.codecommit#RevisionNotCurrentException": - response = { - ...(await deserializeAws_json1_1RevisionNotCurrentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionNotCurrentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePullRequestDescriptionCommand = async ( @@ -13251,65 +7632,34 @@ const deserializeAws_json1_1UpdatePullRequestDescriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDescriptionException": case "com.amazonaws.codecommit#InvalidDescriptionException": - response = { - ...(await deserializeAws_json1_1InvalidDescriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDescriptionExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePullRequestStatusCommand = async ( @@ -13337,113 +7687,52 @@ const deserializeAws_json1_1UpdatePullRequestStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidPullRequestStatusException": case "com.amazonaws.codecommit#InvalidPullRequestStatusException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestStatusExceptionResponse(parsedOutput, context); case "InvalidPullRequestStatusUpdateException": case "com.amazonaws.codecommit#InvalidPullRequestStatusUpdateException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestStatusUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestStatusUpdateExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "PullRequestStatusRequiredException": case "com.amazonaws.codecommit#PullRequestStatusRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestStatusRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestStatusRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePullRequestTitleCommand = async ( @@ -13471,73 +7760,37 @@ const deserializeAws_json1_1UpdatePullRequestTitleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPullRequestIdException": case "com.amazonaws.codecommit#InvalidPullRequestIdException": - response = { - ...(await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPullRequestIdExceptionResponse(parsedOutput, context); case "InvalidTitleException": case "com.amazonaws.codecommit#InvalidTitleException": - response = { - ...(await deserializeAws_json1_1InvalidTitleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTitleExceptionResponse(parsedOutput, context); case "PullRequestAlreadyClosedException": case "com.amazonaws.codecommit#PullRequestAlreadyClosedException": - response = { - ...(await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse(parsedOutput, context); case "PullRequestDoesNotExistException": case "com.amazonaws.codecommit#PullRequestDoesNotExistException": - response = { - ...(await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse(parsedOutput, context); case "PullRequestIdRequiredException": case "com.amazonaws.codecommit#PullRequestIdRequiredException": - response = { - ...(await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullRequestIdRequiredExceptionResponse(parsedOutput, context); case "TitleRequiredException": case "com.amazonaws.codecommit#TitleRequiredException": - response = { - ...(await deserializeAws_json1_1TitleRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TitleRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRepositoryDescriptionCommand = async ( @@ -13562,97 +7815,46 @@ const deserializeAws_json1_1UpdateRepositoryDescriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EncryptionIntegrityChecksFailedException": case "com.amazonaws.codecommit#EncryptionIntegrityChecksFailedException": - response = { - ...(await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse(parsedOutput, context); case "EncryptionKeyAccessDeniedException": case "com.amazonaws.codecommit#EncryptionKeyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse(parsedOutput, context); case "EncryptionKeyDisabledException": case "com.amazonaws.codecommit#EncryptionKeyDisabledException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse(parsedOutput, context); case "EncryptionKeyNotFoundException": case "com.amazonaws.codecommit#EncryptionKeyNotFoundException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse(parsedOutput, context); case "EncryptionKeyUnavailableException": case "com.amazonaws.codecommit#EncryptionKeyUnavailableException": - response = { - ...(await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse(parsedOutput, context); case "InvalidRepositoryDescriptionException": case "com.amazonaws.codecommit#InvalidRepositoryDescriptionException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryDescriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryDescriptionExceptionResponse(parsedOutput, context); case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRepositoryNameCommand = async ( @@ -13677,57 +7879,31 @@ const deserializeAws_json1_1UpdateRepositoryNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRepositoryNameException": case "com.amazonaws.codecommit#InvalidRepositoryNameException": - response = { - ...(await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRepositoryNameExceptionResponse(parsedOutput, context); case "RepositoryDoesNotExistException": case "com.amazonaws.codecommit#RepositoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse(parsedOutput, context); case "RepositoryNameExistsException": case "com.amazonaws.codecommit#RepositoryNameExistsException": - response = { - ...(await deserializeAws_json1_1RepositoryNameExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameExistsExceptionResponse(parsedOutput, context); case "RepositoryNameRequiredException": case "com.amazonaws.codecommit#RepositoryNameRequiredException": - response = { - ...(await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNameRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ActorDoesNotExistExceptionResponse = async ( @@ -13736,13 +7912,11 @@ const deserializeAws_json1_1ActorDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ActorDoesNotExistException(body, context); - const contents: ActorDoesNotExistException = { - name: "ActorDoesNotExistException", - $fault: "client", + const exception = new ActorDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleContentRequiredExceptionResponse = async ( @@ -13751,13 +7925,11 @@ const deserializeAws_json1_1ApprovalRuleContentRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleContentRequiredException(body, context); - const contents: ApprovalRuleContentRequiredException = { - name: "ApprovalRuleContentRequiredException", - $fault: "client", + const exception = new ApprovalRuleContentRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleDoesNotExistExceptionResponse = async ( @@ -13766,13 +7938,11 @@ const deserializeAws_json1_1ApprovalRuleDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleDoesNotExistException(body, context); - const contents: ApprovalRuleDoesNotExistException = { - name: "ApprovalRuleDoesNotExistException", - $fault: "client", + const exception = new ApprovalRuleDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleNameAlreadyExistsExceptionResponse = async ( @@ -13781,13 +7951,11 @@ const deserializeAws_json1_1ApprovalRuleNameAlreadyExistsExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleNameAlreadyExistsException(body, context); - const contents: ApprovalRuleNameAlreadyExistsException = { - name: "ApprovalRuleNameAlreadyExistsException", - $fault: "client", + const exception = new ApprovalRuleNameAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse = async ( @@ -13796,13 +7964,11 @@ const deserializeAws_json1_1ApprovalRuleNameRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleNameRequiredException(body, context); - const contents: ApprovalRuleNameRequiredException = { - name: "ApprovalRuleNameRequiredException", - $fault: "client", + const exception = new ApprovalRuleNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleTemplateContentRequiredExceptionResponse = async ( @@ -13811,13 +7977,11 @@ const deserializeAws_json1_1ApprovalRuleTemplateContentRequiredExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleTemplateContentRequiredException(body, context); - const contents: ApprovalRuleTemplateContentRequiredException = { - name: "ApprovalRuleTemplateContentRequiredException", - $fault: "client", + const exception = new ApprovalRuleTemplateContentRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse = async ( @@ -13826,13 +7990,11 @@ const deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleTemplateDoesNotExistException(body, context); - const contents: ApprovalRuleTemplateDoesNotExistException = { - name: "ApprovalRuleTemplateDoesNotExistException", - $fault: "client", + const exception = new ApprovalRuleTemplateDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleTemplateInUseExceptionResponse = async ( @@ -13841,13 +8003,11 @@ const deserializeAws_json1_1ApprovalRuleTemplateInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleTemplateInUseException(body, context); - const contents: ApprovalRuleTemplateInUseException = { - name: "ApprovalRuleTemplateInUseException", - $fault: "client", + const exception = new ApprovalRuleTemplateInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsExceptionResponse = async ( @@ -13856,13 +8016,11 @@ const deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleTemplateNameAlreadyExistsException(body, context); - const contents: ApprovalRuleTemplateNameAlreadyExistsException = { - name: "ApprovalRuleTemplateNameAlreadyExistsException", - $fault: "client", + const exception = new ApprovalRuleTemplateNameAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse = async ( @@ -13871,13 +8029,11 @@ const deserializeAws_json1_1ApprovalRuleTemplateNameRequiredExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalRuleTemplateNameRequiredException(body, context); - const contents: ApprovalRuleTemplateNameRequiredException = { - name: "ApprovalRuleTemplateNameRequiredException", - $fault: "client", + const exception = new ApprovalRuleTemplateNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalStateRequiredExceptionResponse = async ( @@ -13886,13 +8042,11 @@ const deserializeAws_json1_1ApprovalStateRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalStateRequiredException(body, context); - const contents: ApprovalStateRequiredException = { - name: "ApprovalStateRequiredException", - $fault: "client", + const exception = new ApprovalStateRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AuthorDoesNotExistExceptionResponse = async ( @@ -13901,13 +8055,11 @@ const deserializeAws_json1_1AuthorDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AuthorDoesNotExistException(body, context); - const contents: AuthorDoesNotExistException = { - name: "AuthorDoesNotExistException", - $fault: "client", + const exception = new AuthorDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameExceptionResponse = async ( @@ -13916,13 +8068,11 @@ const deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BeforeCommitIdAndAfterCommitIdAreSameException(body, context); - const contents: BeforeCommitIdAndAfterCommitIdAreSameException = { - name: "BeforeCommitIdAndAfterCommitIdAreSameException", - $fault: "client", + const exception = new BeforeCommitIdAndAfterCommitIdAreSameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BlobIdDoesNotExistExceptionResponse = async ( @@ -13931,13 +8081,11 @@ const deserializeAws_json1_1BlobIdDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BlobIdDoesNotExistException(body, context); - const contents: BlobIdDoesNotExistException = { - name: "BlobIdDoesNotExistException", - $fault: "client", + const exception = new BlobIdDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BlobIdRequiredExceptionResponse = async ( @@ -13946,13 +8094,11 @@ const deserializeAws_json1_1BlobIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BlobIdRequiredException(body, context); - const contents: BlobIdRequiredException = { - name: "BlobIdRequiredException", - $fault: "client", + const exception = new BlobIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BranchDoesNotExistExceptionResponse = async ( @@ -13961,13 +8107,11 @@ const deserializeAws_json1_1BranchDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BranchDoesNotExistException(body, context); - const contents: BranchDoesNotExistException = { - name: "BranchDoesNotExistException", - $fault: "client", + const exception = new BranchDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BranchNameExistsExceptionResponse = async ( @@ -13976,13 +8120,11 @@ const deserializeAws_json1_1BranchNameExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BranchNameExistsException(body, context); - const contents: BranchNameExistsException = { - name: "BranchNameExistsException", - $fault: "client", + const exception = new BranchNameExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BranchNameIsTagNameExceptionResponse = async ( @@ -13991,13 +8133,11 @@ const deserializeAws_json1_1BranchNameIsTagNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BranchNameIsTagNameException(body, context); - const contents: BranchNameIsTagNameException = { - name: "BranchNameIsTagNameException", - $fault: "client", + const exception = new BranchNameIsTagNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BranchNameRequiredExceptionResponse = async ( @@ -14006,13 +8146,11 @@ const deserializeAws_json1_1BranchNameRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BranchNameRequiredException(body, context); - const contents: BranchNameRequiredException = { - name: "BranchNameRequiredException", - $fault: "client", + const exception = new BranchNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CannotDeleteApprovalRuleFromTemplateExceptionResponse = async ( @@ -14021,13 +8159,11 @@ const deserializeAws_json1_1CannotDeleteApprovalRuleFromTemplateExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CannotDeleteApprovalRuleFromTemplateException(body, context); - const contents: CannotDeleteApprovalRuleFromTemplateException = { - name: "CannotDeleteApprovalRuleFromTemplateException", - $fault: "client", + const exception = new CannotDeleteApprovalRuleFromTemplateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CannotModifyApprovalRuleFromTemplateExceptionResponse = async ( @@ -14036,13 +8172,11 @@ const deserializeAws_json1_1CannotModifyApprovalRuleFromTemplateExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CannotModifyApprovalRuleFromTemplateException(body, context); - const contents: CannotModifyApprovalRuleFromTemplateException = { - name: "CannotModifyApprovalRuleFromTemplateException", - $fault: "client", + const exception = new CannotModifyApprovalRuleFromTemplateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse = async ( @@ -14051,13 +8185,11 @@ const deserializeAws_json1_1ClientRequestTokenRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClientRequestTokenRequiredException(body, context); - const contents: ClientRequestTokenRequiredException = { - name: "ClientRequestTokenRequiredException", - $fault: "client", + const exception = new ClientRequestTokenRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommentContentRequiredExceptionResponse = async ( @@ -14066,13 +8198,11 @@ const deserializeAws_json1_1CommentContentRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommentContentRequiredException(body, context); - const contents: CommentContentRequiredException = { - name: "CommentContentRequiredException", - $fault: "client", + const exception = new CommentContentRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse = async ( @@ -14081,13 +8211,11 @@ const deserializeAws_json1_1CommentContentSizeLimitExceededExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommentContentSizeLimitExceededException(body, context); - const contents: CommentContentSizeLimitExceededException = { - name: "CommentContentSizeLimitExceededException", - $fault: "client", + const exception = new CommentContentSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommentDeletedExceptionResponse = async ( @@ -14096,13 +8224,11 @@ const deserializeAws_json1_1CommentDeletedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommentDeletedException(body, context); - const contents: CommentDeletedException = { - name: "CommentDeletedException", - $fault: "client", + const exception = new CommentDeletedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommentDoesNotExistExceptionResponse = async ( @@ -14111,13 +8237,11 @@ const deserializeAws_json1_1CommentDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommentDoesNotExistException(body, context); - const contents: CommentDoesNotExistException = { - name: "CommentDoesNotExistException", - $fault: "client", + const exception = new CommentDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommentIdRequiredExceptionResponse = async ( @@ -14126,13 +8250,11 @@ const deserializeAws_json1_1CommentIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommentIdRequiredException(body, context); - const contents: CommentIdRequiredException = { - name: "CommentIdRequiredException", - $fault: "client", + const exception = new CommentIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommentNotCreatedByCallerExceptionResponse = async ( @@ -14141,13 +8263,11 @@ const deserializeAws_json1_1CommentNotCreatedByCallerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommentNotCreatedByCallerException(body, context); - const contents: CommentNotCreatedByCallerException = { - name: "CommentNotCreatedByCallerException", - $fault: "client", + const exception = new CommentNotCreatedByCallerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitDoesNotExistExceptionResponse = async ( @@ -14156,13 +8276,11 @@ const deserializeAws_json1_1CommitDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitDoesNotExistException(body, context); - const contents: CommitDoesNotExistException = { - name: "CommitDoesNotExistException", - $fault: "client", + const exception = new CommitDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitIdDoesNotExistExceptionResponse = async ( @@ -14171,13 +8289,11 @@ const deserializeAws_json1_1CommitIdDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitIdDoesNotExistException(body, context); - const contents: CommitIdDoesNotExistException = { - name: "CommitIdDoesNotExistException", - $fault: "client", + const exception = new CommitIdDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitIdRequiredExceptionResponse = async ( @@ -14186,13 +8302,11 @@ const deserializeAws_json1_1CommitIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitIdRequiredException(body, context); - const contents: CommitIdRequiredException = { - name: "CommitIdRequiredException", - $fault: "client", + const exception = new CommitIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitIdsLimitExceededExceptionResponse = async ( @@ -14201,13 +8315,11 @@ const deserializeAws_json1_1CommitIdsLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitIdsLimitExceededException(body, context); - const contents: CommitIdsLimitExceededException = { - name: "CommitIdsLimitExceededException", - $fault: "client", + const exception = new CommitIdsLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitIdsListRequiredExceptionResponse = async ( @@ -14216,13 +8328,11 @@ const deserializeAws_json1_1CommitIdsListRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitIdsListRequiredException(body, context); - const contents: CommitIdsListRequiredException = { - name: "CommitIdsListRequiredException", - $fault: "client", + const exception = new CommitIdsListRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse = async ( @@ -14231,13 +8341,11 @@ const deserializeAws_json1_1CommitMessageLengthExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitMessageLengthExceededException(body, context); - const contents: CommitMessageLengthExceededException = { - name: "CommitMessageLengthExceededException", - $fault: "client", + const exception = new CommitMessageLengthExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CommitRequiredExceptionResponse = async ( @@ -14246,13 +8354,11 @@ const deserializeAws_json1_1CommitRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CommitRequiredException(body, context); - const contents: CommitRequiredException = { - name: "CommitRequiredException", - $fault: "client", + const exception = new CommitRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse = async ( @@ -14261,13 +8367,11 @@ const deserializeAws_json1_1ConcurrentReferenceUpdateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentReferenceUpdateException(body, context); - const contents: ConcurrentReferenceUpdateException = { - name: "ConcurrentReferenceUpdateException", - $fault: "client", + const exception = new ConcurrentReferenceUpdateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DefaultBranchCannotBeDeletedExceptionResponse = async ( @@ -14276,13 +8380,11 @@ const deserializeAws_json1_1DefaultBranchCannotBeDeletedExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DefaultBranchCannotBeDeletedException(body, context); - const contents: DefaultBranchCannotBeDeletedException = { - name: "DefaultBranchCannotBeDeletedException", - $fault: "client", + const exception = new DefaultBranchCannotBeDeletedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryNameConflictsWithFileNameExceptionResponse = async ( @@ -14291,13 +8393,11 @@ const deserializeAws_json1_1DirectoryNameConflictsWithFileNameExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryNameConflictsWithFileNameException(body, context); - const contents: DirectoryNameConflictsWithFileNameException = { - name: "DirectoryNameConflictsWithFileNameException", - $fault: "client", + const exception = new DirectoryNameConflictsWithFileNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse = async ( @@ -14306,13 +8406,11 @@ const deserializeAws_json1_1EncryptionIntegrityChecksFailedExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EncryptionIntegrityChecksFailedException(body, context); - const contents: EncryptionIntegrityChecksFailedException = { - name: "EncryptionIntegrityChecksFailedException", - $fault: "server", + const exception = new EncryptionIntegrityChecksFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse = async ( @@ -14321,13 +8419,11 @@ const deserializeAws_json1_1EncryptionKeyAccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EncryptionKeyAccessDeniedException(body, context); - const contents: EncryptionKeyAccessDeniedException = { - name: "EncryptionKeyAccessDeniedException", - $fault: "client", + const exception = new EncryptionKeyAccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse = async ( @@ -14336,13 +8432,11 @@ const deserializeAws_json1_1EncryptionKeyDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EncryptionKeyDisabledException(body, context); - const contents: EncryptionKeyDisabledException = { - name: "EncryptionKeyDisabledException", - $fault: "client", + const exception = new EncryptionKeyDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse = async ( @@ -14351,13 +8445,11 @@ const deserializeAws_json1_1EncryptionKeyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EncryptionKeyNotFoundException(body, context); - const contents: EncryptionKeyNotFoundException = { - name: "EncryptionKeyNotFoundException", - $fault: "client", + const exception = new EncryptionKeyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse = async ( @@ -14366,13 +8458,11 @@ const deserializeAws_json1_1EncryptionKeyUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EncryptionKeyUnavailableException(body, context); - const contents: EncryptionKeyUnavailableException = { - name: "EncryptionKeyUnavailableException", - $fault: "client", + const exception = new EncryptionKeyUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileContentAndSourceFileSpecifiedExceptionResponse = async ( @@ -14381,13 +8471,11 @@ const deserializeAws_json1_1FileContentAndSourceFileSpecifiedExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileContentAndSourceFileSpecifiedException(body, context); - const contents: FileContentAndSourceFileSpecifiedException = { - name: "FileContentAndSourceFileSpecifiedException", - $fault: "client", + const exception = new FileContentAndSourceFileSpecifiedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileContentRequiredExceptionResponse = async ( @@ -14396,13 +8484,11 @@ const deserializeAws_json1_1FileContentRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileContentRequiredException(body, context); - const contents: FileContentRequiredException = { - name: "FileContentRequiredException", - $fault: "client", + const exception = new FileContentRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse = async ( @@ -14411,13 +8497,11 @@ const deserializeAws_json1_1FileContentSizeLimitExceededExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileContentSizeLimitExceededException(body, context); - const contents: FileContentSizeLimitExceededException = { - name: "FileContentSizeLimitExceededException", - $fault: "client", + const exception = new FileContentSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileDoesNotExistExceptionResponse = async ( @@ -14426,13 +8510,11 @@ const deserializeAws_json1_1FileDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileDoesNotExistException(body, context); - const contents: FileDoesNotExistException = { - name: "FileDoesNotExistException", - $fault: "client", + const exception = new FileDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileEntryRequiredExceptionResponse = async ( @@ -14441,13 +8523,11 @@ const deserializeAws_json1_1FileEntryRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileEntryRequiredException(body, context); - const contents: FileEntryRequiredException = { - name: "FileEntryRequiredException", - $fault: "client", + const exception = new FileEntryRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileModeRequiredExceptionResponse = async ( @@ -14456,13 +8536,11 @@ const deserializeAws_json1_1FileModeRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileModeRequiredException(body, context); - const contents: FileModeRequiredException = { - name: "FileModeRequiredException", - $fault: "client", + const exception = new FileModeRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileNameConflictsWithDirectoryNameExceptionResponse = async ( @@ -14471,13 +8549,11 @@ const deserializeAws_json1_1FileNameConflictsWithDirectoryNameExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileNameConflictsWithDirectoryNameException(body, context); - const contents: FileNameConflictsWithDirectoryNameException = { - name: "FileNameConflictsWithDirectoryNameException", - $fault: "client", + const exception = new FileNameConflictsWithDirectoryNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FilePathConflictsWithSubmodulePathExceptionResponse = async ( @@ -14486,13 +8562,11 @@ const deserializeAws_json1_1FilePathConflictsWithSubmodulePathExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FilePathConflictsWithSubmodulePathException(body, context); - const contents: FilePathConflictsWithSubmodulePathException = { - name: "FilePathConflictsWithSubmodulePathException", - $fault: "client", + const exception = new FilePathConflictsWithSubmodulePathException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileTooLargeExceptionResponse = async ( @@ -14501,13 +8575,11 @@ const deserializeAws_json1_1FileTooLargeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileTooLargeException(body, context); - const contents: FileTooLargeException = { - name: "FileTooLargeException", - $fault: "client", + const exception = new FileTooLargeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse = async ( @@ -14516,13 +8588,11 @@ const deserializeAws_json1_1FolderContentSizeLimitExceededExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FolderContentSizeLimitExceededException(body, context); - const contents: FolderContentSizeLimitExceededException = { - name: "FolderContentSizeLimitExceededException", - $fault: "client", + const exception = new FolderContentSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FolderDoesNotExistExceptionResponse = async ( @@ -14531,13 +8601,11 @@ const deserializeAws_json1_1FolderDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FolderDoesNotExistException(body, context); - const contents: FolderDoesNotExistException = { - name: "FolderDoesNotExistException", - $fault: "client", + const exception = new FolderDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse = async ( @@ -14546,13 +8614,11 @@ const deserializeAws_json1_1IdempotencyParameterMismatchExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotencyParameterMismatchException(body, context); - const contents: IdempotencyParameterMismatchException = { - name: "IdempotencyParameterMismatchException", - $fault: "client", + const exception = new IdempotencyParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidActorArnExceptionResponse = async ( @@ -14561,13 +8627,11 @@ const deserializeAws_json1_1InvalidActorArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidActorArnException(body, context); - const contents: InvalidActorArnException = { - name: "InvalidActorArnException", - $fault: "client", + const exception = new InvalidActorArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalRuleContentExceptionResponse = async ( @@ -14576,13 +8640,11 @@ const deserializeAws_json1_1InvalidApprovalRuleContentExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalRuleContentException(body, context); - const contents: InvalidApprovalRuleContentException = { - name: "InvalidApprovalRuleContentException", - $fault: "client", + const exception = new InvalidApprovalRuleContentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse = async ( @@ -14591,13 +8653,11 @@ const deserializeAws_json1_1InvalidApprovalRuleNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalRuleNameException(body, context); - const contents: InvalidApprovalRuleNameException = { - name: "InvalidApprovalRuleNameException", - $fault: "client", + const exception = new InvalidApprovalRuleNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalRuleTemplateContentExceptionResponse = async ( @@ -14606,13 +8666,11 @@ const deserializeAws_json1_1InvalidApprovalRuleTemplateContentExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalRuleTemplateContentException(body, context); - const contents: InvalidApprovalRuleTemplateContentException = { - name: "InvalidApprovalRuleTemplateContentException", - $fault: "client", + const exception = new InvalidApprovalRuleTemplateContentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionExceptionResponse = async ( @@ -14621,13 +8679,11 @@ const deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionExceptionRespo ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalRuleTemplateDescriptionException(body, context); - const contents: InvalidApprovalRuleTemplateDescriptionException = { - name: "InvalidApprovalRuleTemplateDescriptionException", - $fault: "client", + const exception = new InvalidApprovalRuleTemplateDescriptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse = async ( @@ -14636,13 +8692,11 @@ const deserializeAws_json1_1InvalidApprovalRuleTemplateNameExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalRuleTemplateNameException(body, context); - const contents: InvalidApprovalRuleTemplateNameException = { - name: "InvalidApprovalRuleTemplateNameException", - $fault: "client", + const exception = new InvalidApprovalRuleTemplateNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalStateExceptionResponse = async ( @@ -14651,13 +8705,11 @@ const deserializeAws_json1_1InvalidApprovalStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalStateException(body, context); - const contents: InvalidApprovalStateException = { - name: "InvalidApprovalStateException", - $fault: "client", + const exception = new InvalidApprovalStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAuthorArnExceptionResponse = async ( @@ -14666,13 +8718,11 @@ const deserializeAws_json1_1InvalidAuthorArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAuthorArnException(body, context); - const contents: InvalidAuthorArnException = { - name: "InvalidAuthorArnException", - $fault: "client", + const exception = new InvalidAuthorArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidBlobIdExceptionResponse = async ( @@ -14681,13 +8731,11 @@ const deserializeAws_json1_1InvalidBlobIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidBlobIdException(body, context); - const contents: InvalidBlobIdException = { - name: "InvalidBlobIdException", - $fault: "client", + const exception = new InvalidBlobIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidBranchNameExceptionResponse = async ( @@ -14696,13 +8744,11 @@ const deserializeAws_json1_1InvalidBranchNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidBranchNameException(body, context); - const contents: InvalidBranchNameException = { - name: "InvalidBranchNameException", - $fault: "client", + const exception = new InvalidBranchNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse = async ( @@ -14711,13 +8757,11 @@ const deserializeAws_json1_1InvalidClientRequestTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidClientRequestTokenException(body, context); - const contents: InvalidClientRequestTokenException = { - name: "InvalidClientRequestTokenException", - $fault: "client", + const exception = new InvalidClientRequestTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCommentIdExceptionResponse = async ( @@ -14726,13 +8770,11 @@ const deserializeAws_json1_1InvalidCommentIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCommentIdException(body, context); - const contents: InvalidCommentIdException = { - name: "InvalidCommentIdException", - $fault: "client", + const exception = new InvalidCommentIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCommitExceptionResponse = async ( @@ -14741,13 +8783,11 @@ const deserializeAws_json1_1InvalidCommitExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCommitException(body, context); - const contents: InvalidCommitException = { - name: "InvalidCommitException", - $fault: "client", + const exception = new InvalidCommitException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCommitIdExceptionResponse = async ( @@ -14756,13 +8796,11 @@ const deserializeAws_json1_1InvalidCommitIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCommitIdException(body, context); - const contents: InvalidCommitIdException = { - name: "InvalidCommitIdException", - $fault: "client", + const exception = new InvalidCommitIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse = async ( @@ -14771,13 +8809,11 @@ const deserializeAws_json1_1InvalidConflictDetailLevelExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidConflictDetailLevelException(body, context); - const contents: InvalidConflictDetailLevelException = { - name: "InvalidConflictDetailLevelException", - $fault: "client", + const exception = new InvalidConflictDetailLevelException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidConflictResolutionExceptionResponse = async ( @@ -14786,13 +8822,11 @@ const deserializeAws_json1_1InvalidConflictResolutionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidConflictResolutionException(body, context); - const contents: InvalidConflictResolutionException = { - name: "InvalidConflictResolutionException", - $fault: "client", + const exception = new InvalidConflictResolutionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse = async ( @@ -14801,13 +8835,11 @@ const deserializeAws_json1_1InvalidConflictResolutionStrategyExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidConflictResolutionStrategyException(body, context); - const contents: InvalidConflictResolutionStrategyException = { - name: "InvalidConflictResolutionStrategyException", - $fault: "client", + const exception = new InvalidConflictResolutionStrategyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidContinuationTokenExceptionResponse = async ( @@ -14816,13 +8848,11 @@ const deserializeAws_json1_1InvalidContinuationTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidContinuationTokenException(body, context); - const contents: InvalidContinuationTokenException = { - name: "InvalidContinuationTokenException", - $fault: "client", + const exception = new InvalidContinuationTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeletionParameterExceptionResponse = async ( @@ -14831,13 +8861,11 @@ const deserializeAws_json1_1InvalidDeletionParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeletionParameterException(body, context); - const contents: InvalidDeletionParameterException = { - name: "InvalidDeletionParameterException", - $fault: "client", + const exception = new InvalidDeletionParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDescriptionExceptionResponse = async ( @@ -14846,13 +8874,11 @@ const deserializeAws_json1_1InvalidDescriptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDescriptionException(body, context); - const contents: InvalidDescriptionException = { - name: "InvalidDescriptionException", - $fault: "client", + const exception = new InvalidDescriptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDestinationCommitSpecifierExceptionResponse = async ( @@ -14861,13 +8887,11 @@ const deserializeAws_json1_1InvalidDestinationCommitSpecifierExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDestinationCommitSpecifierException(body, context); - const contents: InvalidDestinationCommitSpecifierException = { - name: "InvalidDestinationCommitSpecifierException", - $fault: "client", + const exception = new InvalidDestinationCommitSpecifierException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEmailExceptionResponse = async ( @@ -14876,13 +8900,11 @@ const deserializeAws_json1_1InvalidEmailExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEmailException(body, context); - const contents: InvalidEmailException = { - name: "InvalidEmailException", - $fault: "client", + const exception = new InvalidEmailException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFileLocationExceptionResponse = async ( @@ -14891,13 +8913,11 @@ const deserializeAws_json1_1InvalidFileLocationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFileLocationException(body, context); - const contents: InvalidFileLocationException = { - name: "InvalidFileLocationException", - $fault: "client", + const exception = new InvalidFileLocationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFileModeExceptionResponse = async ( @@ -14906,13 +8926,11 @@ const deserializeAws_json1_1InvalidFileModeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFileModeException(body, context); - const contents: InvalidFileModeException = { - name: "InvalidFileModeException", - $fault: "client", + const exception = new InvalidFileModeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilePositionExceptionResponse = async ( @@ -14921,13 +8939,11 @@ const deserializeAws_json1_1InvalidFilePositionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilePositionException(body, context); - const contents: InvalidFilePositionException = { - name: "InvalidFilePositionException", - $fault: "client", + const exception = new InvalidFilePositionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMaxConflictFilesExceptionResponse = async ( @@ -14936,13 +8952,11 @@ const deserializeAws_json1_1InvalidMaxConflictFilesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMaxConflictFilesException(body, context); - const contents: InvalidMaxConflictFilesException = { - name: "InvalidMaxConflictFilesException", - $fault: "client", + const exception = new InvalidMaxConflictFilesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMaxMergeHunksExceptionResponse = async ( @@ -14951,13 +8965,11 @@ const deserializeAws_json1_1InvalidMaxMergeHunksExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMaxMergeHunksException(body, context); - const contents: InvalidMaxMergeHunksException = { - name: "InvalidMaxMergeHunksException", - $fault: "client", + const exception = new InvalidMaxMergeHunksException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMaxResultsExceptionResponse = async ( @@ -14966,13 +8978,11 @@ const deserializeAws_json1_1InvalidMaxResultsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMaxResultsException(body, context); - const contents: InvalidMaxResultsException = { - name: "InvalidMaxResultsException", - $fault: "client", + const exception = new InvalidMaxResultsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMergeOptionExceptionResponse = async ( @@ -14981,13 +8991,11 @@ const deserializeAws_json1_1InvalidMergeOptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMergeOptionException(body, context); - const contents: InvalidMergeOptionException = { - name: "InvalidMergeOptionException", - $fault: "client", + const exception = new InvalidMergeOptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOrderExceptionResponse = async ( @@ -14996,13 +9004,11 @@ const deserializeAws_json1_1InvalidOrderExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOrderException(body, context); - const contents: InvalidOrderException = { - name: "InvalidOrderException", - $fault: "client", + const exception = new InvalidOrderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOverrideStatusExceptionResponse = async ( @@ -15011,13 +9017,11 @@ const deserializeAws_json1_1InvalidOverrideStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOverrideStatusException(body, context); - const contents: InvalidOverrideStatusException = { - name: "InvalidOverrideStatusException", - $fault: "client", + const exception = new InvalidOverrideStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParentCommitIdExceptionResponse = async ( @@ -15026,13 +9030,11 @@ const deserializeAws_json1_1InvalidParentCommitIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParentCommitIdException(body, context); - const contents: InvalidParentCommitIdException = { - name: "InvalidParentCommitIdException", - $fault: "client", + const exception = new InvalidParentCommitIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPathExceptionResponse = async ( @@ -15041,13 +9043,11 @@ const deserializeAws_json1_1InvalidPathExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPathException(body, context); - const contents: InvalidPathException = { - name: "InvalidPathException", - $fault: "client", + const exception = new InvalidPathException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPullRequestEventTypeExceptionResponse = async ( @@ -15056,13 +9056,11 @@ const deserializeAws_json1_1InvalidPullRequestEventTypeExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPullRequestEventTypeException(body, context); - const contents: InvalidPullRequestEventTypeException = { - name: "InvalidPullRequestEventTypeException", - $fault: "client", + const exception = new InvalidPullRequestEventTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPullRequestIdExceptionResponse = async ( @@ -15071,13 +9069,11 @@ const deserializeAws_json1_1InvalidPullRequestIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPullRequestIdException(body, context); - const contents: InvalidPullRequestIdException = { - name: "InvalidPullRequestIdException", - $fault: "client", + const exception = new InvalidPullRequestIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPullRequestStatusExceptionResponse = async ( @@ -15086,13 +9082,11 @@ const deserializeAws_json1_1InvalidPullRequestStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPullRequestStatusException(body, context); - const contents: InvalidPullRequestStatusException = { - name: "InvalidPullRequestStatusException", - $fault: "client", + const exception = new InvalidPullRequestStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPullRequestStatusUpdateExceptionResponse = async ( @@ -15101,13 +9095,11 @@ const deserializeAws_json1_1InvalidPullRequestStatusUpdateExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPullRequestStatusUpdateException(body, context); - const contents: InvalidPullRequestStatusUpdateException = { - name: "InvalidPullRequestStatusUpdateException", - $fault: "client", + const exception = new InvalidPullRequestStatusUpdateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidReactionUserArnExceptionResponse = async ( @@ -15116,13 +9108,11 @@ const deserializeAws_json1_1InvalidReactionUserArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidReactionUserArnException(body, context); - const contents: InvalidReactionUserArnException = { - name: "InvalidReactionUserArnException", - $fault: "client", + const exception = new InvalidReactionUserArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidReactionValueExceptionResponse = async ( @@ -15131,13 +9121,11 @@ const deserializeAws_json1_1InvalidReactionValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidReactionValueException(body, context); - const contents: InvalidReactionValueException = { - name: "InvalidReactionValueException", - $fault: "client", + const exception = new InvalidReactionValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidReferenceNameExceptionResponse = async ( @@ -15146,13 +9134,11 @@ const deserializeAws_json1_1InvalidReferenceNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidReferenceNameException(body, context); - const contents: InvalidReferenceNameException = { - name: "InvalidReferenceNameException", - $fault: "client", + const exception = new InvalidReferenceNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRelativeFileVersionEnumExceptionResponse = async ( @@ -15161,13 +9147,11 @@ const deserializeAws_json1_1InvalidRelativeFileVersionEnumExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRelativeFileVersionEnumException(body, context); - const contents: InvalidRelativeFileVersionEnumException = { - name: "InvalidRelativeFileVersionEnumException", - $fault: "client", + const exception = new InvalidRelativeFileVersionEnumException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidReplacementContentExceptionResponse = async ( @@ -15176,13 +9160,11 @@ const deserializeAws_json1_1InvalidReplacementContentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidReplacementContentException(body, context); - const contents: InvalidReplacementContentException = { - name: "InvalidReplacementContentException", - $fault: "client", + const exception = new InvalidReplacementContentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidReplacementTypeExceptionResponse = async ( @@ -15191,13 +9173,11 @@ const deserializeAws_json1_1InvalidReplacementTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidReplacementTypeException(body, context); - const contents: InvalidReplacementTypeException = { - name: "InvalidReplacementTypeException", - $fault: "client", + const exception = new InvalidReplacementTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryDescriptionExceptionResponse = async ( @@ -15206,13 +9186,11 @@ const deserializeAws_json1_1InvalidRepositoryDescriptionExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryDescriptionException(body, context); - const contents: InvalidRepositoryDescriptionException = { - name: "InvalidRepositoryDescriptionException", - $fault: "client", + const exception = new InvalidRepositoryDescriptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryNameExceptionResponse = async ( @@ -15221,13 +9199,11 @@ const deserializeAws_json1_1InvalidRepositoryNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryNameException(body, context); - const contents: InvalidRepositoryNameException = { - name: "InvalidRepositoryNameException", - $fault: "client", + const exception = new InvalidRepositoryNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryTriggerBranchNameExceptionResponse = async ( @@ -15236,13 +9212,11 @@ const deserializeAws_json1_1InvalidRepositoryTriggerBranchNameExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryTriggerBranchNameException(body, context); - const contents: InvalidRepositoryTriggerBranchNameException = { - name: "InvalidRepositoryTriggerBranchNameException", - $fault: "client", + const exception = new InvalidRepositoryTriggerBranchNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryTriggerCustomDataExceptionResponse = async ( @@ -15251,13 +9225,11 @@ const deserializeAws_json1_1InvalidRepositoryTriggerCustomDataExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryTriggerCustomDataException(body, context); - const contents: InvalidRepositoryTriggerCustomDataException = { - name: "InvalidRepositoryTriggerCustomDataException", - $fault: "client", + const exception = new InvalidRepositoryTriggerCustomDataException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnExceptionResponse = async ( @@ -15266,13 +9238,11 @@ const deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnExceptionRespo ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryTriggerDestinationArnException(body, context); - const contents: InvalidRepositoryTriggerDestinationArnException = { - name: "InvalidRepositoryTriggerDestinationArnException", - $fault: "client", + const exception = new InvalidRepositoryTriggerDestinationArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryTriggerEventsExceptionResponse = async ( @@ -15281,13 +9251,11 @@ const deserializeAws_json1_1InvalidRepositoryTriggerEventsExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryTriggerEventsException(body, context); - const contents: InvalidRepositoryTriggerEventsException = { - name: "InvalidRepositoryTriggerEventsException", - $fault: "client", + const exception = new InvalidRepositoryTriggerEventsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryTriggerNameExceptionResponse = async ( @@ -15296,13 +9264,11 @@ const deserializeAws_json1_1InvalidRepositoryTriggerNameExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryTriggerNameException(body, context); - const contents: InvalidRepositoryTriggerNameException = { - name: "InvalidRepositoryTriggerNameException", - $fault: "client", + const exception = new InvalidRepositoryTriggerNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRepositoryTriggerRegionExceptionResponse = async ( @@ -15311,13 +9277,11 @@ const deserializeAws_json1_1InvalidRepositoryTriggerRegionExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRepositoryTriggerRegionException(body, context); - const contents: InvalidRepositoryTriggerRegionException = { - name: "InvalidRepositoryTriggerRegionException", - $fault: "client", + const exception = new InvalidRepositoryTriggerRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceArnExceptionResponse = async ( @@ -15326,13 +9290,11 @@ const deserializeAws_json1_1InvalidResourceArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceArnException(body, context); - const contents: InvalidResourceArnException = { - name: "InvalidResourceArnException", - $fault: "client", + const exception = new InvalidResourceArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRevisionIdExceptionResponse = async ( @@ -15341,13 +9303,11 @@ const deserializeAws_json1_1InvalidRevisionIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRevisionIdException(body, context); - const contents: InvalidRevisionIdException = { - name: "InvalidRevisionIdException", - $fault: "client", + const exception = new InvalidRevisionIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRuleContentSha256ExceptionResponse = async ( @@ -15356,13 +9316,11 @@ const deserializeAws_json1_1InvalidRuleContentSha256ExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRuleContentSha256Exception(body, context); - const contents: InvalidRuleContentSha256Exception = { - name: "InvalidRuleContentSha256Exception", - $fault: "client", + const exception = new InvalidRuleContentSha256Exception({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSortByExceptionResponse = async ( @@ -15371,13 +9329,11 @@ const deserializeAws_json1_1InvalidSortByExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSortByException(body, context); - const contents: InvalidSortByException = { - name: "InvalidSortByException", - $fault: "client", + const exception = new InvalidSortByException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSourceCommitSpecifierExceptionResponse = async ( @@ -15386,13 +9342,11 @@ const deserializeAws_json1_1InvalidSourceCommitSpecifierExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSourceCommitSpecifierException(body, context); - const contents: InvalidSourceCommitSpecifierException = { - name: "InvalidSourceCommitSpecifierException", - $fault: "client", + const exception = new InvalidSourceCommitSpecifierException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse = async ( @@ -15401,13 +9355,11 @@ const deserializeAws_json1_1InvalidSystemTagUsageExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSystemTagUsageException(body, context); - const contents: InvalidSystemTagUsageException = { - name: "InvalidSystemTagUsageException", - $fault: "client", + const exception = new InvalidSystemTagUsageException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagKeysListExceptionResponse = async ( @@ -15416,13 +9368,11 @@ const deserializeAws_json1_1InvalidTagKeysListExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagKeysListException(body, context); - const contents: InvalidTagKeysListException = { - name: "InvalidTagKeysListException", - $fault: "client", + const exception = new InvalidTagKeysListException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagsMapExceptionResponse = async ( @@ -15431,13 +9381,11 @@ const deserializeAws_json1_1InvalidTagsMapExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagsMapException(body, context); - const contents: InvalidTagsMapException = { - name: "InvalidTagsMapException", - $fault: "client", + const exception = new InvalidTagsMapException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetBranchExceptionResponse = async ( @@ -15446,13 +9394,11 @@ const deserializeAws_json1_1InvalidTargetBranchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetBranchException(body, context); - const contents: InvalidTargetBranchException = { - name: "InvalidTargetBranchException", - $fault: "client", + const exception = new InvalidTargetBranchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetExceptionResponse = async ( @@ -15461,13 +9407,11 @@ const deserializeAws_json1_1InvalidTargetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetException(body, context); - const contents: InvalidTargetException = { - name: "InvalidTargetException", - $fault: "client", + const exception = new InvalidTargetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetsExceptionResponse = async ( @@ -15476,13 +9420,11 @@ const deserializeAws_json1_1InvalidTargetsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetsException(body, context); - const contents: InvalidTargetsException = { - name: "InvalidTargetsException", - $fault: "client", + const exception = new InvalidTargetsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTitleExceptionResponse = async ( @@ -15491,13 +9433,11 @@ const deserializeAws_json1_1InvalidTitleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTitleException(body, context); - const contents: InvalidTitleException = { - name: "InvalidTitleException", - $fault: "client", + const exception = new InvalidTitleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ManualMergeRequiredExceptionResponse = async ( @@ -15506,13 +9446,11 @@ const deserializeAws_json1_1ManualMergeRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ManualMergeRequiredException(body, context); - const contents: ManualMergeRequiredException = { - name: "ManualMergeRequiredException", - $fault: "client", + const exception = new ManualMergeRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumBranchesExceededExceptionResponse = async ( @@ -15521,13 +9459,11 @@ const deserializeAws_json1_1MaximumBranchesExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumBranchesExceededException(body, context); - const contents: MaximumBranchesExceededException = { - name: "MaximumBranchesExceededException", - $fault: "client", + const exception = new MaximumBranchesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionResponse = async ( @@ -15536,13 +9472,11 @@ const deserializeAws_json1_1MaximumConflictResolutionEntriesExceededExceptionRes ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumConflictResolutionEntriesExceededException(body, context); - const contents: MaximumConflictResolutionEntriesExceededException = { - name: "MaximumConflictResolutionEntriesExceededException", - $fault: "client", + const exception = new MaximumConflictResolutionEntriesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse = async ( @@ -15551,13 +9485,11 @@ const deserializeAws_json1_1MaximumFileContentToLoadExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumFileContentToLoadExceededException(body, context); - const contents: MaximumFileContentToLoadExceededException = { - name: "MaximumFileContentToLoadExceededException", - $fault: "client", + const exception = new MaximumFileContentToLoadExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumFileEntriesExceededExceptionResponse = async ( @@ -15566,13 +9498,11 @@ const deserializeAws_json1_1MaximumFileEntriesExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumFileEntriesExceededException(body, context); - const contents: MaximumFileEntriesExceededException = { - name: "MaximumFileEntriesExceededException", - $fault: "client", + const exception = new MaximumFileEntriesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse = async ( @@ -15581,13 +9511,11 @@ const deserializeAws_json1_1MaximumItemsToCompareExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumItemsToCompareExceededException(body, context); - const contents: MaximumItemsToCompareExceededException = { - name: "MaximumItemsToCompareExceededException", - $fault: "client", + const exception = new MaximumItemsToCompareExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumNumberOfApprovalsExceededExceptionResponse = async ( @@ -15596,13 +9524,11 @@ const deserializeAws_json1_1MaximumNumberOfApprovalsExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumNumberOfApprovalsExceededException(body, context); - const contents: MaximumNumberOfApprovalsExceededException = { - name: "MaximumNumberOfApprovalsExceededException", - $fault: "client", + const exception = new MaximumNumberOfApprovalsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumOpenPullRequestsExceededExceptionResponse = async ( @@ -15611,13 +9537,11 @@ const deserializeAws_json1_1MaximumOpenPullRequestsExceededExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumOpenPullRequestsExceededException(body, context); - const contents: MaximumOpenPullRequestsExceededException = { - name: "MaximumOpenPullRequestsExceededException", - $fault: "client", + const exception = new MaximumOpenPullRequestsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse = async ( @@ -15626,13 +9550,11 @@ const deserializeAws_json1_1MaximumRepositoryNamesExceededExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumRepositoryNamesExceededException(body, context); - const contents: MaximumRepositoryNamesExceededException = { - name: "MaximumRepositoryNamesExceededException", - $fault: "client", + const exception = new MaximumRepositoryNamesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumRepositoryTriggersExceededExceptionResponse = async ( @@ -15641,13 +9563,11 @@ const deserializeAws_json1_1MaximumRepositoryTriggersExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumRepositoryTriggersExceededException(body, context); - const contents: MaximumRepositoryTriggersExceededException = { - name: "MaximumRepositoryTriggersExceededException", - $fault: "client", + const exception = new MaximumRepositoryTriggersExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaximumRuleTemplatesAssociatedWithRepositoryExceptionResponse = async ( @@ -15656,13 +9576,11 @@ const deserializeAws_json1_1MaximumRuleTemplatesAssociatedWithRepositoryExceptio ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaximumRuleTemplatesAssociatedWithRepositoryException(body, context); - const contents: MaximumRuleTemplatesAssociatedWithRepositoryException = { - name: "MaximumRuleTemplatesAssociatedWithRepositoryException", - $fault: "client", + const exception = new MaximumRuleTemplatesAssociatedWithRepositoryException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MergeOptionRequiredExceptionResponse = async ( @@ -15671,13 +9589,11 @@ const deserializeAws_json1_1MergeOptionRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MergeOptionRequiredException(body, context); - const contents: MergeOptionRequiredException = { - name: "MergeOptionRequiredException", - $fault: "client", + const exception = new MergeOptionRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse = async ( @@ -15686,13 +9602,11 @@ const deserializeAws_json1_1MultipleConflictResolutionEntriesExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MultipleConflictResolutionEntriesException(body, context); - const contents: MultipleConflictResolutionEntriesException = { - name: "MultipleConflictResolutionEntriesException", - $fault: "client", + const exception = new MultipleConflictResolutionEntriesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MultipleRepositoriesInPullRequestExceptionResponse = async ( @@ -15701,13 +9615,11 @@ const deserializeAws_json1_1MultipleRepositoriesInPullRequestExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MultipleRepositoriesInPullRequestException(body, context); - const contents: MultipleRepositoriesInPullRequestException = { - name: "MultipleRepositoriesInPullRequestException", - $fault: "client", + const exception = new MultipleRepositoriesInPullRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NameLengthExceededExceptionResponse = async ( @@ -15716,13 +9628,11 @@ const deserializeAws_json1_1NameLengthExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NameLengthExceededException(body, context); - const contents: NameLengthExceededException = { - name: "NameLengthExceededException", - $fault: "client", + const exception = new NameLengthExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoChangeExceptionResponse = async ( @@ -15731,13 +9641,11 @@ const deserializeAws_json1_1NoChangeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoChangeException(body, context); - const contents: NoChangeException = { - name: "NoChangeException", - $fault: "client", + const exception = new NoChangeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NumberOfRulesExceededExceptionResponse = async ( @@ -15746,13 +9654,11 @@ const deserializeAws_json1_1NumberOfRulesExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NumberOfRulesExceededException(body, context); - const contents: NumberOfRulesExceededException = { - name: "NumberOfRulesExceededException", - $fault: "client", + const exception = new NumberOfRulesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NumberOfRuleTemplatesExceededExceptionResponse = async ( @@ -15761,13 +9667,11 @@ const deserializeAws_json1_1NumberOfRuleTemplatesExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NumberOfRuleTemplatesExceededException(body, context); - const contents: NumberOfRuleTemplatesExceededException = { - name: "NumberOfRuleTemplatesExceededException", - $fault: "client", + const exception = new NumberOfRuleTemplatesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OverrideAlreadySetExceptionResponse = async ( @@ -15776,13 +9680,11 @@ const deserializeAws_json1_1OverrideAlreadySetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OverrideAlreadySetException(body, context); - const contents: OverrideAlreadySetException = { - name: "OverrideAlreadySetException", - $fault: "client", + const exception = new OverrideAlreadySetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OverrideStatusRequiredExceptionResponse = async ( @@ -15791,13 +9693,11 @@ const deserializeAws_json1_1OverrideStatusRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OverrideStatusRequiredException(body, context); - const contents: OverrideStatusRequiredException = { - name: "OverrideStatusRequiredException", - $fault: "client", + const exception = new OverrideStatusRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse = async ( @@ -15806,13 +9706,11 @@ const deserializeAws_json1_1ParentCommitDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParentCommitDoesNotExistException(body, context); - const contents: ParentCommitDoesNotExistException = { - name: "ParentCommitDoesNotExistException", - $fault: "client", + const exception = new ParentCommitDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse = async ( @@ -15821,13 +9719,11 @@ const deserializeAws_json1_1ParentCommitIdOutdatedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParentCommitIdOutdatedException(body, context); - const contents: ParentCommitIdOutdatedException = { - name: "ParentCommitIdOutdatedException", - $fault: "client", + const exception = new ParentCommitIdOutdatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse = async ( @@ -15836,13 +9732,11 @@ const deserializeAws_json1_1ParentCommitIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParentCommitIdRequiredException(body, context); - const contents: ParentCommitIdRequiredException = { - name: "ParentCommitIdRequiredException", - $fault: "client", + const exception = new ParentCommitIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PathDoesNotExistExceptionResponse = async ( @@ -15851,13 +9745,11 @@ const deserializeAws_json1_1PathDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PathDoesNotExistException(body, context); - const contents: PathDoesNotExistException = { - name: "PathDoesNotExistException", - $fault: "client", + const exception = new PathDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PathRequiredExceptionResponse = async ( @@ -15866,13 +9758,11 @@ const deserializeAws_json1_1PathRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PathRequiredException(body, context); - const contents: PathRequiredException = { - name: "PathRequiredException", - $fault: "client", + const exception = new PathRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse = async ( @@ -15881,13 +9771,11 @@ const deserializeAws_json1_1PullRequestAlreadyClosedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullRequestAlreadyClosedException(body, context); - const contents: PullRequestAlreadyClosedException = { - name: "PullRequestAlreadyClosedException", - $fault: "client", + const exception = new PullRequestAlreadyClosedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionResponse = async ( @@ -15896,13 +9784,11 @@ const deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullRequestApprovalRulesNotSatisfiedException(body, context); - const contents: PullRequestApprovalRulesNotSatisfiedException = { - name: "PullRequestApprovalRulesNotSatisfiedException", - $fault: "client", + const exception = new PullRequestApprovalRulesNotSatisfiedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullRequestCannotBeApprovedByAuthorExceptionResponse = async ( @@ -15911,13 +9797,11 @@ const deserializeAws_json1_1PullRequestCannotBeApprovedByAuthorExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullRequestCannotBeApprovedByAuthorException(body, context); - const contents: PullRequestCannotBeApprovedByAuthorException = { - name: "PullRequestCannotBeApprovedByAuthorException", - $fault: "client", + const exception = new PullRequestCannotBeApprovedByAuthorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse = async ( @@ -15926,13 +9810,11 @@ const deserializeAws_json1_1PullRequestDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullRequestDoesNotExistException(body, context); - const contents: PullRequestDoesNotExistException = { - name: "PullRequestDoesNotExistException", - $fault: "client", + const exception = new PullRequestDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullRequestIdRequiredExceptionResponse = async ( @@ -15941,13 +9823,11 @@ const deserializeAws_json1_1PullRequestIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullRequestIdRequiredException(body, context); - const contents: PullRequestIdRequiredException = { - name: "PullRequestIdRequiredException", - $fault: "client", + const exception = new PullRequestIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullRequestStatusRequiredExceptionResponse = async ( @@ -15956,13 +9836,11 @@ const deserializeAws_json1_1PullRequestStatusRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullRequestStatusRequiredException(body, context); - const contents: PullRequestStatusRequiredException = { - name: "PullRequestStatusRequiredException", - $fault: "client", + const exception = new PullRequestStatusRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PutFileEntryConflictExceptionResponse = async ( @@ -15971,13 +9849,11 @@ const deserializeAws_json1_1PutFileEntryConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PutFileEntryConflictException(body, context); - const contents: PutFileEntryConflictException = { - name: "PutFileEntryConflictException", - $fault: "client", + const exception = new PutFileEntryConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReactionLimitExceededExceptionResponse = async ( @@ -15986,13 +9862,11 @@ const deserializeAws_json1_1ReactionLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReactionLimitExceededException(body, context); - const contents: ReactionLimitExceededException = { - name: "ReactionLimitExceededException", - $fault: "client", + const exception = new ReactionLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReactionValueRequiredExceptionResponse = async ( @@ -16001,13 +9875,11 @@ const deserializeAws_json1_1ReactionValueRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReactionValueRequiredException(body, context); - const contents: ReactionValueRequiredException = { - name: "ReactionValueRequiredException", - $fault: "client", + const exception = new ReactionValueRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReferenceDoesNotExistExceptionResponse = async ( @@ -16016,13 +9888,11 @@ const deserializeAws_json1_1ReferenceDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReferenceDoesNotExistException(body, context); - const contents: ReferenceDoesNotExistException = { - name: "ReferenceDoesNotExistException", - $fault: "client", + const exception = new ReferenceDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReferenceNameRequiredExceptionResponse = async ( @@ -16031,13 +9901,11 @@ const deserializeAws_json1_1ReferenceNameRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReferenceNameRequiredException(body, context); - const contents: ReferenceNameRequiredException = { - name: "ReferenceNameRequiredException", - $fault: "client", + const exception = new ReferenceNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReferenceTypeNotSupportedExceptionResponse = async ( @@ -16046,13 +9914,11 @@ const deserializeAws_json1_1ReferenceTypeNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReferenceTypeNotSupportedException(body, context); - const contents: ReferenceTypeNotSupportedException = { - name: "ReferenceTypeNotSupportedException", - $fault: "client", + const exception = new ReferenceTypeNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReplacementContentRequiredExceptionResponse = async ( @@ -16061,13 +9927,11 @@ const deserializeAws_json1_1ReplacementContentRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReplacementContentRequiredException(body, context); - const contents: ReplacementContentRequiredException = { - name: "ReplacementContentRequiredException", - $fault: "client", + const exception = new ReplacementContentRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse = async ( @@ -16076,13 +9940,11 @@ const deserializeAws_json1_1ReplacementTypeRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReplacementTypeRequiredException(body, context); - const contents: ReplacementTypeRequiredException = { - name: "ReplacementTypeRequiredException", - $fault: "client", + const exception = new ReplacementTypeRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse = async ( @@ -16091,13 +9953,11 @@ const deserializeAws_json1_1RepositoryDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryDoesNotExistException(body, context); - const contents: RepositoryDoesNotExistException = { - name: "RepositoryDoesNotExistException", - $fault: "client", + const exception = new RepositoryDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryLimitExceededExceptionResponse = async ( @@ -16106,13 +9966,11 @@ const deserializeAws_json1_1RepositoryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryLimitExceededException(body, context); - const contents: RepositoryLimitExceededException = { - name: "RepositoryLimitExceededException", - $fault: "client", + const exception = new RepositoryLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNameExistsExceptionResponse = async ( @@ -16121,13 +9979,11 @@ const deserializeAws_json1_1RepositoryNameExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNameExistsException(body, context); - const contents: RepositoryNameExistsException = { - name: "RepositoryNameExistsException", - $fault: "client", + const exception = new RepositoryNameExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNameRequiredExceptionResponse = async ( @@ -16136,13 +9992,11 @@ const deserializeAws_json1_1RepositoryNameRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNameRequiredException(body, context); - const contents: RepositoryNameRequiredException = { - name: "RepositoryNameRequiredException", - $fault: "client", + const exception = new RepositoryNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse = async ( @@ -16151,13 +10005,11 @@ const deserializeAws_json1_1RepositoryNamesRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNamesRequiredException(body, context); - const contents: RepositoryNamesRequiredException = { - name: "RepositoryNamesRequiredException", - $fault: "client", + const exception = new RepositoryNamesRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionResponse = async ( @@ -16166,13 +10018,11 @@ const deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestExceptionRespo ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNotAssociatedWithPullRequestException(body, context); - const contents: RepositoryNotAssociatedWithPullRequestException = { - name: "RepositoryNotAssociatedWithPullRequestException", - $fault: "client", + const exception = new RepositoryNotAssociatedWithPullRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredExceptionResponse = async ( @@ -16181,13 +10031,11 @@ const deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredExceptionResp ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryTriggerBranchNameListRequiredException(body, context); - const contents: RepositoryTriggerBranchNameListRequiredException = { - name: "RepositoryTriggerBranchNameListRequiredException", - $fault: "client", + const exception = new RepositoryTriggerBranchNameListRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredExceptionResponse = async ( @@ -16196,13 +10044,11 @@ const deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredExceptionResp ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryTriggerDestinationArnRequiredException(body, context); - const contents: RepositoryTriggerDestinationArnRequiredException = { - name: "RepositoryTriggerDestinationArnRequiredException", - $fault: "client", + const exception = new RepositoryTriggerDestinationArnRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryTriggerEventsListRequiredExceptionResponse = async ( @@ -16211,13 +10057,11 @@ const deserializeAws_json1_1RepositoryTriggerEventsListRequiredExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryTriggerEventsListRequiredException(body, context); - const contents: RepositoryTriggerEventsListRequiredException = { - name: "RepositoryTriggerEventsListRequiredException", - $fault: "client", + const exception = new RepositoryTriggerEventsListRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryTriggerNameRequiredExceptionResponse = async ( @@ -16226,13 +10070,11 @@ const deserializeAws_json1_1RepositoryTriggerNameRequiredExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryTriggerNameRequiredException(body, context); - const contents: RepositoryTriggerNameRequiredException = { - name: "RepositoryTriggerNameRequiredException", - $fault: "client", + const exception = new RepositoryTriggerNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryTriggersListRequiredExceptionResponse = async ( @@ -16241,13 +10083,11 @@ const deserializeAws_json1_1RepositoryTriggersListRequiredExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryTriggersListRequiredException(body, context); - const contents: RepositoryTriggersListRequiredException = { - name: "RepositoryTriggersListRequiredException", - $fault: "client", + const exception = new RepositoryTriggersListRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceArnRequiredExceptionResponse = async ( @@ -16256,13 +10096,11 @@ const deserializeAws_json1_1ResourceArnRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceArnRequiredException(body, context); - const contents: ResourceArnRequiredException = { - name: "ResourceArnRequiredException", - $fault: "client", + const exception = new ResourceArnRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RestrictedSourceFileExceptionResponse = async ( @@ -16271,13 +10109,11 @@ const deserializeAws_json1_1RestrictedSourceFileExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RestrictedSourceFileException(body, context); - const contents: RestrictedSourceFileException = { - name: "RestrictedSourceFileException", - $fault: "client", + const exception = new RestrictedSourceFileException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RevisionIdRequiredExceptionResponse = async ( @@ -16286,13 +10122,11 @@ const deserializeAws_json1_1RevisionIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RevisionIdRequiredException(body, context); - const contents: RevisionIdRequiredException = { - name: "RevisionIdRequiredException", - $fault: "client", + const exception = new RevisionIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RevisionNotCurrentExceptionResponse = async ( @@ -16301,13 +10135,11 @@ const deserializeAws_json1_1RevisionNotCurrentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RevisionNotCurrentException(body, context); - const contents: RevisionNotCurrentException = { - name: "RevisionNotCurrentException", - $fault: "client", + const exception = new RevisionNotCurrentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SameFileContentExceptionResponse = async ( @@ -16316,13 +10148,11 @@ const deserializeAws_json1_1SameFileContentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SameFileContentException(body, context); - const contents: SameFileContentException = { - name: "SameFileContentException", - $fault: "client", + const exception = new SameFileContentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SamePathRequestExceptionResponse = async ( @@ -16331,13 +10161,11 @@ const deserializeAws_json1_1SamePathRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SamePathRequestException(body, context); - const contents: SamePathRequestException = { - name: "SamePathRequestException", - $fault: "client", + const exception = new SamePathRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SourceAndDestinationAreSameExceptionResponse = async ( @@ -16346,13 +10174,11 @@ const deserializeAws_json1_1SourceAndDestinationAreSameExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SourceAndDestinationAreSameException(body, context); - const contents: SourceAndDestinationAreSameException = { - name: "SourceAndDestinationAreSameException", - $fault: "client", + const exception = new SourceAndDestinationAreSameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SourceFileOrContentRequiredExceptionResponse = async ( @@ -16361,13 +10187,11 @@ const deserializeAws_json1_1SourceFileOrContentRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SourceFileOrContentRequiredException(body, context); - const contents: SourceFileOrContentRequiredException = { - name: "SourceFileOrContentRequiredException", - $fault: "client", + const exception = new SourceFileOrContentRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagKeysListRequiredExceptionResponse = async ( @@ -16376,13 +10200,11 @@ const deserializeAws_json1_1TagKeysListRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagKeysListRequiredException(body, context); - const contents: TagKeysListRequiredException = { - name: "TagKeysListRequiredException", - $fault: "client", + const exception = new TagKeysListRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagPolicyExceptionResponse = async ( @@ -16391,13 +10213,11 @@ const deserializeAws_json1_1TagPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagPolicyException(body, context); - const contents: TagPolicyException = { - name: "TagPolicyException", - $fault: "client", + const exception = new TagPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagsMapRequiredExceptionResponse = async ( @@ -16406,13 +10226,11 @@ const deserializeAws_json1_1TagsMapRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagsMapRequiredException(body, context); - const contents: TagsMapRequiredException = { - name: "TagsMapRequiredException", - $fault: "client", + const exception = new TagsMapRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetRequiredExceptionResponse = async ( @@ -16421,13 +10239,11 @@ const deserializeAws_json1_1TargetRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetRequiredException(body, context); - const contents: TargetRequiredException = { - name: "TargetRequiredException", - $fault: "client", + const exception = new TargetRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetsRequiredExceptionResponse = async ( @@ -16436,13 +10252,11 @@ const deserializeAws_json1_1TargetsRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetsRequiredException(body, context); - const contents: TargetsRequiredException = { - name: "TargetsRequiredException", - $fault: "client", + const exception = new TargetsRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse = async ( @@ -16451,13 +10265,11 @@ const deserializeAws_json1_1TipOfSourceReferenceIsDifferentExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TipOfSourceReferenceIsDifferentException(body, context); - const contents: TipOfSourceReferenceIsDifferentException = { - name: "TipOfSourceReferenceIsDifferentException", - $fault: "client", + const exception = new TipOfSourceReferenceIsDifferentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TipsDivergenceExceededExceptionResponse = async ( @@ -16466,13 +10278,11 @@ const deserializeAws_json1_1TipsDivergenceExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TipsDivergenceExceededException(body, context); - const contents: TipsDivergenceExceededException = { - name: "TipsDivergenceExceededException", - $fault: "client", + const exception = new TipsDivergenceExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TitleRequiredExceptionResponse = async ( @@ -16481,13 +10291,11 @@ const deserializeAws_json1_1TitleRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TitleRequiredException(body, context); - const contents: TitleRequiredException = { - name: "TitleRequiredException", - $fault: "client", + const exception = new TitleRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -16496,13 +10304,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateApprovalRuleTemplateWithRepositoryInput = ( diff --git a/clients/client-codedeploy/src/index.ts b/clients/client-codedeploy/src/index.ts index df5014e4c5527..3d2bd41e91123 100644 --- a/clients/client-codedeploy/src/index.ts +++ b/clients/client-codedeploy/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { CodeDeployServiceException } from "./models/CodeDeployServiceException"; diff --git a/clients/client-codedeploy/src/models/CodeDeployServiceException.ts b/clients/client-codedeploy/src/models/CodeDeployServiceException.ts new file mode 100644 index 0000000000000..c47039e01242d --- /dev/null +++ b/clients/client-codedeploy/src/models/CodeDeployServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeDeploy service. + */ +export class CodeDeployServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeDeployServiceException.prototype); + } +} diff --git a/clients/client-codedeploy/src/models/models_0.ts b/clients/client-codedeploy/src/models/models_0.ts index 0d3fd428e9788..ccec282a65d60 100644 --- a/clients/client-codedeploy/src/models/models_0.ts +++ b/clients/client-codedeploy/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeDeployServiceException as __BaseException } from "./CodeDeployServiceException"; /** *

Information about a tag.

@@ -54,85 +57,134 @@ export namespace AddTagsToOnPremisesInstancesInput { *

The maximum number of allowed on-premises instances in a single call was * exceeded.

*/ -export interface InstanceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "InstanceLimitExceededException"; - $fault: "client"; +export class InstanceLimitExceededException extends __BaseException { + readonly name: "InstanceLimitExceededException" = "InstanceLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceLimitExceededException.prototype); + } } /** *

An on-premises instance name was not specified.

*/ -export interface InstanceNameRequiredException extends __SmithyException, $MetadataBearer { - name: "InstanceNameRequiredException"; - $fault: "client"; +export class InstanceNameRequiredException extends __BaseException { + readonly name: "InstanceNameRequiredException" = "InstanceNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceNameRequiredException.prototype); + } } /** *

The specified on-premises instance is not registered.

*/ -export interface InstanceNotRegisteredException extends __SmithyException, $MetadataBearer { - name: "InstanceNotRegisteredException"; - $fault: "client"; +export class InstanceNotRegisteredException extends __BaseException { + readonly name: "InstanceNotRegisteredException" = "InstanceNotRegisteredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceNotRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceNotRegisteredException.prototype); + } } /** *

The on-premises instance name was specified in an invalid format.

*/ -export interface InvalidInstanceNameException extends __SmithyException, $MetadataBearer { - name: "InvalidInstanceNameException"; - $fault: "client"; +export class InvalidInstanceNameException extends __BaseException { + readonly name: "InvalidInstanceNameException" = "InvalidInstanceNameException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInstanceNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInstanceNameException.prototype); + } } /** *

The tag was specified in an invalid format.

*/ -export interface InvalidTagException extends __SmithyException, $MetadataBearer { - name: "InvalidTagException"; - $fault: "client"; +export class InvalidTagException extends __BaseException { + readonly name: "InvalidTagException" = "InvalidTagException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagException.prototype); + } } /** *

The maximum allowed number of tags was exceeded.

*/ -export interface TagLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagLimitExceededException"; - $fault: "client"; +export class TagLimitExceededException extends __BaseException { + readonly name: "TagLimitExceededException" = "TagLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagLimitExceededException.prototype); + } } /** *

A tag was not specified.

*/ -export interface TagRequiredException extends __SmithyException, $MetadataBearer { - name: "TagRequiredException"; - $fault: "client"; +export class TagRequiredException extends __BaseException { + readonly name: "TagRequiredException" = "TagRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagRequiredException.prototype); + } } /** @@ -201,38 +253,59 @@ export namespace AlarmConfiguration { /** *

The maximum number of alarms for a deployment group (10) was exceeded.

*/ -export interface AlarmsLimitExceededException extends __SmithyException, $MetadataBearer { - name: "AlarmsLimitExceededException"; - $fault: "client"; +export class AlarmsLimitExceededException extends __BaseException { + readonly name: "AlarmsLimitExceededException" = "AlarmsLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlarmsLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlarmsLimitExceededException.prototype); + } } /** *

An application with the specified name with the IAM user or AWS account already * exists.

*/ -export interface ApplicationAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ApplicationAlreadyExistsException"; - $fault: "client"; +export class ApplicationAlreadyExistsException extends __BaseException { + readonly name: "ApplicationAlreadyExistsException" = "ApplicationAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApplicationAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApplicationAlreadyExistsException.prototype); + } } /** *

The application does not exist with the IAM user or AWS account.

*/ -export interface ApplicationDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ApplicationDoesNotExistException"; - $fault: "client"; +export class ApplicationDoesNotExistException extends __BaseException { + readonly name: "ApplicationDoesNotExistException" = "ApplicationDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApplicationDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApplicationDoesNotExistException.prototype); + } } export enum ComputePlatform { @@ -290,25 +363,39 @@ export namespace ApplicationInfo { /** *

More applications were attempted to be created than are allowed.

*/ -export interface ApplicationLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ApplicationLimitExceededException"; - $fault: "client"; +export class ApplicationLimitExceededException extends __BaseException { + readonly name: "ApplicationLimitExceededException" = "ApplicationLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApplicationLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApplicationLimitExceededException.prototype); + } } /** *

The minimum number of required application names was not specified.

*/ -export interface ApplicationNameRequiredException extends __SmithyException, $MetadataBearer { - name: "ApplicationNameRequiredException"; - $fault: "client"; +export class ApplicationNameRequiredException extends __BaseException { + readonly name: "ApplicationNameRequiredException" = "ApplicationNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApplicationNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApplicationNameRequiredException.prototype); + } } export enum ApplicationRevisionSortBy { @@ -356,13 +443,20 @@ export namespace AppSpecContent { *

The specified ARN is not supported. For example, it might be an ARN for a resource * that is not expected.

*/ -export interface ArnNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ArnNotSupportedException"; - $fault: "client"; +export class ArnNotSupportedException extends __BaseException { + readonly name: "ArnNotSupportedException" = "ArnNotSupportedException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ArnNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ArnNotSupportedException.prototype); + } } export enum AutoRollbackEvent { @@ -736,49 +830,77 @@ export namespace BatchGetApplicationRevisionsOutput { /** *

The maximum number of names or IDs allowed for this request (100) was exceeded.

*/ -export interface BatchLimitExceededException extends __SmithyException, $MetadataBearer { - name: "BatchLimitExceededException"; - $fault: "client"; +export class BatchLimitExceededException extends __BaseException { + readonly name: "BatchLimitExceededException" = "BatchLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchLimitExceededException.prototype); + } } /** *

The application name was specified in an invalid format.

*/ -export interface InvalidApplicationNameException extends __SmithyException, $MetadataBearer { - name: "InvalidApplicationNameException"; - $fault: "client"; +export class InvalidApplicationNameException extends __BaseException { + readonly name: "InvalidApplicationNameException" = "InvalidApplicationNameException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApplicationNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApplicationNameException.prototype); + } } /** *

The revision was specified in an invalid format.

*/ -export interface InvalidRevisionException extends __SmithyException, $MetadataBearer { - name: "InvalidRevisionException"; - $fault: "client"; +export class InvalidRevisionException extends __BaseException { + readonly name: "InvalidRevisionException" = "InvalidRevisionException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRevisionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRevisionException.prototype); + } } /** *

The revision ID was not specified.

*/ -export interface RevisionRequiredException extends __SmithyException, $MetadataBearer { - name: "RevisionRequiredException"; - $fault: "client"; +export class RevisionRequiredException extends __BaseException { + readonly name: "RevisionRequiredException" = "RevisionRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RevisionRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RevisionRequiredException.prototype); + } } /** @@ -1628,37 +1750,58 @@ export namespace BatchGetDeploymentGroupsOutput { /** *

The deployment configuration does not exist with the IAM user or AWS account.

*/ -export interface DeploymentConfigDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "DeploymentConfigDoesNotExistException"; - $fault: "client"; +export class DeploymentConfigDoesNotExistException extends __BaseException { + readonly name: "DeploymentConfigDoesNotExistException" = "DeploymentConfigDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentConfigDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentConfigDoesNotExistException.prototype); + } } /** *

The deployment group name was not specified.

*/ -export interface DeploymentGroupNameRequiredException extends __SmithyException, $MetadataBearer { - name: "DeploymentGroupNameRequiredException"; - $fault: "client"; +export class DeploymentGroupNameRequiredException extends __BaseException { + readonly name: "DeploymentGroupNameRequiredException" = "DeploymentGroupNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentGroupNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentGroupNameRequiredException.prototype); + } } /** *

The deployment group name was specified in an invalid format.

*/ -export interface InvalidDeploymentGroupNameException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentGroupNameException"; - $fault: "client"; +export class InvalidDeploymentGroupNameException extends __BaseException { + readonly name: "InvalidDeploymentGroupNameException" = "InvalidDeploymentGroupNameException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentGroupNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentGroupNameException.prototype); + } } /** @@ -1951,25 +2094,39 @@ export namespace BatchGetDeploymentInstancesOutput { /** *

The deployment with the IAM user or AWS account does not exist.

*/ -export interface DeploymentDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "DeploymentDoesNotExistException"; - $fault: "client"; +export class DeploymentDoesNotExistException extends __BaseException { + readonly name: "DeploymentDoesNotExistException" = "DeploymentDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentDoesNotExistException.prototype); + } } /** *

At least one deployment ID must be specified.

*/ -export interface DeploymentIdRequiredException extends __SmithyException, $MetadataBearer { - name: "DeploymentIdRequiredException"; - $fault: "client"; +export class DeploymentIdRequiredException extends __BaseException { + readonly name: "DeploymentIdRequiredException" = "DeploymentIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentIdRequiredException.prototype); + } } /** @@ -1977,38 +2134,59 @@ export interface DeploymentIdRequiredException extends __SmithyException, $Metad * *

The instance ID was not specified.

*/ -export interface InstanceIdRequiredException extends __SmithyException, $MetadataBearer { - name: "InstanceIdRequiredException"; - $fault: "client"; +export class InstanceIdRequiredException extends __BaseException { + readonly name: "InstanceIdRequiredException" = "InstanceIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceIdRequiredException.prototype); + } } /** *

The computePlatform is invalid. The computePlatform should be Lambda, * Server, or ECS.

*/ -export interface InvalidComputePlatformException extends __SmithyException, $MetadataBearer { - name: "InvalidComputePlatformException"; - $fault: "client"; +export class InvalidComputePlatformException extends __BaseException { + readonly name: "InvalidComputePlatformException" = "InvalidComputePlatformException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidComputePlatformException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidComputePlatformException.prototype); + } } /** *

At least one of the deployment IDs was specified in an invalid format.

*/ -export interface InvalidDeploymentIdException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentIdException"; - $fault: "client"; +export class InvalidDeploymentIdException extends __BaseException { + readonly name: "InvalidDeploymentIdException" = "InvalidDeploymentIdException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentIdException.prototype); + } } /** @@ -3055,37 +3233,58 @@ export namespace BatchGetDeploymentTargetsOutput { /** *

The specified deployment has not started.

*/ -export interface DeploymentNotStartedException extends __SmithyException, $MetadataBearer { - name: "DeploymentNotStartedException"; - $fault: "client"; +export class DeploymentNotStartedException extends __BaseException { + readonly name: "DeploymentNotStartedException" = "DeploymentNotStartedException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentNotStartedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentNotStartedException.prototype); + } } /** *

The provided target ID does not belong to the attempted deployment.

*/ -export interface DeploymentTargetDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "DeploymentTargetDoesNotExistException"; - $fault: "client"; +export class DeploymentTargetDoesNotExistException extends __BaseException { + readonly name: "DeploymentTargetDoesNotExistException" = "DeploymentTargetDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentTargetDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentTargetDoesNotExistException.prototype); + } } /** *

A deployment target ID was not provided.

*/ -export interface DeploymentTargetIdRequiredException extends __SmithyException, $MetadataBearer { - name: "DeploymentTargetIdRequiredException"; - $fault: "client"; +export class DeploymentTargetIdRequiredException extends __BaseException { + readonly name: "DeploymentTargetIdRequiredException" = "DeploymentTargetIdRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentTargetIdRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentTargetIdRequiredException.prototype); + } } /** @@ -3093,13 +3292,20 @@ export interface DeploymentTargetIdRequiredException extends __SmithyException, * deployment was exceeded. The target list of both types of deployments must have exactly * one item. This exception does not apply to EC2/On-premises deployments.

*/ -export interface DeploymentTargetListSizeExceededException extends __SmithyException, $MetadataBearer { - name: "DeploymentTargetListSizeExceededException"; - $fault: "client"; +export class DeploymentTargetListSizeExceededException extends __BaseException { + readonly name: "DeploymentTargetListSizeExceededException" = "DeploymentTargetListSizeExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentTargetListSizeExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentTargetListSizeExceededException.prototype); + } } /** @@ -3107,25 +3313,39 @@ export interface DeploymentTargetListSizeExceededException extends __SmithyExcep * *

The specified instance does not exist in the deployment group.

*/ -export interface InstanceDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "InstanceDoesNotExistException"; - $fault: "client"; +export class InstanceDoesNotExistException extends __BaseException { + readonly name: "InstanceDoesNotExistException" = "InstanceDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceDoesNotExistException.prototype); + } } /** *

The target ID provided was not valid.

*/ -export interface InvalidDeploymentTargetIdException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentTargetIdException"; - $fault: "client"; +export class InvalidDeploymentTargetIdException extends __BaseException { + readonly name: "InvalidDeploymentTargetIdException" = "InvalidDeploymentTargetIdException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentTargetIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentTargetIdException.prototype); + } } /** @@ -3220,13 +3440,20 @@ export namespace BatchGetOnPremisesInstancesOutput { /** *

A bucket name is required, but was not provided.

*/ -export interface BucketNameFilterRequiredException extends __SmithyException, $MetadataBearer { - name: "BucketNameFilterRequiredException"; - $fault: "client"; +export class BucketNameFilterRequiredException extends __BaseException { + readonly name: "BucketNameFilterRequiredException" = "BucketNameFilterRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BucketNameFilterRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BucketNameFilterRequiredException.prototype); + } } export enum DeploymentWaitType { @@ -3262,61 +3489,96 @@ export namespace ContinueDeploymentInput { /** *

The deployment is already complete.

*/ -export interface DeploymentAlreadyCompletedException extends __SmithyException, $MetadataBearer { - name: "DeploymentAlreadyCompletedException"; - $fault: "client"; +export class DeploymentAlreadyCompletedException extends __BaseException { + readonly name: "DeploymentAlreadyCompletedException" = "DeploymentAlreadyCompletedException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentAlreadyCompletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentAlreadyCompletedException.prototype); + } } /** *

The deployment does not have a status of Ready and can't continue yet.

*/ -export interface DeploymentIsNotInReadyStateException extends __SmithyException, $MetadataBearer { - name: "DeploymentIsNotInReadyStateException"; - $fault: "client"; +export class DeploymentIsNotInReadyStateException extends __BaseException { + readonly name: "DeploymentIsNotInReadyStateException" = "DeploymentIsNotInReadyStateException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentIsNotInReadyStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentIsNotInReadyStateException.prototype); + } } /** *

The specified deployment status doesn't exist or cannot be determined.

*/ -export interface InvalidDeploymentStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentStatusException"; - $fault: "client"; +export class InvalidDeploymentStatusException extends __BaseException { + readonly name: "InvalidDeploymentStatusException" = "InvalidDeploymentStatusException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentStatusException.prototype); + } } /** *

The wait type is invalid.

*/ -export interface InvalidDeploymentWaitTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentWaitTypeException"; - $fault: "client"; +export class InvalidDeploymentWaitTypeException extends __BaseException { + readonly name: "InvalidDeploymentWaitTypeException" = "InvalidDeploymentWaitTypeException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentWaitTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentWaitTypeException.prototype); + } } /** *

A call was submitted that is not supported for the specified deployment type.

*/ -export interface UnsupportedActionForDeploymentTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedActionForDeploymentTypeException"; - $fault: "client"; +export class UnsupportedActionForDeploymentTypeException extends __BaseException { + readonly name: "UnsupportedActionForDeploymentTypeException" = "UnsupportedActionForDeploymentTypeException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedActionForDeploymentTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedActionForDeploymentTypeException.prototype); + } } /** @@ -3374,13 +3636,20 @@ export namespace CreateApplicationOutput { /** *

The specified tags are not valid.

*/ -export interface InvalidTagsToAddException extends __SmithyException, $MetadataBearer { - name: "InvalidTagsToAddException"; - $fault: "client"; +export class InvalidTagsToAddException extends __BaseException { + readonly name: "InvalidTagsToAddException" = "InvalidTagsToAddException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagsToAddException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagsToAddException.prototype); + } } /** @@ -3518,37 +3787,58 @@ export namespace CreateDeploymentOutput { /** *

The named deployment group with the IAM user or AWS account does not exist.

*/ -export interface DeploymentGroupDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "DeploymentGroupDoesNotExistException"; - $fault: "client"; +export class DeploymentGroupDoesNotExistException extends __BaseException { + readonly name: "DeploymentGroupDoesNotExistException" = "DeploymentGroupDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentGroupDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentGroupDoesNotExistException.prototype); + } } /** *

The number of allowed deployments was exceeded.

*/ -export interface DeploymentLimitExceededException extends __SmithyException, $MetadataBearer { - name: "DeploymentLimitExceededException"; - $fault: "client"; +export class DeploymentLimitExceededException extends __BaseException { + readonly name: "DeploymentLimitExceededException" = "DeploymentLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentLimitExceededException.prototype); + } } /** *

The description is too long.

*/ -export interface DescriptionTooLongException extends __SmithyException, $MetadataBearer { - name: "DescriptionTooLongException"; - $fault: "client"; +export class DescriptionTooLongException extends __BaseException { + readonly name: "DescriptionTooLongException" = "DescriptionTooLongException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DescriptionTooLongException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DescriptionTooLongException.prototype); + } } /** @@ -3556,37 +3846,58 @@ export interface DescriptionTooLongException extends __SmithyException, $Metadat * automatic rollback is enabled, but an invalid triggering event type or no event types * were listed.

*/ -export interface InvalidAutoRollbackConfigException extends __SmithyException, $MetadataBearer { - name: "InvalidAutoRollbackConfigException"; - $fault: "client"; +export class InvalidAutoRollbackConfigException extends __BaseException { + readonly name: "InvalidAutoRollbackConfigException" = "InvalidAutoRollbackConfigException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAutoRollbackConfigException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAutoRollbackConfigException.prototype); + } } /** *

The Auto Scaling group was specified in an invalid format or does not exist.

*/ -export interface InvalidAutoScalingGroupException extends __SmithyException, $MetadataBearer { - name: "InvalidAutoScalingGroupException"; - $fault: "client"; +export class InvalidAutoScalingGroupException extends __BaseException { + readonly name: "InvalidAutoScalingGroupException" = "InvalidAutoScalingGroupException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAutoScalingGroupException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAutoScalingGroupException.prototype); + } } /** *

The deployment configuration name was specified in an invalid format.

*/ -export interface InvalidDeploymentConfigNameException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentConfigNameException"; - $fault: "client"; +export class InvalidDeploymentConfigNameException extends __BaseException { + readonly name: "InvalidDeploymentConfigNameException" = "InvalidDeploymentConfigNameException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentConfigNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentConfigNameException.prototype); + } } /** @@ -3595,25 +3906,39 @@ export interface InvalidDeploymentConfigNameException extends __SmithyException, * weren't part of the previous successful deployment. Valid values include "DISALLOW," * "OVERWRITE," and "RETAIN."

*/ -export interface InvalidFileExistsBehaviorException extends __SmithyException, $MetadataBearer { - name: "InvalidFileExistsBehaviorException"; - $fault: "client"; +export class InvalidFileExistsBehaviorException extends __BaseException { + readonly name: "InvalidFileExistsBehaviorException" = "InvalidFileExistsBehaviorException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFileExistsBehaviorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFileExistsBehaviorException.prototype); + } } /** *

The GitHub token is not valid.

*/ -export interface InvalidGitHubAccountTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidGitHubAccountTokenException"; - $fault: "client"; +export class InvalidGitHubAccountTokenException extends __BaseException { + readonly name: "InvalidGitHubAccountTokenException" = "InvalidGitHubAccountTokenException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGitHubAccountTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGitHubAccountTokenException.prototype); + } } /** @@ -3621,25 +3946,40 @@ export interface InvalidGitHubAccountTokenException extends __SmithyException, $ * false is expected. For EC2/On-premises deployments, true * or false is expected.

*/ -export interface InvalidIgnoreApplicationStopFailuresValueException extends __SmithyException, $MetadataBearer { - name: "InvalidIgnoreApplicationStopFailuresValueException"; - $fault: "client"; +export class InvalidIgnoreApplicationStopFailuresValueException extends __BaseException { + readonly name: "InvalidIgnoreApplicationStopFailuresValueException" = + "InvalidIgnoreApplicationStopFailuresValueException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIgnoreApplicationStopFailuresValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIgnoreApplicationStopFailuresValueException.prototype); + } } /** *

An invalid load balancer name, or no load balancer name, was specified.

*/ -export interface InvalidLoadBalancerInfoException extends __SmithyException, $MetadataBearer { - name: "InvalidLoadBalancerInfoException"; - $fault: "client"; +export class InvalidLoadBalancerInfoException extends __BaseException { + readonly name: "InvalidLoadBalancerInfoException" = "InvalidLoadBalancerInfoException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLoadBalancerInfoException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLoadBalancerInfoException.prototype); + } } /** @@ -3647,13 +3987,20 @@ export interface InvalidLoadBalancerInfoException extends __SmithyException, $Me * was specified, the specified service role does not grant the appropriate permissions to * Amazon EC2 Auto Scaling.

*/ -export interface InvalidRoleException extends __SmithyException, $MetadataBearer { - name: "InvalidRoleException"; - $fault: "client"; +export class InvalidRoleException extends __BaseException { + readonly name: "InvalidRoleException" = "InvalidRoleException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRoleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRoleException.prototype); + } } /** @@ -3674,26 +4021,40 @@ export interface InvalidRoleException extends __SmithyException, $MetadataBearer * * */ -export interface InvalidTargetInstancesException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetInstancesException"; - $fault: "client"; +export class InvalidTargetInstancesException extends __BaseException { + readonly name: "InvalidTargetInstancesException" = "InvalidTargetInstancesException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetInstancesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetInstancesException.prototype); + } } /** *

The configuration that specifies how traffic is routed during a deployment is * invalid.

*/ -export interface InvalidTrafficRoutingConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidTrafficRoutingConfigurationException"; - $fault: "client"; +export class InvalidTrafficRoutingConfigurationException extends __BaseException { + readonly name: "InvalidTrafficRoutingConfigurationException" = "InvalidTrafficRoutingConfigurationException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTrafficRoutingConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTrafficRoutingConfigurationException.prototype); + } } /** @@ -3701,37 +4062,59 @@ export interface InvalidTrafficRoutingConfigurationException extends __SmithyExc * false is expected. For EC2/On-premises deployments, true * or false is expected.

*/ -export interface InvalidUpdateOutdatedInstancesOnlyValueException extends __SmithyException, $MetadataBearer { - name: "InvalidUpdateOutdatedInstancesOnlyValueException"; - $fault: "client"; +export class InvalidUpdateOutdatedInstancesOnlyValueException extends __BaseException { + readonly name: "InvalidUpdateOutdatedInstancesOnlyValueException" = + "InvalidUpdateOutdatedInstancesOnlyValueException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUpdateOutdatedInstancesOnlyValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUpdateOutdatedInstancesOnlyValueException.prototype); + } } /** *

The named revision does not exist with the IAM user or AWS account.

*/ -export interface RevisionDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "RevisionDoesNotExistException"; - $fault: "client"; +export class RevisionDoesNotExistException extends __BaseException { + readonly name: "RevisionDoesNotExistException" = "RevisionDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RevisionDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RevisionDoesNotExistException.prototype); + } } /** *

An API function was called too frequently.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export type MinimumHealthyHostsType = "FLEET_PERCENT" | "HOST_COUNT"; @@ -3967,49 +4350,77 @@ export namespace CreateDeploymentConfigOutput { *

A deployment configuration with the specified name with the IAM user or AWS account * already exists.

*/ -export interface DeploymentConfigAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "DeploymentConfigAlreadyExistsException"; - $fault: "client"; +export class DeploymentConfigAlreadyExistsException extends __BaseException { + readonly name: "DeploymentConfigAlreadyExistsException" = "DeploymentConfigAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentConfigAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentConfigAlreadyExistsException.prototype); + } } /** *

The deployment configurations limit was exceeded.

*/ -export interface DeploymentConfigLimitExceededException extends __SmithyException, $MetadataBearer { - name: "DeploymentConfigLimitExceededException"; - $fault: "client"; +export class DeploymentConfigLimitExceededException extends __BaseException { + readonly name: "DeploymentConfigLimitExceededException" = "DeploymentConfigLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentConfigLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentConfigLimitExceededException.prototype); + } } /** *

The deployment configuration name was not specified.

*/ -export interface DeploymentConfigNameRequiredException extends __SmithyException, $MetadataBearer { - name: "DeploymentConfigNameRequiredException"; - $fault: "client"; +export class DeploymentConfigNameRequiredException extends __BaseException { + readonly name: "DeploymentConfigNameRequiredException" = "DeploymentConfigNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentConfigNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentConfigNameRequiredException.prototype); + } } /** *

The minimum healthy instance value was specified in an invalid format.

*/ -export interface InvalidMinimumHealthyHostValueException extends __SmithyException, $MetadataBearer { - name: "InvalidMinimumHealthyHostValueException"; - $fault: "client"; +export class InvalidMinimumHealthyHostValueException extends __BaseException { + readonly name: "InvalidMinimumHealthyHostValueException" = "InvalidMinimumHealthyHostValueException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMinimumHealthyHostValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMinimumHealthyHostValueException.prototype); + } } /** @@ -4176,38 +4587,59 @@ export namespace CreateDeploymentGroupOutput { *

A deployment group with the specified name with the IAM user or AWS account already * exists.

*/ -export interface DeploymentGroupAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "DeploymentGroupAlreadyExistsException"; - $fault: "client"; +export class DeploymentGroupAlreadyExistsException extends __BaseException { + readonly name: "DeploymentGroupAlreadyExistsException" = "DeploymentGroupAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentGroupAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentGroupAlreadyExistsException.prototype); + } } /** *

The deployment groups limit was exceeded.

*/ -export interface DeploymentGroupLimitExceededException extends __SmithyException, $MetadataBearer { - name: "DeploymentGroupLimitExceededException"; - $fault: "client"; +export class DeploymentGroupLimitExceededException extends __BaseException { + readonly name: "DeploymentGroupLimitExceededException" = "DeploymentGroupLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentGroupLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentGroupLimitExceededException.prototype); + } } /** *

The Amazon ECS service is associated with more than one deployment groups. An Amazon * ECS service can be associated with only one deployment group.

*/ -export interface ECSServiceMappingLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ECSServiceMappingLimitExceededException"; - $fault: "client"; +export class ECSServiceMappingLimitExceededException extends __BaseException { + readonly name: "ECSServiceMappingLimitExceededException" = "ECSServiceMappingLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ECSServiceMappingLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ECSServiceMappingLimitExceededException.prototype); + } } /** @@ -4230,26 +4662,41 @@ export interface ECSServiceMappingLimitExceededException extends __SmithyExcepti * * */ -export interface InvalidAlarmConfigException extends __SmithyException, $MetadataBearer { - name: "InvalidAlarmConfigException"; - $fault: "client"; +export class InvalidAlarmConfigException extends __BaseException { + readonly name: "InvalidAlarmConfigException" = "InvalidAlarmConfigException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAlarmConfigException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAlarmConfigException.prototype); + } } /** *

The configuration for the blue/green deployment group was provided in an invalid * format. For information about deployment configuration format, see CreateDeploymentConfig.

*/ -export interface InvalidBlueGreenDeploymentConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidBlueGreenDeploymentConfigurationException"; - $fault: "client"; +export class InvalidBlueGreenDeploymentConfigurationException extends __BaseException { + readonly name: "InvalidBlueGreenDeploymentConfigurationException" = + "InvalidBlueGreenDeploymentConfigurationException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBlueGreenDeploymentConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBlueGreenDeploymentConfigurationException.prototype); + } } /** @@ -4257,148 +4704,232 @@ export interface InvalidBlueGreenDeploymentConfigurationException extends __Smit * and "BLUE_GREEN." Valid deployment options include "WITH_TRAFFIC_CONTROL" and * "WITHOUT_TRAFFIC_CONTROL."

*/ -export interface InvalidDeploymentStyleException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentStyleException"; - $fault: "client"; +export class InvalidDeploymentStyleException extends __BaseException { + readonly name: "InvalidDeploymentStyleException" = "InvalidDeploymentStyleException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentStyleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentStyleException.prototype); + } } /** *

A call was submitted that specified both Ec2TagFilters and Ec2TagSet, but only one of * these data types can be used in a single call.

*/ -export interface InvalidEC2TagCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidEC2TagCombinationException"; - $fault: "client"; +export class InvalidEC2TagCombinationException extends __BaseException { + readonly name: "InvalidEC2TagCombinationException" = "InvalidEC2TagCombinationException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEC2TagCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEC2TagCombinationException.prototype); + } } /** *

The tag was specified in an invalid format.

*/ -export interface InvalidEC2TagException extends __SmithyException, $MetadataBearer { - name: "InvalidEC2TagException"; - $fault: "client"; +export class InvalidEC2TagException extends __BaseException { + readonly name: "InvalidEC2TagException" = "InvalidEC2TagException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEC2TagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEC2TagException.prototype); + } } /** *

The Amazon ECS service identifier is not valid.

*/ -export interface InvalidECSServiceException extends __SmithyException, $MetadataBearer { - name: "InvalidECSServiceException"; - $fault: "client"; +export class InvalidECSServiceException extends __BaseException { + readonly name: "InvalidECSServiceException" = "InvalidECSServiceException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidECSServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidECSServiceException.prototype); + } } /** *

The input was specified in an invalid format.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + } } /** *

A call was submitted that specified both OnPremisesTagFilters and OnPremisesTagSet, * but only one of these data types can be used in a single call.

*/ -export interface InvalidOnPremisesTagCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidOnPremisesTagCombinationException"; - $fault: "client"; +export class InvalidOnPremisesTagCombinationException extends __BaseException { + readonly name: "InvalidOnPremisesTagCombinationException" = "InvalidOnPremisesTagCombinationException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOnPremisesTagCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOnPremisesTagCombinationException.prototype); + } } /** *

A target group pair associated with this deployment is not valid.

*/ -export interface InvalidTargetGroupPairException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetGroupPairException"; - $fault: "client"; +export class InvalidTargetGroupPairException extends __BaseException { + readonly name: "InvalidTargetGroupPairException" = "InvalidTargetGroupPairException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetGroupPairException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetGroupPairException.prototype); + } } /** *

The trigger was specified in an invalid format.

*/ -export interface InvalidTriggerConfigException extends __SmithyException, $MetadataBearer { - name: "InvalidTriggerConfigException"; - $fault: "client"; +export class InvalidTriggerConfigException extends __BaseException { + readonly name: "InvalidTriggerConfigException" = "InvalidTriggerConfigException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTriggerConfigException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTriggerConfigException.prototype); + } } /** *

The limit for lifecycle hooks was exceeded.

*/ -export interface LifecycleHookLimitExceededException extends __SmithyException, $MetadataBearer { - name: "LifecycleHookLimitExceededException"; - $fault: "client"; +export class LifecycleHookLimitExceededException extends __BaseException { + readonly name: "LifecycleHookLimitExceededException" = "LifecycleHookLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LifecycleHookLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LifecycleHookLimitExceededException.prototype); + } } /** *

The role ID was not specified.

*/ -export interface RoleRequiredException extends __SmithyException, $MetadataBearer { - name: "RoleRequiredException"; - $fault: "client"; +export class RoleRequiredException extends __BaseException { + readonly name: "RoleRequiredException" = "RoleRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RoleRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RoleRequiredException.prototype); + } } /** *

The number of tag groups included in the tag set list exceeded the maximum allowed * limit of 3.

*/ -export interface TagSetListLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagSetListLimitExceededException"; - $fault: "client"; +export class TagSetListLimitExceededException extends __BaseException { + readonly name: "TagSetListLimitExceededException" = "TagSetListLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagSetListLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagSetListLimitExceededException.prototype); + } } /** *

The maximum allowed number of triggers was exceeded.

*/ -export interface TriggerTargetsLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TriggerTargetsLimitExceededException"; - $fault: "client"; +export class TriggerTargetsLimitExceededException extends __BaseException { + readonly name: "TriggerTargetsLimitExceededException" = "TriggerTargetsLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TriggerTargetsLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TriggerTargetsLimitExceededException.prototype); + } } /** @@ -4444,25 +4975,39 @@ export namespace DeleteDeploymentConfigInput { /** *

The deployment configuration is still in use.

*/ -export interface DeploymentConfigInUseException extends __SmithyException, $MetadataBearer { - name: "DeploymentConfigInUseException"; - $fault: "client"; +export class DeploymentConfigInUseException extends __BaseException { + readonly name: "DeploymentConfigInUseException" = "DeploymentConfigInUseException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeploymentConfigInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeploymentConfigInUseException.prototype); + } } /** *

An invalid operation was detected.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + } } /** @@ -4554,61 +5099,96 @@ export namespace DeleteGitHubAccountTokenOutput { /** *

No GitHub account connection exists with the named specified in the call.

*/ -export interface GitHubAccountTokenDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "GitHubAccountTokenDoesNotExistException"; - $fault: "client"; +export class GitHubAccountTokenDoesNotExistException extends __BaseException { + readonly name: "GitHubAccountTokenDoesNotExistException" = "GitHubAccountTokenDoesNotExistException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "GitHubAccountTokenDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GitHubAccountTokenDoesNotExistException.prototype); + } } /** *

The call is missing a required GitHub account connection name.

*/ -export interface GitHubAccountTokenNameRequiredException extends __SmithyException, $MetadataBearer { - name: "GitHubAccountTokenNameRequiredException"; - $fault: "client"; +export class GitHubAccountTokenNameRequiredException extends __BaseException { + readonly name: "GitHubAccountTokenNameRequiredException" = "GitHubAccountTokenNameRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "GitHubAccountTokenNameRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GitHubAccountTokenNameRequiredException.prototype); + } } /** *

The format of the specified GitHub account connection name is invalid.

*/ -export interface InvalidGitHubAccountTokenNameException extends __SmithyException, $MetadataBearer { - name: "InvalidGitHubAccountTokenNameException"; - $fault: "client"; +export class InvalidGitHubAccountTokenNameException extends __BaseException { + readonly name: "InvalidGitHubAccountTokenNameException" = "InvalidGitHubAccountTokenNameException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGitHubAccountTokenNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGitHubAccountTokenNameException.prototype); + } } /** *

The API used does not support the deployment.

*/ -export interface OperationNotSupportedException extends __SmithyException, $MetadataBearer { - name: "OperationNotSupportedException"; - $fault: "client"; +export class OperationNotSupportedException extends __BaseException { + readonly name: "OperationNotSupportedException" = "OperationNotSupportedException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotSupportedException.prototype); + } } /** *

The specified resource could not be validated.

*/ -export interface ResourceValidationException extends __SmithyException, $MetadataBearer { - name: "ResourceValidationException"; - $fault: "client"; +export class ResourceValidationException extends __BaseException { + readonly name: "ResourceValidationException" = "ResourceValidationException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceValidationException.prototype); + } } export interface DeleteResourcesByExternalIdInput { @@ -5044,74 +5624,116 @@ export namespace GetOnPremisesInstanceOutput { /** *

The bucket name either doesn't exist or was specified in an invalid format.

*/ -export interface InvalidBucketNameFilterException extends __SmithyException, $MetadataBearer { - name: "InvalidBucketNameFilterException"; - $fault: "client"; +export class InvalidBucketNameFilterException extends __BaseException { + readonly name: "InvalidBucketNameFilterException" = "InvalidBucketNameFilterException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBucketNameFilterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBucketNameFilterException.prototype); + } } /** *

The deployed state filter was specified in an invalid format.

*/ -export interface InvalidDeployedStateFilterException extends __SmithyException, $MetadataBearer { - name: "InvalidDeployedStateFilterException"; - $fault: "client"; +export class InvalidDeployedStateFilterException extends __BaseException { + readonly name: "InvalidDeployedStateFilterException" = "InvalidDeployedStateFilterException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeployedStateFilterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeployedStateFilterException.prototype); + } } /** *

The specified key prefix filter was specified in an invalid format.

*/ -export interface InvalidKeyPrefixFilterException extends __SmithyException, $MetadataBearer { - name: "InvalidKeyPrefixFilterException"; - $fault: "client"; +export class InvalidKeyPrefixFilterException extends __BaseException { + readonly name: "InvalidKeyPrefixFilterException" = "InvalidKeyPrefixFilterException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKeyPrefixFilterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKeyPrefixFilterException.prototype); + } } /** *

The next token was specified in an invalid format.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } /** *

The column name to sort by is either not present or was specified in an invalid * format.

*/ -export interface InvalidSortByException extends __SmithyException, $MetadataBearer { - name: "InvalidSortByException"; - $fault: "client"; +export class InvalidSortByException extends __BaseException { + readonly name: "InvalidSortByException" = "InvalidSortByException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSortByException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSortByException.prototype); + } } /** *

The sort order was specified in an invalid format.

*/ -export interface InvalidSortOrderException extends __SmithyException, $MetadataBearer { - name: "InvalidSortOrderException"; - $fault: "client"; +export class InvalidSortOrderException extends __BaseException { + readonly name: "InvalidSortOrderException" = "InvalidSortOrderException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSortOrderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSortOrderException.prototype); + } } export enum ListStateFilterAction { @@ -5406,25 +6028,39 @@ export namespace ListDeploymentGroupsOutput { *

An instance type was specified for an in-place deployment. Instance types are * supported for blue/green deployments only.

*/ -export interface InvalidDeploymentInstanceTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidDeploymentInstanceTypeException"; - $fault: "client"; +export class InvalidDeploymentInstanceTypeException extends __BaseException { + readonly name: "InvalidDeploymentInstanceTypeException" = "InvalidDeploymentInstanceTypeException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeploymentInstanceTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeploymentInstanceTypeException.prototype); + } } /** *

The specified instance status does not exist.

*/ -export interface InvalidInstanceStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidInstanceStatusException"; - $fault: "client"; +export class InvalidInstanceStatusException extends __BaseException { + readonly name: "InvalidInstanceStatusException" = "InvalidInstanceStatusException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInstanceStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInstanceStatusException.prototype); + } } /** @@ -5432,25 +6068,39 @@ export interface InvalidInstanceStatusException extends __SmithyException, $Meta * values include "Blue" for an original environment and "Green" for a replacement * environment.

*/ -export interface InvalidInstanceTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidInstanceTypeException"; - $fault: "client"; +export class InvalidInstanceTypeException extends __BaseException { + readonly name: "InvalidInstanceTypeException" = "InvalidInstanceTypeException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInstanceTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInstanceTypeException.prototype); + } } /** *

The target filter name is invalid.

*/ -export interface InvalidTargetFilterNameException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetFilterNameException"; - $fault: "client"; +export class InvalidTargetFilterNameException extends __BaseException { + readonly name: "InvalidTargetFilterNameException" = "InvalidTargetFilterNameException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetFilterNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetFilterNameException.prototype); + } } /** @@ -5548,25 +6198,39 @@ export namespace ListDeploymentInstancesOutput { /** *

The external ID was specified in an invalid format.

*/ -export interface InvalidExternalIdException extends __SmithyException, $MetadataBearer { - name: "InvalidExternalIdException"; - $fault: "client"; +export class InvalidExternalIdException extends __BaseException { + readonly name: "InvalidExternalIdException" = "InvalidExternalIdException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExternalIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExternalIdException.prototype); + } } /** *

The specified time range was specified in an invalid format.

*/ -export interface InvalidTimeRangeException extends __SmithyException, $MetadataBearer { - name: "InvalidTimeRangeException"; - $fault: "client"; +export class InvalidTimeRangeException extends __BaseException { + readonly name: "InvalidTimeRangeException" = "InvalidTimeRangeException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTimeRangeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTimeRangeException.prototype); + } } /** @@ -5830,25 +6494,39 @@ export namespace ListGitHubAccountTokenNamesOutput { /** *

The registration status was specified in an invalid format.

*/ -export interface InvalidRegistrationStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidRegistrationStatusException"; - $fault: "client"; +export class InvalidRegistrationStatusException extends __BaseException { + readonly name: "InvalidRegistrationStatusException" = "InvalidRegistrationStatusException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRegistrationStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRegistrationStatusException.prototype); + } } /** *

The tag filter was specified in an invalid format.

*/ -export interface InvalidTagFilterException extends __SmithyException, $MetadataBearer { - name: "InvalidTagFilterException"; - $fault: "client"; +export class InvalidTagFilterException extends __BaseException { + readonly name: "InvalidTagFilterException" = "InvalidTagFilterException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagFilterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagFilterException.prototype); + } } export enum RegistrationStatus { @@ -5928,13 +6606,20 @@ export namespace ListOnPremisesInstancesOutput { /** *

The specified ARN is not in a valid format.

*/ -export interface InvalidArnException extends __SmithyException, $MetadataBearer { - name: "InvalidArnException"; - $fault: "client"; +export class InvalidArnException extends __BaseException { + readonly name: "InvalidArnException" = "InvalidArnException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArnException.prototype); + } } export interface ListTagsForResourceInput { @@ -5988,13 +6673,20 @@ export namespace ListTagsForResourceOutput { /** *

The ARN of a resource is required, but was not found.

*/ -export interface ResourceArnRequiredException extends __SmithyException, $MetadataBearer { - name: "ResourceArnRequiredException"; - $fault: "client"; +export class ResourceArnRequiredException extends __BaseException { + readonly name: "ResourceArnRequiredException" = "ResourceArnRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceArnRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceArnRequiredException.prototype); + } } /** @@ -6002,39 +6694,61 @@ export interface ResourceArnRequiredException extends __SmithyException, $Metada * AppSpec file to ensure the lifecycle events and hooks functions are * valid.

*/ -export interface InvalidLifecycleEventHookExecutionIdException extends __SmithyException, $MetadataBearer { - name: "InvalidLifecycleEventHookExecutionIdException"; - $fault: "client"; +export class InvalidLifecycleEventHookExecutionIdException extends __BaseException { + readonly name: "InvalidLifecycleEventHookExecutionIdException" = "InvalidLifecycleEventHookExecutionIdException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLifecycleEventHookExecutionIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLifecycleEventHookExecutionIdException.prototype); + } } /** *

The result of a Lambda validation function that verifies a lifecycle event is invalid. * It should return Succeeded or Failed.

*/ -export interface InvalidLifecycleEventHookExecutionStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidLifecycleEventHookExecutionStatusException"; - $fault: "client"; +export class InvalidLifecycleEventHookExecutionStatusException extends __BaseException { + readonly name: "InvalidLifecycleEventHookExecutionStatusException" = + "InvalidLifecycleEventHookExecutionStatusException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLifecycleEventHookExecutionStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLifecycleEventHookExecutionStatusException.prototype); + } } /** *

An attempt to return the status of an already completed lifecycle event * occurred.

*/ -export interface LifecycleEventAlreadyCompletedException extends __SmithyException, $MetadataBearer { - name: "LifecycleEventAlreadyCompletedException"; - $fault: "client"; +export class LifecycleEventAlreadyCompletedException extends __BaseException { + readonly name: "LifecycleEventAlreadyCompletedException" = "LifecycleEventAlreadyCompletedException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LifecycleEventAlreadyCompletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LifecycleEventAlreadyCompletedException.prototype); + } } export interface PutLifecycleEventHookExecutionStatusInput { @@ -6119,99 +6833,155 @@ export namespace RegisterApplicationRevisionInput { *

No IAM ARN was included in the request. You must use an IAM session ARN or IAM user * ARN in the request.

*/ -export interface IamArnRequiredException extends __SmithyException, $MetadataBearer { - name: "IamArnRequiredException"; - $fault: "client"; +export class IamArnRequiredException extends __BaseException { + readonly name: "IamArnRequiredException" = "IamArnRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IamArnRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IamArnRequiredException.prototype); + } } /** *

The request included an IAM session ARN that has already been used to register a * different instance.

*/ -export interface IamSessionArnAlreadyRegisteredException extends __SmithyException, $MetadataBearer { - name: "IamSessionArnAlreadyRegisteredException"; - $fault: "client"; +export class IamSessionArnAlreadyRegisteredException extends __BaseException { + readonly name: "IamSessionArnAlreadyRegisteredException" = "IamSessionArnAlreadyRegisteredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IamSessionArnAlreadyRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IamSessionArnAlreadyRegisteredException.prototype); + } } /** *

The specified IAM user ARN is already registered with an on-premises instance.

*/ -export interface IamUserArnAlreadyRegisteredException extends __SmithyException, $MetadataBearer { - name: "IamUserArnAlreadyRegisteredException"; - $fault: "client"; +export class IamUserArnAlreadyRegisteredException extends __BaseException { + readonly name: "IamUserArnAlreadyRegisteredException" = "IamUserArnAlreadyRegisteredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IamUserArnAlreadyRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IamUserArnAlreadyRegisteredException.prototype); + } } /** *

An IAM user ARN was not specified.

*/ -export interface IamUserArnRequiredException extends __SmithyException, $MetadataBearer { - name: "IamUserArnRequiredException"; - $fault: "client"; +export class IamUserArnRequiredException extends __BaseException { + readonly name: "IamUserArnRequiredException" = "IamUserArnRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IamUserArnRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IamUserArnRequiredException.prototype); + } } /** *

The specified on-premises instance name is already registered.

*/ -export interface InstanceNameAlreadyRegisteredException extends __SmithyException, $MetadataBearer { - name: "InstanceNameAlreadyRegisteredException"; - $fault: "client"; +export class InstanceNameAlreadyRegisteredException extends __BaseException { + readonly name: "InstanceNameAlreadyRegisteredException" = "InstanceNameAlreadyRegisteredException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceNameAlreadyRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceNameAlreadyRegisteredException.prototype); + } } /** *

The IAM session ARN was specified in an invalid format.

*/ -export interface InvalidIamSessionArnException extends __SmithyException, $MetadataBearer { - name: "InvalidIamSessionArnException"; - $fault: "client"; +export class InvalidIamSessionArnException extends __BaseException { + readonly name: "InvalidIamSessionArnException" = "InvalidIamSessionArnException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIamSessionArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIamSessionArnException.prototype); + } } /** *

The IAM user ARN was specified in an invalid format.

*/ -export interface InvalidIamUserArnException extends __SmithyException, $MetadataBearer { - name: "InvalidIamUserArnException"; - $fault: "client"; +export class InvalidIamUserArnException extends __BaseException { + readonly name: "InvalidIamUserArnException" = "InvalidIamUserArnException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIamUserArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIamUserArnException.prototype); + } } /** *

Both an IAM user ARN and an IAM session ARN were included in the request. Use only one * ARN type.

*/ -export interface MultipleIamArnsProvidedException extends __SmithyException, $MetadataBearer { - name: "MultipleIamArnsProvidedException"; - $fault: "client"; +export class MultipleIamArnsProvidedException extends __BaseException { + readonly name: "MultipleIamArnsProvidedException" = "MultipleIamArnsProvidedException"; + readonly $fault: "client" = "client"; /** - *

The message that corresponds to the exception thrown by AWS CodeDeploy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MultipleIamArnsProvidedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MultipleIamArnsProvidedException.prototype); + } } /** diff --git a/clients/client-codedeploy/src/protocols/Aws_json1_1.ts b/clients/client-codedeploy/src/protocols/Aws_json1_1.ts index 4351e45522c8e..4d95adaae1d5d 100644 --- a/clients/client-codedeploy/src/protocols/Aws_json1_1.ts +++ b/clients/client-codedeploy/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -167,6 +166,7 @@ import { UpdateDeploymentGroupCommandInput, UpdateDeploymentGroupCommandOutput, } from "../commands/UpdateDeploymentGroupCommand"; +import { CodeDeployServiceException as __BaseException } from "../models/CodeDeployServiceException"; import { _InstanceType, AddTagsToOnPremisesInstancesInput, @@ -1056,81 +1056,40 @@ const deserializeAws_json1_1AddTagsToOnPremisesInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceLimitExceededException": case "com.amazonaws.codedeploy#InstanceLimitExceededException": - response = { - ...(await deserializeAws_json1_1InstanceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceLimitExceededExceptionResponse(parsedOutput, context); case "InstanceNameRequiredException": case "com.amazonaws.codedeploy#InstanceNameRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context); case "InstanceNotRegisteredException": case "com.amazonaws.codedeploy#InstanceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1InstanceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotRegisteredExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.codedeploy#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.codedeploy#TagLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context); case "TagRequiredException": case "com.amazonaws.codedeploy#TagRequiredException": - response = { - ...(await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetApplicationRevisionsCommand = async ( @@ -1158,73 +1117,37 @@ const deserializeAws_json1_1BatchGetApplicationRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "BatchLimitExceededException": case "com.amazonaws.codedeploy#BatchLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidRevisionException": case "com.amazonaws.codedeploy#InvalidRevisionException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context); case "RevisionRequiredException": case "com.amazonaws.codedeploy#RevisionRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetApplicationsCommand = async ( @@ -1252,57 +1175,31 @@ const deserializeAws_json1_1BatchGetApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "BatchLimitExceededException": case "com.amazonaws.codedeploy#BatchLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetDeploymentGroupsCommand = async ( @@ -1330,81 +1227,40 @@ const deserializeAws_json1_1BatchGetDeploymentGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "BatchLimitExceededException": case "com.amazonaws.codedeploy#BatchLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetDeploymentInstancesCommand = async ( @@ -1432,81 +1288,40 @@ const deserializeAws_json1_1BatchGetDeploymentInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchLimitExceededException": case "com.amazonaws.codedeploy#BatchLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context); case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "InstanceIdRequiredException": case "com.amazonaws.codedeploy#InstanceIdRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceIdRequiredExceptionResponse(parsedOutput, context); case "InvalidComputePlatformException": case "com.amazonaws.codedeploy#InvalidComputePlatformException": - response = { - ...(await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetDeploymentsCommand = async ( @@ -1534,49 +1349,28 @@ const deserializeAws_json1_1BatchGetDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchLimitExceededException": case "com.amazonaws.codedeploy#BatchLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetDeploymentTargetsCommand = async ( @@ -1604,97 +1398,46 @@ const deserializeAws_json1_1BatchGetDeploymentTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentNotStartedException": case "com.amazonaws.codedeploy#DeploymentNotStartedException": - response = { - ...(await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context); case "DeploymentTargetDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentTargetDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentTargetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentTargetDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentTargetIdRequiredException": case "com.amazonaws.codedeploy#DeploymentTargetIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentTargetIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentTargetIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentTargetListSizeExceededException": case "com.amazonaws.codedeploy#DeploymentTargetListSizeExceededException": - response = { - ...(await deserializeAws_json1_1DeploymentTargetListSizeExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentTargetListSizeExceededExceptionResponse(parsedOutput, context); case "InstanceDoesNotExistException": case "com.amazonaws.codedeploy#InstanceDoesNotExistException": - response = { - ...(await deserializeAws_json1_1InstanceDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidDeploymentTargetIdException": case "com.amazonaws.codedeploy#InvalidDeploymentTargetIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentTargetIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetOnPremisesInstancesCommand = async ( @@ -1722,49 +1465,28 @@ const deserializeAws_json1_1BatchGetOnPremisesInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchLimitExceededException": case "com.amazonaws.codedeploy#BatchLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchLimitExceededExceptionResponse(parsedOutput, context); case "InstanceNameRequiredException": case "com.amazonaws.codedeploy#InstanceNameRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ContinueDeploymentCommand = async ( @@ -1789,89 +1511,43 @@ const deserializeAws_json1_1ContinueDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentAlreadyCompletedException": case "com.amazonaws.codedeploy#DeploymentAlreadyCompletedException": - response = { - ...(await deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse(parsedOutput, context); case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentIsNotInReadyStateException": case "com.amazonaws.codedeploy#DeploymentIsNotInReadyStateException": - response = { - ...(await deserializeAws_json1_1DeploymentIsNotInReadyStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIsNotInReadyStateExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidDeploymentStatusException": case "com.amazonaws.codedeploy#InvalidDeploymentStatusException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentStatusExceptionResponse(parsedOutput, context); case "InvalidDeploymentWaitTypeException": case "com.amazonaws.codedeploy#InvalidDeploymentWaitTypeException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentWaitTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentWaitTypeExceptionResponse(parsedOutput, context); case "UnsupportedActionForDeploymentTypeException": case "com.amazonaws.codedeploy#UnsupportedActionForDeploymentTypeException": - response = { - ...(await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationCommand = async ( @@ -1899,73 +1575,37 @@ const deserializeAws_json1_1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationAlreadyExistsException": case "com.amazonaws.codedeploy#ApplicationAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ApplicationAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationAlreadyExistsExceptionResponse(parsedOutput, context); case "ApplicationLimitExceededException": case "com.amazonaws.codedeploy#ApplicationLimitExceededException": - response = { - ...(await deserializeAws_json1_1ApplicationLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationLimitExceededExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidComputePlatformException": case "com.amazonaws.codedeploy#InvalidComputePlatformException": - response = { - ...(await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context); case "InvalidTagsToAddException": case "com.amazonaws.codedeploy#InvalidTagsToAddException": - response = { - ...(await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDeploymentCommand = async ( @@ -1993,223 +1633,94 @@ const deserializeAws_json1_1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentLimitExceededException": case "com.amazonaws.codedeploy#DeploymentLimitExceededException": - response = { - ...(await deserializeAws_json1_1DeploymentLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentLimitExceededExceptionResponse(parsedOutput, context); case "DescriptionTooLongException": case "com.amazonaws.codedeploy#DescriptionTooLongException": - response = { - ...(await deserializeAws_json1_1DescriptionTooLongExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DescriptionTooLongExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidAutoRollbackConfigException": case "com.amazonaws.codedeploy#InvalidAutoRollbackConfigException": - response = { - ...(await deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse(parsedOutput, context); case "InvalidAutoScalingGroupException": case "com.amazonaws.codedeploy#InvalidAutoScalingGroupException": - response = { - ...(await deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse(parsedOutput, context); case "InvalidDeploymentConfigNameException": case "com.amazonaws.codedeploy#InvalidDeploymentConfigNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); case "InvalidFileExistsBehaviorException": case "com.amazonaws.codedeploy#InvalidFileExistsBehaviorException": - response = { - ...(await deserializeAws_json1_1InvalidFileExistsBehaviorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFileExistsBehaviorExceptionResponse(parsedOutput, context); case "InvalidGitHubAccountTokenException": case "com.amazonaws.codedeploy#InvalidGitHubAccountTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGitHubAccountTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGitHubAccountTokenExceptionResponse(parsedOutput, context); case "InvalidIgnoreApplicationStopFailuresValueException": case "com.amazonaws.codedeploy#InvalidIgnoreApplicationStopFailuresValueException": - response = { - ...(await deserializeAws_json1_1InvalidIgnoreApplicationStopFailuresValueExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidIgnoreApplicationStopFailuresValueExceptionResponse( + parsedOutput, + context + ); case "InvalidLoadBalancerInfoException": case "com.amazonaws.codedeploy#InvalidLoadBalancerInfoException": - response = { - ...(await deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse(parsedOutput, context); case "InvalidRevisionException": case "com.amazonaws.codedeploy#InvalidRevisionException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.codedeploy#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "InvalidTargetInstancesException": case "com.amazonaws.codedeploy#InvalidTargetInstancesException": - response = { - ...(await deserializeAws_json1_1InvalidTargetInstancesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetInstancesExceptionResponse(parsedOutput, context); case "InvalidTrafficRoutingConfigurationException": case "com.amazonaws.codedeploy#InvalidTrafficRoutingConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context); case "InvalidUpdateOutdatedInstancesOnlyValueException": case "com.amazonaws.codedeploy#InvalidUpdateOutdatedInstancesOnlyValueException": - response = { - ...(await deserializeAws_json1_1InvalidUpdateOutdatedInstancesOnlyValueExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUpdateOutdatedInstancesOnlyValueExceptionResponse(parsedOutput, context); case "RevisionDoesNotExistException": case "com.amazonaws.codedeploy#RevisionDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RevisionDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionDoesNotExistExceptionResponse(parsedOutput, context); case "RevisionRequiredException": case "com.amazonaws.codedeploy#RevisionRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codedeploy#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDeploymentConfigCommand = async ( @@ -2237,81 +1748,40 @@ const deserializeAws_json1_1CreateDeploymentConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentConfigAlreadyExistsException": case "com.amazonaws.codedeploy#DeploymentConfigAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigAlreadyExistsExceptionResponse(parsedOutput, context); case "DeploymentConfigLimitExceededException": case "com.amazonaws.codedeploy#DeploymentConfigLimitExceededException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigLimitExceededExceptionResponse(parsedOutput, context); case "DeploymentConfigNameRequiredException": case "com.amazonaws.codedeploy#DeploymentConfigNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse(parsedOutput, context); case "InvalidComputePlatformException": case "com.amazonaws.codedeploy#InvalidComputePlatformException": - response = { - ...(await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context); case "InvalidDeploymentConfigNameException": case "com.amazonaws.codedeploy#InvalidDeploymentConfigNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context); case "InvalidMinimumHealthyHostValueException": case "com.amazonaws.codedeploy#InvalidMinimumHealthyHostValueException": - response = { - ...(await deserializeAws_json1_1InvalidMinimumHealthyHostValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMinimumHealthyHostValueExceptionResponse(parsedOutput, context); case "InvalidTrafficRoutingConfigurationException": case "com.amazonaws.codedeploy#InvalidTrafficRoutingConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDeploymentGroupCommand = async ( @@ -2339,292 +1809,118 @@ const deserializeAws_json1_1CreateDeploymentGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlarmsLimitExceededException": case "com.amazonaws.codedeploy#AlarmsLimitExceededException": - response = { - ...(await deserializeAws_json1_1AlarmsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlarmsLimitExceededExceptionResponse(parsedOutput, context); case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupAlreadyExistsException": case "com.amazonaws.codedeploy#DeploymentGroupAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupAlreadyExistsExceptionResponse(parsedOutput, context); case "DeploymentGroupLimitExceededException": case "com.amazonaws.codedeploy#DeploymentGroupLimitExceededException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupLimitExceededExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "ECSServiceMappingLimitExceededException": case "com.amazonaws.codedeploy#ECSServiceMappingLimitExceededException": - response = { - ...(await deserializeAws_json1_1ECSServiceMappingLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ECSServiceMappingLimitExceededExceptionResponse(parsedOutput, context); case "InvalidAlarmConfigException": case "com.amazonaws.codedeploy#InvalidAlarmConfigException": - response = { - ...(await deserializeAws_json1_1InvalidAlarmConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAlarmConfigExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidAutoRollbackConfigException": case "com.amazonaws.codedeploy#InvalidAutoRollbackConfigException": - response = { - ...(await deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse(parsedOutput, context); case "InvalidAutoScalingGroupException": case "com.amazonaws.codedeploy#InvalidAutoScalingGroupException": - response = { - ...(await deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse(parsedOutput, context); case "InvalidBlueGreenDeploymentConfigurationException": case "com.amazonaws.codedeploy#InvalidBlueGreenDeploymentConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationExceptionResponse(parsedOutput, context); case "InvalidDeploymentConfigNameException": case "com.amazonaws.codedeploy#InvalidDeploymentConfigNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentStyleException": case "com.amazonaws.codedeploy#InvalidDeploymentStyleException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentStyleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentStyleExceptionResponse(parsedOutput, context); case "InvalidEC2TagCombinationException": case "com.amazonaws.codedeploy#InvalidEC2TagCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidEC2TagCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEC2TagCombinationExceptionResponse(parsedOutput, context); case "InvalidEC2TagException": case "com.amazonaws.codedeploy#InvalidEC2TagException": - response = { - ...(await deserializeAws_json1_1InvalidEC2TagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEC2TagExceptionResponse(parsedOutput, context); case "InvalidECSServiceException": case "com.amazonaws.codedeploy#InvalidECSServiceException": - response = { - ...(await deserializeAws_json1_1InvalidECSServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidECSServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codedeploy#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidLoadBalancerInfoException": case "com.amazonaws.codedeploy#InvalidLoadBalancerInfoException": - response = { - ...(await deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse(parsedOutput, context); case "InvalidOnPremisesTagCombinationException": case "com.amazonaws.codedeploy#InvalidOnPremisesTagCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidOnPremisesTagCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOnPremisesTagCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.codedeploy#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.codedeploy#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "InvalidTagsToAddException": case "com.amazonaws.codedeploy#InvalidTagsToAddException": - response = { - ...(await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context); case "InvalidTargetGroupPairException": case "com.amazonaws.codedeploy#InvalidTargetGroupPairException": - response = { - ...(await deserializeAws_json1_1InvalidTargetGroupPairExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetGroupPairExceptionResponse(parsedOutput, context); case "InvalidTrafficRoutingConfigurationException": case "com.amazonaws.codedeploy#InvalidTrafficRoutingConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context); case "InvalidTriggerConfigException": case "com.amazonaws.codedeploy#InvalidTriggerConfigException": - response = { - ...(await deserializeAws_json1_1InvalidTriggerConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTriggerConfigExceptionResponse(parsedOutput, context); case "LifecycleHookLimitExceededException": case "com.amazonaws.codedeploy#LifecycleHookLimitExceededException": - response = { - ...(await deserializeAws_json1_1LifecycleHookLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecycleHookLimitExceededExceptionResponse(parsedOutput, context); case "RoleRequiredException": case "com.amazonaws.codedeploy#RoleRequiredException": - response = { - ...(await deserializeAws_json1_1RoleRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RoleRequiredExceptionResponse(parsedOutput, context); case "TagSetListLimitExceededException": case "com.amazonaws.codedeploy#TagSetListLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagSetListLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagSetListLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codedeploy#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "TriggerTargetsLimitExceededException": case "com.amazonaws.codedeploy#TriggerTargetsLimitExceededException": - response = { - ...(await deserializeAws_json1_1TriggerTargetsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TriggerTargetsLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCommand = async ( @@ -2649,49 +1945,28 @@ const deserializeAws_json1_1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.codedeploy#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeploymentConfigCommand = async ( @@ -2716,57 +1991,31 @@ const deserializeAws_json1_1DeleteDeploymentConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentConfigInUseException": case "com.amazonaws.codedeploy#DeploymentConfigInUseException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigInUseExceptionResponse(parsedOutput, context); case "DeploymentConfigNameRequiredException": case "com.amazonaws.codedeploy#DeploymentConfigNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse(parsedOutput, context); case "InvalidDeploymentConfigNameException": case "com.amazonaws.codedeploy#InvalidDeploymentConfigNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.codedeploy#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeploymentGroupCommand = async ( @@ -2794,65 +2043,34 @@ const deserializeAws_json1_1DeleteDeploymentGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.codedeploy#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGitHubAccountTokenCommand = async ( @@ -2880,65 +2098,34 @@ const deserializeAws_json1_1DeleteGitHubAccountTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GitHubAccountTokenDoesNotExistException": case "com.amazonaws.codedeploy#GitHubAccountTokenDoesNotExistException": - response = { - ...(await deserializeAws_json1_1GitHubAccountTokenDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GitHubAccountTokenDoesNotExistExceptionResponse(parsedOutput, context); case "GitHubAccountTokenNameRequiredException": case "com.amazonaws.codedeploy#GitHubAccountTokenNameRequiredException": - response = { - ...(await deserializeAws_json1_1GitHubAccountTokenNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GitHubAccountTokenNameRequiredExceptionResponse(parsedOutput, context); case "InvalidGitHubAccountTokenNameException": case "com.amazonaws.codedeploy#InvalidGitHubAccountTokenNameException": - response = { - ...(await deserializeAws_json1_1InvalidGitHubAccountTokenNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGitHubAccountTokenNameExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.codedeploy#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceValidationException": case "com.amazonaws.codedeploy#ResourceValidationException": - response = { - ...(await deserializeAws_json1_1ResourceValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourcesByExternalIdCommand = async ( @@ -2966,25 +2153,19 @@ const deserializeAws_json1_1DeleteResourcesByExternalIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterOnPremisesInstanceCommand = async ( @@ -3009,41 +2190,25 @@ const deserializeAws_json1_1DeregisterOnPremisesInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceNameRequiredException": case "com.amazonaws.codedeploy#InstanceNameRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetApplicationCommand = async ( @@ -3071,49 +2236,28 @@ const deserializeAws_json1_1GetApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetApplicationRevisionCommand = async ( @@ -3141,73 +2285,37 @@ const deserializeAws_json1_1GetApplicationRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidRevisionException": case "com.amazonaws.codedeploy#InvalidRevisionException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context); case "RevisionDoesNotExistException": case "com.amazonaws.codedeploy#RevisionDoesNotExistException": - response = { - ...(await deserializeAws_json1_1RevisionDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionDoesNotExistExceptionResponse(parsedOutput, context); case "RevisionRequiredException": case "com.amazonaws.codedeploy#RevisionRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeploymentCommand = async ( @@ -3235,49 +2343,28 @@ const deserializeAws_json1_1GetDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeploymentConfigCommand = async ( @@ -3305,57 +2392,31 @@ const deserializeAws_json1_1GetDeploymentConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentConfigNameRequiredException": case "com.amazonaws.codedeploy#DeploymentConfigNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse(parsedOutput, context); case "InvalidComputePlatformException": case "com.amazonaws.codedeploy#InvalidComputePlatformException": - response = { - ...(await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context); case "InvalidDeploymentConfigNameException": case "com.amazonaws.codedeploy#InvalidDeploymentConfigNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeploymentGroupCommand = async ( @@ -3383,81 +2444,40 @@ const deserializeAws_json1_1GetDeploymentGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeploymentInstanceCommand = async ( @@ -3485,81 +2505,40 @@ const deserializeAws_json1_1GetDeploymentInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "InstanceDoesNotExistException": case "com.amazonaws.codedeploy#InstanceDoesNotExistException": - response = { - ...(await deserializeAws_json1_1InstanceDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceDoesNotExistExceptionResponse(parsedOutput, context); case "InstanceIdRequiredException": case "com.amazonaws.codedeploy#InstanceIdRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceIdRequiredExceptionResponse(parsedOutput, context); case "InvalidComputePlatformException": case "com.amazonaws.codedeploy#InvalidComputePlatformException": - response = { - ...(await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeploymentTargetCommand = async ( @@ -3587,89 +2566,43 @@ const deserializeAws_json1_1GetDeploymentTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentNotStartedException": case "com.amazonaws.codedeploy#DeploymentNotStartedException": - response = { - ...(await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context); case "DeploymentTargetDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentTargetDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentTargetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentTargetDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentTargetIdRequiredException": case "com.amazonaws.codedeploy#DeploymentTargetIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentTargetIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentTargetIdRequiredExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidDeploymentTargetIdException": case "com.amazonaws.codedeploy#InvalidDeploymentTargetIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentTargetIdExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOnPremisesInstanceCommand = async ( @@ -3697,49 +2630,28 @@ const deserializeAws_json1_1GetOnPremisesInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceNameRequiredException": case "com.amazonaws.codedeploy#InstanceNameRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context); case "InstanceNotRegisteredException": case "com.amazonaws.codedeploy#InstanceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1InstanceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotRegisteredExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationRevisionsCommand = async ( @@ -3767,105 +2679,49 @@ const deserializeAws_json1_1ListApplicationRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "BucketNameFilterRequiredException": case "com.amazonaws.codedeploy#BucketNameFilterRequiredException": - response = { - ...(await deserializeAws_json1_1BucketNameFilterRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BucketNameFilterRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidBucketNameFilterException": case "com.amazonaws.codedeploy#InvalidBucketNameFilterException": - response = { - ...(await deserializeAws_json1_1InvalidBucketNameFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBucketNameFilterExceptionResponse(parsedOutput, context); case "InvalidDeployedStateFilterException": case "com.amazonaws.codedeploy#InvalidDeployedStateFilterException": - response = { - ...(await deserializeAws_json1_1InvalidDeployedStateFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeployedStateFilterExceptionResponse(parsedOutput, context); case "InvalidKeyPrefixFilterException": case "com.amazonaws.codedeploy#InvalidKeyPrefixFilterException": - response = { - ...(await deserializeAws_json1_1InvalidKeyPrefixFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyPrefixFilterExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidSortByException": case "com.amazonaws.codedeploy#InvalidSortByException": - response = { - ...(await deserializeAws_json1_1InvalidSortByExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSortByExceptionResponse(parsedOutput, context); case "InvalidSortOrderException": case "com.amazonaws.codedeploy#InvalidSortOrderException": - response = { - ...(await deserializeAws_json1_1InvalidSortOrderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSortOrderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationsCommand = async ( @@ -3893,33 +2749,22 @@ const deserializeAws_json1_1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeploymentConfigsCommand = async ( @@ -3947,33 +2792,22 @@ const deserializeAws_json1_1ListDeploymentConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeploymentGroupsCommand = async ( @@ -4001,57 +2835,31 @@ const deserializeAws_json1_1ListDeploymentGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeploymentInstancesCommand = async ( @@ -4079,105 +2887,49 @@ const deserializeAws_json1_1ListDeploymentInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentNotStartedException": case "com.amazonaws.codedeploy#DeploymentNotStartedException": - response = { - ...(await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context); case "InvalidComputePlatformException": case "com.amazonaws.codedeploy#InvalidComputePlatformException": - response = { - ...(await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidComputePlatformExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidDeploymentInstanceTypeException": case "com.amazonaws.codedeploy#InvalidDeploymentInstanceTypeException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentInstanceTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentInstanceTypeExceptionResponse(parsedOutput, context); case "InvalidInstanceStatusException": case "com.amazonaws.codedeploy#InvalidInstanceStatusException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceStatusExceptionResponse(parsedOutput, context); case "InvalidInstanceTypeException": case "com.amazonaws.codedeploy#InvalidInstanceTypeException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceTypeExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidTargetFilterNameException": case "com.amazonaws.codedeploy#InvalidTargetFilterNameException": - response = { - ...(await deserializeAws_json1_1InvalidTargetFilterNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetFilterNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeploymentsCommand = async ( @@ -4205,113 +2957,52 @@ const deserializeAws_json1_1ListDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentStatusException": case "com.amazonaws.codedeploy#InvalidDeploymentStatusException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentStatusExceptionResponse(parsedOutput, context); case "InvalidExternalIdException": case "com.amazonaws.codedeploy#InvalidExternalIdException": - response = { - ...(await deserializeAws_json1_1InvalidExternalIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidExternalIdExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codedeploy#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidTimeRangeException": case "com.amazonaws.codedeploy#InvalidTimeRangeException": - response = { - ...(await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeploymentTargetsCommand = async ( @@ -4339,89 +3030,43 @@ const deserializeAws_json1_1ListDeploymentTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentNotStartedException": case "com.amazonaws.codedeploy#DeploymentNotStartedException": - response = { - ...(await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidDeploymentInstanceTypeException": case "com.amazonaws.codedeploy#InvalidDeploymentInstanceTypeException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentInstanceTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentInstanceTypeExceptionResponse(parsedOutput, context); case "InvalidInstanceStatusException": case "com.amazonaws.codedeploy#InvalidInstanceStatusException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceStatusExceptionResponse(parsedOutput, context); case "InvalidInstanceTypeException": case "com.amazonaws.codedeploy#InvalidInstanceTypeException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceTypeExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGitHubAccountTokenNamesCommand = async ( @@ -4449,49 +3094,28 @@ const deserializeAws_json1_1ListGitHubAccountTokenNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.codedeploy#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceValidationException": case "com.amazonaws.codedeploy#ResourceValidationException": - response = { - ...(await deserializeAws_json1_1ResourceValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOnPremisesInstancesCommand = async ( @@ -4519,49 +3143,28 @@ const deserializeAws_json1_1ListOnPremisesInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codedeploy#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRegistrationStatusException": case "com.amazonaws.codedeploy#InvalidRegistrationStatusException": - response = { - ...(await deserializeAws_json1_1InvalidRegistrationStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRegistrationStatusExceptionResponse(parsedOutput, context); case "InvalidTagFilterException": case "com.amazonaws.codedeploy#InvalidTagFilterException": - response = { - ...(await deserializeAws_json1_1InvalidTagFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagFilterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -4589,49 +3192,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArnNotSupportedException": case "com.amazonaws.codedeploy#ArnNotSupportedException": - response = { - ...(await deserializeAws_json1_1ArnNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArnNotSupportedExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.codedeploy#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "ResourceArnRequiredException": case "com.amazonaws.codedeploy#ResourceArnRequiredException": - response = { - ...(await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLifecycleEventHookExecutionStatusCommand = async ( @@ -4659,84 +3241,43 @@ const deserializeAws_json1_1PutLifecycleEventHookExecutionStatusCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "InvalidLifecycleEventHookExecutionIdException": case "com.amazonaws.codedeploy#InvalidLifecycleEventHookExecutionIdException": - response = { - ...(await deserializeAws_json1_1InvalidLifecycleEventHookExecutionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLifecycleEventHookExecutionIdExceptionResponse(parsedOutput, context); case "InvalidLifecycleEventHookExecutionStatusException": case "com.amazonaws.codedeploy#InvalidLifecycleEventHookExecutionStatusException": - response = { - ...(await deserializeAws_json1_1InvalidLifecycleEventHookExecutionStatusExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLifecycleEventHookExecutionStatusExceptionResponse( + parsedOutput, + context + ); case "LifecycleEventAlreadyCompletedException": case "com.amazonaws.codedeploy#LifecycleEventAlreadyCompletedException": - response = { - ...(await deserializeAws_json1_1LifecycleEventAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecycleEventAlreadyCompletedExceptionResponse(parsedOutput, context); case "UnsupportedActionForDeploymentTypeException": case "com.amazonaws.codedeploy#UnsupportedActionForDeploymentTypeException": - response = { - ...(await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterApplicationRevisionCommand = async ( @@ -4761,73 +3302,37 @@ const deserializeAws_json1_1RegisterApplicationRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DescriptionTooLongException": case "com.amazonaws.codedeploy#DescriptionTooLongException": - response = { - ...(await deserializeAws_json1_1DescriptionTooLongExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DescriptionTooLongExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidRevisionException": case "com.amazonaws.codedeploy#InvalidRevisionException": - response = { - ...(await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRevisionExceptionResponse(parsedOutput, context); case "RevisionRequiredException": case "com.amazonaws.codedeploy#RevisionRequiredException": - response = { - ...(await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RevisionRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterOnPremisesInstanceCommand = async ( @@ -4852,105 +3357,49 @@ const deserializeAws_json1_1RegisterOnPremisesInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IamArnRequiredException": case "com.amazonaws.codedeploy#IamArnRequiredException": - response = { - ...(await deserializeAws_json1_1IamArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IamArnRequiredExceptionResponse(parsedOutput, context); case "IamSessionArnAlreadyRegisteredException": case "com.amazonaws.codedeploy#IamSessionArnAlreadyRegisteredException": - response = { - ...(await deserializeAws_json1_1IamSessionArnAlreadyRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IamSessionArnAlreadyRegisteredExceptionResponse(parsedOutput, context); case "IamUserArnAlreadyRegisteredException": case "com.amazonaws.codedeploy#IamUserArnAlreadyRegisteredException": - response = { - ...(await deserializeAws_json1_1IamUserArnAlreadyRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IamUserArnAlreadyRegisteredExceptionResponse(parsedOutput, context); case "IamUserArnRequiredException": case "com.amazonaws.codedeploy#IamUserArnRequiredException": - response = { - ...(await deserializeAws_json1_1IamUserArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IamUserArnRequiredExceptionResponse(parsedOutput, context); case "InstanceNameAlreadyRegisteredException": case "com.amazonaws.codedeploy#InstanceNameAlreadyRegisteredException": - response = { - ...(await deserializeAws_json1_1InstanceNameAlreadyRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameAlreadyRegisteredExceptionResponse(parsedOutput, context); case "InstanceNameRequiredException": case "com.amazonaws.codedeploy#InstanceNameRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context); case "InvalidIamSessionArnException": case "com.amazonaws.codedeploy#InvalidIamSessionArnException": - response = { - ...(await deserializeAws_json1_1InvalidIamSessionArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidIamSessionArnExceptionResponse(parsedOutput, context); case "InvalidIamUserArnException": case "com.amazonaws.codedeploy#InvalidIamUserArnException": - response = { - ...(await deserializeAws_json1_1InvalidIamUserArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidIamUserArnExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); case "MultipleIamArnsProvidedException": case "com.amazonaws.codedeploy#MultipleIamArnsProvidedException": - response = { - ...(await deserializeAws_json1_1MultipleIamArnsProvidedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MultipleIamArnsProvidedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromOnPremisesInstancesCommand = async ( @@ -4975,81 +3424,40 @@ const deserializeAws_json1_1RemoveTagsFromOnPremisesInstancesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceLimitExceededException": case "com.amazonaws.codedeploy#InstanceLimitExceededException": - response = { - ...(await deserializeAws_json1_1InstanceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceLimitExceededExceptionResponse(parsedOutput, context); case "InstanceNameRequiredException": case "com.amazonaws.codedeploy#InstanceNameRequiredException": - response = { - ...(await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNameRequiredExceptionResponse(parsedOutput, context); case "InstanceNotRegisteredException": case "com.amazonaws.codedeploy#InstanceNotRegisteredException": - response = { - ...(await deserializeAws_json1_1InstanceNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotRegisteredExceptionResponse(parsedOutput, context); case "InvalidInstanceNameException": case "com.amazonaws.codedeploy#InvalidInstanceNameException": - response = { - ...(await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceNameExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.codedeploy#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.codedeploy#TagLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context); case "TagRequiredException": case "com.amazonaws.codedeploy#TagRequiredException": - response = { - ...(await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SkipWaitTimeForInstanceTerminationCommand = async ( @@ -5074,73 +3482,37 @@ const deserializeAws_json1_1SkipWaitTimeForInstanceTerminationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentAlreadyCompletedException": case "com.amazonaws.codedeploy#DeploymentAlreadyCompletedException": - response = { - ...(await deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse(parsedOutput, context); case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "DeploymentNotStartedException": case "com.amazonaws.codedeploy#DeploymentNotStartedException": - response = { - ...(await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentNotStartedExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "UnsupportedActionForDeploymentTypeException": case "com.amazonaws.codedeploy#UnsupportedActionForDeploymentTypeException": - response = { - ...(await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopDeploymentCommand = async ( @@ -5168,73 +3540,37 @@ const deserializeAws_json1_1StopDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeploymentAlreadyCompletedException": case "com.amazonaws.codedeploy#DeploymentAlreadyCompletedException": - response = { - ...(await deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse(parsedOutput, context); case "DeploymentDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentIdRequiredException": case "com.amazonaws.codedeploy#DeploymentIdRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentIdRequiredExceptionResponse(parsedOutput, context); case "InvalidDeploymentIdException": case "com.amazonaws.codedeploy#InvalidDeploymentIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentIdExceptionResponse(parsedOutput, context); case "UnsupportedActionForDeploymentTypeException": case "com.amazonaws.codedeploy#UnsupportedActionForDeploymentTypeException": - response = { - ...(await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -5262,89 +3598,43 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ArnNotSupportedException": case "com.amazonaws.codedeploy#ArnNotSupportedException": - response = { - ...(await deserializeAws_json1_1ArnNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArnNotSupportedExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.codedeploy#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTagsToAddException": case "com.amazonaws.codedeploy#InvalidTagsToAddException": - response = { - ...(await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context); case "ResourceArnRequiredException": case "com.amazonaws.codedeploy#ResourceArnRequiredException": - response = { - ...(await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context); case "TagRequiredException": case "com.amazonaws.codedeploy#TagRequiredException": - response = { - ...(await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -5372,89 +3662,43 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ArnNotSupportedException": case "com.amazonaws.codedeploy#ArnNotSupportedException": - response = { - ...(await deserializeAws_json1_1ArnNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArnNotSupportedExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.codedeploy#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTagsToAddException": case "com.amazonaws.codedeploy#InvalidTagsToAddException": - response = { - ...(await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsToAddExceptionResponse(parsedOutput, context); case "ResourceArnRequiredException": case "com.amazonaws.codedeploy#ResourceArnRequiredException": - response = { - ...(await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceArnRequiredExceptionResponse(parsedOutput, context); case "TagRequiredException": case "com.amazonaws.codedeploy#TagRequiredException": - response = { - ...(await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagRequiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationCommand = async ( @@ -5479,57 +3723,31 @@ const deserializeAws_json1_1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ApplicationAlreadyExistsException": case "com.amazonaws.codedeploy#ApplicationAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ApplicationAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationAlreadyExistsExceptionResponse(parsedOutput, context); case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDeploymentGroupCommand = async ( @@ -5557,276 +3775,112 @@ const deserializeAws_json1_1UpdateDeploymentGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlarmsLimitExceededException": case "com.amazonaws.codedeploy#AlarmsLimitExceededException": - response = { - ...(await deserializeAws_json1_1AlarmsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlarmsLimitExceededExceptionResponse(parsedOutput, context); case "ApplicationDoesNotExistException": case "com.amazonaws.codedeploy#ApplicationDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse(parsedOutput, context); case "ApplicationNameRequiredException": case "com.amazonaws.codedeploy#ApplicationNameRequiredException": - response = { - ...(await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApplicationNameRequiredExceptionResponse(parsedOutput, context); case "DeploymentConfigDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentConfigDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupAlreadyExistsException": case "com.amazonaws.codedeploy#DeploymentGroupAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupAlreadyExistsExceptionResponse(parsedOutput, context); case "DeploymentGroupDoesNotExistException": case "com.amazonaws.codedeploy#DeploymentGroupDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse(parsedOutput, context); case "DeploymentGroupNameRequiredException": case "com.amazonaws.codedeploy#DeploymentGroupNameRequiredException": - response = { - ...(await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse(parsedOutput, context); case "ECSServiceMappingLimitExceededException": case "com.amazonaws.codedeploy#ECSServiceMappingLimitExceededException": - response = { - ...(await deserializeAws_json1_1ECSServiceMappingLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ECSServiceMappingLimitExceededExceptionResponse(parsedOutput, context); case "InvalidAlarmConfigException": case "com.amazonaws.codedeploy#InvalidAlarmConfigException": - response = { - ...(await deserializeAws_json1_1InvalidAlarmConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAlarmConfigExceptionResponse(parsedOutput, context); case "InvalidApplicationNameException": case "com.amazonaws.codedeploy#InvalidApplicationNameException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationNameExceptionResponse(parsedOutput, context); case "InvalidAutoRollbackConfigException": case "com.amazonaws.codedeploy#InvalidAutoRollbackConfigException": - response = { - ...(await deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse(parsedOutput, context); case "InvalidAutoScalingGroupException": case "com.amazonaws.codedeploy#InvalidAutoScalingGroupException": - response = { - ...(await deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse(parsedOutput, context); case "InvalidBlueGreenDeploymentConfigurationException": case "com.amazonaws.codedeploy#InvalidBlueGreenDeploymentConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationExceptionResponse(parsedOutput, context); case "InvalidDeploymentConfigNameException": case "com.amazonaws.codedeploy#InvalidDeploymentConfigNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentGroupNameException": case "com.amazonaws.codedeploy#InvalidDeploymentGroupNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse(parsedOutput, context); case "InvalidDeploymentStyleException": case "com.amazonaws.codedeploy#InvalidDeploymentStyleException": - response = { - ...(await deserializeAws_json1_1InvalidDeploymentStyleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeploymentStyleExceptionResponse(parsedOutput, context); case "InvalidEC2TagCombinationException": case "com.amazonaws.codedeploy#InvalidEC2TagCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidEC2TagCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEC2TagCombinationExceptionResponse(parsedOutput, context); case "InvalidEC2TagException": case "com.amazonaws.codedeploy#InvalidEC2TagException": - response = { - ...(await deserializeAws_json1_1InvalidEC2TagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEC2TagExceptionResponse(parsedOutput, context); case "InvalidECSServiceException": case "com.amazonaws.codedeploy#InvalidECSServiceException": - response = { - ...(await deserializeAws_json1_1InvalidECSServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidECSServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.codedeploy#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidLoadBalancerInfoException": case "com.amazonaws.codedeploy#InvalidLoadBalancerInfoException": - response = { - ...(await deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse(parsedOutput, context); case "InvalidOnPremisesTagCombinationException": case "com.amazonaws.codedeploy#InvalidOnPremisesTagCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidOnPremisesTagCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOnPremisesTagCombinationExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.codedeploy#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.codedeploy#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "InvalidTargetGroupPairException": case "com.amazonaws.codedeploy#InvalidTargetGroupPairException": - response = { - ...(await deserializeAws_json1_1InvalidTargetGroupPairExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetGroupPairExceptionResponse(parsedOutput, context); case "InvalidTrafficRoutingConfigurationException": case "com.amazonaws.codedeploy#InvalidTrafficRoutingConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse(parsedOutput, context); case "InvalidTriggerConfigException": case "com.amazonaws.codedeploy#InvalidTriggerConfigException": - response = { - ...(await deserializeAws_json1_1InvalidTriggerConfigExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTriggerConfigExceptionResponse(parsedOutput, context); case "LifecycleHookLimitExceededException": case "com.amazonaws.codedeploy#LifecycleHookLimitExceededException": - response = { - ...(await deserializeAws_json1_1LifecycleHookLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecycleHookLimitExceededExceptionResponse(parsedOutput, context); case "TagSetListLimitExceededException": case "com.amazonaws.codedeploy#TagSetListLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagSetListLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagSetListLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codedeploy#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "TriggerTargetsLimitExceededException": case "com.amazonaws.codedeploy#TriggerTargetsLimitExceededException": - response = { - ...(await deserializeAws_json1_1TriggerTargetsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TriggerTargetsLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AlarmsLimitExceededExceptionResponse = async ( @@ -5835,13 +3889,11 @@ const deserializeAws_json1_1AlarmsLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AlarmsLimitExceededException(body, context); - const contents: AlarmsLimitExceededException = { - name: "AlarmsLimitExceededException", - $fault: "client", + const exception = new AlarmsLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApplicationAlreadyExistsExceptionResponse = async ( @@ -5850,13 +3902,11 @@ const deserializeAws_json1_1ApplicationAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApplicationAlreadyExistsException(body, context); - const contents: ApplicationAlreadyExistsException = { - name: "ApplicationAlreadyExistsException", - $fault: "client", + const exception = new ApplicationAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse = async ( @@ -5865,13 +3915,11 @@ const deserializeAws_json1_1ApplicationDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApplicationDoesNotExistException(body, context); - const contents: ApplicationDoesNotExistException = { - name: "ApplicationDoesNotExistException", - $fault: "client", + const exception = new ApplicationDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApplicationLimitExceededExceptionResponse = async ( @@ -5880,13 +3928,11 @@ const deserializeAws_json1_1ApplicationLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApplicationLimitExceededException(body, context); - const contents: ApplicationLimitExceededException = { - name: "ApplicationLimitExceededException", - $fault: "client", + const exception = new ApplicationLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApplicationNameRequiredExceptionResponse = async ( @@ -5895,13 +3941,11 @@ const deserializeAws_json1_1ApplicationNameRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApplicationNameRequiredException(body, context); - const contents: ApplicationNameRequiredException = { - name: "ApplicationNameRequiredException", - $fault: "client", + const exception = new ApplicationNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ArnNotSupportedExceptionResponse = async ( @@ -5910,13 +3954,11 @@ const deserializeAws_json1_1ArnNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ArnNotSupportedException(body, context); - const contents: ArnNotSupportedException = { - name: "ArnNotSupportedException", - $fault: "client", + const exception = new ArnNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BatchLimitExceededExceptionResponse = async ( @@ -5925,13 +3967,11 @@ const deserializeAws_json1_1BatchLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BatchLimitExceededException(body, context); - const contents: BatchLimitExceededException = { - name: "BatchLimitExceededException", - $fault: "client", + const exception = new BatchLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BucketNameFilterRequiredExceptionResponse = async ( @@ -5940,13 +3980,11 @@ const deserializeAws_json1_1BucketNameFilterRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BucketNameFilterRequiredException(body, context); - const contents: BucketNameFilterRequiredException = { - name: "BucketNameFilterRequiredException", - $fault: "client", + const exception = new BucketNameFilterRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse = async ( @@ -5955,13 +3993,11 @@ const deserializeAws_json1_1DeploymentAlreadyCompletedExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentAlreadyCompletedException(body, context); - const contents: DeploymentAlreadyCompletedException = { - name: "DeploymentAlreadyCompletedException", - $fault: "client", + const exception = new DeploymentAlreadyCompletedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentConfigAlreadyExistsExceptionResponse = async ( @@ -5970,13 +4006,11 @@ const deserializeAws_json1_1DeploymentConfigAlreadyExistsExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentConfigAlreadyExistsException(body, context); - const contents: DeploymentConfigAlreadyExistsException = { - name: "DeploymentConfigAlreadyExistsException", - $fault: "client", + const exception = new DeploymentConfigAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse = async ( @@ -5985,13 +4019,11 @@ const deserializeAws_json1_1DeploymentConfigDoesNotExistExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentConfigDoesNotExistException(body, context); - const contents: DeploymentConfigDoesNotExistException = { - name: "DeploymentConfigDoesNotExistException", - $fault: "client", + const exception = new DeploymentConfigDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentConfigInUseExceptionResponse = async ( @@ -6000,13 +4032,11 @@ const deserializeAws_json1_1DeploymentConfigInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentConfigInUseException(body, context); - const contents: DeploymentConfigInUseException = { - name: "DeploymentConfigInUseException", - $fault: "client", + const exception = new DeploymentConfigInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentConfigLimitExceededExceptionResponse = async ( @@ -6015,13 +4045,11 @@ const deserializeAws_json1_1DeploymentConfigLimitExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentConfigLimitExceededException(body, context); - const contents: DeploymentConfigLimitExceededException = { - name: "DeploymentConfigLimitExceededException", - $fault: "client", + const exception = new DeploymentConfigLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse = async ( @@ -6030,13 +4058,11 @@ const deserializeAws_json1_1DeploymentConfigNameRequiredExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentConfigNameRequiredException(body, context); - const contents: DeploymentConfigNameRequiredException = { - name: "DeploymentConfigNameRequiredException", - $fault: "client", + const exception = new DeploymentConfigNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse = async ( @@ -6045,13 +4071,11 @@ const deserializeAws_json1_1DeploymentDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentDoesNotExistException(body, context); - const contents: DeploymentDoesNotExistException = { - name: "DeploymentDoesNotExistException", - $fault: "client", + const exception = new DeploymentDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentGroupAlreadyExistsExceptionResponse = async ( @@ -6060,13 +4084,11 @@ const deserializeAws_json1_1DeploymentGroupAlreadyExistsExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentGroupAlreadyExistsException(body, context); - const contents: DeploymentGroupAlreadyExistsException = { - name: "DeploymentGroupAlreadyExistsException", - $fault: "client", + const exception = new DeploymentGroupAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse = async ( @@ -6075,13 +4097,11 @@ const deserializeAws_json1_1DeploymentGroupDoesNotExistExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentGroupDoesNotExistException(body, context); - const contents: DeploymentGroupDoesNotExistException = { - name: "DeploymentGroupDoesNotExistException", - $fault: "client", + const exception = new DeploymentGroupDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentGroupLimitExceededExceptionResponse = async ( @@ -6090,13 +4110,11 @@ const deserializeAws_json1_1DeploymentGroupLimitExceededExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentGroupLimitExceededException(body, context); - const contents: DeploymentGroupLimitExceededException = { - name: "DeploymentGroupLimitExceededException", - $fault: "client", + const exception = new DeploymentGroupLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse = async ( @@ -6105,13 +4123,11 @@ const deserializeAws_json1_1DeploymentGroupNameRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentGroupNameRequiredException(body, context); - const contents: DeploymentGroupNameRequiredException = { - name: "DeploymentGroupNameRequiredException", - $fault: "client", + const exception = new DeploymentGroupNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentIdRequiredExceptionResponse = async ( @@ -6120,13 +4136,11 @@ const deserializeAws_json1_1DeploymentIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentIdRequiredException(body, context); - const contents: DeploymentIdRequiredException = { - name: "DeploymentIdRequiredException", - $fault: "client", + const exception = new DeploymentIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentIsNotInReadyStateExceptionResponse = async ( @@ -6135,13 +4149,11 @@ const deserializeAws_json1_1DeploymentIsNotInReadyStateExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentIsNotInReadyStateException(body, context); - const contents: DeploymentIsNotInReadyStateException = { - name: "DeploymentIsNotInReadyStateException", - $fault: "client", + const exception = new DeploymentIsNotInReadyStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentLimitExceededExceptionResponse = async ( @@ -6150,13 +4162,11 @@ const deserializeAws_json1_1DeploymentLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentLimitExceededException(body, context); - const contents: DeploymentLimitExceededException = { - name: "DeploymentLimitExceededException", - $fault: "client", + const exception = new DeploymentLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentNotStartedExceptionResponse = async ( @@ -6165,13 +4175,11 @@ const deserializeAws_json1_1DeploymentNotStartedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentNotStartedException(body, context); - const contents: DeploymentNotStartedException = { - name: "DeploymentNotStartedException", - $fault: "client", + const exception = new DeploymentNotStartedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentTargetDoesNotExistExceptionResponse = async ( @@ -6180,13 +4188,11 @@ const deserializeAws_json1_1DeploymentTargetDoesNotExistExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentTargetDoesNotExistException(body, context); - const contents: DeploymentTargetDoesNotExistException = { - name: "DeploymentTargetDoesNotExistException", - $fault: "client", + const exception = new DeploymentTargetDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentTargetIdRequiredExceptionResponse = async ( @@ -6195,13 +4201,11 @@ const deserializeAws_json1_1DeploymentTargetIdRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentTargetIdRequiredException(body, context); - const contents: DeploymentTargetIdRequiredException = { - name: "DeploymentTargetIdRequiredException", - $fault: "client", + const exception = new DeploymentTargetIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeploymentTargetListSizeExceededExceptionResponse = async ( @@ -6210,13 +4214,11 @@ const deserializeAws_json1_1DeploymentTargetListSizeExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeploymentTargetListSizeExceededException(body, context); - const contents: DeploymentTargetListSizeExceededException = { - name: "DeploymentTargetListSizeExceededException", - $fault: "client", + const exception = new DeploymentTargetListSizeExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DescriptionTooLongExceptionResponse = async ( @@ -6225,13 +4227,11 @@ const deserializeAws_json1_1DescriptionTooLongExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DescriptionTooLongException(body, context); - const contents: DescriptionTooLongException = { - name: "DescriptionTooLongException", - $fault: "client", + const exception = new DescriptionTooLongException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ECSServiceMappingLimitExceededExceptionResponse = async ( @@ -6240,13 +4240,11 @@ const deserializeAws_json1_1ECSServiceMappingLimitExceededExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ECSServiceMappingLimitExceededException(body, context); - const contents: ECSServiceMappingLimitExceededException = { - name: "ECSServiceMappingLimitExceededException", - $fault: "client", + const exception = new ECSServiceMappingLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1GitHubAccountTokenDoesNotExistExceptionResponse = async ( @@ -6255,13 +4253,11 @@ const deserializeAws_json1_1GitHubAccountTokenDoesNotExistExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1GitHubAccountTokenDoesNotExistException(body, context); - const contents: GitHubAccountTokenDoesNotExistException = { - name: "GitHubAccountTokenDoesNotExistException", - $fault: "client", + const exception = new GitHubAccountTokenDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1GitHubAccountTokenNameRequiredExceptionResponse = async ( @@ -6270,13 +4266,11 @@ const deserializeAws_json1_1GitHubAccountTokenNameRequiredExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1GitHubAccountTokenNameRequiredException(body, context); - const contents: GitHubAccountTokenNameRequiredException = { - name: "GitHubAccountTokenNameRequiredException", - $fault: "client", + const exception = new GitHubAccountTokenNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IamArnRequiredExceptionResponse = async ( @@ -6285,13 +4279,11 @@ const deserializeAws_json1_1IamArnRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IamArnRequiredException(body, context); - const contents: IamArnRequiredException = { - name: "IamArnRequiredException", - $fault: "client", + const exception = new IamArnRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IamSessionArnAlreadyRegisteredExceptionResponse = async ( @@ -6300,13 +4292,11 @@ const deserializeAws_json1_1IamSessionArnAlreadyRegisteredExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IamSessionArnAlreadyRegisteredException(body, context); - const contents: IamSessionArnAlreadyRegisteredException = { - name: "IamSessionArnAlreadyRegisteredException", - $fault: "client", + const exception = new IamSessionArnAlreadyRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IamUserArnAlreadyRegisteredExceptionResponse = async ( @@ -6315,13 +4305,11 @@ const deserializeAws_json1_1IamUserArnAlreadyRegisteredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IamUserArnAlreadyRegisteredException(body, context); - const contents: IamUserArnAlreadyRegisteredException = { - name: "IamUserArnAlreadyRegisteredException", - $fault: "client", + const exception = new IamUserArnAlreadyRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IamUserArnRequiredExceptionResponse = async ( @@ -6330,13 +4318,11 @@ const deserializeAws_json1_1IamUserArnRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IamUserArnRequiredException(body, context); - const contents: IamUserArnRequiredException = { - name: "IamUserArnRequiredException", - $fault: "client", + const exception = new IamUserArnRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceDoesNotExistExceptionResponse = async ( @@ -6345,13 +4331,11 @@ const deserializeAws_json1_1InstanceDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceDoesNotExistException(body, context); - const contents: InstanceDoesNotExistException = { - name: "InstanceDoesNotExistException", - $fault: "client", + const exception = new InstanceDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceIdRequiredExceptionResponse = async ( @@ -6360,13 +4344,11 @@ const deserializeAws_json1_1InstanceIdRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceIdRequiredException(body, context); - const contents: InstanceIdRequiredException = { - name: "InstanceIdRequiredException", - $fault: "client", + const exception = new InstanceIdRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceLimitExceededExceptionResponse = async ( @@ -6375,13 +4357,11 @@ const deserializeAws_json1_1InstanceLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceLimitExceededException(body, context); - const contents: InstanceLimitExceededException = { - name: "InstanceLimitExceededException", - $fault: "client", + const exception = new InstanceLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceNameAlreadyRegisteredExceptionResponse = async ( @@ -6390,13 +4370,11 @@ const deserializeAws_json1_1InstanceNameAlreadyRegisteredExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceNameAlreadyRegisteredException(body, context); - const contents: InstanceNameAlreadyRegisteredException = { - name: "InstanceNameAlreadyRegisteredException", - $fault: "client", + const exception = new InstanceNameAlreadyRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceNameRequiredExceptionResponse = async ( @@ -6405,13 +4383,11 @@ const deserializeAws_json1_1InstanceNameRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceNameRequiredException(body, context); - const contents: InstanceNameRequiredException = { - name: "InstanceNameRequiredException", - $fault: "client", + const exception = new InstanceNameRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceNotRegisteredExceptionResponse = async ( @@ -6420,13 +4396,11 @@ const deserializeAws_json1_1InstanceNotRegisteredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceNotRegisteredException(body, context); - const contents: InstanceNotRegisteredException = { - name: "InstanceNotRegisteredException", - $fault: "client", + const exception = new InstanceNotRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAlarmConfigExceptionResponse = async ( @@ -6435,13 +4409,11 @@ const deserializeAws_json1_1InvalidAlarmConfigExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAlarmConfigException(body, context); - const contents: InvalidAlarmConfigException = { - name: "InvalidAlarmConfigException", - $fault: "client", + const exception = new InvalidAlarmConfigException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApplicationNameExceptionResponse = async ( @@ -6450,13 +4422,11 @@ const deserializeAws_json1_1InvalidApplicationNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApplicationNameException(body, context); - const contents: InvalidApplicationNameException = { - name: "InvalidApplicationNameException", - $fault: "client", + const exception = new InvalidApplicationNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArnExceptionResponse = async ( @@ -6465,13 +4435,11 @@ const deserializeAws_json1_1InvalidArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArnException(body, context); - const contents: InvalidArnException = { - name: "InvalidArnException", - $fault: "client", + const exception = new InvalidArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse = async ( @@ -6480,13 +4448,11 @@ const deserializeAws_json1_1InvalidAutoRollbackConfigExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAutoRollbackConfigException(body, context); - const contents: InvalidAutoRollbackConfigException = { - name: "InvalidAutoRollbackConfigException", - $fault: "client", + const exception = new InvalidAutoRollbackConfigException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse = async ( @@ -6495,13 +4461,11 @@ const deserializeAws_json1_1InvalidAutoScalingGroupExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAutoScalingGroupException(body, context); - const contents: InvalidAutoScalingGroupException = { - name: "InvalidAutoScalingGroupException", - $fault: "client", + const exception = new InvalidAutoScalingGroupException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationExceptionResponse = async ( @@ -6510,13 +4474,11 @@ const deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationExceptionResp ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidBlueGreenDeploymentConfigurationException(body, context); - const contents: InvalidBlueGreenDeploymentConfigurationException = { - name: "InvalidBlueGreenDeploymentConfigurationException", - $fault: "client", + const exception = new InvalidBlueGreenDeploymentConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidBucketNameFilterExceptionResponse = async ( @@ -6525,13 +4487,11 @@ const deserializeAws_json1_1InvalidBucketNameFilterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidBucketNameFilterException(body, context); - const contents: InvalidBucketNameFilterException = { - name: "InvalidBucketNameFilterException", - $fault: "client", + const exception = new InvalidBucketNameFilterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidComputePlatformExceptionResponse = async ( @@ -6540,13 +4500,11 @@ const deserializeAws_json1_1InvalidComputePlatformExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidComputePlatformException(body, context); - const contents: InvalidComputePlatformException = { - name: "InvalidComputePlatformException", - $fault: "client", + const exception = new InvalidComputePlatformException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeployedStateFilterExceptionResponse = async ( @@ -6555,13 +4513,11 @@ const deserializeAws_json1_1InvalidDeployedStateFilterExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeployedStateFilterException(body, context); - const contents: InvalidDeployedStateFilterException = { - name: "InvalidDeployedStateFilterException", - $fault: "client", + const exception = new InvalidDeployedStateFilterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse = async ( @@ -6570,13 +4526,11 @@ const deserializeAws_json1_1InvalidDeploymentConfigNameExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentConfigNameException(body, context); - const contents: InvalidDeploymentConfigNameException = { - name: "InvalidDeploymentConfigNameException", - $fault: "client", + const exception = new InvalidDeploymentConfigNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse = async ( @@ -6585,13 +4539,11 @@ const deserializeAws_json1_1InvalidDeploymentGroupNameExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentGroupNameException(body, context); - const contents: InvalidDeploymentGroupNameException = { - name: "InvalidDeploymentGroupNameException", - $fault: "client", + const exception = new InvalidDeploymentGroupNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentIdExceptionResponse = async ( @@ -6600,13 +4552,11 @@ const deserializeAws_json1_1InvalidDeploymentIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentIdException(body, context); - const contents: InvalidDeploymentIdException = { - name: "InvalidDeploymentIdException", - $fault: "client", + const exception = new InvalidDeploymentIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentInstanceTypeExceptionResponse = async ( @@ -6615,13 +4565,11 @@ const deserializeAws_json1_1InvalidDeploymentInstanceTypeExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentInstanceTypeException(body, context); - const contents: InvalidDeploymentInstanceTypeException = { - name: "InvalidDeploymentInstanceTypeException", - $fault: "client", + const exception = new InvalidDeploymentInstanceTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentStatusExceptionResponse = async ( @@ -6630,13 +4578,11 @@ const deserializeAws_json1_1InvalidDeploymentStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentStatusException(body, context); - const contents: InvalidDeploymentStatusException = { - name: "InvalidDeploymentStatusException", - $fault: "client", + const exception = new InvalidDeploymentStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentStyleExceptionResponse = async ( @@ -6645,13 +4591,11 @@ const deserializeAws_json1_1InvalidDeploymentStyleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentStyleException(body, context); - const contents: InvalidDeploymentStyleException = { - name: "InvalidDeploymentStyleException", - $fault: "client", + const exception = new InvalidDeploymentStyleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentTargetIdExceptionResponse = async ( @@ -6660,13 +4604,11 @@ const deserializeAws_json1_1InvalidDeploymentTargetIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentTargetIdException(body, context); - const contents: InvalidDeploymentTargetIdException = { - name: "InvalidDeploymentTargetIdException", - $fault: "client", + const exception = new InvalidDeploymentTargetIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeploymentWaitTypeExceptionResponse = async ( @@ -6675,13 +4617,11 @@ const deserializeAws_json1_1InvalidDeploymentWaitTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeploymentWaitTypeException(body, context); - const contents: InvalidDeploymentWaitTypeException = { - name: "InvalidDeploymentWaitTypeException", - $fault: "client", + const exception = new InvalidDeploymentWaitTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEC2TagCombinationExceptionResponse = async ( @@ -6690,13 +4630,11 @@ const deserializeAws_json1_1InvalidEC2TagCombinationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEC2TagCombinationException(body, context); - const contents: InvalidEC2TagCombinationException = { - name: "InvalidEC2TagCombinationException", - $fault: "client", + const exception = new InvalidEC2TagCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEC2TagExceptionResponse = async ( @@ -6705,13 +4643,11 @@ const deserializeAws_json1_1InvalidEC2TagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEC2TagException(body, context); - const contents: InvalidEC2TagException = { - name: "InvalidEC2TagException", - $fault: "client", + const exception = new InvalidEC2TagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidECSServiceExceptionResponse = async ( @@ -6720,13 +4656,11 @@ const deserializeAws_json1_1InvalidECSServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidECSServiceException(body, context); - const contents: InvalidECSServiceException = { - name: "InvalidECSServiceException", - $fault: "client", + const exception = new InvalidECSServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidExternalIdExceptionResponse = async ( @@ -6735,13 +4669,11 @@ const deserializeAws_json1_1InvalidExternalIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidExternalIdException(body, context); - const contents: InvalidExternalIdException = { - name: "InvalidExternalIdException", - $fault: "client", + const exception = new InvalidExternalIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFileExistsBehaviorExceptionResponse = async ( @@ -6750,13 +4682,11 @@ const deserializeAws_json1_1InvalidFileExistsBehaviorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFileExistsBehaviorException(body, context); - const contents: InvalidFileExistsBehaviorException = { - name: "InvalidFileExistsBehaviorException", - $fault: "client", + const exception = new InvalidFileExistsBehaviorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGitHubAccountTokenExceptionResponse = async ( @@ -6765,13 +4695,11 @@ const deserializeAws_json1_1InvalidGitHubAccountTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGitHubAccountTokenException(body, context); - const contents: InvalidGitHubAccountTokenException = { - name: "InvalidGitHubAccountTokenException", - $fault: "client", + const exception = new InvalidGitHubAccountTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGitHubAccountTokenNameExceptionResponse = async ( @@ -6780,13 +4708,11 @@ const deserializeAws_json1_1InvalidGitHubAccountTokenNameExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGitHubAccountTokenNameException(body, context); - const contents: InvalidGitHubAccountTokenNameException = { - name: "InvalidGitHubAccountTokenNameException", - $fault: "client", + const exception = new InvalidGitHubAccountTokenNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidIamSessionArnExceptionResponse = async ( @@ -6795,13 +4721,11 @@ const deserializeAws_json1_1InvalidIamSessionArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidIamSessionArnException(body, context); - const contents: InvalidIamSessionArnException = { - name: "InvalidIamSessionArnException", - $fault: "client", + const exception = new InvalidIamSessionArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidIamUserArnExceptionResponse = async ( @@ -6810,13 +4734,11 @@ const deserializeAws_json1_1InvalidIamUserArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidIamUserArnException(body, context); - const contents: InvalidIamUserArnException = { - name: "InvalidIamUserArnException", - $fault: "client", + const exception = new InvalidIamUserArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidIgnoreApplicationStopFailuresValueExceptionResponse = async ( @@ -6825,13 +4747,11 @@ const deserializeAws_json1_1InvalidIgnoreApplicationStopFailuresValueExceptionRe ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidIgnoreApplicationStopFailuresValueException(body, context); - const contents: InvalidIgnoreApplicationStopFailuresValueException = { - name: "InvalidIgnoreApplicationStopFailuresValueException", - $fault: "client", + const exception = new InvalidIgnoreApplicationStopFailuresValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -6840,13 +4760,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInstanceNameExceptionResponse = async ( @@ -6855,13 +4773,11 @@ const deserializeAws_json1_1InvalidInstanceNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInstanceNameException(body, context); - const contents: InvalidInstanceNameException = { - name: "InvalidInstanceNameException", - $fault: "client", + const exception = new InvalidInstanceNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInstanceStatusExceptionResponse = async ( @@ -6870,13 +4786,11 @@ const deserializeAws_json1_1InvalidInstanceStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInstanceStatusException(body, context); - const contents: InvalidInstanceStatusException = { - name: "InvalidInstanceStatusException", - $fault: "client", + const exception = new InvalidInstanceStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInstanceTypeExceptionResponse = async ( @@ -6885,13 +4799,11 @@ const deserializeAws_json1_1InvalidInstanceTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInstanceTypeException(body, context); - const contents: InvalidInstanceTypeException = { - name: "InvalidInstanceTypeException", - $fault: "client", + const exception = new InvalidInstanceTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKeyPrefixFilterExceptionResponse = async ( @@ -6900,13 +4812,11 @@ const deserializeAws_json1_1InvalidKeyPrefixFilterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKeyPrefixFilterException(body, context); - const contents: InvalidKeyPrefixFilterException = { - name: "InvalidKeyPrefixFilterException", - $fault: "client", + const exception = new InvalidKeyPrefixFilterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLifecycleEventHookExecutionIdExceptionResponse = async ( @@ -6915,13 +4825,11 @@ const deserializeAws_json1_1InvalidLifecycleEventHookExecutionIdExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLifecycleEventHookExecutionIdException(body, context); - const contents: InvalidLifecycleEventHookExecutionIdException = { - name: "InvalidLifecycleEventHookExecutionIdException", - $fault: "client", + const exception = new InvalidLifecycleEventHookExecutionIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLifecycleEventHookExecutionStatusExceptionResponse = async ( @@ -6930,13 +4838,11 @@ const deserializeAws_json1_1InvalidLifecycleEventHookExecutionStatusExceptionRes ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLifecycleEventHookExecutionStatusException(body, context); - const contents: InvalidLifecycleEventHookExecutionStatusException = { - name: "InvalidLifecycleEventHookExecutionStatusException", - $fault: "client", + const exception = new InvalidLifecycleEventHookExecutionStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse = async ( @@ -6945,13 +4851,11 @@ const deserializeAws_json1_1InvalidLoadBalancerInfoExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLoadBalancerInfoException(body, context); - const contents: InvalidLoadBalancerInfoException = { - name: "InvalidLoadBalancerInfoException", - $fault: "client", + const exception = new InvalidLoadBalancerInfoException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMinimumHealthyHostValueExceptionResponse = async ( @@ -6960,13 +4864,11 @@ const deserializeAws_json1_1InvalidMinimumHealthyHostValueExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMinimumHealthyHostValueException(body, context); - const contents: InvalidMinimumHealthyHostValueException = { - name: "InvalidMinimumHealthyHostValueException", - $fault: "client", + const exception = new InvalidMinimumHealthyHostValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -6975,13 +4877,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOnPremisesTagCombinationExceptionResponse = async ( @@ -6990,13 +4890,11 @@ const deserializeAws_json1_1InvalidOnPremisesTagCombinationExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOnPremisesTagCombinationException(body, context); - const contents: InvalidOnPremisesTagCombinationException = { - name: "InvalidOnPremisesTagCombinationException", - $fault: "client", + const exception = new InvalidOnPremisesTagCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( @@ -7005,13 +4903,11 @@ const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOperationException(body, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRegistrationStatusExceptionResponse = async ( @@ -7020,13 +4916,11 @@ const deserializeAws_json1_1InvalidRegistrationStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRegistrationStatusException(body, context); - const contents: InvalidRegistrationStatusException = { - name: "InvalidRegistrationStatusException", - $fault: "client", + const exception = new InvalidRegistrationStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRevisionExceptionResponse = async ( @@ -7035,13 +4929,11 @@ const deserializeAws_json1_1InvalidRevisionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRevisionException(body, context); - const contents: InvalidRevisionException = { - name: "InvalidRevisionException", - $fault: "client", + const exception = new InvalidRevisionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRoleExceptionResponse = async ( @@ -7050,13 +4942,11 @@ const deserializeAws_json1_1InvalidRoleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRoleException(body, context); - const contents: InvalidRoleException = { - name: "InvalidRoleException", - $fault: "client", + const exception = new InvalidRoleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSortByExceptionResponse = async ( @@ -7065,13 +4955,11 @@ const deserializeAws_json1_1InvalidSortByExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSortByException(body, context); - const contents: InvalidSortByException = { - name: "InvalidSortByException", - $fault: "client", + const exception = new InvalidSortByException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSortOrderExceptionResponse = async ( @@ -7080,13 +4968,11 @@ const deserializeAws_json1_1InvalidSortOrderExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSortOrderException(body, context); - const contents: InvalidSortOrderException = { - name: "InvalidSortOrderException", - $fault: "client", + const exception = new InvalidSortOrderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagExceptionResponse = async ( @@ -7095,13 +4981,11 @@ const deserializeAws_json1_1InvalidTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagException(body, context); - const contents: InvalidTagException = { - name: "InvalidTagException", - $fault: "client", + const exception = new InvalidTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagFilterExceptionResponse = async ( @@ -7110,13 +4994,11 @@ const deserializeAws_json1_1InvalidTagFilterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagFilterException(body, context); - const contents: InvalidTagFilterException = { - name: "InvalidTagFilterException", - $fault: "client", + const exception = new InvalidTagFilterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagsToAddExceptionResponse = async ( @@ -7125,13 +5007,11 @@ const deserializeAws_json1_1InvalidTagsToAddExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagsToAddException(body, context); - const contents: InvalidTagsToAddException = { - name: "InvalidTagsToAddException", - $fault: "client", + const exception = new InvalidTagsToAddException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetFilterNameExceptionResponse = async ( @@ -7140,13 +5020,11 @@ const deserializeAws_json1_1InvalidTargetFilterNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetFilterNameException(body, context); - const contents: InvalidTargetFilterNameException = { - name: "InvalidTargetFilterNameException", - $fault: "client", + const exception = new InvalidTargetFilterNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetGroupPairExceptionResponse = async ( @@ -7155,13 +5033,11 @@ const deserializeAws_json1_1InvalidTargetGroupPairExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetGroupPairException(body, context); - const contents: InvalidTargetGroupPairException = { - name: "InvalidTargetGroupPairException", - $fault: "client", + const exception = new InvalidTargetGroupPairException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetInstancesExceptionResponse = async ( @@ -7170,13 +5046,11 @@ const deserializeAws_json1_1InvalidTargetInstancesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetInstancesException(body, context); - const contents: InvalidTargetInstancesException = { - name: "InvalidTargetInstancesException", - $fault: "client", + const exception = new InvalidTargetInstancesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTimeRangeExceptionResponse = async ( @@ -7185,13 +5059,11 @@ const deserializeAws_json1_1InvalidTimeRangeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTimeRangeException(body, context); - const contents: InvalidTimeRangeException = { - name: "InvalidTimeRangeException", - $fault: "client", + const exception = new InvalidTimeRangeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse = async ( @@ -7200,13 +5072,11 @@ const deserializeAws_json1_1InvalidTrafficRoutingConfigurationExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTrafficRoutingConfigurationException(body, context); - const contents: InvalidTrafficRoutingConfigurationException = { - name: "InvalidTrafficRoutingConfigurationException", - $fault: "client", + const exception = new InvalidTrafficRoutingConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTriggerConfigExceptionResponse = async ( @@ -7215,13 +5085,11 @@ const deserializeAws_json1_1InvalidTriggerConfigExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTriggerConfigException(body, context); - const contents: InvalidTriggerConfigException = { - name: "InvalidTriggerConfigException", - $fault: "client", + const exception = new InvalidTriggerConfigException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUpdateOutdatedInstancesOnlyValueExceptionResponse = async ( @@ -7230,13 +5098,11 @@ const deserializeAws_json1_1InvalidUpdateOutdatedInstancesOnlyValueExceptionResp ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUpdateOutdatedInstancesOnlyValueException(body, context); - const contents: InvalidUpdateOutdatedInstancesOnlyValueException = { - name: "InvalidUpdateOutdatedInstancesOnlyValueException", - $fault: "client", + const exception = new InvalidUpdateOutdatedInstancesOnlyValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LifecycleEventAlreadyCompletedExceptionResponse = async ( @@ -7245,13 +5111,11 @@ const deserializeAws_json1_1LifecycleEventAlreadyCompletedExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LifecycleEventAlreadyCompletedException(body, context); - const contents: LifecycleEventAlreadyCompletedException = { - name: "LifecycleEventAlreadyCompletedException", - $fault: "client", + const exception = new LifecycleEventAlreadyCompletedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LifecycleHookLimitExceededExceptionResponse = async ( @@ -7260,13 +5124,11 @@ const deserializeAws_json1_1LifecycleHookLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LifecycleHookLimitExceededException(body, context); - const contents: LifecycleHookLimitExceededException = { - name: "LifecycleHookLimitExceededException", - $fault: "client", + const exception = new LifecycleHookLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MultipleIamArnsProvidedExceptionResponse = async ( @@ -7275,13 +5137,11 @@ const deserializeAws_json1_1MultipleIamArnsProvidedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MultipleIamArnsProvidedException(body, context); - const contents: MultipleIamArnsProvidedException = { - name: "MultipleIamArnsProvidedException", - $fault: "client", + const exception = new MultipleIamArnsProvidedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotSupportedExceptionResponse = async ( @@ -7290,13 +5150,11 @@ const deserializeAws_json1_1OperationNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotSupportedException(body, context); - const contents: OperationNotSupportedException = { - name: "OperationNotSupportedException", - $fault: "client", + const exception = new OperationNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceArnRequiredExceptionResponse = async ( @@ -7305,13 +5163,11 @@ const deserializeAws_json1_1ResourceArnRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceArnRequiredException(body, context); - const contents: ResourceArnRequiredException = { - name: "ResourceArnRequiredException", - $fault: "client", + const exception = new ResourceArnRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceValidationExceptionResponse = async ( @@ -7320,13 +5176,11 @@ const deserializeAws_json1_1ResourceValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceValidationException(body, context); - const contents: ResourceValidationException = { - name: "ResourceValidationException", - $fault: "client", + const exception = new ResourceValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RevisionDoesNotExistExceptionResponse = async ( @@ -7335,13 +5189,11 @@ const deserializeAws_json1_1RevisionDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RevisionDoesNotExistException(body, context); - const contents: RevisionDoesNotExistException = { - name: "RevisionDoesNotExistException", - $fault: "client", + const exception = new RevisionDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RevisionRequiredExceptionResponse = async ( @@ -7350,13 +5202,11 @@ const deserializeAws_json1_1RevisionRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RevisionRequiredException(body, context); - const contents: RevisionRequiredException = { - name: "RevisionRequiredException", - $fault: "client", + const exception = new RevisionRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RoleRequiredExceptionResponse = async ( @@ -7365,13 +5215,11 @@ const deserializeAws_json1_1RoleRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RoleRequiredException(body, context); - const contents: RoleRequiredException = { - name: "RoleRequiredException", - $fault: "client", + const exception = new RoleRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagLimitExceededExceptionResponse = async ( @@ -7380,13 +5228,11 @@ const deserializeAws_json1_1TagLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagLimitExceededException(body, context); - const contents: TagLimitExceededException = { - name: "TagLimitExceededException", - $fault: "client", + const exception = new TagLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagRequiredExceptionResponse = async ( @@ -7395,13 +5241,11 @@ const deserializeAws_json1_1TagRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagRequiredException(body, context); - const contents: TagRequiredException = { - name: "TagRequiredException", - $fault: "client", + const exception = new TagRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagSetListLimitExceededExceptionResponse = async ( @@ -7410,13 +5254,11 @@ const deserializeAws_json1_1TagSetListLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagSetListLimitExceededException(body, context); - const contents: TagSetListLimitExceededException = { - name: "TagSetListLimitExceededException", - $fault: "client", + const exception = new TagSetListLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -7425,13 +5267,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TriggerTargetsLimitExceededExceptionResponse = async ( @@ -7440,13 +5280,11 @@ const deserializeAws_json1_1TriggerTargetsLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TriggerTargetsLimitExceededException(body, context); - const contents: TriggerTargetsLimitExceededException = { - name: "TriggerTargetsLimitExceededException", - $fault: "client", + const exception = new TriggerTargetsLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse = async ( @@ -7455,13 +5293,11 @@ const deserializeAws_json1_1UnsupportedActionForDeploymentTypeExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedActionForDeploymentTypeException(body, context); - const contents: UnsupportedActionForDeploymentTypeException = { - name: "UnsupportedActionForDeploymentTypeException", - $fault: "client", + const exception = new UnsupportedActionForDeploymentTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsToOnPremisesInstancesInput = ( diff --git a/clients/client-codeguru-reviewer/src/index.ts b/clients/client-codeguru-reviewer/src/index.ts index b84ee34a341c8..a98c791a2bbdf 100644 --- a/clients/client-codeguru-reviewer/src/index.ts +++ b/clients/client-codeguru-reviewer/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { CodeGuruReviewerServiceException } from "./models/CodeGuruReviewerServiceException"; diff --git a/clients/client-codeguru-reviewer/src/models/CodeGuruReviewerServiceException.ts b/clients/client-codeguru-reviewer/src/models/CodeGuruReviewerServiceException.ts new file mode 100644 index 0000000000000..68e7203691591 --- /dev/null +++ b/clients/client-codeguru-reviewer/src/models/CodeGuruReviewerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeGuruReviewer service. + */ +export class CodeGuruReviewerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeGuruReviewerServiceException.prototype); + } +} diff --git a/clients/client-codeguru-reviewer/src/models/models_0.ts b/clients/client-codeguru-reviewer/src/models/models_0.ts index fa61cf314fa7e..e78baf37e9a12 100644 --- a/clients/client-codeguru-reviewer/src/models/models_0.ts +++ b/clients/client-codeguru-reviewer/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeGuruReviewerServiceException as __BaseException } from "./CodeGuruReviewerServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum AnalysisType { @@ -525,37 +540,85 @@ export namespace AssociateRepositoryResponse { *

The requested operation would cause a conflict with the current state of a service * resource associated with the request. Resolve the conflict before retrying this request.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The server encountered an internal error and is unable to complete the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The input fails to satisfy the specified constraints.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -1171,10 +1234,22 @@ export namespace CreateCodeReviewResponse { * The resource specified in the request was not found. *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeCodeReviewRequest { @@ -1403,10 +1478,22 @@ export namespace DescribeRepositoryAssociationResponse { /** *

The resource specified in the request was not found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface DisassociateRepositoryRequest { diff --git a/clients/client-codeguru-reviewer/src/protocols/Aws_restJson1.ts b/clients/client-codeguru-reviewer/src/protocols/Aws_restJson1.ts index 8b3a869d3705f..05885685e06c0 100644 --- a/clients/client-codeguru-reviewer/src/protocols/Aws_restJson1.ts +++ b/clients/client-codeguru-reviewer/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -59,6 +58,7 @@ import { } from "../commands/PutRecommendationFeedbackCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { CodeGuruReviewerServiceException as __BaseException } from "../models/CodeGuruReviewerServiceException"; import { AccessDeniedException, AnalysisType, @@ -565,65 +565,34 @@ const deserializeAws_restJson1AssociateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codegurureviewer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCodeReviewCommand = async ( @@ -652,73 +621,37 @@ const deserializeAws_restJson1CreateCodeReviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codegurureviewer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCodeReviewCommand = async ( @@ -747,65 +680,34 @@ const deserializeAws_restJson1DescribeCodeReviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRecommendationFeedbackCommand = async ( @@ -837,65 +739,34 @@ const deserializeAws_restJson1DescribeRecommendationFeedbackCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRepositoryAssociationCommand = async ( @@ -928,65 +799,34 @@ const deserializeAws_restJson1DescribeRepositoryAssociationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.codegurureviewer#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateRepositoryCommand = async ( @@ -1019,73 +859,37 @@ const deserializeAws_restJson1DisassociateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.codegurureviewer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.codegurureviewer#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCodeReviewsCommand = async ( @@ -1118,57 +922,31 @@ const deserializeAws_restJson1ListCodeReviewsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecommendationFeedbackCommand = async ( @@ -1204,65 +982,34 @@ const deserializeAws_restJson1ListRecommendationFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecommendationsCommand = async ( @@ -1298,65 +1045,34 @@ const deserializeAws_restJson1ListRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRepositoryAssociationsCommand = async ( @@ -1392,49 +1108,28 @@ const deserializeAws_restJson1ListRepositoryAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1463,49 +1158,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRecommendationFeedbackCommand = async ( @@ -1530,65 +1204,34 @@ const deserializeAws_restJson1PutRecommendationFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codegurureviewer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codegurureviewer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1613,49 +1256,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1680,168 +1302,140 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codegurureviewer#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codegurureviewer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codegurureviewer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AnalysisTypes = (input: (AnalysisType | string)[], context: __SerdeContext): any => { diff --git a/clients/client-codeguruprofiler/src/index.ts b/clients/client-codeguruprofiler/src/index.ts index 6948c1c7b6121..8d9ead7422bed 100644 --- a/clients/client-codeguruprofiler/src/index.ts +++ b/clients/client-codeguruprofiler/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodeGuruProfilerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodeGuruProfilerServiceException } from "./models/CodeGuruProfilerServiceException"; diff --git a/clients/client-codeguruprofiler/src/models/CodeGuruProfilerServiceException.ts b/clients/client-codeguruprofiler/src/models/CodeGuruProfilerServiceException.ts new file mode 100644 index 0000000000000..358cd521201bd --- /dev/null +++ b/clients/client-codeguruprofiler/src/models/CodeGuruProfilerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeGuruProfiler service. + */ +export class CodeGuruProfilerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeGuruProfilerServiceException.prototype); + } +} diff --git a/clients/client-codeguruprofiler/src/models/models_0.ts b/clients/client-codeguruprofiler/src/models/models_0.ts index 18e2287a13445..386b85eba5ba6 100644 --- a/clients/client-codeguruprofiler/src/models/models_0.ts +++ b/clients/client-codeguruprofiler/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeGuruProfilerServiceException as __BaseException } from "./CodeGuruProfilerServiceException"; export enum ActionGroup { /** @@ -113,29 +116,59 @@ export namespace AddNotificationChannelsResponse { * before retrying this request. *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** *

The server encountered an internal error and is unable to complete the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The resource specified in the request does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -144,30 +177,60 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * service quota increase. *

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - $retryable: {}; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: {}; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The parameter is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export enum AgentParameterField { diff --git a/clients/client-codeguruprofiler/src/protocols/Aws_restJson1.ts b/clients/client-codeguruprofiler/src/protocols/Aws_restJson1.ts index f70d0a031c523..aa5f70e69db04 100644 --- a/clients/client-codeguruprofiler/src/protocols/Aws_restJson1.ts +++ b/clients/client-codeguruprofiler/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -77,6 +76,7 @@ import { UpdateProfilingGroupCommandInput, UpdateProfilingGroupCommandOutput, } from "../commands/UpdateProfilingGroupCommand"; +import { CodeGuruProfilerServiceException as __BaseException } from "../models/CodeGuruProfilerServiceException"; import { AgentConfiguration, AgentOrchestrationConfig, @@ -962,73 +962,37 @@ const deserializeAws_restJson1AddNotificationChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codeguruprofiler#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeguruprofiler#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGetFrameMetricDataCommand = async ( @@ -1077,57 +1041,31 @@ const deserializeAws_restJson1BatchGetFrameMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ConfigureAgentCommand = async ( @@ -1154,57 +1092,31 @@ const deserializeAws_restJson1ConfigureAgentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProfilingGroupCommand = async ( @@ -1231,65 +1143,34 @@ const deserializeAws_restJson1CreateProfilingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codeguruprofiler#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.codeguruprofiler#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProfilingGroupCommand = async ( @@ -1314,65 +1195,34 @@ const deserializeAws_restJson1DeleteProfilingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codeguruprofiler#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProfilingGroupCommand = async ( @@ -1399,57 +1249,31 @@ const deserializeAws_restJson1DescribeProfilingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsReportAccountSummaryCommand = async ( @@ -1482,49 +1306,28 @@ const deserializeAws_restJson1GetFindingsReportAccountSummaryCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNotificationConfigurationCommand = async ( @@ -1556,57 +1359,31 @@ const deserializeAws_restJson1GetNotificationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPolicyCommand = async ( @@ -1639,49 +1416,28 @@ const deserializeAws_restJson1GetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProfileCommand = async ( @@ -1716,57 +1472,31 @@ const deserializeAws_restJson1GetProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecommendationsCommand = async ( @@ -1811,57 +1541,31 @@ const deserializeAws_restJson1GetRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingsReportsCommand = async ( @@ -1897,57 +1601,31 @@ const deserializeAws_restJson1ListFindingsReportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProfileTimesCommand = async ( @@ -1980,57 +1658,31 @@ const deserializeAws_restJson1ListProfileTimesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProfilingGroupsCommand = async ( @@ -2067,41 +1719,25 @@ const deserializeAws_restJson1ListProfilingGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2130,49 +1766,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PostAgentProfileCommand = async ( @@ -2197,57 +1812,31 @@ const deserializeAws_restJson1PostAgentProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutPermissionCommand = async ( @@ -2280,65 +1869,34 @@ const deserializeAws_restJson1PutPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codeguruprofiler#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveNotificationChannelCommand = async ( @@ -2370,57 +1928,31 @@ const deserializeAws_restJson1RemoveNotificationChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemovePermissionCommand = async ( @@ -2453,65 +1985,34 @@ const deserializeAws_restJson1RemovePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codeguruprofiler#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SubmitFeedbackCommand = async ( @@ -2536,57 +2037,31 @@ const deserializeAws_restJson1SubmitFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2611,49 +2086,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2678,49 +2132,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProfilingGroupCommand = async ( @@ -2747,170 +2180,130 @@ const deserializeAws_restJson1UpdateProfilingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codeguruprofiler#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.codeguruprofiler#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codeguruprofiler#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.codeguruprofiler#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codeguruprofiler#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AgentOrchestrationConfig = ( diff --git a/clients/client-codepipeline/src/index.ts b/clients/client-codepipeline/src/index.ts index fd3d1d3d245c6..a33b4c5e03634 100644 --- a/clients/client-codepipeline/src/index.ts +++ b/clients/client-codepipeline/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodePipelineClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodePipelineServiceException } from "./models/CodePipelineServiceException"; diff --git a/clients/client-codepipeline/src/models/CodePipelineServiceException.ts b/clients/client-codepipeline/src/models/CodePipelineServiceException.ts new file mode 100644 index 0000000000000..90382c956686b --- /dev/null +++ b/clients/client-codepipeline/src/models/CodePipelineServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodePipeline service. + */ +export class CodePipelineServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodePipelineServiceException.prototype); + } +} diff --git a/clients/client-codepipeline/src/models/models_0.ts b/clients/client-codepipeline/src/models/models_0.ts index 19110d2d80997..1cfe90a995f02 100644 --- a/clients/client-codepipeline/src/models/models_0.ts +++ b/clients/client-codepipeline/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodePipelineServiceException as __BaseException } from "./CodePipelineServiceException"; /** *

Represents the input of an AcknowledgeJob action.

@@ -60,37 +62,58 @@ export namespace AcknowledgeJobOutput { /** *

The nonce was specified in an invalid format.

*/ -export interface InvalidNonceException extends __SmithyException, $MetadataBearer { - name: "InvalidNonceException"; - $fault: "client"; +export class InvalidNonceException extends __BaseException { + readonly name: "InvalidNonceException" = "InvalidNonceException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNonceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNonceException.prototype); + } } /** *

The job was specified in an invalid format or cannot be found.

*/ -export interface JobNotFoundException extends __SmithyException, $MetadataBearer { - name: "JobNotFoundException"; - $fault: "client"; +export class JobNotFoundException extends __BaseException { + readonly name: "JobNotFoundException" = "JobNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "JobNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, JobNotFoundException.prototype); + } } /** *

The validation was specified in an invalid format.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -146,13 +169,20 @@ export namespace AcknowledgeThirdPartyJobOutput { /** *

The client token was specified in an invalid format

*/ -export interface InvalidClientTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidClientTokenException"; - $fault: "client"; +export class InvalidClientTokenException extends __BaseException { + readonly name: "InvalidClientTokenException" = "InvalidClientTokenException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientTokenException.prototype); + } } export enum ActionCategory { @@ -826,13 +856,20 @@ export namespace ActionExecutionFilter { /** *

The specified action cannot be found.

*/ -export interface ActionNotFoundException extends __SmithyException, $MetadataBearer { - name: "ActionNotFoundException"; - $fault: "client"; +export class ActionNotFoundException extends __BaseException { + readonly name: "ActionNotFoundException" = "ActionNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActionNotFoundException.prototype); + } } /** @@ -1409,25 +1446,39 @@ export namespace ActionTypeDeclaration { /** *

The specified action type cannot be found.

*/ -export interface ActionTypeNotFoundException extends __SmithyException, $MetadataBearer { - name: "ActionTypeNotFoundException"; - $fault: "client"; +export class ActionTypeNotFoundException extends __BaseException { + readonly name: "ActionTypeNotFoundException" = "ActionTypeNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActionTypeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActionTypeNotFoundException.prototype); + } } /** *

The approval action has already been approved or rejected.

*/ -export interface ApprovalAlreadyCompletedException extends __SmithyException, $MetadataBearer { - name: "ApprovalAlreadyCompletedException"; - $fault: "client"; +export class ApprovalAlreadyCompletedException extends __BaseException { + readonly name: "ApprovalAlreadyCompletedException" = "ApprovalAlreadyCompletedException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ApprovalAlreadyCompletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ApprovalAlreadyCompletedException.prototype); + } } export enum ApprovalStatus { @@ -1742,10 +1793,20 @@ export namespace BlockerDeclaration { /** *

Unable to modify the tag due to a simultaneous update request.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** @@ -1862,32 +1923,59 @@ export namespace CreateCustomActionTypeOutput { /** *

The specified resource tags are invalid.

*/ -export interface InvalidTagsException extends __SmithyException, $MetadataBearer { - name: "InvalidTagsException"; - $fault: "client"; - message?: string; +export class InvalidTagsException extends __BaseException { + readonly name: "InvalidTagsException" = "InvalidTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagsException.prototype); + } } /** *

The number of pipelines associated with the AWS account has exceeded the limit * allowed for the account.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The tags limit for a resource has been exceeded.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** @@ -2035,61 +2123,96 @@ export namespace CreatePipelineOutput { /** *

The action declaration was specified in an invalid format.

*/ -export interface InvalidActionDeclarationException extends __SmithyException, $MetadataBearer { - name: "InvalidActionDeclarationException"; - $fault: "client"; +export class InvalidActionDeclarationException extends __BaseException { + readonly name: "InvalidActionDeclarationException" = "InvalidActionDeclarationException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidActionDeclarationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidActionDeclarationException.prototype); + } } /** *

Reserved for future use.

*/ -export interface InvalidBlockerDeclarationException extends __SmithyException, $MetadataBearer { - name: "InvalidBlockerDeclarationException"; - $fault: "client"; +export class InvalidBlockerDeclarationException extends __BaseException { + readonly name: "InvalidBlockerDeclarationException" = "InvalidBlockerDeclarationException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBlockerDeclarationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBlockerDeclarationException.prototype); + } } /** *

The stage declaration was specified in an invalid format.

*/ -export interface InvalidStageDeclarationException extends __SmithyException, $MetadataBearer { - name: "InvalidStageDeclarationException"; - $fault: "client"; +export class InvalidStageDeclarationException extends __BaseException { + readonly name: "InvalidStageDeclarationException" = "InvalidStageDeclarationException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStageDeclarationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStageDeclarationException.prototype); + } } /** *

The structure was specified in an invalid format.

*/ -export interface InvalidStructureException extends __SmithyException, $MetadataBearer { - name: "InvalidStructureException"; - $fault: "client"; +export class InvalidStructureException extends __BaseException { + readonly name: "InvalidStructureException" = "InvalidStructureException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStructureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStructureException.prototype); + } } /** *

The specified pipeline name is already in use.

*/ -export interface PipelineNameInUseException extends __SmithyException, $MetadataBearer { - name: "PipelineNameInUseException"; - $fault: "client"; +export class PipelineNameInUseException extends __BaseException { + readonly name: "PipelineNameInUseException" = "PipelineNameInUseException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineNameInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineNameInUseException.prototype); + } } /** @@ -2201,9 +2324,20 @@ export namespace DeregisterWebhookWithThirdPartyOutput { *

The specified webhook was entered in an invalid format or cannot be * found.

*/ -export interface WebhookNotFoundException extends __SmithyException, $MetadataBearer { - name: "WebhookNotFoundException"; - $fault: "client"; +export class WebhookNotFoundException extends __BaseException { + readonly name: "WebhookNotFoundException" = "WebhookNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebhookNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebhookNotFoundException.prototype); + } } export enum StageTransitionType { @@ -2255,25 +2389,39 @@ export namespace DisableStageTransitionInput { /** *

The pipeline was specified in an invalid format or cannot be found.

*/ -export interface PipelineNotFoundException extends __SmithyException, $MetadataBearer { - name: "PipelineNotFoundException"; - $fault: "client"; +export class PipelineNotFoundException extends __BaseException { + readonly name: "PipelineNotFoundException" = "PipelineNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineNotFoundException.prototype); + } } /** *

The stage was specified in an invalid format or cannot be found.

*/ -export interface StageNotFoundException extends __SmithyException, $MetadataBearer { - name: "StageNotFoundException"; - $fault: "client"; +export class StageNotFoundException extends __BaseException { + readonly name: "StageNotFoundException" = "StageNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "StageNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StageNotFoundException.prototype); + } } /** @@ -2681,13 +2829,20 @@ export namespace GetPipelineOutput { *

The pipeline version was specified in an invalid format or cannot be * found.

*/ -export interface PipelineVersionNotFoundException extends __SmithyException, $MetadataBearer { - name: "PipelineVersionNotFoundException"; - $fault: "client"; +export class PipelineVersionNotFoundException extends __BaseException { + readonly name: "PipelineVersionNotFoundException" = "PipelineVersionNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineVersionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineVersionNotFoundException.prototype); + } } /** @@ -2822,13 +2977,20 @@ export namespace GetPipelineExecutionOutput { *

The pipeline execution was specified in an invalid format or cannot be found, or an * execution ID does not belong to the specified pipeline.

*/ -export interface PipelineExecutionNotFoundException extends __SmithyException, $MetadataBearer { - name: "PipelineExecutionNotFoundException"; - $fault: "client"; +export class PipelineExecutionNotFoundException extends __BaseException { + readonly name: "PipelineExecutionNotFoundException" = "PipelineExecutionNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineExecutionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineExecutionNotFoundException.prototype); + } } /** @@ -3160,26 +3322,40 @@ export namespace GetThirdPartyJobDetailsOutput { /** *

The job was specified in an invalid format or cannot be found.

*/ -export interface InvalidJobException extends __SmithyException, $MetadataBearer { - name: "InvalidJobException"; - $fault: "client"; +export class InvalidJobException extends __BaseException { + readonly name: "InvalidJobException" = "InvalidJobException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidJobException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidJobException.prototype); + } } /** *

The next token was specified in an invalid format. Make sure that the next token * you provide is the token returned by a previous call.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } export interface ListActionExecutionsInput { @@ -3625,10 +3801,20 @@ export namespace ListPipelinesOutput { /** *

The specified resource ARN is invalid.

*/ -export interface InvalidArnException extends __SmithyException, $MetadataBearer { - name: "InvalidArnException"; - $fault: "client"; - message?: string; +export class InvalidArnException extends __BaseException { + readonly name: "InvalidArnException" = "InvalidArnException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArnException.prototype); + } } export interface ListTagsForResourceInput { @@ -3686,13 +3872,20 @@ export namespace ListTagsForResourceOutput { /** *

The resource was specified in an invalid format.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface ListWebhooksInput { @@ -4154,13 +4347,20 @@ export namespace PutActionRevisionOutput { /** *

The approval request already received a response or has expired.

*/ -export interface InvalidApprovalTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidApprovalTokenException"; - $fault: "client"; +export class InvalidApprovalTokenException extends __BaseException { + readonly name: "InvalidApprovalTokenException" = "InvalidApprovalTokenException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApprovalTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApprovalTokenException.prototype); + } } /** @@ -4226,13 +4426,20 @@ export namespace PutApprovalResultOutput { /** *

The job state was specified in an invalid format.

*/ -export interface InvalidJobStateException extends __SmithyException, $MetadataBearer { - name: "InvalidJobStateException"; - $fault: "client"; +export class InvalidJobStateException extends __BaseException { + readonly name: "InvalidJobStateException" = "InvalidJobStateException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidJobStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidJobStateException.prototype); + } } export enum FailureType { @@ -4301,10 +4508,20 @@ export namespace PutJobFailureResultInput { /** *

Exceeded the total size limit for all variables in the pipeline.

*/ -export interface OutputVariablesSizeExceededException extends __SmithyException, $MetadataBearer { - name: "OutputVariablesSizeExceededException"; - $fault: "client"; - message?: string; +export class OutputVariablesSizeExceededException extends __BaseException { + readonly name: "OutputVariablesSizeExceededException" = "OutputVariablesSizeExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OutputVariablesSizeExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OutputVariablesSizeExceededException.prototype); + } } /** @@ -4504,25 +4721,39 @@ export namespace PutThirdPartyJobSuccessResultInput { /** *

The specified authentication type is in an invalid format.

*/ -export interface InvalidWebhookAuthenticationParametersException extends __SmithyException, $MetadataBearer { - name: "InvalidWebhookAuthenticationParametersException"; - $fault: "client"; +export class InvalidWebhookAuthenticationParametersException extends __BaseException { + readonly name: "InvalidWebhookAuthenticationParametersException" = "InvalidWebhookAuthenticationParametersException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidWebhookAuthenticationParametersException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidWebhookAuthenticationParametersException.prototype); + } } /** *

The specified event filter rule is in an invalid format.

*/ -export interface InvalidWebhookFilterPatternException extends __SmithyException, $MetadataBearer { - name: "InvalidWebhookFilterPatternException"; - $fault: "client"; +export class InvalidWebhookFilterPatternException extends __BaseException { + readonly name: "InvalidWebhookFilterPatternException" = "InvalidWebhookFilterPatternException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidWebhookFilterPatternException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidWebhookFilterPatternException.prototype); + } } export interface PutWebhookInput { @@ -4598,23 +4829,40 @@ export namespace RegisterWebhookWithThirdPartyOutput { *

Your request cannot be handled because the pipeline is busy handling ongoing * activities. Try again later.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** *

The stage has failed in a later run of the pipeline and the pipelineExecutionId * associated with the request is out of date.

*/ -export interface NotLatestPipelineExecutionException extends __SmithyException, $MetadataBearer { - name: "NotLatestPipelineExecutionException"; - $fault: "client"; +export class NotLatestPipelineExecutionException extends __BaseException { + readonly name: "NotLatestPipelineExecutionException" = "NotLatestPipelineExecutionException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotLatestPipelineExecutionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotLatestPipelineExecutionException.prototype); + } } export enum StageRetryMode { @@ -4681,13 +4929,20 @@ export namespace RetryStageExecutionOutput { * actions awaited retry, or the stage contains no failed * actions.

*/ -export interface StageNotRetryableException extends __SmithyException, $MetadataBearer { - name: "StageNotRetryableException"; - $fault: "client"; +export class StageNotRetryableException extends __BaseException { + readonly name: "StageNotRetryableException" = "StageNotRetryableException"; + readonly $fault: "client" = "client"; /** - *

The message provided to the user in the event of an exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "StageNotRetryableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StageNotRetryableException.prototype); + } } /** @@ -4742,20 +4997,40 @@ export namespace StartPipelineExecutionOutput { * tasks. If you already chose to stop and abandon, you cannot make that request * again.

*/ -export interface DuplicatedStopRequestException extends __SmithyException, $MetadataBearer { - name: "DuplicatedStopRequestException"; - $fault: "client"; - message?: string; +export class DuplicatedStopRequestException extends __BaseException { + readonly name: "DuplicatedStopRequestException" = "DuplicatedStopRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicatedStopRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicatedStopRequestException.prototype); + } } /** *

Unable to stop the pipeline execution. The execution might already be in a * Stopped state, or it might no longer be in progress.

*/ -export interface PipelineExecutionNotStoppableException extends __SmithyException, $MetadataBearer { - name: "PipelineExecutionNotStoppableException"; - $fault: "client"; - message?: string; +export class PipelineExecutionNotStoppableException extends __BaseException { + readonly name: "PipelineExecutionNotStoppableException" = "PipelineExecutionNotStoppableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineExecutionNotStoppableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineExecutionNotStoppableException.prototype); + } } export interface StopPipelineExecutionInput { @@ -4878,10 +5153,20 @@ export namespace UntagResourceOutput { /** *

The request failed because of an unknown error, exception, or failure.

*/ -export interface RequestFailedException extends __SmithyException, $MetadataBearer { - name: "RequestFailedException"; - $fault: "client"; - message?: string; +export class RequestFailedException extends __BaseException { + readonly name: "RequestFailedException" = "RequestFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestFailedException.prototype); + } } export interface UpdateActionTypeInput { diff --git a/clients/client-codepipeline/src/protocols/Aws_json1_1.ts b/clients/client-codepipeline/src/protocols/Aws_json1_1.ts index b7a0190246787..5898f973d7d2b 100644 --- a/clients/client-codepipeline/src/protocols/Aws_json1_1.ts +++ b/clients/client-codepipeline/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -116,6 +115,7 @@ import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/T import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateActionTypeCommandInput, UpdateActionTypeCommandOutput } from "../commands/UpdateActionTypeCommand"; import { UpdatePipelineCommandInput, UpdatePipelineCommandOutput } from "../commands/UpdatePipelineCommand"; +import { CodePipelineServiceException as __BaseException } from "../models/CodePipelineServiceException"; import { AcknowledgeJobInput, AcknowledgeJobOutput, @@ -824,49 +824,28 @@ const deserializeAws_json1_1AcknowledgeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNonceException": case "com.amazonaws.codepipeline#InvalidNonceException": - response = { - ...(await deserializeAws_json1_1InvalidNonceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNonceExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AcknowledgeThirdPartyJobCommand = async ( @@ -894,57 +873,31 @@ const deserializeAws_json1_1AcknowledgeThirdPartyJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClientTokenException": case "com.amazonaws.codepipeline#InvalidClientTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidNonceException": case "com.amazonaws.codepipeline#InvalidNonceException": - response = { - ...(await deserializeAws_json1_1InvalidNonceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNonceExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCustomActionTypeCommand = async ( @@ -972,65 +925,34 @@ const deserializeAws_json1_1CreateCustomActionTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidTagsException": case "com.amazonaws.codepipeline#InvalidTagsException": - response = { - ...(await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codepipeline#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codepipeline#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePipelineCommand = async ( @@ -1058,105 +980,49 @@ const deserializeAws_json1_1CreatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidActionDeclarationException": case "com.amazonaws.codepipeline#InvalidActionDeclarationException": - response = { - ...(await deserializeAws_json1_1InvalidActionDeclarationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidActionDeclarationExceptionResponse(parsedOutput, context); case "InvalidBlockerDeclarationException": case "com.amazonaws.codepipeline#InvalidBlockerDeclarationException": - response = { - ...(await deserializeAws_json1_1InvalidBlockerDeclarationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBlockerDeclarationExceptionResponse(parsedOutput, context); case "InvalidStageDeclarationException": case "com.amazonaws.codepipeline#InvalidStageDeclarationException": - response = { - ...(await deserializeAws_json1_1InvalidStageDeclarationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStageDeclarationExceptionResponse(parsedOutput, context); case "InvalidStructureException": case "com.amazonaws.codepipeline#InvalidStructureException": - response = { - ...(await deserializeAws_json1_1InvalidStructureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStructureExceptionResponse(parsedOutput, context); case "InvalidTagsException": case "com.amazonaws.codepipeline#InvalidTagsException": - response = { - ...(await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codepipeline#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "PipelineNameInUseException": case "com.amazonaws.codepipeline#PipelineNameInUseException": - response = { - ...(await deserializeAws_json1_1PipelineNameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNameInUseExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codepipeline#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCustomActionTypeCommand = async ( @@ -1181,41 +1047,25 @@ const deserializeAws_json1_1DeleteCustomActionTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePipelineCommand = async ( @@ -1240,41 +1090,25 @@ const deserializeAws_json1_1DeletePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWebhookCommand = async ( @@ -1302,41 +1136,25 @@ const deserializeAws_json1_1DeleteWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterWebhookWithThirdPartyCommand = async ( @@ -1364,41 +1182,25 @@ const deserializeAws_json1_1DeregisterWebhookWithThirdPartyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); case "WebhookNotFoundException": case "com.amazonaws.codepipeline#WebhookNotFoundException": - response = { - ...(await deserializeAws_json1_1WebhookNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WebhookNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableStageTransitionCommand = async ( @@ -1423,49 +1225,28 @@ const deserializeAws_json1_1DisableStageTransitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "StageNotFoundException": case "com.amazonaws.codepipeline#StageNotFoundException": - response = { - ...(await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableStageTransitionCommand = async ( @@ -1490,49 +1271,28 @@ const deserializeAws_json1_1EnableStageTransitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "StageNotFoundException": case "com.amazonaws.codepipeline#StageNotFoundException": - response = { - ...(await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetActionTypeCommand = async ( @@ -1560,41 +1320,25 @@ const deserializeAws_json1_1GetActionTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActionTypeNotFoundException": case "com.amazonaws.codepipeline#ActionTypeNotFoundException": - response = { - ...(await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobDetailsCommand = async ( @@ -1622,41 +1366,25 @@ const deserializeAws_json1_1GetJobDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPipelineCommand = async ( @@ -1684,49 +1412,28 @@ const deserializeAws_json1_1GetPipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "PipelineVersionNotFoundException": case "com.amazonaws.codepipeline#PipelineVersionNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineVersionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineVersionNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPipelineExecutionCommand = async ( @@ -1754,49 +1461,28 @@ const deserializeAws_json1_1GetPipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PipelineExecutionNotFoundException": case "com.amazonaws.codepipeline#PipelineExecutionNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineExecutionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineExecutionNotFoundExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPipelineStateCommand = async ( @@ -1824,41 +1510,25 @@ const deserializeAws_json1_1GetPipelineStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetThirdPartyJobDetailsCommand = async ( @@ -1886,57 +1556,31 @@ const deserializeAws_json1_1GetThirdPartyJobDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClientTokenException": case "com.amazonaws.codepipeline#InvalidClientTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidJobException": case "com.amazonaws.codepipeline#InvalidJobException": - response = { - ...(await deserializeAws_json1_1InvalidJobExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListActionExecutionsCommand = async ( @@ -1964,57 +1608,31 @@ const deserializeAws_json1_1ListActionExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codepipeline#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "PipelineExecutionNotFoundException": case "com.amazonaws.codepipeline#PipelineExecutionNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineExecutionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineExecutionNotFoundExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListActionTypesCommand = async ( @@ -2042,41 +1660,25 @@ const deserializeAws_json1_1ListActionTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codepipeline#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelineExecutionsCommand = async ( @@ -2104,49 +1706,28 @@ const deserializeAws_json1_1ListPipelineExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codepipeline#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelinesCommand = async ( @@ -2174,41 +1755,25 @@ const deserializeAws_json1_1ListPipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codepipeline#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2236,57 +1801,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.codepipeline#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.codepipeline#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codepipeline#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWebhooksCommand = async ( @@ -2314,41 +1853,25 @@ const deserializeAws_json1_1ListWebhooksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codepipeline#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PollForJobsCommand = async ( @@ -2376,41 +1899,25 @@ const deserializeAws_json1_1PollForJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActionTypeNotFoundException": case "com.amazonaws.codepipeline#ActionTypeNotFoundException": - response = { - ...(await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PollForThirdPartyJobsCommand = async ( @@ -2438,41 +1945,25 @@ const deserializeAws_json1_1PollForThirdPartyJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActionTypeNotFoundException": case "com.amazonaws.codepipeline#ActionTypeNotFoundException": - response = { - ...(await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutActionRevisionCommand = async ( @@ -2500,57 +1991,31 @@ const deserializeAws_json1_1PutActionRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActionNotFoundException": case "com.amazonaws.codepipeline#ActionNotFoundException": - response = { - ...(await deserializeAws_json1_1ActionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActionNotFoundExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "StageNotFoundException": case "com.amazonaws.codepipeline#StageNotFoundException": - response = { - ...(await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutApprovalResultCommand = async ( @@ -2578,73 +2043,37 @@ const deserializeAws_json1_1PutApprovalResultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActionNotFoundException": case "com.amazonaws.codepipeline#ActionNotFoundException": - response = { - ...(await deserializeAws_json1_1ActionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActionNotFoundExceptionResponse(parsedOutput, context); case "ApprovalAlreadyCompletedException": case "com.amazonaws.codepipeline#ApprovalAlreadyCompletedException": - response = { - ...(await deserializeAws_json1_1ApprovalAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ApprovalAlreadyCompletedExceptionResponse(parsedOutput, context); case "InvalidApprovalTokenException": case "com.amazonaws.codepipeline#InvalidApprovalTokenException": - response = { - ...(await deserializeAws_json1_1InvalidApprovalTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApprovalTokenExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "StageNotFoundException": case "com.amazonaws.codepipeline#StageNotFoundException": - response = { - ...(await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutJobFailureResultCommand = async ( @@ -2669,49 +2098,28 @@ const deserializeAws_json1_1PutJobFailureResultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.codepipeline#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutJobSuccessResultCommand = async ( @@ -2736,57 +2144,31 @@ const deserializeAws_json1_1PutJobSuccessResultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.codepipeline#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "OutputVariablesSizeExceededException": case "com.amazonaws.codepipeline#OutputVariablesSizeExceededException": - response = { - ...(await deserializeAws_json1_1OutputVariablesSizeExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OutputVariablesSizeExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutThirdPartyJobFailureResultCommand = async ( @@ -2811,57 +2193,31 @@ const deserializeAws_json1_1PutThirdPartyJobFailureResultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClientTokenException": case "com.amazonaws.codepipeline#InvalidClientTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidJobStateException": case "com.amazonaws.codepipeline#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutThirdPartyJobSuccessResultCommand = async ( @@ -2886,57 +2242,31 @@ const deserializeAws_json1_1PutThirdPartyJobSuccessResultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClientTokenException": case "com.amazonaws.codepipeline#InvalidClientTokenException": - response = { - ...(await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidJobStateException": case "com.amazonaws.codepipeline#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.codepipeline#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutWebhookCommand = async ( @@ -2964,89 +2294,43 @@ const deserializeAws_json1_1PutWebhookCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidTagsException": case "com.amazonaws.codepipeline#InvalidTagsException": - response = { - ...(await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context); case "InvalidWebhookAuthenticationParametersException": case "com.amazonaws.codepipeline#InvalidWebhookAuthenticationParametersException": - response = { - ...(await deserializeAws_json1_1InvalidWebhookAuthenticationParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidWebhookAuthenticationParametersExceptionResponse(parsedOutput, context); case "InvalidWebhookFilterPatternException": case "com.amazonaws.codepipeline#InvalidWebhookFilterPatternException": - response = { - ...(await deserializeAws_json1_1InvalidWebhookFilterPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidWebhookFilterPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codepipeline#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codepipeline#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterWebhookWithThirdPartyCommand = async ( @@ -3074,41 +2358,25 @@ const deserializeAws_json1_1RegisterWebhookWithThirdPartyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); case "WebhookNotFoundException": case "com.amazonaws.codepipeline#WebhookNotFoundException": - response = { - ...(await deserializeAws_json1_1WebhookNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WebhookNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetryStageExecutionCommand = async ( @@ -3136,73 +2404,37 @@ const deserializeAws_json1_1RetryStageExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codepipeline#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "NotLatestPipelineExecutionException": case "com.amazonaws.codepipeline#NotLatestPipelineExecutionException": - response = { - ...(await deserializeAws_json1_1NotLatestPipelineExecutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotLatestPipelineExecutionExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "StageNotFoundException": case "com.amazonaws.codepipeline#StageNotFoundException": - response = { - ...(await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StageNotFoundExceptionResponse(parsedOutput, context); case "StageNotRetryableException": case "com.amazonaws.codepipeline#StageNotRetryableException": - response = { - ...(await deserializeAws_json1_1StageNotRetryableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StageNotRetryableExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartPipelineExecutionCommand = async ( @@ -3230,49 +2462,28 @@ const deserializeAws_json1_1StartPipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codepipeline#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopPipelineExecutionCommand = async ( @@ -3300,65 +2511,34 @@ const deserializeAws_json1_1StopPipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codepipeline#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "DuplicatedStopRequestException": case "com.amazonaws.codepipeline#DuplicatedStopRequestException": - response = { - ...(await deserializeAws_json1_1DuplicatedStopRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicatedStopRequestExceptionResponse(parsedOutput, context); case "PipelineExecutionNotStoppableException": case "com.amazonaws.codepipeline#PipelineExecutionNotStoppableException": - response = { - ...(await deserializeAws_json1_1PipelineExecutionNotStoppableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineExecutionNotStoppableExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.codepipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3386,73 +2566,37 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.codepipeline#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTagsException": case "com.amazonaws.codepipeline#InvalidTagsException": - response = { - ...(await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codepipeline#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.codepipeline#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3480,65 +2624,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codepipeline#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.codepipeline#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidTagsException": case "com.amazonaws.codepipeline#InvalidTagsException": - response = { - ...(await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codepipeline#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateActionTypeCommand = async ( @@ -3563,49 +2676,28 @@ const deserializeAws_json1_1UpdateActionTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActionTypeNotFoundException": case "com.amazonaws.codepipeline#ActionTypeNotFoundException": - response = { - ...(await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActionTypeNotFoundExceptionResponse(parsedOutput, context); case "RequestFailedException": case "com.amazonaws.codepipeline#RequestFailedException": - response = { - ...(await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestFailedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePipelineCommand = async ( @@ -3633,73 +2725,37 @@ const deserializeAws_json1_1UpdatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidActionDeclarationException": case "com.amazonaws.codepipeline#InvalidActionDeclarationException": - response = { - ...(await deserializeAws_json1_1InvalidActionDeclarationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidActionDeclarationExceptionResponse(parsedOutput, context); case "InvalidBlockerDeclarationException": case "com.amazonaws.codepipeline#InvalidBlockerDeclarationException": - response = { - ...(await deserializeAws_json1_1InvalidBlockerDeclarationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidBlockerDeclarationExceptionResponse(parsedOutput, context); case "InvalidStageDeclarationException": case "com.amazonaws.codepipeline#InvalidStageDeclarationException": - response = { - ...(await deserializeAws_json1_1InvalidStageDeclarationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStageDeclarationExceptionResponse(parsedOutput, context); case "InvalidStructureException": case "com.amazonaws.codepipeline#InvalidStructureException": - response = { - ...(await deserializeAws_json1_1InvalidStructureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStructureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codepipeline#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codepipeline#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ActionNotFoundExceptionResponse = async ( @@ -3708,13 +2764,11 @@ const deserializeAws_json1_1ActionNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ActionNotFoundException(body, context); - const contents: ActionNotFoundException = { - name: "ActionNotFoundException", - $fault: "client", + const exception = new ActionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ActionTypeNotFoundExceptionResponse = async ( @@ -3723,13 +2777,11 @@ const deserializeAws_json1_1ActionTypeNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ActionTypeNotFoundException(body, context); - const contents: ActionTypeNotFoundException = { - name: "ActionTypeNotFoundException", - $fault: "client", + const exception = new ActionTypeNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ApprovalAlreadyCompletedExceptionResponse = async ( @@ -3738,13 +2790,11 @@ const deserializeAws_json1_1ApprovalAlreadyCompletedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ApprovalAlreadyCompletedException(body, context); - const contents: ApprovalAlreadyCompletedException = { - name: "ApprovalAlreadyCompletedException", - $fault: "client", + const exception = new ApprovalAlreadyCompletedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -3753,13 +2803,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -3768,13 +2816,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicatedStopRequestExceptionResponse = async ( @@ -3783,13 +2829,11 @@ const deserializeAws_json1_1DuplicatedStopRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicatedStopRequestException(body, context); - const contents: DuplicatedStopRequestException = { - name: "DuplicatedStopRequestException", - $fault: "client", + const exception = new DuplicatedStopRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidActionDeclarationExceptionResponse = async ( @@ -3798,13 +2842,11 @@ const deserializeAws_json1_1InvalidActionDeclarationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidActionDeclarationException(body, context); - const contents: InvalidActionDeclarationException = { - name: "InvalidActionDeclarationException", - $fault: "client", + const exception = new InvalidActionDeclarationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApprovalTokenExceptionResponse = async ( @@ -3813,13 +2855,11 @@ const deserializeAws_json1_1InvalidApprovalTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApprovalTokenException(body, context); - const contents: InvalidApprovalTokenException = { - name: "InvalidApprovalTokenException", - $fault: "client", + const exception = new InvalidApprovalTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArnExceptionResponse = async ( @@ -3828,13 +2868,11 @@ const deserializeAws_json1_1InvalidArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArnException(body, context); - const contents: InvalidArnException = { - name: "InvalidArnException", - $fault: "client", + const exception = new InvalidArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidBlockerDeclarationExceptionResponse = async ( @@ -3843,13 +2881,11 @@ const deserializeAws_json1_1InvalidBlockerDeclarationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidBlockerDeclarationException(body, context); - const contents: InvalidBlockerDeclarationException = { - name: "InvalidBlockerDeclarationException", - $fault: "client", + const exception = new InvalidBlockerDeclarationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidClientTokenExceptionResponse = async ( @@ -3858,13 +2894,11 @@ const deserializeAws_json1_1InvalidClientTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidClientTokenException(body, context); - const contents: InvalidClientTokenException = { - name: "InvalidClientTokenException", - $fault: "client", + const exception = new InvalidClientTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidJobExceptionResponse = async ( @@ -3873,13 +2907,11 @@ const deserializeAws_json1_1InvalidJobExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidJobException(body, context); - const contents: InvalidJobException = { - name: "InvalidJobException", - $fault: "client", + const exception = new InvalidJobException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidJobStateExceptionResponse = async ( @@ -3888,13 +2920,11 @@ const deserializeAws_json1_1InvalidJobStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidJobStateException(body, context); - const contents: InvalidJobStateException = { - name: "InvalidJobStateException", - $fault: "client", + const exception = new InvalidJobStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -3903,13 +2933,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNonceExceptionResponse = async ( @@ -3918,13 +2946,11 @@ const deserializeAws_json1_1InvalidNonceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNonceException(body, context); - const contents: InvalidNonceException = { - name: "InvalidNonceException", - $fault: "client", + const exception = new InvalidNonceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStageDeclarationExceptionResponse = async ( @@ -3933,13 +2959,11 @@ const deserializeAws_json1_1InvalidStageDeclarationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStageDeclarationException(body, context); - const contents: InvalidStageDeclarationException = { - name: "InvalidStageDeclarationException", - $fault: "client", + const exception = new InvalidStageDeclarationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStructureExceptionResponse = async ( @@ -3948,13 +2972,11 @@ const deserializeAws_json1_1InvalidStructureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStructureException(body, context); - const contents: InvalidStructureException = { - name: "InvalidStructureException", - $fault: "client", + const exception = new InvalidStructureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagsExceptionResponse = async ( @@ -3963,13 +2985,11 @@ const deserializeAws_json1_1InvalidTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagsException(body, context); - const contents: InvalidTagsException = { - name: "InvalidTagsException", - $fault: "client", + const exception = new InvalidTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidWebhookAuthenticationParametersExceptionResponse = async ( @@ -3978,13 +2998,11 @@ const deserializeAws_json1_1InvalidWebhookAuthenticationParametersExceptionRespo ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidWebhookAuthenticationParametersException(body, context); - const contents: InvalidWebhookAuthenticationParametersException = { - name: "InvalidWebhookAuthenticationParametersException", - $fault: "client", + const exception = new InvalidWebhookAuthenticationParametersException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidWebhookFilterPatternExceptionResponse = async ( @@ -3993,13 +3011,11 @@ const deserializeAws_json1_1InvalidWebhookFilterPatternExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidWebhookFilterPatternException(body, context); - const contents: InvalidWebhookFilterPatternException = { - name: "InvalidWebhookFilterPatternException", - $fault: "client", + const exception = new InvalidWebhookFilterPatternException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1JobNotFoundExceptionResponse = async ( @@ -4008,13 +3024,11 @@ const deserializeAws_json1_1JobNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1JobNotFoundException(body, context); - const contents: JobNotFoundException = { - name: "JobNotFoundException", - $fault: "client", + const exception = new JobNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -4023,13 +3037,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotLatestPipelineExecutionExceptionResponse = async ( @@ -4038,13 +3050,11 @@ const deserializeAws_json1_1NotLatestPipelineExecutionExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotLatestPipelineExecutionException(body, context); - const contents: NotLatestPipelineExecutionException = { - name: "NotLatestPipelineExecutionException", - $fault: "client", + const exception = new NotLatestPipelineExecutionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OutputVariablesSizeExceededExceptionResponse = async ( @@ -4053,13 +3063,11 @@ const deserializeAws_json1_1OutputVariablesSizeExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OutputVariablesSizeExceededException(body, context); - const contents: OutputVariablesSizeExceededException = { - name: "OutputVariablesSizeExceededException", - $fault: "client", + const exception = new OutputVariablesSizeExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineExecutionNotFoundExceptionResponse = async ( @@ -4068,13 +3076,11 @@ const deserializeAws_json1_1PipelineExecutionNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineExecutionNotFoundException(body, context); - const contents: PipelineExecutionNotFoundException = { - name: "PipelineExecutionNotFoundException", - $fault: "client", + const exception = new PipelineExecutionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineExecutionNotStoppableExceptionResponse = async ( @@ -4083,13 +3089,11 @@ const deserializeAws_json1_1PipelineExecutionNotStoppableExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineExecutionNotStoppableException(body, context); - const contents: PipelineExecutionNotStoppableException = { - name: "PipelineExecutionNotStoppableException", - $fault: "client", + const exception = new PipelineExecutionNotStoppableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineNameInUseExceptionResponse = async ( @@ -4098,13 +3102,11 @@ const deserializeAws_json1_1PipelineNameInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineNameInUseException(body, context); - const contents: PipelineNameInUseException = { - name: "PipelineNameInUseException", - $fault: "client", + const exception = new PipelineNameInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineNotFoundExceptionResponse = async ( @@ -4113,13 +3115,11 @@ const deserializeAws_json1_1PipelineNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineNotFoundException(body, context); - const contents: PipelineNotFoundException = { - name: "PipelineNotFoundException", - $fault: "client", + const exception = new PipelineNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineVersionNotFoundExceptionResponse = async ( @@ -4128,13 +3128,11 @@ const deserializeAws_json1_1PipelineVersionNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineVersionNotFoundException(body, context); - const contents: PipelineVersionNotFoundException = { - name: "PipelineVersionNotFoundException", - $fault: "client", + const exception = new PipelineVersionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestFailedExceptionResponse = async ( @@ -4143,13 +3141,11 @@ const deserializeAws_json1_1RequestFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestFailedException(body, context); - const contents: RequestFailedException = { - name: "RequestFailedException", - $fault: "client", + const exception = new RequestFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -4158,13 +3154,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1StageNotFoundExceptionResponse = async ( @@ -4173,13 +3167,11 @@ const deserializeAws_json1_1StageNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1StageNotFoundException(body, context); - const contents: StageNotFoundException = { - name: "StageNotFoundException", - $fault: "client", + const exception = new StageNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1StageNotRetryableExceptionResponse = async ( @@ -4188,13 +3180,11 @@ const deserializeAws_json1_1StageNotRetryableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1StageNotRetryableException(body, context); - const contents: StageNotRetryableException = { - name: "StageNotRetryableException", - $fault: "client", + const exception = new StageNotRetryableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -4203,13 +3193,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -4218,13 +3206,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WebhookNotFoundExceptionResponse = async ( @@ -4233,13 +3219,11 @@ const deserializeAws_json1_1WebhookNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WebhookNotFoundException(body, context); - const contents: WebhookNotFoundException = { - name: "WebhookNotFoundException", - $fault: "client", + const exception = new WebhookNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcknowledgeJobInput = (input: AcknowledgeJobInput, context: __SerdeContext): any => { diff --git a/clients/client-codestar-connections/src/index.ts b/clients/client-codestar-connections/src/index.ts index 50c6bbb33cac6..ab19ccefd14ed 100644 --- a/clients/client-codestar-connections/src/index.ts +++ b/clients/client-codestar-connections/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodeStarConnectionsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodeStarConnectionsServiceException } from "./models/CodeStarConnectionsServiceException"; diff --git a/clients/client-codestar-connections/src/models/CodeStarConnectionsServiceException.ts b/clients/client-codestar-connections/src/models/CodeStarConnectionsServiceException.ts new file mode 100644 index 0000000000000..dcf9a2a83f4a2 --- /dev/null +++ b/clients/client-codestar-connections/src/models/CodeStarConnectionsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeStarConnections service. + */ +export class CodeStarConnectionsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeStarConnectionsServiceException.prototype); + } +} diff --git a/clients/client-codestar-connections/src/models/models_0.ts b/clients/client-codestar-connections/src/models/models_0.ts index 241eb4bbeca3c..1f01da7f02039 100644 --- a/clients/client-codestar-connections/src/models/models_0.ts +++ b/clients/client-codestar-connections/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeStarConnectionsServiceException as __BaseException } from "./CodeStarConnectionsServiceException"; export enum ProviderType { BITBUCKET = "Bitbucket", @@ -92,28 +95,64 @@ export namespace CreateConnectionOutput { /** *

Exceeded the maximum limit for connections.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Resource not found. Verify the connection resource ARN and try again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Resource not found. Verify the ARN for the host resource and try again.

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "client"; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + this.Message = opts.Message; + } } /** @@ -669,19 +708,43 @@ export namespace UntagResourceOutput { /** *

Two conflicting operations have been made on the same resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The operation is not supported. Check the connection status and try again.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + } } export interface UpdateHostInput { diff --git a/clients/client-codestar-connections/src/protocols/Aws_json1_0.ts b/clients/client-codestar-connections/src/protocols/Aws_json1_0.ts index 80e9efe8688df..65948ccba1bb3 100644 --- a/clients/client-codestar-connections/src/protocols/Aws_json1_0.ts +++ b/clients/client-codestar-connections/src/protocols/Aws_json1_0.ts @@ -1,12 +1,13 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateConnectionCommandInput, CreateConnectionCommandOutput } from "../commands/CreateConnectionCommand"; @@ -24,6 +25,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateHostCommandInput, UpdateHostCommandOutput } from "../commands/UpdateHostCommand"; +import { CodeStarConnectionsServiceException as __BaseException } from "../models/CodeStarConnectionsServiceException"; import { ConflictException, Connection, @@ -241,49 +243,28 @@ const deserializeAws_json1_0CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.codestarconnections#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.codestarconnections#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateHostCommand = async ( @@ -311,33 +292,22 @@ const deserializeAws_json1_0CreateHostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.codestarconnections#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteConnectionCommand = async ( @@ -365,33 +335,22 @@ const deserializeAws_json1_0DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteHostCommand = async ( @@ -419,41 +378,25 @@ const deserializeAws_json1_0DeleteHostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.codestarconnections#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetConnectionCommand = async ( @@ -481,41 +424,25 @@ const deserializeAws_json1_0GetConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.codestarconnections#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetHostCommand = async ( @@ -543,41 +470,25 @@ const deserializeAws_json1_0GetHostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.codestarconnections#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListConnectionsCommand = async ( @@ -605,25 +516,19 @@ const deserializeAws_json1_0ListConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListHostsCommand = async ( @@ -651,25 +556,19 @@ const deserializeAws_json1_0ListHostsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -697,33 +596,22 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -751,41 +639,25 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.codestarconnections#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -813,33 +685,22 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateHostCommand = async ( @@ -867,57 +728,31 @@ const deserializeAws_json1_0UpdateHostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.codestarconnections#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codestarconnections#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.codestarconnections#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceUnavailableExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.codestarconnections#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -926,13 +761,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededExceptionResponse = async ( @@ -941,13 +774,11 @@ const deserializeAws_json1_0LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -956,13 +787,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceUnavailableExceptionResponse = async ( @@ -971,13 +800,11 @@ const deserializeAws_json1_0ResourceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceUnavailableException(body, context); - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "client", + const exception = new ResourceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0UnsupportedOperationExceptionResponse = async ( @@ -986,13 +813,11 @@ const deserializeAws_json1_0UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CreateConnectionInput = (input: CreateConnectionInput, context: __SerdeContext): any => { diff --git a/clients/client-codestar-notifications/src/index.ts b/clients/client-codestar-notifications/src/index.ts index 155a6da791f7e..508142831ab29 100644 --- a/clients/client-codestar-notifications/src/index.ts +++ b/clients/client-codestar-notifications/src/index.ts @@ -3,3 +3,4 @@ export * from "./CodestarNotificationsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CodestarNotificationsServiceException } from "./models/CodestarNotificationsServiceException"; diff --git a/clients/client-codestar-notifications/src/models/CodestarNotificationsServiceException.ts b/clients/client-codestar-notifications/src/models/CodestarNotificationsServiceException.ts new file mode 100644 index 0000000000000..293ecbd15308d --- /dev/null +++ b/clients/client-codestar-notifications/src/models/CodestarNotificationsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodestarNotifications service. + */ +export class CodestarNotificationsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodestarNotificationsServiceException.prototype); + } +} diff --git a/clients/client-codestar-notifications/src/models/models_0.ts b/clients/client-codestar-notifications/src/models/models_0.ts index ebefa5f92ffc1..c0972b00622e3 100644 --- a/clients/client-codestar-notifications/src/models/models_0.ts +++ b/clients/client-codestar-notifications/src/models/models_0.ts @@ -1,33 +1,71 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodestarNotificationsServiceException as __BaseException } from "./CodestarNotificationsServiceException"; /** *

AWS CodeStar Notifications can't create the notification rule because you do not have sufficient * permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

AWS CodeStar Notifications can't complete the request because the resource is being modified by * another process. Wait a few minutes and try again.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

Some or all of the configuration is incomplete, missing, or not valid.

*/ -export interface ConfigurationException extends __SmithyException, $MetadataBearer { - name: "ConfigurationException"; - $fault: "client"; +export class ConfigurationException extends __BaseException { + readonly name: "ConfigurationException" = "ConfigurationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConfigurationException.prototype); + this.Message = opts.Message; + } } export enum DetailType { @@ -153,29 +191,65 @@ export namespace CreateNotificationRuleResult { * accounts, notification rules, notifications, resources, and targets. For more * information, see Limits.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

A resource with the same name or ID already exists. Notification rule names must be * unique in your AWS account.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

One or more parameter values are not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DeleteNotificationRuleRequest { @@ -409,19 +483,43 @@ export namespace DescribeNotificationRuleResult { /** *

AWS CodeStar Notifications can't find a resource that matches the provided ARN.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The value for the enumeration token used in the request to return the next batch of the results is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export enum ListEventTypesFilterName { diff --git a/clients/client-codestar-notifications/src/protocols/Aws_restJson1.ts b/clients/client-codestar-notifications/src/protocols/Aws_restJson1.ts index 6667cb06bf326..02780186d52b5 100644 --- a/clients/client-codestar-notifications/src/protocols/Aws_restJson1.ts +++ b/clients/client-codestar-notifications/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -46,6 +45,7 @@ import { UpdateNotificationRuleCommandInput, UpdateNotificationRuleCommandOutput, } from "../commands/UpdateNotificationRuleCommand"; +import { CodestarNotificationsServiceException as __BaseException } from "../models/CodestarNotificationsServiceException"; import { AccessDeniedException, ConcurrentModificationException, @@ -443,73 +443,37 @@ const deserializeAws_restJson1CreateNotificationRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.codestarnotifications#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.codestarnotifications#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConfigurationException": case "com.amazonaws.codestarnotifications#ConfigurationException": - response = { - ...(await deserializeAws_restJson1ConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConfigurationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestarnotifications#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.codestarnotifications#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteNotificationRuleCommand = async ( @@ -538,49 +502,28 @@ const deserializeAws_restJson1DeleteNotificationRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestarnotifications#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestarnotifications#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTargetCommand = async ( @@ -605,33 +548,22 @@ const deserializeAws_restJson1DeleteTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeNotificationRuleCommand = async ( @@ -700,41 +632,25 @@ const deserializeAws_restJson1DescribeNotificationRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarnotifications#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEventTypesCommand = async ( @@ -767,41 +683,25 @@ const deserializeAws_restJson1ListEventTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestarnotifications#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNotificationRulesCommand = async ( @@ -834,41 +734,25 @@ const deserializeAws_restJson1ListNotificationRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestarnotifications#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -897,41 +781,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarnotifications#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTargetsCommand = async ( @@ -964,41 +832,25 @@ const deserializeAws_restJson1ListTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestarnotifications#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SubscribeCommand = async ( @@ -1027,41 +879,25 @@ const deserializeAws_restJson1SubscribeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarnotifications#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1090,49 +926,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestarnotifications#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codestarnotifications#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnsubscribeCommand = async ( @@ -1161,33 +976,22 @@ const deserializeAws_restJson1UnsubscribeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1212,49 +1016,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestarnotifications#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.codestarnotifications#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNotificationRuleCommand = async ( @@ -1279,177 +1062,153 @@ const deserializeAws_restJson1UpdateNotificationRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.codestarnotifications#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestarnotifications#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConfigurationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConfigurationException = { - name: "ConfigurationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConfigurationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1EventTypeIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-codestar/src/index.ts b/clients/client-codestar/src/index.ts index 975e7b43a7022..68352bfe7b906 100644 --- a/clients/client-codestar/src/index.ts +++ b/clients/client-codestar/src/index.ts @@ -2,3 +2,4 @@ export * from "./CodeStar"; export * from "./CodeStarClient"; export * from "./commands"; export * from "./models"; +export { CodeStarServiceException } from "./models/CodeStarServiceException"; diff --git a/clients/client-codestar/src/models/CodeStarServiceException.ts b/clients/client-codestar/src/models/CodeStarServiceException.ts new file mode 100644 index 0000000000000..49b5836f6d22d --- /dev/null +++ b/clients/client-codestar/src/models/CodeStarServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CodeStar service. + */ +export class CodeStarServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CodeStarServiceException.prototype); + } +} diff --git a/clients/client-codestar/src/models/models_0.ts b/clients/client-codestar/src/models/models_0.ts index 45c3618bb6abe..58f04a6080929 100644 --- a/clients/client-codestar/src/models/models_0.ts +++ b/clients/client-codestar/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CodeStarServiceException as __BaseException } from "./CodeStarServiceException"; export interface AssociateTeamMemberRequest { /** @@ -62,64 +64,134 @@ export namespace AssociateTeamMemberResult { *

Another modification is being made. That modification must complete before you can make * your change.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "server"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** *

The service role is not valid.

*/ -export interface InvalidServiceRoleException extends __SmithyException, $MetadataBearer { - name: "InvalidServiceRoleException"; - $fault: "client"; - message?: string; +export class InvalidServiceRoleException extends __BaseException { + readonly name: "InvalidServiceRoleException" = "InvalidServiceRoleException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidServiceRoleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidServiceRoleException.prototype); + } } /** *

A resource limit has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

Project configuration information is required but not specified.

*/ -export interface ProjectConfigurationException extends __SmithyException, $MetadataBearer { - name: "ProjectConfigurationException"; - $fault: "client"; - message?: string; +export class ProjectConfigurationException extends __BaseException { + readonly name: "ProjectConfigurationException" = "ProjectConfigurationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProjectConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProjectConfigurationException.prototype); + } } /** *

The specified AWS CodeStar project was not found.

*/ -export interface ProjectNotFoundException extends __SmithyException, $MetadataBearer { - name: "ProjectNotFoundException"; - $fault: "client"; - message?: string; +export class ProjectNotFoundException extends __BaseException { + readonly name: "ProjectNotFoundException" = "ProjectNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProjectNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProjectNotFoundException.prototype); + } } /** *

The team member is already associated with a role in this project.

*/ -export interface TeamMemberAlreadyAssociatedException extends __SmithyException, $MetadataBearer { - name: "TeamMemberAlreadyAssociatedException"; - $fault: "client"; - message?: string; +export class TeamMemberAlreadyAssociatedException extends __BaseException { + readonly name: "TeamMemberAlreadyAssociatedException" = "TeamMemberAlreadyAssociatedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TeamMemberAlreadyAssociatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TeamMemberAlreadyAssociatedException.prototype); + } } /** *

The specified input is either not valid, or it could not be validated.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -444,20 +516,40 @@ export namespace CreateProjectResult { *

An AWS CodeStar project with the same ID already exists in this region for the AWS account. * AWS CodeStar project IDs must be unique within a region for the AWS account.

*/ -export interface ProjectAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ProjectAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ProjectAlreadyExistsException extends __BaseException { + readonly name: "ProjectAlreadyExistsException" = "ProjectAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProjectAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProjectAlreadyExistsException.prototype); + } } /** *

The project creation request was valid, but a nonspecific exception or error occurred * during project creation. The project could not be created in AWS CodeStar.

*/ -export interface ProjectCreationFailedException extends __SmithyException, $MetadataBearer { - name: "ProjectCreationFailedException"; - $fault: "client"; - message?: string; +export class ProjectCreationFailedException extends __BaseException { + readonly name: "ProjectCreationFailedException" = "ProjectCreationFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProjectCreationFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProjectCreationFailedException.prototype); + } } export interface CreateUserProfileRequest { @@ -545,10 +637,20 @@ export namespace CreateUserProfileResult { *

A user profile with that name already exists in this region for the AWS account. AWS * CodeStar user profile names must be unique within a region for the AWS account.

*/ -export interface UserProfileAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "UserProfileAlreadyExistsException"; - $fault: "client"; - message?: string; +export class UserProfileAlreadyExistsException extends __BaseException { + readonly name: "UserProfileAlreadyExistsException" = "UserProfileAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserProfileAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserProfileAlreadyExistsException.prototype); + } } export interface DeleteProjectRequest { @@ -811,10 +913,20 @@ export namespace DescribeUserProfileResult { /** *

The user profile was not found.

*/ -export interface UserProfileNotFoundException extends __SmithyException, $MetadataBearer { - name: "UserProfileNotFoundException"; - $fault: "client"; - message?: string; +export class UserProfileNotFoundException extends __BaseException { + readonly name: "UserProfileNotFoundException" = "UserProfileNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserProfileNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserProfileNotFoundException.prototype); + } } export interface DisassociateTeamMemberRequest { @@ -853,10 +965,20 @@ export namespace DisassociateTeamMemberResult { /** *

The next token is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; - message?: string; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } export interface ListProjectsRequest { @@ -1326,10 +1448,20 @@ export namespace UpdateProjectResult { /** *

The specified team member was not found.

*/ -export interface TeamMemberNotFoundException extends __SmithyException, $MetadataBearer { - name: "TeamMemberNotFoundException"; - $fault: "client"; - message?: string; +export class TeamMemberNotFoundException extends __BaseException { + readonly name: "TeamMemberNotFoundException" = "TeamMemberNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TeamMemberNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TeamMemberNotFoundException.prototype); + } } export interface UpdateTeamMemberRequest { diff --git a/clients/client-codestar/src/protocols/Aws_json1_1.ts b/clients/client-codestar/src/protocols/Aws_json1_1.ts index 40cf076eff323..fc93fa8295a8a 100644 --- a/clients/client-codestar/src/protocols/Aws_json1_1.ts +++ b/clients/client-codestar/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -42,6 +41,7 @@ import { UntagProjectCommandInput, UntagProjectCommandOutput } from "../commands import { UpdateProjectCommandInput, UpdateProjectCommandOutput } from "../commands/UpdateProjectCommand"; import { UpdateTeamMemberCommandInput, UpdateTeamMemberCommandOutput } from "../commands/UpdateTeamMemberCommand"; import { UpdateUserProfileCommandInput, UpdateUserProfileCommandOutput } from "../commands/UpdateUserProfileCommand"; +import { CodeStarServiceException as __BaseException } from "../models/CodeStarServiceException"; import { AssociateTeamMemberRequest, AssociateTeamMemberResult, @@ -366,81 +366,40 @@ const deserializeAws_json1_1AssociateTeamMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidServiceRoleException": case "com.amazonaws.codestar#InvalidServiceRoleException": - response = { - ...(await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestar#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProjectConfigurationException": case "com.amazonaws.codestar#ProjectConfigurationException": - response = { - ...(await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "TeamMemberAlreadyAssociatedException": case "com.amazonaws.codestar#TeamMemberAlreadyAssociatedException": - response = { - ...(await deserializeAws_json1_1TeamMemberAlreadyAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TeamMemberAlreadyAssociatedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProjectCommand = async ( @@ -468,81 +427,40 @@ const deserializeAws_json1_1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidServiceRoleException": case "com.amazonaws.codestar#InvalidServiceRoleException": - response = { - ...(await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestar#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProjectAlreadyExistsException": case "com.amazonaws.codestar#ProjectAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ProjectAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectAlreadyExistsExceptionResponse(parsedOutput, context); case "ProjectConfigurationException": case "com.amazonaws.codestar#ProjectConfigurationException": - response = { - ...(await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context); case "ProjectCreationFailedException": case "com.amazonaws.codestar#ProjectCreationFailedException": - response = { - ...(await deserializeAws_json1_1ProjectCreationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectCreationFailedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserProfileCommand = async ( @@ -570,41 +488,25 @@ const deserializeAws_json1_1CreateUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UserProfileAlreadyExistsException": case "com.amazonaws.codestar#UserProfileAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1UserProfileAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserProfileAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProjectCommand = async ( @@ -632,49 +534,28 @@ const deserializeAws_json1_1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidServiceRoleException": case "com.amazonaws.codestar#InvalidServiceRoleException": - response = { - ...(await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserProfileCommand = async ( @@ -702,33 +583,22 @@ const deserializeAws_json1_1DeleteUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProjectCommand = async ( @@ -756,65 +626,34 @@ const deserializeAws_json1_1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidServiceRoleException": case "com.amazonaws.codestar#InvalidServiceRoleException": - response = { - ...(await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context); case "ProjectConfigurationException": case "com.amazonaws.codestar#ProjectConfigurationException": - response = { - ...(await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserProfileCommand = async ( @@ -842,41 +681,25 @@ const deserializeAws_json1_1DescribeUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UserProfileNotFoundException": case "com.amazonaws.codestar#UserProfileNotFoundException": - response = { - ...(await deserializeAws_json1_1UserProfileNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserProfileNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateTeamMemberCommand = async ( @@ -904,57 +727,31 @@ const deserializeAws_json1_1DisassociateTeamMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidServiceRoleException": case "com.amazonaws.codestar#InvalidServiceRoleException": - response = { - ...(await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProjectsCommand = async ( @@ -982,41 +779,25 @@ const deserializeAws_json1_1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestar#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourcesCommand = async ( @@ -1044,49 +825,28 @@ const deserializeAws_json1_1ListResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestar#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForProjectCommand = async ( @@ -1114,49 +874,28 @@ const deserializeAws_json1_1ListTagsForProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestar#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTeamMembersCommand = async ( @@ -1184,49 +923,28 @@ const deserializeAws_json1_1ListTeamMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestar#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUserProfilesCommand = async ( @@ -1254,41 +972,25 @@ const deserializeAws_json1_1ListUserProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.codestar#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagProjectCommand = async ( @@ -1316,57 +1018,31 @@ const deserializeAws_json1_1TagProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestar#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagProjectCommand = async ( @@ -1394,57 +1070,31 @@ const deserializeAws_json1_1UntagProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestar#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProjectCommand = async ( @@ -1472,41 +1122,25 @@ const deserializeAws_json1_1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTeamMemberCommand = async ( @@ -1534,81 +1168,40 @@ const deserializeAws_json1_1UpdateTeamMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.codestar#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidServiceRoleException": case "com.amazonaws.codestar#InvalidServiceRoleException": - response = { - ...(await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidServiceRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.codestar#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProjectConfigurationException": case "com.amazonaws.codestar#ProjectConfigurationException": - response = { - ...(await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectConfigurationExceptionResponse(parsedOutput, context); case "ProjectNotFoundException": case "com.amazonaws.codestar#ProjectNotFoundException": - response = { - ...(await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProjectNotFoundExceptionResponse(parsedOutput, context); case "TeamMemberNotFoundException": case "com.amazonaws.codestar#TeamMemberNotFoundException": - response = { - ...(await deserializeAws_json1_1TeamMemberNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TeamMemberNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserProfileCommand = async ( @@ -1636,41 +1229,25 @@ const deserializeAws_json1_1UpdateUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UserProfileNotFoundException": case "com.amazonaws.codestar#UserProfileNotFoundException": - response = { - ...(await deserializeAws_json1_1UserProfileNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserProfileNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.codestar#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -1679,13 +1256,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "server", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -1694,13 +1269,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidServiceRoleExceptionResponse = async ( @@ -1709,13 +1282,11 @@ const deserializeAws_json1_1InvalidServiceRoleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidServiceRoleException(body, context); - const contents: InvalidServiceRoleException = { - name: "InvalidServiceRoleException", - $fault: "client", + const exception = new InvalidServiceRoleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1724,13 +1295,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProjectAlreadyExistsExceptionResponse = async ( @@ -1739,13 +1308,11 @@ const deserializeAws_json1_1ProjectAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProjectAlreadyExistsException(body, context); - const contents: ProjectAlreadyExistsException = { - name: "ProjectAlreadyExistsException", - $fault: "client", + const exception = new ProjectAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProjectConfigurationExceptionResponse = async ( @@ -1754,13 +1321,11 @@ const deserializeAws_json1_1ProjectConfigurationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProjectConfigurationException(body, context); - const contents: ProjectConfigurationException = { - name: "ProjectConfigurationException", - $fault: "client", + const exception = new ProjectConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProjectCreationFailedExceptionResponse = async ( @@ -1769,13 +1334,11 @@ const deserializeAws_json1_1ProjectCreationFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProjectCreationFailedException(body, context); - const contents: ProjectCreationFailedException = { - name: "ProjectCreationFailedException", - $fault: "client", + const exception = new ProjectCreationFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProjectNotFoundExceptionResponse = async ( @@ -1784,13 +1347,11 @@ const deserializeAws_json1_1ProjectNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProjectNotFoundException(body, context); - const contents: ProjectNotFoundException = { - name: "ProjectNotFoundException", - $fault: "client", + const exception = new ProjectNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TeamMemberAlreadyAssociatedExceptionResponse = async ( @@ -1799,13 +1360,11 @@ const deserializeAws_json1_1TeamMemberAlreadyAssociatedExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TeamMemberAlreadyAssociatedException(body, context); - const contents: TeamMemberAlreadyAssociatedException = { - name: "TeamMemberAlreadyAssociatedException", - $fault: "client", + const exception = new TeamMemberAlreadyAssociatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TeamMemberNotFoundExceptionResponse = async ( @@ -1814,13 +1373,11 @@ const deserializeAws_json1_1TeamMemberNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TeamMemberNotFoundException(body, context); - const contents: TeamMemberNotFoundException = { - name: "TeamMemberNotFoundException", - $fault: "client", + const exception = new TeamMemberNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserProfileAlreadyExistsExceptionResponse = async ( @@ -1829,13 +1386,11 @@ const deserializeAws_json1_1UserProfileAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserProfileAlreadyExistsException(body, context); - const contents: UserProfileAlreadyExistsException = { - name: "UserProfileAlreadyExistsException", - $fault: "client", + const exception = new UserProfileAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserProfileNotFoundExceptionResponse = async ( @@ -1844,13 +1399,11 @@ const deserializeAws_json1_1UserProfileNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserProfileNotFoundException(body, context); - const contents: UserProfileNotFoundException = { - name: "UserProfileNotFoundException", - $fault: "client", + const exception = new UserProfileNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -1859,13 +1412,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateTeamMemberRequest = ( diff --git a/clients/client-cognito-identity-provider/src/index.ts b/clients/client-cognito-identity-provider/src/index.ts index 9cf19908b38e2..980ceee9c857e 100644 --- a/clients/client-cognito-identity-provider/src/index.ts +++ b/clients/client-cognito-identity-provider/src/index.ts @@ -3,3 +3,4 @@ export * from "./CognitoIdentityProviderClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CognitoIdentityProviderServiceException } from "./models/CognitoIdentityProviderServiceException"; diff --git a/clients/client-cognito-identity-provider/src/models/CognitoIdentityProviderServiceException.ts b/clients/client-cognito-identity-provider/src/models/CognitoIdentityProviderServiceException.ts new file mode 100644 index 0000000000000..0895d23e20753 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/models/CognitoIdentityProviderServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CognitoIdentityProvider service. + */ +export class CognitoIdentityProviderServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CognitoIdentityProviderServiceException.prototype); + } +} diff --git a/clients/client-cognito-identity-provider/src/models/models_0.ts b/clients/client-cognito-identity-provider/src/models/models_0.ts index 8e54b1a1b5154..f6288da90f03b 100644 --- a/clients/client-cognito-identity-provider/src/models/models_0.ts +++ b/clients/client-cognito-identity-provider/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CognitoIdentityProviderServiceException as __BaseException } from "./CognitoIdentityProviderServiceException"; export enum RecoveryOptionNameType { ADMIN_ONLY = "admin_only", @@ -381,73 +383,115 @@ export namespace AddCustomAttributesResponse { /** *

This exception is thrown when Amazon Cognito encounters an internal error.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; /** - *

The message returned when Amazon Cognito throws an internal error exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + } } /** *

This exception is thrown when the Amazon Cognito service encounters an invalid parameter.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the Amazon Cognito service throws an invalid parameter exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

This exception is thrown when a user isn't authorized.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the Amazon Cognito service returns a not authorized exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + } } /** *

This exception is thrown when the Amazon Cognito service can't find the requested resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the Amazon Cognito service returns a resource not found exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

This exception is thrown when the user has made too many requests for a given operation.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the Amazon Cognito service returns a too many requests exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** *

This exception is thrown when you're trying to modify a user pool while a user import job is in progress for that pool.

*/ -export interface UserImportInProgressException extends __SmithyException, $MetadataBearer { - name: "UserImportInProgressException"; - $fault: "client"; +export class UserImportInProgressException extends __BaseException { + readonly name: "UserImportInProgressException" = "UserImportInProgressException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the user pool has an import job running.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserImportInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserImportInProgressException.prototype); + } } export interface AdminAddUserToGroupRequest { @@ -480,13 +524,20 @@ export namespace AdminAddUserToGroupRequest { /** *

This exception is thrown when a user isn't found.

*/ -export interface UserNotFoundException extends __SmithyException, $MetadataBearer { - name: "UserNotFoundException"; - $fault: "client"; +export class UserNotFoundException extends __BaseException { + readonly name: "UserNotFoundException" = "UserNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message returned when a user isn't found.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserNotFoundException.prototype); + } } /** @@ -560,61 +611,96 @@ export namespace AdminConfirmSignUpResponse { /** *

This exception is thrown when Amazon Cognito encounters an invalid Lambda response.

*/ -export interface InvalidLambdaResponseException extends __SmithyException, $MetadataBearer { - name: "InvalidLambdaResponseException"; - $fault: "client"; +export class InvalidLambdaResponseException extends __BaseException { + readonly name: "InvalidLambdaResponseException" = "InvalidLambdaResponseException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito hrows an invalid Lambda response exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLambdaResponseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLambdaResponseException.prototype); + } } /** *

This exception is thrown when a user exceeds the limit for a requested Amazon Web Services resource.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito throws a limit exceeded exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

This exception is thrown when the user has made too many failed attempts for a given action, such as sign-in.

*/ -export interface TooManyFailedAttemptsException extends __SmithyException, $MetadataBearer { - name: "TooManyFailedAttemptsException"; - $fault: "client"; +export class TooManyFailedAttemptsException extends __BaseException { + readonly name: "TooManyFailedAttemptsException" = "TooManyFailedAttemptsException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito returns a TooManyFailedAttempts exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyFailedAttemptsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyFailedAttemptsException.prototype); + } } /** *

This exception is thrown when Amazon Cognito encounters an unexpected exception with Lambda.

*/ -export interface UnexpectedLambdaException extends __SmithyException, $MetadataBearer { - name: "UnexpectedLambdaException"; - $fault: "client"; +export class UnexpectedLambdaException extends __BaseException { + readonly name: "UnexpectedLambdaException" = "UnexpectedLambdaException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito returns an unexpected Lambda exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnexpectedLambdaException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnexpectedLambdaException.prototype); + } } /** *

This exception is thrown when the Amazon Cognito service encounters a user validation exception with the Lambda service.

*/ -export interface UserLambdaValidationException extends __SmithyException, $MetadataBearer { - name: "UserLambdaValidationException"; - $fault: "client"; +export class UserLambdaValidationException extends __BaseException { + readonly name: "UserLambdaValidationException" = "UserLambdaValidationException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the Amazon Cognito service returns a user validation exception with the Lambda service.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserLambdaValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserLambdaValidationException.prototype); + } } export enum DeliveryMediumType { @@ -912,87 +998,136 @@ export namespace AdminCreateUserResponse { /** *

This exception is thrown when a verification code fails to deliver successfully.

*/ -export interface CodeDeliveryFailureException extends __SmithyException, $MetadataBearer { - name: "CodeDeliveryFailureException"; - $fault: "client"; +export class CodeDeliveryFailureException extends __BaseException { + readonly name: "CodeDeliveryFailureException" = "CodeDeliveryFailureException"; + readonly $fault: "client" = "client"; /** - *

The message sent when a verification code fails to deliver successfully.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeDeliveryFailureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeDeliveryFailureException.prototype); + } } /** *

This exception is thrown when Amazon Cognito encounters an invalid password.

*/ -export interface InvalidPasswordException extends __SmithyException, $MetadataBearer { - name: "InvalidPasswordException"; - $fault: "client"; +export class InvalidPasswordException extends __BaseException { + readonly name: "InvalidPasswordException" = "InvalidPasswordException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito throws an invalid user password exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPasswordException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPasswordException.prototype); + } } /** *

This exception is returned when the role provided for SMS configuration doesn't have permission to publish using Amazon SNS.

*/ -export interface InvalidSmsRoleAccessPolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidSmsRoleAccessPolicyException"; - $fault: "client"; +export class InvalidSmsRoleAccessPolicyException extends __BaseException { + readonly name: "InvalidSmsRoleAccessPolicyException" = "InvalidSmsRoleAccessPolicyException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the invalid SMS role access policy exception is thrown.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSmsRoleAccessPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSmsRoleAccessPolicyException.prototype); + } } /** *

This exception is thrown when the trust relationship is not valid for the role provided for SMS configuration. This can happen if you don't trust cognito-idp.amazonaws.com or the * external ID provided in the role does not match what is provided in the SMS configuration for the user pool.

*/ -export interface InvalidSmsRoleTrustRelationshipException extends __SmithyException, $MetadataBearer { - name: "InvalidSmsRoleTrustRelationshipException"; - $fault: "client"; +export class InvalidSmsRoleTrustRelationshipException extends __BaseException { + readonly name: "InvalidSmsRoleTrustRelationshipException" = "InvalidSmsRoleTrustRelationshipException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the role trust relationship for the SMS message is not valid.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSmsRoleTrustRelationshipException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSmsRoleTrustRelationshipException.prototype); + } } /** *

This exception is thrown when a precondition is not met.

*/ -export interface PreconditionNotMetException extends __SmithyException, $MetadataBearer { - name: "PreconditionNotMetException"; - $fault: "client"; +export class PreconditionNotMetException extends __BaseException { + readonly name: "PreconditionNotMetException" = "PreconditionNotMetException"; + readonly $fault: "client" = "client"; /** - *

The message returned when a precondition is not met.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionNotMetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionNotMetException.prototype); + } } /** *

The request failed because the user is in an unsupported * state.

*/ -export interface UnsupportedUserStateException extends __SmithyException, $MetadataBearer { - name: "UnsupportedUserStateException"; - $fault: "client"; +export class UnsupportedUserStateException extends __BaseException { + readonly name: "UnsupportedUserStateException" = "UnsupportedUserStateException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the user is in an unsupported state.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedUserStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedUserStateException.prototype); + } } /** *

This exception is thrown when Amazon Cognito encounters a user name that already exists in the user pool.

*/ -export interface UsernameExistsException extends __SmithyException, $MetadataBearer { - name: "UsernameExistsException"; - $fault: "client"; +export class UsernameExistsException extends __BaseException { + readonly name: "UsernameExistsException" = "UsernameExistsException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito throws a user name exists exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UsernameExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UsernameExistsException.prototype); + } } /** @@ -1196,13 +1331,20 @@ export namespace AdminDisableProviderForUserResponse { *

This exception is thrown when a user tries to confirm the account with an email or phone number that has already been supplied as an alias from a different account. This exception * tells user that an account with this email or phone already exists.

*/ -export interface AliasExistsException extends __SmithyException, $MetadataBearer { - name: "AliasExistsException"; - $fault: "client"; +export class AliasExistsException extends __BaseException { + readonly name: "AliasExistsException" = "AliasExistsException"; + readonly $fault: "client" = "client"; /** - *

The message sent to the user when an alias exists.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AliasExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AliasExistsException.prototype); + } } /** @@ -1316,13 +1458,20 @@ export namespace AdminForgetDeviceRequest { /** *

This exception is thrown when the user pool configuration is not valid.

*/ -export interface InvalidUserPoolConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidUserPoolConfigurationException"; - $fault: "client"; +export class InvalidUserPoolConfigurationException extends __BaseException { + readonly name: "InvalidUserPoolConfigurationException" = "InvalidUserPoolConfigurationException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the user pool configuration is not valid.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUserPoolConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUserPoolConfigurationException.prototype); + } } /** @@ -1977,37 +2126,58 @@ export namespace AdminInitiateAuthResponse { /** *

This exception is thrown when Amazon Cognito can't find a multi-factor authentication (MFA) method.

*/ -export interface MFAMethodNotFoundException extends __SmithyException, $MetadataBearer { - name: "MFAMethodNotFoundException"; - $fault: "client"; +export class MFAMethodNotFoundException extends __BaseException { + readonly name: "MFAMethodNotFoundException" = "MFAMethodNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message returned when Amazon Cognito throws an MFA method not found exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MFAMethodNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MFAMethodNotFoundException.prototype); + } } /** *

This exception is thrown when a password reset is required.

*/ -export interface PasswordResetRequiredException extends __SmithyException, $MetadataBearer { - name: "PasswordResetRequiredException"; - $fault: "client"; +export class PasswordResetRequiredException extends __BaseException { + readonly name: "PasswordResetRequiredException" = "PasswordResetRequiredException"; + readonly $fault: "client" = "client"; /** - *

The message returned when a password reset is required.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PasswordResetRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PasswordResetRequiredException.prototype); + } } /** *

This exception is thrown when a user isn't confirmed successfully.

*/ -export interface UserNotConfirmedException extends __SmithyException, $MetadataBearer { - name: "UserNotConfirmedException"; - $fault: "client"; +export class UserNotConfirmedException extends __BaseException { + readonly name: "UserNotConfirmedException" = "UserNotConfirmedException"; + readonly $fault: "client" = "client"; /** - *

The message returned when a user isn't confirmed successfully.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserNotConfirmedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserNotConfirmedException.prototype); + } } export interface AdminLinkProviderForUserRequest { @@ -2502,10 +2672,20 @@ export namespace AdminListUserAuthEventsResponse { /** *

This exception is thrown when user pool add-ons aren't enabled.

*/ -export interface UserPoolAddOnNotEnabledException extends __SmithyException, $MetadataBearer { - name: "UserPoolAddOnNotEnabledException"; - $fault: "client"; - message?: string; +export class UserPoolAddOnNotEnabledException extends __BaseException { + readonly name: "UserPoolAddOnNotEnabledException" = "UserPoolAddOnNotEnabledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserPoolAddOnNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserPoolAddOnNotEnabledException.prototype); + } } export interface AdminRemoveUserFromGroupRequest { @@ -2607,13 +2787,20 @@ export namespace AdminResetUserPasswordResponse { /** *

This exception is thrown when Amazon Cognito isn't allowed to use your email identity. HTTP status code: 400.

*/ -export interface InvalidEmailRoleAccessPolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidEmailRoleAccessPolicyException"; - $fault: "client"; +export class InvalidEmailRoleAccessPolicyException extends __BaseException { + readonly name: "InvalidEmailRoleAccessPolicyException" = "InvalidEmailRoleAccessPolicyException"; + readonly $fault: "client" = "client"; /** - *

The message returned when you have an unverified email address or the identity policy isn't set on an email address that Amazon Cognito can access.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEmailRoleAccessPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEmailRoleAccessPolicyException.prototype); + } } /** @@ -2772,34 +2959,58 @@ export namespace AdminRespondToAuthChallengeResponse { /** *

This exception is thrown if the provided code doesn't match what the server was expecting.

*/ -export interface CodeMismatchException extends __SmithyException, $MetadataBearer { - name: "CodeMismatchException"; - $fault: "client"; +export class CodeMismatchException extends __BaseException { + readonly name: "CodeMismatchException" = "CodeMismatchException"; + readonly $fault: "client" = "client"; /** - *

The message provided when the code mismatch exception is thrown.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeMismatchException.prototype); + } } /** *

This exception is thrown if a code has expired.

*/ -export interface ExpiredCodeException extends __SmithyException, $MetadataBearer { - name: "ExpiredCodeException"; - $fault: "client"; +export class ExpiredCodeException extends __BaseException { + readonly name: "ExpiredCodeException" = "ExpiredCodeException"; + readonly $fault: "client" = "client"; /** - *

The message returned when the expired code exception is thrown.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredCodeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredCodeException.prototype); + } } /** *

This exception is thrown when the software token time-based one-time password (TOTP) multi-factor authentication (MFA) isn't activated for the user pool.

*/ -export interface SoftwareTokenMFANotFoundException extends __SmithyException, $MetadataBearer { - name: "SoftwareTokenMFANotFoundException"; - $fault: "client"; - message?: string; +export class SoftwareTokenMFANotFoundException extends __BaseException { + readonly name: "SoftwareTokenMFANotFoundException" = "SoftwareTokenMFANotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SoftwareTokenMFANotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SoftwareTokenMFANotFoundException.prototype); + } } /** @@ -3305,13 +3516,20 @@ export namespace AssociateSoftwareTokenResponse { /** *

This exception is thrown if two or more modifications are happening concurrently.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** - *

The message provided when the concurrent exception is thrown.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** @@ -3716,10 +3934,20 @@ export namespace CreateGroupResponse { /** *

This exception is thrown when Amazon Cognito encounters a group that already exists in the user pool.

*/ -export interface GroupExistsException extends __SmithyException, $MetadataBearer { - name: "GroupExistsException"; - $fault: "client"; - message?: string; +export class GroupExistsException extends __BaseException { + readonly name: "GroupExistsException" = "GroupExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GroupExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GroupExistsException.prototype); + } } export enum IdentityProviderTypeType { @@ -4054,10 +4282,20 @@ export namespace CreateIdentityProviderResponse { /** *

This exception is thrown when the provider is already supported by the user pool.

*/ -export interface DuplicateProviderException extends __SmithyException, $MetadataBearer { - name: "DuplicateProviderException"; - $fault: "client"; - message?: string; +export class DuplicateProviderException extends __BaseException { + readonly name: "DuplicateProviderException" = "DuplicateProviderException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateProviderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateProviderException.prototype); + } } /** @@ -5228,10 +5466,20 @@ export namespace CreateUserPoolResponse { /** *

This exception is thrown when a user pool tag can't be set or updated.

*/ -export interface UserPoolTaggingException extends __SmithyException, $MetadataBearer { - name: "UserPoolTaggingException"; - $fault: "client"; - message?: string; +export class UserPoolTaggingException extends __BaseException { + readonly name: "UserPoolTaggingException" = "UserPoolTaggingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserPoolTaggingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserPoolTaggingException.prototype); + } } export enum OAuthFlowType { @@ -5741,19 +5989,39 @@ export namespace CreateUserPoolClientResponse { /** *

This exception is thrown when the specified OAuth flow is not valid.

*/ -export interface InvalidOAuthFlowException extends __SmithyException, $MetadataBearer { - name: "InvalidOAuthFlowException"; - $fault: "client"; - message?: string; +export class InvalidOAuthFlowException extends __BaseException { + readonly name: "InvalidOAuthFlowException" = "InvalidOAuthFlowException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOAuthFlowException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOAuthFlowException.prototype); + } } /** *

This exception is thrown when the specified scope doesn't exist.

*/ -export interface ScopeDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ScopeDoesNotExistException"; - $fault: "client"; - message?: string; +export class ScopeDoesNotExistException extends __BaseException { + readonly name: "ScopeDoesNotExistException" = "ScopeDoesNotExistException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScopeDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScopeDoesNotExistException.prototype); + } } /** @@ -5866,10 +6134,20 @@ export namespace DeleteIdentityProviderRequest { /** *

This exception is thrown when the specified identifier isn't supported.

*/ -export interface UnsupportedIdentityProviderException extends __SmithyException, $MetadataBearer { - name: "UnsupportedIdentityProviderException"; - $fault: "client"; - message?: string; +export class UnsupportedIdentityProviderException extends __BaseException { + readonly name: "UnsupportedIdentityProviderException" = "UnsupportedIdentityProviderException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedIdentityProviderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedIdentityProviderException.prototype); + } } export interface DeleteResourceServerRequest { @@ -8416,28 +8694,58 @@ export namespace RevokeTokenResponse { /** *

Exception that is thrown when the request isn't authorized. This can happen due to an invalid access token in the request.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message?: string; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** *

Exception that is thrown when you attempt to perform an operation that isn't enabled for the user pool client.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; - message?: string; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + } } /** *

Exception that is thrown when an unsupported token is passed to an operation.

*/ -export interface UnsupportedTokenTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedTokenTypeException"; - $fault: "client"; - message?: string; +export class UnsupportedTokenTypeException extends __BaseException { + readonly name: "UnsupportedTokenTypeException" = "UnsupportedTokenTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedTokenTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedTokenTypeException.prototype); + } } export interface SetRiskConfigurationRequest { diff --git a/clients/client-cognito-identity-provider/src/models/models_1.ts b/clients/client-cognito-identity-provider/src/models/models_1.ts index be691f32b2a35..987fe94ddd157 100644 --- a/clients/client-cognito-identity-provider/src/models/models_1.ts +++ b/clients/client-cognito-identity-provider/src/models/models_1.ts @@ -1,6 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { CognitoIdentityProviderServiceException as __BaseException } from "./CognitoIdentityProviderServiceException"; import { AccountRecoverySettingType, AdminCreateUserConfigType, @@ -886,10 +887,20 @@ export namespace UpdateUserPoolDomainResponse { /** *

This exception is thrown when there is a code mismatch and the service fails to configure the software token TOTP multi-factor authentication (MFA).

*/ -export interface EnableSoftwareTokenMFAException extends __SmithyException, $MetadataBearer { - name: "EnableSoftwareTokenMFAException"; - $fault: "client"; - message?: string; +export class EnableSoftwareTokenMFAException extends __BaseException { + readonly name: "EnableSoftwareTokenMFAException" = "EnableSoftwareTokenMFAException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EnableSoftwareTokenMFAException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EnableSoftwareTokenMFAException.prototype); + } } export interface VerifySoftwareTokenRequest { diff --git a/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts b/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts index 9381944a9da40..59bde0ff06f80 100644 --- a/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts +++ b/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -286,6 +285,7 @@ import { VerifyUserAttributeCommandInput, VerifyUserAttributeCommandOutput, } from "../commands/VerifyUserAttributeCommand"; +import { CognitoIdentityProviderServiceException as __BaseException } from "../models/CognitoIdentityProviderServiceException"; import { AccountRecoverySettingType, AccountTakeoverActionsType, @@ -1931,73 +1931,37 @@ const deserializeAws_json1_1AddCustomAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserImportInProgressException": case "com.amazonaws.cognitoidentityprovider#UserImportInProgressException": - response = { - ...(await deserializeAws_json1_1UserImportInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserImportInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminAddUserToGroupCommand = async ( @@ -2022,73 +1986,37 @@ const deserializeAws_json1_1AdminAddUserToGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminConfirmSignUpCommand = async ( @@ -2116,113 +2044,52 @@ const deserializeAws_json1_1AdminConfirmSignUpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyFailedAttemptsException": case "com.amazonaws.cognitoidentityprovider#TooManyFailedAttemptsException": - response = { - ...(await deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminCreateUserCommand = async ( @@ -2250,153 +2117,67 @@ const deserializeAws_json1_1AdminCreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.cognitoidentityprovider#PreconditionNotMetException": - response = { - ...(await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UnsupportedUserStateException": case "com.amazonaws.cognitoidentityprovider#UnsupportedUserStateException": - response = { - ...(await deserializeAws_json1_1UnsupportedUserStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedUserStateExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UsernameExistsException": case "com.amazonaws.cognitoidentityprovider#UsernameExistsException": - response = { - ...(await deserializeAws_json1_1UsernameExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UsernameExistsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminDeleteUserCommand = async ( @@ -2421,73 +2202,37 @@ const deserializeAws_json1_1AdminDeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminDeleteUserAttributesCommand = async ( @@ -2515,73 +2260,37 @@ const deserializeAws_json1_1AdminDeleteUserAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminDisableProviderForUserCommand = async ( @@ -2609,81 +2318,40 @@ const deserializeAws_json1_1AdminDisableProviderForUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminDisableUserCommand = async ( @@ -2711,73 +2379,37 @@ const deserializeAws_json1_1AdminDisableUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminEnableUserCommand = async ( @@ -2805,73 +2437,37 @@ const deserializeAws_json1_1AdminEnableUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminForgetDeviceCommand = async ( @@ -2896,81 +2492,40 @@ const deserializeAws_json1_1AdminForgetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminGetDeviceCommand = async ( @@ -2998,73 +2553,37 @@ const deserializeAws_json1_1AdminGetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminGetUserCommand = async ( @@ -3092,73 +2611,37 @@ const deserializeAws_json1_1AdminGetUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminInitiateAuthCommand = async ( @@ -3186,145 +2669,64 @@ const deserializeAws_json1_1AdminInitiateAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "MFAMethodNotFoundException": case "com.amazonaws.cognitoidentityprovider#MFAMethodNotFoundException": - response = { - ...(await deserializeAws_json1_1MFAMethodNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MFAMethodNotFoundExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminLinkProviderForUserCommand = async ( @@ -3352,89 +2754,43 @@ const deserializeAws_json1_1AdminLinkProviderForUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminListDevicesCommand = async ( @@ -3462,73 +2818,37 @@ const deserializeAws_json1_1AdminListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminListGroupsForUserCommand = async ( @@ -3556,73 +2876,37 @@ const deserializeAws_json1_1AdminListGroupsForUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminListUserAuthEventsCommand = async ( @@ -3650,81 +2934,40 @@ const deserializeAws_json1_1AdminListUserAuthEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); case "UserPoolAddOnNotEnabledException": case "com.amazonaws.cognitoidentityprovider#UserPoolAddOnNotEnabledException": - response = { - ...(await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminRemoveUserFromGroupCommand = async ( @@ -3749,73 +2992,37 @@ const deserializeAws_json1_1AdminRemoveUserFromGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminResetUserPasswordCommand = async ( @@ -3843,129 +3050,58 @@ const deserializeAws_json1_1AdminResetUserPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminRespondToAuthChallengeCommand = async ( @@ -3993,185 +3129,79 @@ const deserializeAws_json1_1AdminRespondToAuthChallengeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "ExpiredCodeException": case "com.amazonaws.cognitoidentityprovider#ExpiredCodeException": - response = { - ...(await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "MFAMethodNotFoundException": case "com.amazonaws.cognitoidentityprovider#MFAMethodNotFoundException": - response = { - ...(await deserializeAws_json1_1MFAMethodNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MFAMethodNotFoundExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SoftwareTokenMFANotFoundException": case "com.amazonaws.cognitoidentityprovider#SoftwareTokenMFANotFoundException": - response = { - ...(await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminSetUserMFAPreferenceCommand = async ( @@ -4199,81 +3229,40 @@ const deserializeAws_json1_1AdminSetUserMFAPreferenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminSetUserPasswordCommand = async ( @@ -4301,81 +3290,40 @@ const deserializeAws_json1_1AdminSetUserPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminSetUserSettingsCommand = async ( @@ -4403,65 +3351,34 @@ const deserializeAws_json1_1AdminSetUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminUpdateAuthEventFeedbackCommand = async ( @@ -4489,81 +3406,40 @@ const deserializeAws_json1_1AdminUpdateAuthEventFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); case "UserPoolAddOnNotEnabledException": case "com.amazonaws.cognitoidentityprovider#UserPoolAddOnNotEnabledException": - response = { - ...(await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminUpdateDeviceStatusCommand = async ( @@ -4591,81 +3467,40 @@ const deserializeAws_json1_1AdminUpdateDeviceStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminUpdateUserAttributesCommand = async ( @@ -4693,129 +3528,58 @@ const deserializeAws_json1_1AdminUpdateUserAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdminUserGlobalSignOutCommand = async ( @@ -4843,73 +3607,37 @@ const deserializeAws_json1_1AdminUserGlobalSignOutCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateSoftwareTokenCommand = async ( @@ -4937,73 +3665,37 @@ const deserializeAws_json1_1AssociateSoftwareTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SoftwareTokenMFANotFoundException": case "com.amazonaws.cognitoidentityprovider#SoftwareTokenMFANotFoundException": - response = { - ...(await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ChangePasswordCommand = async ( @@ -5031,105 +3723,49 @@ const deserializeAws_json1_1ChangePasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmDeviceCommand = async ( @@ -5157,121 +3793,55 @@ const deserializeAws_json1_1ConfirmDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UsernameExistsException": case "com.amazonaws.cognitoidentityprovider#UsernameExistsException": - response = { - ...(await deserializeAws_json1_1UsernameExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UsernameExistsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmForgotPasswordCommand = async ( @@ -5299,145 +3869,64 @@ const deserializeAws_json1_1ConfirmForgotPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "ExpiredCodeException": case "com.amazonaws.cognitoidentityprovider#ExpiredCodeException": - response = { - ...(await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyFailedAttemptsException": case "com.amazonaws.cognitoidentityprovider#TooManyFailedAttemptsException": - response = { - ...(await deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmSignUpCommand = async ( @@ -5465,137 +3954,61 @@ const deserializeAws_json1_1ConfirmSignUpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "ExpiredCodeException": case "com.amazonaws.cognitoidentityprovider#ExpiredCodeException": - response = { - ...(await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyFailedAttemptsException": case "com.amazonaws.cognitoidentityprovider#TooManyFailedAttemptsException": - response = { - ...(await deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGroupCommand = async ( @@ -5623,81 +4036,40 @@ const deserializeAws_json1_1CreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GroupExistsException": case "com.amazonaws.cognitoidentityprovider#GroupExistsException": - response = { - ...(await deserializeAws_json1_1GroupExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GroupExistsExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateIdentityProviderCommand = async ( @@ -5725,81 +4097,40 @@ const deserializeAws_json1_1CreateIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateProviderException": case "com.amazonaws.cognitoidentityprovider#DuplicateProviderException": - response = { - ...(await deserializeAws_json1_1DuplicateProviderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateProviderExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResourceServerCommand = async ( @@ -5827,73 +4158,37 @@ const deserializeAws_json1_1CreateResourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserImportJobCommand = async ( @@ -5921,81 +4216,40 @@ const deserializeAws_json1_1CreateUserImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.cognitoidentityprovider#PreconditionNotMetException": - response = { - ...(await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserPoolCommand = async ( @@ -6023,97 +4277,46 @@ const deserializeAws_json1_1CreateUserPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserPoolTaggingException": case "com.amazonaws.cognitoidentityprovider#UserPoolTaggingException": - response = { - ...(await deserializeAws_json1_1UserPoolTaggingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolTaggingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserPoolClientCommand = async ( @@ -6141,89 +4344,43 @@ const deserializeAws_json1_1CreateUserPoolClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOAuthFlowException": case "com.amazonaws.cognitoidentityprovider#InvalidOAuthFlowException": - response = { - ...(await deserializeAws_json1_1InvalidOAuthFlowExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOAuthFlowExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ScopeDoesNotExistException": case "com.amazonaws.cognitoidentityprovider#ScopeDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ScopeDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ScopeDoesNotExistExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserPoolDomainCommand = async ( @@ -6251,65 +4408,34 @@ const deserializeAws_json1_1CreateUserPoolDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGroupCommand = async ( @@ -6334,65 +4460,34 @@ const deserializeAws_json1_1DeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIdentityProviderCommand = async ( @@ -6417,73 +4512,37 @@ const deserializeAws_json1_1DeleteIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedIdentityProviderException": case "com.amazonaws.cognitoidentityprovider#UnsupportedIdentityProviderException": - response = { - ...(await deserializeAws_json1_1UnsupportedIdentityProviderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedIdentityProviderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourceServerCommand = async ( @@ -6508,65 +4567,34 @@ const deserializeAws_json1_1DeleteResourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserCommand = async ( @@ -6591,89 +4619,43 @@ const deserializeAws_json1_1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserAttributesCommand = async ( @@ -6701,89 +4683,43 @@ const deserializeAws_json1_1DeleteUserAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserPoolCommand = async ( @@ -6808,73 +4744,37 @@ const deserializeAws_json1_1DeleteUserPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserImportInProgressException": case "com.amazonaws.cognitoidentityprovider#UserImportInProgressException": - response = { - ...(await deserializeAws_json1_1UserImportInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserImportInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserPoolClientCommand = async ( @@ -6899,65 +4799,34 @@ const deserializeAws_json1_1DeleteUserPoolClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserPoolDomainCommand = async ( @@ -6985,57 +4854,31 @@ const deserializeAws_json1_1DeleteUserPoolDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeIdentityProviderCommand = async ( @@ -7063,65 +4906,34 @@ const deserializeAws_json1_1DescribeIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeResourceServerCommand = async ( @@ -7149,65 +4961,34 @@ const deserializeAws_json1_1DescribeResourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRiskConfigurationCommand = async ( @@ -7235,73 +5016,37 @@ const deserializeAws_json1_1DescribeRiskConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserPoolAddOnNotEnabledException": case "com.amazonaws.cognitoidentityprovider#UserPoolAddOnNotEnabledException": - response = { - ...(await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserImportJobCommand = async ( @@ -7329,65 +5074,34 @@ const deserializeAws_json1_1DescribeUserImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserPoolCommand = async ( @@ -7415,73 +5129,37 @@ const deserializeAws_json1_1DescribeUserPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserPoolTaggingException": case "com.amazonaws.cognitoidentityprovider#UserPoolTaggingException": - response = { - ...(await deserializeAws_json1_1UserPoolTaggingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolTaggingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserPoolClientCommand = async ( @@ -7509,65 +5187,34 @@ const deserializeAws_json1_1DescribeUserPoolClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserPoolDomainCommand = async ( @@ -7595,57 +5242,31 @@ const deserializeAws_json1_1DescribeUserPoolDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ForgetDeviceCommand = async ( @@ -7670,97 +5291,46 @@ const deserializeAws_json1_1ForgetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ForgotPasswordCommand = async ( @@ -7788,145 +5358,64 @@ const deserializeAws_json1_1ForgotPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCSVHeaderCommand = async ( @@ -7954,65 +5443,34 @@ const deserializeAws_json1_1GetCSVHeaderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeviceCommand = async ( @@ -8040,97 +5498,46 @@ const deserializeAws_json1_1GetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGroupCommand = async ( @@ -8158,65 +5565,34 @@ const deserializeAws_json1_1GetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetIdentityProviderByIdentifierCommand = async ( @@ -8244,65 +5620,34 @@ const deserializeAws_json1_1GetIdentityProviderByIdentifierCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSigningCertificateCommand = async ( @@ -8330,49 +5675,28 @@ const deserializeAws_json1_1GetSigningCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUICustomizationCommand = async ( @@ -8400,65 +5724,34 @@ const deserializeAws_json1_1GetUICustomizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUserCommand = async ( @@ -8486,89 +5779,43 @@ const deserializeAws_json1_1GetUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUserAttributeVerificationCodeCommand = async ( @@ -8596,153 +5843,67 @@ const deserializeAws_json1_1GetUserAttributeVerificationCodeCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUserPoolMfaConfigCommand = async ( @@ -8770,65 +5931,34 @@ const deserializeAws_json1_1GetUserPoolMfaConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GlobalSignOutCommand = async ( @@ -8856,81 +5986,40 @@ const deserializeAws_json1_1GlobalSignOutCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InitiateAuthCommand = async ( @@ -8958,137 +6047,61 @@ const deserializeAws_json1_1InitiateAuthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDevicesCommand = async ( @@ -9116,97 +6129,46 @@ const deserializeAws_json1_1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGroupsCommand = async ( @@ -9234,65 +6196,34 @@ const deserializeAws_json1_1ListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIdentityProvidersCommand = async ( @@ -9320,65 +6251,34 @@ const deserializeAws_json1_1ListIdentityProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourceServersCommand = async ( @@ -9406,65 +6306,34 @@ const deserializeAws_json1_1ListResourceServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -9492,65 +6361,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUserImportJobsCommand = async ( @@ -9578,65 +6416,34 @@ const deserializeAws_json1_1ListUserImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUserPoolClientsCommand = async ( @@ -9664,65 +6471,34 @@ const deserializeAws_json1_1ListUserPoolClientsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUserPoolsCommand = async ( @@ -9750,57 +6526,31 @@ const deserializeAws_json1_1ListUserPoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUsersCommand = async ( @@ -9828,65 +6578,34 @@ const deserializeAws_json1_1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUsersInGroupCommand = async ( @@ -9914,65 +6633,34 @@ const deserializeAws_json1_1ListUsersInGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResendConfirmationCodeCommand = async ( @@ -10000,137 +6688,61 @@ const deserializeAws_json1_1ResendConfirmationCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RespondToAuthChallengeCommand = async ( @@ -10158,185 +6770,79 @@ const deserializeAws_json1_1RespondToAuthChallengeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "ExpiredCodeException": case "com.amazonaws.cognitoidentityprovider#ExpiredCodeException": - response = { - ...(await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "MFAMethodNotFoundException": case "com.amazonaws.cognitoidentityprovider#MFAMethodNotFoundException": - response = { - ...(await deserializeAws_json1_1MFAMethodNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MFAMethodNotFoundExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SoftwareTokenMFANotFoundException": case "com.amazonaws.cognitoidentityprovider#SoftwareTokenMFANotFoundException": - response = { - ...(await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RevokeTokenCommand = async ( @@ -10364,73 +6870,37 @@ const deserializeAws_json1_1RevokeTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.cognitoidentityprovider#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.cognitoidentityprovider#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); case "UnsupportedTokenTypeException": case "com.amazonaws.cognitoidentityprovider#UnsupportedTokenTypeException": - response = { - ...(await deserializeAws_json1_1UnsupportedTokenTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTokenTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetRiskConfigurationCommand = async ( @@ -10458,89 +6928,43 @@ const deserializeAws_json1_1SetRiskConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserPoolAddOnNotEnabledException": case "com.amazonaws.cognitoidentityprovider#UserPoolAddOnNotEnabledException": - response = { - ...(await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetUICustomizationCommand = async ( @@ -10568,65 +6992,34 @@ const deserializeAws_json1_1SetUICustomizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetUserMFAPreferenceCommand = async ( @@ -10654,81 +7047,40 @@ const deserializeAws_json1_1SetUserMFAPreferenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetUserPoolMfaConfigCommand = async ( @@ -10756,81 +7108,40 @@ const deserializeAws_json1_1SetUserPoolMfaConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetUserSettingsCommand = async ( @@ -10858,81 +7169,40 @@ const deserializeAws_json1_1SetUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SignUpCommand = async ( @@ -10960,137 +7230,61 @@ const deserializeAws_json1_1SignUpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UsernameExistsException": case "com.amazonaws.cognitoidentityprovider#UsernameExistsException": - response = { - ...(await deserializeAws_json1_1UsernameExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UsernameExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartUserImportJobCommand = async ( @@ -11118,73 +7312,37 @@ const deserializeAws_json1_1StartUserImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.cognitoidentityprovider#PreconditionNotMetException": - response = { - ...(await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopUserImportJobCommand = async ( @@ -11212,73 +7370,37 @@ const deserializeAws_json1_1StopUserImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.cognitoidentityprovider#PreconditionNotMetException": - response = { - ...(await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -11306,65 +7428,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -11392,65 +7483,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAuthEventFeedbackCommand = async ( @@ -11478,81 +7538,40 @@ const deserializeAws_json1_1UpdateAuthEventFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); case "UserPoolAddOnNotEnabledException": case "com.amazonaws.cognitoidentityprovider#UserPoolAddOnNotEnabledException": - response = { - ...(await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDeviceStatusCommand = async ( @@ -11580,97 +7599,46 @@ const deserializeAws_json1_1UpdateDeviceStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGroupCommand = async ( @@ -11698,65 +7666,34 @@ const deserializeAws_json1_1UpdateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateIdentityProviderCommand = async ( @@ -11784,73 +7721,37 @@ const deserializeAws_json1_1UpdateIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedIdentityProviderException": case "com.amazonaws.cognitoidentityprovider#UnsupportedIdentityProviderException": - response = { - ...(await deserializeAws_json1_1UnsupportedIdentityProviderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedIdentityProviderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResourceServerCommand = async ( @@ -11878,65 +7779,34 @@ const deserializeAws_json1_1UpdateResourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserAttributesCommand = async ( @@ -11964,169 +7834,73 @@ const deserializeAws_json1_1UpdateUserAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AliasExistsException": case "com.amazonaws.cognitoidentityprovider#AliasExistsException": - response = { - ...(await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AliasExistsExceptionResponse(parsedOutput, context); case "CodeDeliveryFailureException": case "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": - response = { - ...(await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeDeliveryFailureExceptionResponse(parsedOutput, context); case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "ExpiredCodeException": case "com.amazonaws.cognitoidentityprovider#ExpiredCodeException": - response = { - ...(await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidLambdaResponseException": case "com.amazonaws.cognitoidentityprovider#InvalidLambdaResponseException": - response = { - ...(await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLambdaResponseExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnexpectedLambdaException": case "com.amazonaws.cognitoidentityprovider#UnexpectedLambdaException": - response = { - ...(await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnexpectedLambdaExceptionResponse(parsedOutput, context); case "UserLambdaValidationException": case "com.amazonaws.cognitoidentityprovider#UserLambdaValidationException": - response = { - ...(await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserLambdaValidationExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserPoolCommand = async ( @@ -12154,113 +7928,52 @@ const deserializeAws_json1_1UpdateUserPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidEmailRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidEmailRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSmsRoleAccessPolicyException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleAccessPolicyException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse(parsedOutput, context); case "InvalidSmsRoleTrustRelationshipException": case "com.amazonaws.cognitoidentityprovider#InvalidSmsRoleTrustRelationshipException": - response = { - ...(await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserImportInProgressException": case "com.amazonaws.cognitoidentityprovider#UserImportInProgressException": - response = { - ...(await deserializeAws_json1_1UserImportInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserImportInProgressExceptionResponse(parsedOutput, context); case "UserPoolTaggingException": case "com.amazonaws.cognitoidentityprovider#UserPoolTaggingException": - response = { - ...(await deserializeAws_json1_1UserPoolTaggingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserPoolTaggingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserPoolClientCommand = async ( @@ -12288,89 +8001,43 @@ const deserializeAws_json1_1UpdateUserPoolClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOAuthFlowException": case "com.amazonaws.cognitoidentityprovider#InvalidOAuthFlowException": - response = { - ...(await deserializeAws_json1_1InvalidOAuthFlowExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOAuthFlowExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ScopeDoesNotExistException": case "com.amazonaws.cognitoidentityprovider#ScopeDoesNotExistException": - response = { - ...(await deserializeAws_json1_1ScopeDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ScopeDoesNotExistExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserPoolDomainCommand = async ( @@ -12398,65 +8065,34 @@ const deserializeAws_json1_1UpdateUserPoolDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1VerifySoftwareTokenCommand = async ( @@ -12484,121 +8120,55 @@ const deserializeAws_json1_1VerifySoftwareTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "EnableSoftwareTokenMFAException": case "com.amazonaws.cognitoidentityprovider#EnableSoftwareTokenMFAException": - response = { - ...(await deserializeAws_json1_1EnableSoftwareTokenMFAExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EnableSoftwareTokenMFAExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidUserPoolConfigurationException": case "com.amazonaws.cognitoidentityprovider#InvalidUserPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SoftwareTokenMFANotFoundException": case "com.amazonaws.cognitoidentityprovider#SoftwareTokenMFANotFoundException": - response = { - ...(await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1VerifyUserAttributeCommand = async ( @@ -12626,113 +8196,52 @@ const deserializeAws_json1_1VerifyUserAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeMismatchException": case "com.amazonaws.cognitoidentityprovider#CodeMismatchException": - response = { - ...(await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeMismatchExceptionResponse(parsedOutput, context); case "ExpiredCodeException": case "com.amazonaws.cognitoidentityprovider#ExpiredCodeException": - response = { - ...(await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredCodeExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentityprovider#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentityprovider#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentityprovider#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "PasswordResetRequiredException": case "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": - response = { - ...(await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PasswordResetRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentityprovider#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UserNotConfirmedException": case "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException": - response = { - ...(await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotConfirmedExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.cognitoidentityprovider#UserNotFoundException": - response = { - ...(await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AliasExistsExceptionResponse = async ( @@ -12741,13 +8250,11 @@ const deserializeAws_json1_1AliasExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AliasExistsException(body, context); - const contents: AliasExistsException = { - name: "AliasExistsException", - $fault: "client", + const exception = new AliasExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CodeDeliveryFailureExceptionResponse = async ( @@ -12756,13 +8263,11 @@ const deserializeAws_json1_1CodeDeliveryFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CodeDeliveryFailureException(body, context); - const contents: CodeDeliveryFailureException = { - name: "CodeDeliveryFailureException", - $fault: "client", + const exception = new CodeDeliveryFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CodeMismatchExceptionResponse = async ( @@ -12771,13 +8276,11 @@ const deserializeAws_json1_1CodeMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CodeMismatchException(body, context); - const contents: CodeMismatchException = { - name: "CodeMismatchException", - $fault: "client", + const exception = new CodeMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -12786,13 +8289,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateProviderExceptionResponse = async ( @@ -12801,13 +8302,11 @@ const deserializeAws_json1_1DuplicateProviderExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateProviderException(body, context); - const contents: DuplicateProviderException = { - name: "DuplicateProviderException", - $fault: "client", + const exception = new DuplicateProviderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EnableSoftwareTokenMFAExceptionResponse = async ( @@ -12816,13 +8315,11 @@ const deserializeAws_json1_1EnableSoftwareTokenMFAExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EnableSoftwareTokenMFAException(body, context); - const contents: EnableSoftwareTokenMFAException = { - name: "EnableSoftwareTokenMFAException", - $fault: "client", + const exception = new EnableSoftwareTokenMFAException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExpiredCodeExceptionResponse = async ( @@ -12831,13 +8328,11 @@ const deserializeAws_json1_1ExpiredCodeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredCodeException(body, context); - const contents: ExpiredCodeException = { - name: "ExpiredCodeException", - $fault: "client", + const exception = new ExpiredCodeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1GroupExistsExceptionResponse = async ( @@ -12846,13 +8341,11 @@ const deserializeAws_json1_1GroupExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1GroupExistsException(body, context); - const contents: GroupExistsException = { - name: "GroupExistsException", - $fault: "client", + const exception = new GroupExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -12861,13 +8354,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse = async ( @@ -12876,13 +8367,11 @@ const deserializeAws_json1_1InvalidEmailRoleAccessPolicyExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEmailRoleAccessPolicyException(body, context); - const contents: InvalidEmailRoleAccessPolicyException = { - name: "InvalidEmailRoleAccessPolicyException", - $fault: "client", + const exception = new InvalidEmailRoleAccessPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLambdaResponseExceptionResponse = async ( @@ -12891,13 +8380,11 @@ const deserializeAws_json1_1InvalidLambdaResponseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLambdaResponseException(body, context); - const contents: InvalidLambdaResponseException = { - name: "InvalidLambdaResponseException", - $fault: "client", + const exception = new InvalidLambdaResponseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOAuthFlowExceptionResponse = async ( @@ -12906,13 +8393,11 @@ const deserializeAws_json1_1InvalidOAuthFlowExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOAuthFlowException(body, context); - const contents: InvalidOAuthFlowException = { - name: "InvalidOAuthFlowException", - $fault: "client", + const exception = new InvalidOAuthFlowException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -12921,13 +8406,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPasswordExceptionResponse = async ( @@ -12936,13 +8419,11 @@ const deserializeAws_json1_1InvalidPasswordExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPasswordException(body, context); - const contents: InvalidPasswordException = { - name: "InvalidPasswordException", - $fault: "client", + const exception = new InvalidPasswordException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse = async ( @@ -12951,13 +8432,11 @@ const deserializeAws_json1_1InvalidSmsRoleAccessPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSmsRoleAccessPolicyException(body, context); - const contents: InvalidSmsRoleAccessPolicyException = { - name: "InvalidSmsRoleAccessPolicyException", - $fault: "client", + const exception = new InvalidSmsRoleAccessPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse = async ( @@ -12966,13 +8445,11 @@ const deserializeAws_json1_1InvalidSmsRoleTrustRelationshipExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSmsRoleTrustRelationshipException(body, context); - const contents: InvalidSmsRoleTrustRelationshipException = { - name: "InvalidSmsRoleTrustRelationshipException", - $fault: "client", + const exception = new InvalidSmsRoleTrustRelationshipException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse = async ( @@ -12981,13 +8458,11 @@ const deserializeAws_json1_1InvalidUserPoolConfigurationExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUserPoolConfigurationException(body, context); - const contents: InvalidUserPoolConfigurationException = { - name: "InvalidUserPoolConfigurationException", - $fault: "client", + const exception = new InvalidUserPoolConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -12996,13 +8471,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MFAMethodNotFoundExceptionResponse = async ( @@ -13011,13 +8484,11 @@ const deserializeAws_json1_1MFAMethodNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MFAMethodNotFoundException(body, context); - const contents: MFAMethodNotFoundException = { - name: "MFAMethodNotFoundException", - $fault: "client", + const exception = new MFAMethodNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotAuthorizedExceptionResponse = async ( @@ -13026,13 +8497,11 @@ const deserializeAws_json1_1NotAuthorizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotAuthorizedException(body, context); - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", + const exception = new NotAuthorizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PasswordResetRequiredExceptionResponse = async ( @@ -13041,13 +8510,11 @@ const deserializeAws_json1_1PasswordResetRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PasswordResetRequiredException(body, context); - const contents: PasswordResetRequiredException = { - name: "PasswordResetRequiredException", - $fault: "client", + const exception = new PasswordResetRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PreconditionNotMetExceptionResponse = async ( @@ -13056,13 +8523,11 @@ const deserializeAws_json1_1PreconditionNotMetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PreconditionNotMetException(body, context); - const contents: PreconditionNotMetException = { - name: "PreconditionNotMetException", - $fault: "client", + const exception = new PreconditionNotMetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -13071,13 +8536,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ScopeDoesNotExistExceptionResponse = async ( @@ -13086,13 +8549,11 @@ const deserializeAws_json1_1ScopeDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ScopeDoesNotExistException(body, context); - const contents: ScopeDoesNotExistException = { - name: "ScopeDoesNotExistException", - $fault: "client", + const exception = new ScopeDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse = async ( @@ -13101,13 +8562,11 @@ const deserializeAws_json1_1SoftwareTokenMFANotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SoftwareTokenMFANotFoundException(body, context); - const contents: SoftwareTokenMFANotFoundException = { - name: "SoftwareTokenMFANotFoundException", - $fault: "client", + const exception = new SoftwareTokenMFANotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse = async ( @@ -13116,13 +8575,11 @@ const deserializeAws_json1_1TooManyFailedAttemptsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyFailedAttemptsException(body, context); - const contents: TooManyFailedAttemptsException = { - name: "TooManyFailedAttemptsException", - $fault: "client", + const exception = new TooManyFailedAttemptsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -13131,13 +8588,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnauthorizedExceptionResponse = async ( @@ -13146,13 +8601,11 @@ const deserializeAws_json1_1UnauthorizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnauthorizedException(body, context); - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", + const exception = new UnauthorizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnexpectedLambdaExceptionResponse = async ( @@ -13161,13 +8614,11 @@ const deserializeAws_json1_1UnexpectedLambdaExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnexpectedLambdaException(body, context); - const contents: UnexpectedLambdaException = { - name: "UnexpectedLambdaException", - $fault: "client", + const exception = new UnexpectedLambdaException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedIdentityProviderExceptionResponse = async ( @@ -13176,13 +8627,11 @@ const deserializeAws_json1_1UnsupportedIdentityProviderExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedIdentityProviderException(body, context); - const contents: UnsupportedIdentityProviderException = { - name: "UnsupportedIdentityProviderException", - $fault: "client", + const exception = new UnsupportedIdentityProviderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -13191,13 +8640,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedTokenTypeExceptionResponse = async ( @@ -13206,13 +8653,11 @@ const deserializeAws_json1_1UnsupportedTokenTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedTokenTypeException(body, context); - const contents: UnsupportedTokenTypeException = { - name: "UnsupportedTokenTypeException", - $fault: "client", + const exception = new UnsupportedTokenTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedUserStateExceptionResponse = async ( @@ -13221,13 +8666,11 @@ const deserializeAws_json1_1UnsupportedUserStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedUserStateException(body, context); - const contents: UnsupportedUserStateException = { - name: "UnsupportedUserStateException", - $fault: "client", + const exception = new UnsupportedUserStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserImportInProgressExceptionResponse = async ( @@ -13236,13 +8679,11 @@ const deserializeAws_json1_1UserImportInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserImportInProgressException(body, context); - const contents: UserImportInProgressException = { - name: "UserImportInProgressException", - $fault: "client", + const exception = new UserImportInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserLambdaValidationExceptionResponse = async ( @@ -13251,13 +8692,11 @@ const deserializeAws_json1_1UserLambdaValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserLambdaValidationException(body, context); - const contents: UserLambdaValidationException = { - name: "UserLambdaValidationException", - $fault: "client", + const exception = new UserLambdaValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UsernameExistsExceptionResponse = async ( @@ -13266,13 +8705,11 @@ const deserializeAws_json1_1UsernameExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UsernameExistsException(body, context); - const contents: UsernameExistsException = { - name: "UsernameExistsException", - $fault: "client", + const exception = new UsernameExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserNotConfirmedExceptionResponse = async ( @@ -13281,13 +8718,11 @@ const deserializeAws_json1_1UserNotConfirmedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserNotConfirmedException(body, context); - const contents: UserNotConfirmedException = { - name: "UserNotConfirmedException", - $fault: "client", + const exception = new UserNotConfirmedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserNotFoundExceptionResponse = async ( @@ -13296,13 +8731,11 @@ const deserializeAws_json1_1UserNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserNotFoundException(body, context); - const contents: UserNotFoundException = { - name: "UserNotFoundException", - $fault: "client", + const exception = new UserNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse = async ( @@ -13311,13 +8744,11 @@ const deserializeAws_json1_1UserPoolAddOnNotEnabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserPoolAddOnNotEnabledException(body, context); - const contents: UserPoolAddOnNotEnabledException = { - name: "UserPoolAddOnNotEnabledException", - $fault: "client", + const exception = new UserPoolAddOnNotEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserPoolTaggingExceptionResponse = async ( @@ -13326,13 +8757,11 @@ const deserializeAws_json1_1UserPoolTaggingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserPoolTaggingException(body, context); - const contents: UserPoolTaggingException = { - name: "UserPoolTaggingException", - $fault: "client", + const exception = new UserPoolTaggingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccountRecoverySettingType = ( diff --git a/clients/client-cognito-identity/src/index.ts b/clients/client-cognito-identity/src/index.ts index db7449086b145..c7525c3f7c454 100644 --- a/clients/client-cognito-identity/src/index.ts +++ b/clients/client-cognito-identity/src/index.ts @@ -3,3 +3,4 @@ export * from "./CognitoIdentityClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CognitoIdentityServiceException } from "./models/CognitoIdentityServiceException"; diff --git a/clients/client-cognito-identity/src/models/CognitoIdentityServiceException.ts b/clients/client-cognito-identity/src/models/CognitoIdentityServiceException.ts new file mode 100644 index 0000000000000..63be7685b9a21 --- /dev/null +++ b/clients/client-cognito-identity/src/models/CognitoIdentityServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CognitoIdentity service. + */ +export class CognitoIdentityServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CognitoIdentityServiceException.prototype); + } +} diff --git a/clients/client-cognito-identity/src/models/models_0.ts b/clients/client-cognito-identity/src/models/models_0.ts index e3a106475cb02..7d569d4b0392c 100644 --- a/clients/client-cognito-identity/src/models/models_0.ts +++ b/clients/client-cognito-identity/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CognitoIdentityServiceException as __BaseException } from "./CognitoIdentityServiceException"; export enum AmbiguousRoleResolutionType { AUTHENTICATED_ROLE = "AuthenticatedRole", @@ -182,74 +185,116 @@ export namespace IdentityPool { /** *

Thrown when the service encounters an error during processing the request.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; /** - *

The message returned by an InternalErrorException.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + } } /** *

Thrown for missing or bad input parameter(s).

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** - *

The message returned by an InvalidParameterException.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

Thrown when the total number of user pools has exceeded a preset limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message returned by a LimitExceededException.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

Thrown when a user is not authorized to access the requested resource.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; /** - *

The message returned by a NotAuthorizedException

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + } } /** *

Thrown when a user tries to use a login which is already linked to another * account.

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; /** - *

The message returned by a ResourceConflictException.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + } } /** *

Thrown when a request is throttled.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** - *

Message returned by a TooManyRequestsException

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** @@ -345,13 +390,20 @@ export namespace DeleteIdentityPoolInput { *

Thrown when the requested resource (for example, a dataset or record) does not * exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message returned by a ResourceNotFoundException.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -430,13 +482,20 @@ export namespace DescribeIdentityPoolInput { *

An exception thrown when a dependent service such as Facebook or Twitter is not * responding

*/ -export interface ExternalServiceException extends __SmithyException, $MetadataBearer { - name: "ExternalServiceException"; - $fault: "client"; +export class ExternalServiceException extends __BaseException { + readonly name: "ExternalServiceException" = "ExternalServiceException"; + readonly $fault: "client" = "client"; /** - *

The message returned by an ExternalServiceException

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExternalServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExternalServiceException.prototype); + } } /** @@ -542,14 +601,20 @@ export namespace GetCredentialsForIdentityResponse { *

Thrown if the identity pool has no role associated for the given auth type * (auth/unauth) or if the AssumeRole fails.

*/ -export interface InvalidIdentityPoolConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidIdentityPoolConfigurationException"; - $fault: "client"; +export class InvalidIdentityPoolConfigurationException extends __BaseException { + readonly name: "InvalidIdentityPoolConfigurationException" = "InvalidIdentityPoolConfigurationException"; + readonly $fault: "client" = "client"; /** - *

The message returned for an InvalidIdentityPoolConfigurationException - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIdentityPoolConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIdentityPoolConfigurationException.prototype); + } } /** @@ -846,13 +911,20 @@ export namespace GetOpenIdTokenResponse { *

The provided developer user identifier is already registered with Cognito under a * different identity ID.

*/ -export interface DeveloperUserAlreadyRegisteredException extends __SmithyException, $MetadataBearer { - name: "DeveloperUserAlreadyRegisteredException"; - $fault: "client"; +export class DeveloperUserAlreadyRegisteredException extends __BaseException { + readonly name: "DeveloperUserAlreadyRegisteredException" = "DeveloperUserAlreadyRegisteredException"; + readonly $fault: "client" = "client"; /** - *

This developer user identifier is already registered with Cognito.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeveloperUserAlreadyRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeveloperUserAlreadyRegisteredException.prototype); + } } /** @@ -1302,13 +1374,20 @@ export namespace MergeDeveloperIdentitiesResponse { /** *

Thrown if there are parallel requests to modify a resource.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** - *

The message returned by a ConcurrentModificationException.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** diff --git a/clients/client-cognito-identity/src/protocols/Aws_json1_1.ts b/clients/client-cognito-identity/src/protocols/Aws_json1_1.ts index 4018de0f3e64f..03ce79c7b8213 100644 --- a/clients/client-cognito-identity/src/protocols/Aws_json1_1.ts +++ b/clients/client-cognito-identity/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateIdentityPoolCommandInput, CreateIdentityPoolCommandOutput } from "../commands/CreateIdentityPoolCommand"; @@ -71,6 +70,7 @@ import { import { UnlinkIdentityCommandInput, UnlinkIdentityCommandOutput } from "../commands/UnlinkIdentityCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateIdentityPoolCommandInput, UpdateIdentityPoolCommandOutput } from "../commands/UpdateIdentityPoolCommand"; +import { CognitoIdentityServiceException as __BaseException } from "../models/CognitoIdentityServiceException"; import { CognitoIdentityProvider, ConcurrentModificationException, @@ -455,73 +455,37 @@ const deserializeAws_json1_1CreateIdentityPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentity#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIdentitiesCommand = async ( @@ -549,49 +513,28 @@ const deserializeAws_json1_1DeleteIdentitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIdentityPoolCommand = async ( @@ -616,65 +559,34 @@ const deserializeAws_json1_1DeleteIdentityPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeIdentityCommand = async ( @@ -702,65 +614,34 @@ const deserializeAws_json1_1DescribeIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeIdentityPoolCommand = async ( @@ -788,65 +669,34 @@ const deserializeAws_json1_1DescribeIdentityPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCredentialsForIdentityCommand = async ( @@ -874,89 +724,43 @@ const deserializeAws_json1_1GetCredentialsForIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExternalServiceException": case "com.amazonaws.cognitoidentity#ExternalServiceException": - response = { - ...(await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidIdentityPoolConfigurationException": case "com.amazonaws.cognitoidentity#InvalidIdentityPoolConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidIdentityPoolConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidIdentityPoolConfigurationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetIdCommand = async ( @@ -984,89 +788,43 @@ const deserializeAws_json1_1GetIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExternalServiceException": case "com.amazonaws.cognitoidentity#ExternalServiceException": - response = { - ...(await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentity#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetIdentityPoolRolesCommand = async ( @@ -1094,73 +852,37 @@ const deserializeAws_json1_1GetIdentityPoolRolesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOpenIdTokenCommand = async ( @@ -1188,81 +910,40 @@ const deserializeAws_json1_1GetOpenIdTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExternalServiceException": case "com.amazonaws.cognitoidentity#ExternalServiceException": - response = { - ...(await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOpenIdTokenForDeveloperIdentityCommand = async ( @@ -1290,81 +971,40 @@ const deserializeAws_json1_1GetOpenIdTokenForDeveloperIdentityCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeveloperUserAlreadyRegisteredException": case "com.amazonaws.cognitoidentity#DeveloperUserAlreadyRegisteredException": - response = { - ...(await deserializeAws_json1_1DeveloperUserAlreadyRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DeveloperUserAlreadyRegisteredExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPrincipalTagAttributeMapCommand = async ( @@ -1392,65 +1032,34 @@ const deserializeAws_json1_1GetPrincipalTagAttributeMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIdentitiesCommand = async ( @@ -1478,65 +1087,34 @@ const deserializeAws_json1_1ListIdentitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIdentityPoolsCommand = async ( @@ -1564,65 +1142,34 @@ const deserializeAws_json1_1ListIdentityPoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1650,65 +1197,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1LookupDeveloperIdentityCommand = async ( @@ -1736,73 +1252,37 @@ const deserializeAws_json1_1LookupDeveloperIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergeDeveloperIdentitiesCommand = async ( @@ -1830,73 +1310,37 @@ const deserializeAws_json1_1MergeDeveloperIdentitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetIdentityPoolRolesCommand = async ( @@ -1921,81 +1365,40 @@ const deserializeAws_json1_1SetIdentityPoolRolesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cognitoidentity#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetPrincipalTagAttributeMapCommand = async ( @@ -2023,65 +1426,34 @@ const deserializeAws_json1_1SetPrincipalTagAttributeMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2109,65 +1481,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnlinkDeveloperIdentityCommand = async ( @@ -2192,73 +1533,37 @@ const deserializeAws_json1_1UnlinkDeveloperIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnlinkIdentityCommand = async ( @@ -2283,81 +1588,40 @@ const deserializeAws_json1_1UnlinkIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExternalServiceException": case "com.amazonaws.cognitoidentity#ExternalServiceException": - response = { - ...(await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExternalServiceExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2385,65 +1649,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateIdentityPoolCommand = async ( @@ -2471,89 +1704,43 @@ const deserializeAws_json1_1UpdateIdentityPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cognitoidentity#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitoidentity#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitoidentity#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitoidentity#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitoidentity#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitoidentity#ResourceConflictException": - response = { - ...(await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitoidentity#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitoidentity#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -2562,13 +1749,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DeveloperUserAlreadyRegisteredExceptionResponse = async ( @@ -2577,13 +1762,11 @@ const deserializeAws_json1_1DeveloperUserAlreadyRegisteredExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DeveloperUserAlreadyRegisteredException(body, context); - const contents: DeveloperUserAlreadyRegisteredException = { - name: "DeveloperUserAlreadyRegisteredException", - $fault: "client", + const exception = new DeveloperUserAlreadyRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExternalServiceExceptionResponse = async ( @@ -2592,13 +1775,11 @@ const deserializeAws_json1_1ExternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExternalServiceException(body, context); - const contents: ExternalServiceException = { - name: "ExternalServiceException", - $fault: "client", + const exception = new ExternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -2607,13 +1788,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidIdentityPoolConfigurationExceptionResponse = async ( @@ -2622,13 +1801,11 @@ const deserializeAws_json1_1InvalidIdentityPoolConfigurationExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidIdentityPoolConfigurationException(body, context); - const contents: InvalidIdentityPoolConfigurationException = { - name: "InvalidIdentityPoolConfigurationException", - $fault: "client", + const exception = new InvalidIdentityPoolConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -2637,13 +1814,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2652,13 +1827,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotAuthorizedExceptionResponse = async ( @@ -2667,13 +1840,11 @@ const deserializeAws_json1_1NotAuthorizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotAuthorizedException(body, context); - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", + const exception = new NotAuthorizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceConflictExceptionResponse = async ( @@ -2682,13 +1853,11 @@ const deserializeAws_json1_1ResourceConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceConflictException(body, context); - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", + const exception = new ResourceConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2697,13 +1866,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -2712,13 +1879,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CognitoIdentityProvider = (input: CognitoIdentityProvider, context: __SerdeContext): any => { diff --git a/clients/client-cognito-sync/src/index.ts b/clients/client-cognito-sync/src/index.ts index d37574c1659c0..9df614b6ccc5f 100644 --- a/clients/client-cognito-sync/src/index.ts +++ b/clients/client-cognito-sync/src/index.ts @@ -2,3 +2,4 @@ export * from "./CognitoSync"; export * from "./CognitoSyncClient"; export * from "./commands"; export * from "./models"; +export { CognitoSyncServiceException } from "./models/CognitoSyncServiceException"; diff --git a/clients/client-cognito-sync/src/models/CognitoSyncServiceException.ts b/clients/client-cognito-sync/src/models/CognitoSyncServiceException.ts new file mode 100644 index 0000000000000..dcbf3a7a30127 --- /dev/null +++ b/clients/client-cognito-sync/src/models/CognitoSyncServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CognitoSync service. + */ +export class CognitoSyncServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CognitoSyncServiceException.prototype); + } +} diff --git a/clients/client-cognito-sync/src/models/models_0.ts b/clients/client-cognito-sync/src/models/models_0.ts index 2063a93e08cec..1f55b6a86b46b 100644 --- a/clients/client-cognito-sync/src/models/models_0.ts +++ b/clients/client-cognito-sync/src/models/models_0.ts @@ -1,15 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CognitoSyncServiceException as __BaseException } from "./CognitoSyncServiceException"; /** * An exception thrown when a bulk publish operation is requested less than 24 hours after a previous bulk publish operation completed successfully. */ -export interface AlreadyStreamedException extends __SmithyException, $MetadataBearer { - name: "AlreadyStreamedException"; - $fault: "client"; +export class AlreadyStreamedException extends __BaseException { + readonly name: "AlreadyStreamedException" = "AlreadyStreamedException"; + readonly $fault: "client" = "client"; /** - * The message associated with the AlreadyStreamedException exception. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyStreamedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyStreamedException.prototype); + } } /** @@ -57,69 +67,100 @@ export namespace BulkPublishResponse { /** * An exception thrown when there is an IN_PROGRESS bulk publish operation for the given identity pool. */ -export interface DuplicateRequestException extends __SmithyException, $MetadataBearer { - name: "DuplicateRequestException"; - $fault: "client"; +export class DuplicateRequestException extends __BaseException { + readonly name: "DuplicateRequestException" = "DuplicateRequestException"; + readonly $fault: "client" = "client"; /** - * The message associated with the DuplicateRequestException exception. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateRequestException.prototype); + } } /** * Indicates an internal service * error. */ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; /** - * Message returned by - * InternalErrorException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + } } /** * Thrown when a request parameter does not comply * with the associated constraints. */ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** - * Message returned by - * InvalidParameterException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** * Thrown when a user is not authorized to access the * requested resource. */ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; /** - * The message returned by a - * NotAuthorizedException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + } } /** * Thrown if the resource doesn't * exist. */ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - * Message returned by a - * ResourceNotFoundException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -246,28 +287,40 @@ export namespace DeleteDatasetResponse { * Thrown if an update can't be applied because * the resource was changed by another call and this would result in a conflict. */ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; /** - * The message returned by a - * ResourceConflictException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + } } /** * Thrown if the request is * throttled. */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** - * Message returned by a - * TooManyRequestsException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** @@ -1037,14 +1090,20 @@ export namespace ListRecordsResponse { }); } -export interface InvalidConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidConfigurationException"; - $fault: "client"; +export class InvalidConfigurationException extends __BaseException { + readonly name: "InvalidConfigurationException" = "InvalidConfigurationException"; + readonly $fault: "client" = "client"; /** - * Message returned by - * InvalidConfigurationException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConfigurationException.prototype); + } } export type Platform = "ADM" | "APNS" | "APNS_SANDBOX" | "GCM"; @@ -1130,13 +1189,20 @@ export namespace SetCognitoEventsRequest { /** *

Thrown if there are parallel requests to modify a resource.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** - *

The message returned by a ConcurrentModicationException.

+ * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** @@ -1300,39 +1366,59 @@ export namespace UnsubscribeFromDatasetResponse { /** *

The AWS Lambda function returned invalid output or an exception.

*/ -export interface InvalidLambdaFunctionOutputException extends __SmithyException, $MetadataBearer { - name: "InvalidLambdaFunctionOutputException"; - $fault: "client"; +export class InvalidLambdaFunctionOutputException extends __BaseException { + readonly name: "InvalidLambdaFunctionOutputException" = "InvalidLambdaFunctionOutputException"; + readonly $fault: "client" = "client"; /** - *

A message returned when an InvalidLambdaFunctionOutputException occurs

+ * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLambdaFunctionOutputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLambdaFunctionOutputException.prototype); + } } /** *

AWS Lambda throttled your account, please contact AWS Support

*/ -export interface LambdaThrottledException extends __SmithyException, $MetadataBearer { - name: "LambdaThrottledException"; - $fault: "client"; +export class LambdaThrottledException extends __BaseException { + readonly name: "LambdaThrottledException" = "LambdaThrottledException"; + readonly $fault: "client" = "client"; /** - *

A message returned when an LambdaThrottledException is thrown

+ * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LambdaThrottledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LambdaThrottledException.prototype); + } } /** * Thrown when the limit on the number of objects or * operations has been exceeded. */ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - * Message returned by - * LimitExceededException. + * @internal */ - message: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export type Operation = "remove" | "replace"; diff --git a/clients/client-cognito-sync/src/protocols/Aws_restJson1.ts b/clients/client-cognito-sync/src/protocols/Aws_restJson1.ts index 3e31af32a137d..20dcba025eb47 100644 --- a/clients/client-cognito-sync/src/protocols/Aws_restJson1.ts +++ b/clients/client-cognito-sync/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BulkPublishCommandInput, BulkPublishCommandOutput } from "../commands/BulkPublishCommand"; @@ -56,6 +55,7 @@ import { UnsubscribeFromDatasetCommandOutput, } from "../commands/UnsubscribeFromDatasetCommand"; import { UpdateRecordsCommandInput, UpdateRecordsCommandOutput } from "../commands/UpdateRecordsCommand"; +import { CognitoSyncServiceException as __BaseException } from "../models/CognitoSyncServiceException"; import { _Record, AlreadyStreamedException, @@ -805,73 +805,37 @@ const deserializeAws_restJson1BulkPublishCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyStreamedException": case "com.amazonaws.cognitosync#AlreadyStreamedException": - response = { - ...(await deserializeAws_restJson1AlreadyStreamedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyStreamedExceptionResponse(parsedOutput, context); case "DuplicateRequestException": case "com.amazonaws.cognitosync#DuplicateRequestException": - response = { - ...(await deserializeAws_restJson1DuplicateRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateRequestExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatasetCommand = async ( @@ -900,73 +864,37 @@ const deserializeAws_restJson1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitosync#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDatasetCommand = async ( @@ -995,65 +923,34 @@ const deserializeAws_restJson1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIdentityPoolUsageCommand = async ( @@ -1082,65 +979,34 @@ const deserializeAws_restJson1DescribeIdentityPoolUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIdentityUsageCommand = async ( @@ -1169,65 +1035,34 @@ const deserializeAws_restJson1DescribeIdentityUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBulkPublishDetailsCommand = async ( @@ -1274,57 +1109,31 @@ const deserializeAws_restJson1GetBulkPublishDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCognitoEventsCommand = async ( @@ -1353,65 +1162,34 @@ const deserializeAws_restJson1GetCognitoEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIdentityPoolConfigurationCommand = async ( @@ -1448,65 +1226,34 @@ const deserializeAws_restJson1GetIdentityPoolConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatasetsCommand = async ( @@ -1543,57 +1290,31 @@ const deserializeAws_restJson1ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIdentityPoolUsageCommand = async ( @@ -1634,57 +1355,31 @@ const deserializeAws_restJson1ListIdentityPoolUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecordsCommand = async ( @@ -1745,57 +1440,31 @@ const deserializeAws_restJson1ListRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterDeviceCommand = async ( @@ -1824,73 +1493,37 @@ const deserializeAws_restJson1RegisterDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidConfigurationException": case "com.amazonaws.cognitosync#InvalidConfigurationException": - response = { - ...(await deserializeAws_restJson1InvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidConfigurationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetCognitoEventsCommand = async ( @@ -1915,65 +1548,34 @@ const deserializeAws_restJson1SetCognitoEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetIdentityPoolConfigurationCommand = async ( @@ -2010,73 +1612,37 @@ const deserializeAws_restJson1SetIdentityPoolConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.cognitosync#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SubscribeToDatasetCommand = async ( @@ -2101,73 +1667,37 @@ const deserializeAws_restJson1SubscribeToDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidConfigurationException": case "com.amazonaws.cognitosync#InvalidConfigurationException": - response = { - ...(await deserializeAws_restJson1InvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidConfigurationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnsubscribeFromDatasetCommand = async ( @@ -2192,73 +1722,37 @@ const deserializeAws_restJson1UnsubscribeFromDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidConfigurationException": case "com.amazonaws.cognitosync#InvalidConfigurationException": - response = { - ...(await deserializeAws_restJson1InvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidConfigurationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRecordsCommand = async ( @@ -2287,318 +1781,254 @@ const deserializeAws_restJson1UpdateRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.cognitosync#InternalErrorException": - response = { - ...(await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidLambdaFunctionOutputException": case "com.amazonaws.cognitosync#InvalidLambdaFunctionOutputException": - response = { - ...(await deserializeAws_restJson1InvalidLambdaFunctionOutputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidLambdaFunctionOutputExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.cognitosync#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LambdaThrottledException": case "com.amazonaws.cognitosync#LambdaThrottledException": - response = { - ...(await deserializeAws_restJson1LambdaThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LambdaThrottledExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.cognitosync#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.cognitosync#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.cognitosync#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.cognitosync#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.cognitosync#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AlreadyStreamedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AlreadyStreamedException = { - name: "AlreadyStreamedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AlreadyStreamedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DuplicateRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DuplicateRequestException = { - name: "DuplicateRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DuplicateRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidConfigurationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidConfigurationException = { - name: "InvalidConfigurationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidConfigurationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidLambdaFunctionOutputExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidLambdaFunctionOutputException = { - name: "InvalidLambdaFunctionOutputException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidLambdaFunctionOutputException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LambdaThrottledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LambdaThrottledException = { - name: "LambdaThrottledException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LambdaThrottledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotAuthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotAuthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ApplicationArnList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-comprehend/src/index.ts b/clients/client-comprehend/src/index.ts index 75064e1f97288..e7bb29310c412 100644 --- a/clients/client-comprehend/src/index.ts +++ b/clients/client-comprehend/src/index.ts @@ -3,3 +3,4 @@ export * from "./ComprehendClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ComprehendServiceException } from "./models/ComprehendServiceException"; diff --git a/clients/client-comprehend/src/models/ComprehendServiceException.ts b/clients/client-comprehend/src/models/ComprehendServiceException.ts new file mode 100644 index 0000000000000..e1ef9a7a3e2c2 --- /dev/null +++ b/clients/client-comprehend/src/models/ComprehendServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Comprehend service. + */ +export class ComprehendServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ComprehendServiceException.prototype); + } +} diff --git a/clients/client-comprehend/src/models/models_0.ts b/clients/client-comprehend/src/models/models_0.ts index 79ffc6af3d4df..839a7f707ee86 100644 --- a/clients/client-comprehend/src/models/models_0.ts +++ b/clients/client-comprehend/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ComprehendServiceException as __BaseException } from "./ComprehendServiceException"; export enum AugmentedManifestsDocumentTypeFormat { PLAIN_TEXT_DOCUMENT = "PLAIN_TEXT_DOCUMENT", @@ -220,37 +222,85 @@ export namespace BatchDetectDominantLanguageResponse { *

The number of documents in the request exceeds the limit of 25. Try your request again * with fewer documents.

*/ -export interface BatchSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "BatchSizeLimitExceededException"; - $fault: "client"; +export class BatchSizeLimitExceededException extends __BaseException { + readonly name: "BatchSizeLimitExceededException" = "BatchSizeLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchSizeLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

An internal server error occurred. Retry your request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The request is invalid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The size of the input text exceeds the limit. Use a smaller document.

*/ -export interface TextSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TextSizeLimitExceededException"; - $fault: "client"; +export class TextSizeLimitExceededException extends __BaseException { + readonly name: "TextSizeLimitExceededException" = "TextSizeLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TextSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TextSizeLimitExceededException.prototype); + this.Message = opts.Message; + } } export enum LanguageCode { @@ -412,10 +462,22 @@ export namespace BatchDetectEntitiesResponse { * recognition APIs, only English, Spanish, French, Italian, German, or Portuguese are accepted. * For a list of supported languages, see supported-languages.

*/ -export interface UnsupportedLanguageException extends __SmithyException, $MetadataBearer { - name: "UnsupportedLanguageException"; - $fault: "client"; +export class UnsupportedLanguageException extends __BaseException { + readonly name: "UnsupportedLanguageException" = "UnsupportedLanguageException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedLanguageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedLanguageException.prototype); + this.Message = opts.Message; + } } export interface BatchDetectKeyPhrasesRequest { @@ -1060,10 +1122,22 @@ export namespace ClassifyDocumentResponse { *

The specified resource is not available. Check the resource and try your request * again.

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "client"; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + this.Message = opts.Message; + } } export interface ContainsPiiEntitiesRequest { @@ -1512,39 +1586,87 @@ export namespace CreateDocumentClassifierResponse { *

The KMS customer managed key (CMK) entered cannot be validated. Verify the key and * re-enter it.

*/ -export interface KmsKeyValidationException extends __SmithyException, $MetadataBearer { - name: "KmsKeyValidationException"; - $fault: "client"; +export class KmsKeyValidationException extends __BaseException { + readonly name: "KmsKeyValidationException" = "KmsKeyValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KmsKeyValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KmsKeyValidationException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource name is already in use. Use a different name and try your request * again.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of resources per account has been exceeded. Review the resources, and * then try your request again.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The number of requests exceeds the limit. Resubmit your request later.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** @@ -1552,10 +1674,22 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe * resource). The maximum number of tags includes both existing tags and those included in your * current request.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + } } export interface CreateEndpointRequest { @@ -1628,10 +1762,22 @@ export namespace CreateEndpointResponse { /** *

The specified resource ARN was not found. Check the ARN and try your request again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -2407,10 +2553,22 @@ export namespace DescribeDocumentClassificationJobResponse { /** *

The specified job was not found. Check the job ID and try again.

*/ -export interface JobNotFoundException extends __SmithyException, $MetadataBearer { - name: "JobNotFoundException"; - $fault: "client"; +export class JobNotFoundException extends __BaseException { + readonly name: "JobNotFoundException" = "JobNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "JobNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, JobNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeDocumentClassifierRequest { @@ -4474,10 +4632,22 @@ export namespace ImportModelResponse { *

The filter specified for the operation is invalid. Specify a different * filter.

*/ -export interface InvalidFilterException extends __SmithyException, $MetadataBearer { - name: "InvalidFilterException"; - $fault: "client"; +export class InvalidFilterException extends __BaseException { + readonly name: "InvalidFilterException" = "InvalidFilterException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilterException.prototype); + this.Message = opts.Message; + } } /** @@ -6973,10 +7143,22 @@ export namespace StopTrainingEntityRecognizerResponse { *

Concurrent modification of the tags associated with an Amazon Comprehend resource is not * supported.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } export interface TagResourceRequest { @@ -7017,10 +7199,22 @@ export namespace TagResourceResponse { *

The request contains more tag keys than can be associated with a resource (50 tag keys per * resource).

*/ -export interface TooManyTagKeysException extends __SmithyException, $MetadataBearer { - name: "TooManyTagKeysException"; - $fault: "client"; +export class TooManyTagKeysException extends __BaseException { + readonly name: "TooManyTagKeysException" = "TooManyTagKeysException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagKeysException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagKeysException.prototype); + this.Message = opts.Message; + } } export interface UntagResourceRequest { diff --git a/clients/client-comprehend/src/protocols/Aws_json1_1.ts b/clients/client-comprehend/src/protocols/Aws_json1_1.ts index ce980382c2175..62f72e07bc050 100644 --- a/clients/client-comprehend/src/protocols/Aws_json1_1.ts +++ b/clients/client-comprehend/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -238,6 +237,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateEndpointCommandInput, UpdateEndpointCommandOutput } from "../commands/UpdateEndpointCommand"; +import { ComprehendServiceException as __BaseException } from "../models/ComprehendServiceException"; import { AugmentedManifestsListItem, BatchDetectDominantLanguageItemResult, @@ -1350,57 +1350,31 @@ const deserializeAws_json1_1BatchDetectDominantLanguageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchSizeLimitExceededException": case "com.amazonaws.comprehend#BatchSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDetectEntitiesCommand = async ( @@ -1428,65 +1402,34 @@ const deserializeAws_json1_1BatchDetectEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchSizeLimitExceededException": case "com.amazonaws.comprehend#BatchSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDetectKeyPhrasesCommand = async ( @@ -1514,65 +1457,34 @@ const deserializeAws_json1_1BatchDetectKeyPhrasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchSizeLimitExceededException": case "com.amazonaws.comprehend#BatchSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDetectSentimentCommand = async ( @@ -1600,65 +1512,34 @@ const deserializeAws_json1_1BatchDetectSentimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchSizeLimitExceededException": case "com.amazonaws.comprehend#BatchSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDetectSyntaxCommand = async ( @@ -1686,65 +1567,34 @@ const deserializeAws_json1_1BatchDetectSyntaxCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchSizeLimitExceededException": case "com.amazonaws.comprehend#BatchSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ClassifyDocumentCommand = async ( @@ -1772,57 +1622,31 @@ const deserializeAws_json1_1ClassifyDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ContainsPiiEntitiesCommand = async ( @@ -1850,57 +1674,31 @@ const deserializeAws_json1_1ContainsPiiEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDocumentClassifierCommand = async ( @@ -1928,89 +1726,43 @@ const deserializeAws_json1_1CreateDocumentClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.comprehend#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEndpointCommand = async ( @@ -2038,89 +1790,43 @@ const deserializeAws_json1_1CreateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.comprehend#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEntityRecognizerCommand = async ( @@ -2148,89 +1854,43 @@ const deserializeAws_json1_1CreateEntityRecognizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.comprehend#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDocumentClassifierCommand = async ( @@ -2258,73 +1918,37 @@ const deserializeAws_json1_1DeleteDocumentClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEndpointCommand = async ( @@ -2352,65 +1976,34 @@ const deserializeAws_json1_1DeleteEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEntityRecognizerCommand = async ( @@ -2438,73 +2031,37 @@ const deserializeAws_json1_1DeleteEntityRecognizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourcePolicyCommand = async ( @@ -2532,49 +2089,28 @@ const deserializeAws_json1_1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDocumentClassificationJobCommand = async ( @@ -2602,57 +2138,31 @@ const deserializeAws_json1_1DescribeDocumentClassificationJobCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDocumentClassifierCommand = async ( @@ -2680,57 +2190,31 @@ const deserializeAws_json1_1DescribeDocumentClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDominantLanguageDetectionJobCommand = async ( @@ -2758,57 +2242,31 @@ const deserializeAws_json1_1DescribeDominantLanguageDetectionJobCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointCommand = async ( @@ -2836,57 +2294,31 @@ const deserializeAws_json1_1DescribeEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEntitiesDetectionJobCommand = async ( @@ -2914,57 +2346,31 @@ const deserializeAws_json1_1DescribeEntitiesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEntityRecognizerCommand = async ( @@ -2992,57 +2398,31 @@ const deserializeAws_json1_1DescribeEntityRecognizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsDetectionJobCommand = async ( @@ -3070,57 +2450,31 @@ const deserializeAws_json1_1DescribeEventsDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeKeyPhrasesDetectionJobCommand = async ( @@ -3148,57 +2502,31 @@ const deserializeAws_json1_1DescribeKeyPhrasesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePiiEntitiesDetectionJobCommand = async ( @@ -3226,57 +2554,31 @@ const deserializeAws_json1_1DescribePiiEntitiesDetectionJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeResourcePolicyCommand = async ( @@ -3304,49 +2606,28 @@ const deserializeAws_json1_1DescribeResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSentimentDetectionJobCommand = async ( @@ -3374,57 +2655,31 @@ const deserializeAws_json1_1DescribeSentimentDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTopicsDetectionJobCommand = async ( @@ -3452,57 +2707,31 @@ const deserializeAws_json1_1DescribeTopicsDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectDominantLanguageCommand = async ( @@ -3530,49 +2759,28 @@ const deserializeAws_json1_1DetectDominantLanguageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectEntitiesCommand = async ( @@ -3600,65 +2808,34 @@ const deserializeAws_json1_1DetectEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectKeyPhrasesCommand = async ( @@ -3686,57 +2863,31 @@ const deserializeAws_json1_1DetectKeyPhrasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectPiiEntitiesCommand = async ( @@ -3764,57 +2915,31 @@ const deserializeAws_json1_1DetectPiiEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectSentimentCommand = async ( @@ -3842,57 +2967,31 @@ const deserializeAws_json1_1DetectSentimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectSyntaxCommand = async ( @@ -3920,57 +3019,31 @@ const deserializeAws_json1_1DetectSyntaxCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehend#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedLanguageException": case "com.amazonaws.comprehend#UnsupportedLanguageException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportModelCommand = async ( @@ -3998,97 +3071,46 @@ const deserializeAws_json1_1ImportModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.comprehend#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDocumentClassificationJobsCommand = async ( @@ -4116,57 +3138,31 @@ const deserializeAws_json1_1ListDocumentClassificationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDocumentClassifiersCommand = async ( @@ -4194,57 +3190,31 @@ const deserializeAws_json1_1ListDocumentClassifiersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDocumentClassifierSummariesCommand = async ( @@ -4272,49 +3242,28 @@ const deserializeAws_json1_1ListDocumentClassifierSummariesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDominantLanguageDetectionJobsCommand = async ( @@ -4342,57 +3291,31 @@ const deserializeAws_json1_1ListDominantLanguageDetectionJobsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEndpointsCommand = async ( @@ -4420,49 +3343,28 @@ const deserializeAws_json1_1ListEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEntitiesDetectionJobsCommand = async ( @@ -4490,57 +3392,31 @@ const deserializeAws_json1_1ListEntitiesDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEntityRecognizersCommand = async ( @@ -4568,57 +3444,31 @@ const deserializeAws_json1_1ListEntityRecognizersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEntityRecognizerSummariesCommand = async ( @@ -4646,49 +3496,28 @@ const deserializeAws_json1_1ListEntityRecognizerSummariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventsDetectionJobsCommand = async ( @@ -4716,57 +3545,31 @@ const deserializeAws_json1_1ListEventsDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListKeyPhrasesDetectionJobsCommand = async ( @@ -4794,57 +3597,31 @@ const deserializeAws_json1_1ListKeyPhrasesDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPiiEntitiesDetectionJobsCommand = async ( @@ -4872,57 +3649,31 @@ const deserializeAws_json1_1ListPiiEntitiesDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSentimentDetectionJobsCommand = async ( @@ -4950,57 +3701,31 @@ const deserializeAws_json1_1ListSentimentDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5028,49 +3753,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTopicsDetectionJobsCommand = async ( @@ -5098,57 +3802,31 @@ const deserializeAws_json1_1ListTopicsDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.comprehend#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourcePolicyCommand = async ( @@ -5176,49 +3854,28 @@ const deserializeAws_json1_1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDocumentClassificationJobCommand = async ( @@ -5246,81 +3903,40 @@ const deserializeAws_json1_1StartDocumentClassificationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDominantLanguageDetectionJobCommand = async ( @@ -5348,65 +3964,34 @@ const deserializeAws_json1_1StartDominantLanguageDetectionJobCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartEntitiesDetectionJobCommand = async ( @@ -5434,81 +4019,40 @@ const deserializeAws_json1_1StartEntitiesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartEventsDetectionJobCommand = async ( @@ -5536,65 +4080,34 @@ const deserializeAws_json1_1StartEventsDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartKeyPhrasesDetectionJobCommand = async ( @@ -5622,65 +4135,34 @@ const deserializeAws_json1_1StartKeyPhrasesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartPiiEntitiesDetectionJobCommand = async ( @@ -5708,65 +4190,34 @@ const deserializeAws_json1_1StartPiiEntitiesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSentimentDetectionJobCommand = async ( @@ -5794,65 +4245,34 @@ const deserializeAws_json1_1StartSentimentDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTopicsDetectionJobCommand = async ( @@ -5880,65 +4300,34 @@ const deserializeAws_json1_1StartTopicsDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "KmsKeyValidationException": case "com.amazonaws.comprehend#KmsKeyValidationException": - response = { - ...(await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsKeyValidationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopDominantLanguageDetectionJobCommand = async ( @@ -5966,49 +4355,28 @@ const deserializeAws_json1_1StopDominantLanguageDetectionJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopEntitiesDetectionJobCommand = async ( @@ -6036,49 +4404,28 @@ const deserializeAws_json1_1StopEntitiesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopEventsDetectionJobCommand = async ( @@ -6106,49 +4453,28 @@ const deserializeAws_json1_1StopEventsDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopKeyPhrasesDetectionJobCommand = async ( @@ -6176,49 +4502,28 @@ const deserializeAws_json1_1StopKeyPhrasesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopPiiEntitiesDetectionJobCommand = async ( @@ -6246,49 +4551,28 @@ const deserializeAws_json1_1StopPiiEntitiesDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopSentimentDetectionJobCommand = async ( @@ -6316,49 +4600,28 @@ const deserializeAws_json1_1StopSentimentDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "JobNotFoundException": case "com.amazonaws.comprehend#JobNotFoundException": - response = { - ...(await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1JobNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTrainingDocumentClassifierCommand = async ( @@ -6386,57 +4649,31 @@ const deserializeAws_json1_1StopTrainingDocumentClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTrainingEntityRecognizerCommand = async ( @@ -6464,57 +4701,31 @@ const deserializeAws_json1_1StopTrainingEntityRecognizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6542,65 +4753,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.comprehend#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.comprehend#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6628,65 +4808,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.comprehend#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagKeysException": case "com.amazonaws.comprehend#TooManyTagKeysException": - response = { - ...(await deserializeAws_json1_1TooManyTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagKeysExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEndpointCommand = async ( @@ -6714,81 +4863,40 @@ const deserializeAws_json1_1UpdateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehend#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehend#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.comprehend#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.comprehend#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehend#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.comprehend#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehend#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse = async ( @@ -6797,13 +4905,11 @@ const deserializeAws_json1_1BatchSizeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BatchSizeLimitExceededException(body, context); - const contents: BatchSizeLimitExceededException = { - name: "BatchSizeLimitExceededException", - $fault: "client", + const exception = new BatchSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -6812,13 +4918,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -6827,13 +4931,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilterExceptionResponse = async ( @@ -6842,13 +4944,11 @@ const deserializeAws_json1_1InvalidFilterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilterException(body, context); - const contents: InvalidFilterException = { - name: "InvalidFilterException", - $fault: "client", + const exception = new InvalidFilterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -6857,13 +4957,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1JobNotFoundExceptionResponse = async ( @@ -6872,13 +4970,11 @@ const deserializeAws_json1_1JobNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1JobNotFoundException(body, context); - const contents: JobNotFoundException = { - name: "JobNotFoundException", - $fault: "client", + const exception = new JobNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KmsKeyValidationExceptionResponse = async ( @@ -6887,13 +4983,11 @@ const deserializeAws_json1_1KmsKeyValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KmsKeyValidationException(body, context); - const contents: KmsKeyValidationException = { - name: "KmsKeyValidationException", - $fault: "client", + const exception = new KmsKeyValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -6902,13 +4996,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( @@ -6917,13 +5009,11 @@ const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLimitExceededException(body, context); - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", + const exception = new ResourceLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -6932,13 +5022,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( @@ -6947,13 +5035,11 @@ const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceUnavailableException(body, context); - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "client", + const exception = new ResourceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TextSizeLimitExceededExceptionResponse = async ( @@ -6962,13 +5048,11 @@ const deserializeAws_json1_1TextSizeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TextSizeLimitExceededException(body, context); - const contents: TextSizeLimitExceededException = { - name: "TextSizeLimitExceededException", - $fault: "client", + const exception = new TextSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -6977,13 +5061,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagKeysExceptionResponse = async ( @@ -6992,13 +5074,11 @@ const deserializeAws_json1_1TooManyTagKeysExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagKeysException(body, context); - const contents: TooManyTagKeysException = { - name: "TooManyTagKeysException", - $fault: "client", + const exception = new TooManyTagKeysException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -7007,13 +5087,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedLanguageExceptionResponse = async ( @@ -7022,13 +5100,11 @@ const deserializeAws_json1_1UnsupportedLanguageExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedLanguageException(body, context); - const contents: UnsupportedLanguageException = { - name: "UnsupportedLanguageException", - $fault: "client", + const exception = new UnsupportedLanguageException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AttributeNamesList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-comprehendmedical/src/index.ts b/clients/client-comprehendmedical/src/index.ts index 191358d2e5b9e..e2d89557b48c3 100644 --- a/clients/client-comprehendmedical/src/index.ts +++ b/clients/client-comprehendmedical/src/index.ts @@ -2,3 +2,4 @@ export * from "./ComprehendMedical"; export * from "./ComprehendMedicalClient"; export * from "./commands"; export * from "./models"; +export { ComprehendMedicalServiceException } from "./models/ComprehendMedicalServiceException"; diff --git a/clients/client-comprehendmedical/src/models/ComprehendMedicalServiceException.ts b/clients/client-comprehendmedical/src/models/ComprehendMedicalServiceException.ts new file mode 100644 index 0000000000000..8ce8990ee570a --- /dev/null +++ b/clients/client-comprehendmedical/src/models/ComprehendMedicalServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ComprehendMedical service. + */ +export class ComprehendMedicalServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ComprehendMedicalServiceException.prototype); + } +} diff --git a/clients/client-comprehendmedical/src/models/models_0.ts b/clients/client-comprehendmedical/src/models/models_0.ts index af5bc502d10de..f430560de9b49 100644 --- a/clients/client-comprehendmedical/src/models/models_0.ts +++ b/clients/client-comprehendmedical/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ComprehendMedicalServiceException as __BaseException } from "./ComprehendMedicalServiceException"; export enum EntityType { ANATOMY = "ANATOMY", @@ -398,30 +401,66 @@ export namespace DescribeEntitiesDetectionV2JobResponse { /** *

An internal server error occurred. Retry your request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The request that you made is invalid. Check your request to determine why it's invalid * and then retry the request.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check * the ARN and try your request again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -429,10 +468,22 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * then try your request again. Contact customer support for more information about a service * limit increase.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } export interface DescribeICD10CMInferenceJobRequest { @@ -715,30 +766,66 @@ export namespace DetectEntitiesResponse { *

The input text was not in valid UTF-8 character encoding. Check your text then retry your * request.

*/ -export interface InvalidEncodingException extends __SmithyException, $MetadataBearer { - name: "InvalidEncodingException"; - $fault: "client"; +export class InvalidEncodingException extends __BaseException { + readonly name: "InvalidEncodingException" = "InvalidEncodingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEncodingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEncodingException.prototype); + this.Message = opts.Message; + } } /** *

The Comprehend Medical; service is temporarily unavailable. Please wait and then retry your request. *

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The size of the text you submitted exceeds the size limit. Reduce the size of the text or * use a smaller document and then retry your request.

*/ -export interface TextSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TextSizeLimitExceededException"; - $fault: "client"; +export class TextSizeLimitExceededException extends __BaseException { + readonly name: "TextSizeLimitExceededException" = "TextSizeLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TextSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TextSizeLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface DetectEntitiesV2Request { @@ -1885,10 +1972,22 @@ export namespace ListEntitiesDetectionV2JobsResponse { *

The filter that you specified for the operation is invalid. Check the filter values that * you entered and try your request again.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface ListICD10CMInferenceJobsRequest { diff --git a/clients/client-comprehendmedical/src/protocols/Aws_json1_1.ts b/clients/client-comprehendmedical/src/protocols/Aws_json1_1.ts index 90c0ed3737167..e01d09b7539cf 100644 --- a/clients/client-comprehendmedical/src/protocols/Aws_json1_1.ts +++ b/clients/client-comprehendmedical/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -103,6 +102,7 @@ import { StopSNOMEDCTInferenceJobCommandInput, StopSNOMEDCTInferenceJobCommandOutput, } from "../commands/StopSNOMEDCTInferenceJobCommand"; +import { ComprehendMedicalServiceException as __BaseException } from "../models/ComprehendMedicalServiceException"; import { Attribute, Characters, @@ -551,57 +551,31 @@ const deserializeAws_json1_1DescribeEntitiesDetectionV2JobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeICD10CMInferenceJobCommand = async ( @@ -629,57 +603,31 @@ const deserializeAws_json1_1DescribeICD10CMInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePHIDetectionJobCommand = async ( @@ -707,57 +655,31 @@ const deserializeAws_json1_1DescribePHIDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRxNormInferenceJobCommand = async ( @@ -785,57 +707,31 @@ const deserializeAws_json1_1DescribeRxNormInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSNOMEDCTInferenceJobCommand = async ( @@ -863,57 +759,31 @@ const deserializeAws_json1_1DescribeSNOMEDCTInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectEntitiesCommand = async ( @@ -941,73 +811,37 @@ const deserializeAws_json1_1DetectEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidEncodingException": case "com.amazonaws.comprehendmedical#InvalidEncodingException": - response = { - ...(await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.comprehendmedical#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehendmedical#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectEntitiesV2Command = async ( @@ -1035,73 +869,37 @@ const deserializeAws_json1_1DetectEntitiesV2CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidEncodingException": case "com.amazonaws.comprehendmedical#InvalidEncodingException": - response = { - ...(await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.comprehendmedical#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehendmedical#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectPHICommand = async ( @@ -1129,73 +927,37 @@ const deserializeAws_json1_1DetectPHICommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidEncodingException": case "com.amazonaws.comprehendmedical#InvalidEncodingException": - response = { - ...(await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.comprehendmedical#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehendmedical#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InferICD10CMCommand = async ( @@ -1223,73 +985,37 @@ const deserializeAws_json1_1InferICD10CMCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidEncodingException": case "com.amazonaws.comprehendmedical#InvalidEncodingException": - response = { - ...(await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.comprehendmedical#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehendmedical#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InferRxNormCommand = async ( @@ -1317,73 +1043,37 @@ const deserializeAws_json1_1InferRxNormCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidEncodingException": case "com.amazonaws.comprehendmedical#InvalidEncodingException": - response = { - ...(await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.comprehendmedical#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehendmedical#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InferSNOMEDCTCommand = async ( @@ -1411,73 +1101,37 @@ const deserializeAws_json1_1InferSNOMEDCTCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidEncodingException": case "com.amazonaws.comprehendmedical#InvalidEncodingException": - response = { - ...(await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEncodingExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.comprehendmedical#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.comprehendmedical#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEntitiesDetectionV2JobsCommand = async ( @@ -1505,57 +1159,31 @@ const deserializeAws_json1_1ListEntitiesDetectionV2JobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.comprehendmedical#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListICD10CMInferenceJobsCommand = async ( @@ -1583,57 +1211,31 @@ const deserializeAws_json1_1ListICD10CMInferenceJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.comprehendmedical#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPHIDetectionJobsCommand = async ( @@ -1661,57 +1263,31 @@ const deserializeAws_json1_1ListPHIDetectionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.comprehendmedical#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRxNormInferenceJobsCommand = async ( @@ -1739,57 +1315,31 @@ const deserializeAws_json1_1ListRxNormInferenceJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.comprehendmedical#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSNOMEDCTInferenceJobsCommand = async ( @@ -1817,57 +1367,31 @@ const deserializeAws_json1_1ListSNOMEDCTInferenceJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.comprehendmedical#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartEntitiesDetectionV2JobCommand = async ( @@ -1895,57 +1419,31 @@ const deserializeAws_json1_1StartEntitiesDetectionV2JobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartICD10CMInferenceJobCommand = async ( @@ -1973,57 +1471,31 @@ const deserializeAws_json1_1StartICD10CMInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartPHIDetectionJobCommand = async ( @@ -2051,57 +1523,31 @@ const deserializeAws_json1_1StartPHIDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartRxNormInferenceJobCommand = async ( @@ -2129,57 +1575,31 @@ const deserializeAws_json1_1StartRxNormInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSNOMEDCTInferenceJobCommand = async ( @@ -2207,57 +1627,31 @@ const deserializeAws_json1_1StartSNOMEDCTInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopEntitiesDetectionV2JobCommand = async ( @@ -2285,49 +1679,28 @@ const deserializeAws_json1_1StopEntitiesDetectionV2JobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopICD10CMInferenceJobCommand = async ( @@ -2355,49 +1728,28 @@ const deserializeAws_json1_1StopICD10CMInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopPHIDetectionJobCommand = async ( @@ -2425,49 +1777,28 @@ const deserializeAws_json1_1StopPHIDetectionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopRxNormInferenceJobCommand = async ( @@ -2495,49 +1826,28 @@ const deserializeAws_json1_1StopRxNormInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopSNOMEDCTInferenceJobCommand = async ( @@ -2565,57 +1875,31 @@ const deserializeAws_json1_1StopSNOMEDCTInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.comprehendmedical#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.comprehendmedical#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.comprehendmedical#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.comprehendmedical#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -2624,13 +1908,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEncodingExceptionResponse = async ( @@ -2639,13 +1921,11 @@ const deserializeAws_json1_1InvalidEncodingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEncodingException(body, context); - const contents: InvalidEncodingException = { - name: "InvalidEncodingException", - $fault: "client", + const exception = new InvalidEncodingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -2654,13 +1934,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2669,13 +1947,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -2684,13 +1960,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TextSizeLimitExceededExceptionResponse = async ( @@ -2699,13 +1973,11 @@ const deserializeAws_json1_1TextSizeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TextSizeLimitExceededException(body, context); - const contents: TextSizeLimitExceededException = { - name: "TextSizeLimitExceededException", - $fault: "client", + const exception = new TextSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -2714,13 +1986,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -2729,13 +1999,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ComprehendMedicalAsyncJobFilter = ( diff --git a/clients/client-compute-optimizer/src/index.ts b/clients/client-compute-optimizer/src/index.ts index f74323094e3ca..fdfa5a59373ad 100644 --- a/clients/client-compute-optimizer/src/index.ts +++ b/clients/client-compute-optimizer/src/index.ts @@ -2,3 +2,4 @@ export * from "./ComputeOptimizer"; export * from "./ComputeOptimizerClient"; export * from "./commands"; export * from "./models"; +export { ComputeOptimizerServiceException } from "./models/ComputeOptimizerServiceException"; diff --git a/clients/client-compute-optimizer/src/models/ComputeOptimizerServiceException.ts b/clients/client-compute-optimizer/src/models/ComputeOptimizerServiceException.ts new file mode 100644 index 0000000000000..a8cab5924dbd8 --- /dev/null +++ b/clients/client-compute-optimizer/src/models/ComputeOptimizerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ComputeOptimizer service. + */ +export class ComputeOptimizerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ComputeOptimizerServiceException.prototype); + } +} diff --git a/clients/client-compute-optimizer/src/models/models_0.ts b/clients/client-compute-optimizer/src/models/models_0.ts index 7629d57714ba5..eda896171f4a3 100644 --- a/clients/client-compute-optimizer/src/models/models_0.ts +++ b/clients/client-compute-optimizer/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ComputeOptimizerServiceException as __BaseException } from "./ComputeOptimizerServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum Status { @@ -805,65 +818,135 @@ export namespace DeleteRecommendationPreferencesResponse { /** *

An internal error has occurred. Try your call again.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The value supplied for the input parameter is out of range or not valid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; - message?: string; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** *

The request must contain either a valid (registered) Amazon Web Services access key ID * or X.509 certificate.

*/ -export interface MissingAuthenticationToken extends __SmithyException, $MetadataBearer { - name: "MissingAuthenticationToken"; - $fault: "client"; - message?: string; +export class MissingAuthenticationToken extends __BaseException { + readonly name: "MissingAuthenticationToken" = "MissingAuthenticationToken"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingAuthenticationToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingAuthenticationToken.prototype); + } } /** *

The account is not opted in to Compute Optimizer.

*/ -export interface OptInRequiredException extends __SmithyException, $MetadataBearer { - name: "OptInRequiredException"; - $fault: "client"; - message?: string; +export class OptInRequiredException extends __BaseException { + readonly name: "OptInRequiredException" = "OptInRequiredException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptInRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptInRequiredException.prototype); + } } /** *

A resource that is required for the action doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The request has failed due to a temporary failure of the server.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export enum JobFilterName { @@ -1529,10 +1612,20 @@ export namespace ExportAutoScalingGroupRecommendationsResponse { /** *

The request exceeds a limit of the service.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export enum ExportableVolumeField { diff --git a/clients/client-compute-optimizer/src/protocols/Aws_json1_0.ts b/clients/client-compute-optimizer/src/protocols/Aws_json1_0.ts index cc533d0ef8140..599063efc3c41 100644 --- a/clients/client-compute-optimizer/src/protocols/Aws_json1_0.ts +++ b/clients/client-compute-optimizer/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -90,6 +89,7 @@ import { UpdateEnrollmentStatusCommandInput, UpdateEnrollmentStatusCommandOutput, } from "../commands/UpdateEnrollmentStatusCommand"; +import { ComputeOptimizerServiceException as __BaseException } from "../models/ComputeOptimizerServiceException"; import { AccessDeniedException, AccountEnrollmentStatus, @@ -445,89 +445,43 @@ const deserializeAws_json1_0DeleteRecommendationPreferencesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeRecommendationExportJobsCommand = async ( @@ -555,89 +509,43 @@ const deserializeAws_json1_0DescribeRecommendationExportJobsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExportAutoScalingGroupRecommendationsCommand = async ( @@ -665,89 +573,43 @@ const deserializeAws_json1_0ExportAutoScalingGroupRecommendationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.computeoptimizer#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExportEBSVolumeRecommendationsCommand = async ( @@ -775,89 +637,43 @@ const deserializeAws_json1_0ExportEBSVolumeRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.computeoptimizer#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExportEC2InstanceRecommendationsCommand = async ( @@ -885,89 +701,43 @@ const deserializeAws_json1_0ExportEC2InstanceRecommendationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.computeoptimizer#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExportLambdaFunctionRecommendationsCommand = async ( @@ -995,89 +765,43 @@ const deserializeAws_json1_0ExportLambdaFunctionRecommendationsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.computeoptimizer#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetAutoScalingGroupRecommendationsCommand = async ( @@ -1105,89 +829,43 @@ const deserializeAws_json1_0GetAutoScalingGroupRecommendationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEBSVolumeRecommendationsCommand = async ( @@ -1215,89 +893,43 @@ const deserializeAws_json1_0GetEBSVolumeRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEC2InstanceRecommendationsCommand = async ( @@ -1325,89 +957,43 @@ const deserializeAws_json1_0GetEC2InstanceRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEC2RecommendationProjectedMetricsCommand = async ( @@ -1435,89 +1021,43 @@ const deserializeAws_json1_0GetEC2RecommendationProjectedMetricsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEffectiveRecommendationPreferencesCommand = async ( @@ -1545,89 +1085,43 @@ const deserializeAws_json1_0GetEffectiveRecommendationPreferencesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEnrollmentStatusCommand = async ( @@ -1655,73 +1149,37 @@ const deserializeAws_json1_0GetEnrollmentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEnrollmentStatusesForOrganizationCommand = async ( @@ -1749,73 +1207,37 @@ const deserializeAws_json1_0GetEnrollmentStatusesForOrganizationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetLambdaFunctionRecommendationsCommand = async ( @@ -1843,89 +1265,43 @@ const deserializeAws_json1_0GetLambdaFunctionRecommendationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.computeoptimizer#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetRecommendationPreferencesCommand = async ( @@ -1953,89 +1329,43 @@ const deserializeAws_json1_0GetRecommendationPreferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetRecommendationSummariesCommand = async ( @@ -2063,81 +1393,40 @@ const deserializeAws_json1_0GetRecommendationSummariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PutRecommendationPreferencesCommand = async ( @@ -2165,89 +1454,43 @@ const deserializeAws_json1_0PutRecommendationPreferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "OptInRequiredException": case "com.amazonaws.computeoptimizer#OptInRequiredException": - response = { - ...(await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OptInRequiredExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.computeoptimizer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateEnrollmentStatusCommand = async ( @@ -2275,73 +1518,37 @@ const deserializeAws_json1_0UpdateEnrollmentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.computeoptimizer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.computeoptimizer#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.computeoptimizer#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingAuthenticationToken": case "com.amazonaws.computeoptimizer#MissingAuthenticationToken": - response = { - ...(await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingAuthenticationTokenResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.computeoptimizer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.computeoptimizer#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -2350,13 +1557,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -2365,13 +1570,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidParameterValueExceptionResponse = async ( @@ -2380,13 +1583,11 @@ const deserializeAws_json1_0InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededExceptionResponse = async ( @@ -2395,13 +1596,11 @@ const deserializeAws_json1_0LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0MissingAuthenticationTokenResponse = async ( @@ -2410,13 +1609,11 @@ const deserializeAws_json1_0MissingAuthenticationTokenResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0MissingAuthenticationToken(body, context); - const contents: MissingAuthenticationToken = { - name: "MissingAuthenticationToken", - $fault: "client", + const exception = new MissingAuthenticationToken({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0OptInRequiredExceptionResponse = async ( @@ -2425,13 +1622,11 @@ const deserializeAws_json1_0OptInRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0OptInRequiredException(body, context); - const contents: OptInRequiredException = { - name: "OptInRequiredException", - $fault: "client", + const exception = new OptInRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -2440,13 +1635,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceUnavailableExceptionResponse = async ( @@ -2455,13 +1648,11 @@ const deserializeAws_json1_0ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -2470,13 +1661,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0AccountIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-config-service/src/index.ts b/clients/client-config-service/src/index.ts index 95955ae48248e..9b33f4f8deafd 100644 --- a/clients/client-config-service/src/index.ts +++ b/clients/client-config-service/src/index.ts @@ -3,3 +3,4 @@ export * from "./ConfigServiceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ConfigServiceServiceException } from "./models/ConfigServiceServiceException"; diff --git a/clients/client-config-service/src/models/ConfigServiceServiceException.ts b/clients/client-config-service/src/models/ConfigServiceServiceException.ts new file mode 100644 index 0000000000000..45e1a33e37cfa --- /dev/null +++ b/clients/client-config-service/src/models/ConfigServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ConfigService service. + */ +export class ConfigServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ConfigServiceServiceException.prototype); + } +} diff --git a/clients/client-config-service/src/models/models_0.ts b/clients/client-config-service/src/models/models_0.ts index 64ab3cab7b5c2..2101abdda7b7d 100644 --- a/clients/client-config-service/src/models/models_0.ts +++ b/clients/client-config-service/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ConfigServiceServiceException as __BaseException } from "./ConfigServiceServiceException"; /** *

A collection of accounts and regions.

@@ -953,13 +956,20 @@ export namespace BatchGetAggregateResourceConfigResponse { /** *

You have specified a configuration aggregator that does not exist.

*/ -export interface NoSuchConfigurationAggregatorException extends __SmithyException, $MetadataBearer { - name: "NoSuchConfigurationAggregatorException"; - $fault: "client"; +export class NoSuchConfigurationAggregatorException extends __BaseException { + readonly name: "NoSuchConfigurationAggregatorException" = "NoSuchConfigurationAggregatorException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchConfigurationAggregatorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchConfigurationAggregatorException.prototype); + } } /** @@ -967,13 +977,20 @@ export interface NoSuchConfigurationAggregatorException extends __SmithyExceptio *

For PutStoredQuery, you will see this exception if there are missing required fields or if the input value fails the validation, or if you are trying to create more than 300 queries.

*

For GetStoredQuery, ListStoredQuery, and DeleteStoredQuery you will see this exception if there are missing required fields or if the input value fails the validation.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -1052,13 +1069,20 @@ export namespace BatchGetResourceConfigResponse { * role needed to describe your resources. Create a configuration * recorder.

*/ -export interface NoAvailableConfigurationRecorderException extends __SmithyException, $MetadataBearer { - name: "NoAvailableConfigurationRecorderException"; - $fault: "client"; +export class NoAvailableConfigurationRecorderException extends __BaseException { + readonly name: "NoAvailableConfigurationRecorderException" = "NoAvailableConfigurationRecorderException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoAvailableConfigurationRecorderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoAvailableConfigurationRecorderException.prototype); + } } export enum ChronologicalOrder { @@ -2619,13 +2643,20 @@ export namespace ConformancePackStatusDetail { /** *

You have specified a template that is not valid or supported.

*/ -export interface ConformancePackTemplateValidationException extends __SmithyException, $MetadataBearer { - name: "ConformancePackTemplateValidationException"; - $fault: "client"; +export class ConformancePackTemplateValidationException extends __BaseException { + readonly name: "ConformancePackTemplateValidationException" = "ConformancePackTemplateValidationException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConformancePackTemplateValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConformancePackTemplateValidationException.prototype); + } } export interface DeleteAggregationAuthorizationRequest { @@ -2654,13 +2685,20 @@ export namespace DeleteAggregationAuthorizationRequest { *

One or more of the specified parameters are invalid. Verify * that your parameters are valid and try again.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** @@ -2687,13 +2725,20 @@ export namespace DeleteConfigRuleRequest { *

One or more Config rules in the request are invalid. Verify * that the rule names are correct and try again.

*/ -export interface NoSuchConfigRuleException extends __SmithyException, $MetadataBearer { - name: "NoSuchConfigRuleException"; - $fault: "client"; +export class NoSuchConfigRuleException extends __BaseException { + readonly name: "NoSuchConfigRuleException" = "NoSuchConfigRuleException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchConfigRuleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchConfigRuleException.prototype); + } } /** @@ -2722,13 +2767,20 @@ export interface NoSuchConfigRuleException extends __SmithyException, $MetadataB * * */ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export interface DeleteConfigurationAggregatorRequest { @@ -2773,13 +2825,20 @@ export namespace DeleteConfigurationRecorderRequest { *

You have specified a configuration recorder that does not * exist.

*/ -export interface NoSuchConfigurationRecorderException extends __SmithyException, $MetadataBearer { - name: "NoSuchConfigurationRecorderException"; - $fault: "client"; +export class NoSuchConfigurationRecorderException extends __BaseException { + readonly name: "NoSuchConfigurationRecorderException" = "NoSuchConfigurationRecorderException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchConfigurationRecorderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchConfigurationRecorderException.prototype); + } } export interface DeleteConformancePackRequest { @@ -2801,13 +2860,20 @@ export namespace DeleteConformancePackRequest { /** *

You specified one or more conformance packs that do not exist.

*/ -export interface NoSuchConformancePackException extends __SmithyException, $MetadataBearer { - name: "NoSuchConformancePackException"; - $fault: "client"; +export class NoSuchConformancePackException extends __BaseException { + readonly name: "NoSuchConformancePackException" = "NoSuchConformancePackException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchConformancePackException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchConformancePackException.prototype); + } } /** @@ -2835,26 +2901,40 @@ export namespace DeleteDeliveryChannelRequest { *

You cannot delete the delivery channel you specified because * the configuration recorder is running.

*/ -export interface LastDeliveryChannelDeleteFailedException extends __SmithyException, $MetadataBearer { - name: "LastDeliveryChannelDeleteFailedException"; - $fault: "client"; +export class LastDeliveryChannelDeleteFailedException extends __BaseException { + readonly name: "LastDeliveryChannelDeleteFailedException" = "LastDeliveryChannelDeleteFailedException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LastDeliveryChannelDeleteFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LastDeliveryChannelDeleteFailedException.prototype); + } } /** *

You have specified a delivery channel that does not * exist.

*/ -export interface NoSuchDeliveryChannelException extends __SmithyException, $MetadataBearer { - name: "NoSuchDeliveryChannelException"; - $fault: "client"; +export class NoSuchDeliveryChannelException extends __BaseException { + readonly name: "NoSuchDeliveryChannelException" = "NoSuchDeliveryChannelException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchDeliveryChannelException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchDeliveryChannelException.prototype); + } } /** @@ -2911,13 +2991,20 @@ export namespace DeleteOrganizationConfigRuleRequest { /** *

You specified one or more organization config rules that do not exist.

*/ -export interface NoSuchOrganizationConfigRuleException extends __SmithyException, $MetadataBearer { - name: "NoSuchOrganizationConfigRuleException"; - $fault: "client"; +export class NoSuchOrganizationConfigRuleException extends __BaseException { + readonly name: "NoSuchOrganizationConfigRuleException" = "NoSuchOrganizationConfigRuleException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchOrganizationConfigRuleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchOrganizationConfigRuleException.prototype); + } } /** @@ -2941,13 +3028,20 @@ export interface NoSuchOrganizationConfigRuleException extends __SmithyException * *

For all OrganizationConfigRule and OrganizationConformancePack APIs, Config throws an exception if APIs are called from member accounts. All APIs must be called from organization master account.

*/ -export interface OrganizationAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "OrganizationAccessDeniedException"; - $fault: "client"; +export class OrganizationAccessDeniedException extends __BaseException { + readonly name: "OrganizationAccessDeniedException" = "OrganizationAccessDeniedException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationAccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationAccessDeniedException.prototype); + } } export interface DeleteOrganizationConformancePackRequest { @@ -2970,13 +3064,20 @@ export namespace DeleteOrganizationConformancePackRequest { *

Config organization conformance pack that you passed in the filter does not exist.

*

For DeleteOrganizationConformancePack, you tried to delete an organization conformance pack that does not exist.

*/ -export interface NoSuchOrganizationConformancePackException extends __SmithyException, $MetadataBearer { - name: "NoSuchOrganizationConformancePackException"; - $fault: "client"; +export class NoSuchOrganizationConformancePackException extends __BaseException { + readonly name: "NoSuchOrganizationConformancePackException" = "NoSuchOrganizationConformancePackException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchOrganizationConformancePackException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchOrganizationConformancePackException.prototype); + } } export interface DeletePendingAggregationRequestRequest { @@ -3058,37 +3159,58 @@ export namespace DeleteRemediationConfigurationResponse { * * */ -export interface InsufficientPermissionsException extends __SmithyException, $MetadataBearer { - name: "InsufficientPermissionsException"; - $fault: "client"; +export class InsufficientPermissionsException extends __BaseException { + readonly name: "InsufficientPermissionsException" = "InsufficientPermissionsException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientPermissionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientPermissionsException.prototype); + } } /** *

You specified an Config rule without a remediation configuration.

*/ -export interface NoSuchRemediationConfigurationException extends __SmithyException, $MetadataBearer { - name: "NoSuchRemediationConfigurationException"; - $fault: "client"; +export class NoSuchRemediationConfigurationException extends __BaseException { + readonly name: "NoSuchRemediationConfigurationException" = "NoSuchRemediationConfigurationException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchRemediationConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchRemediationConfigurationException.prototype); + } } /** *

Remediation action is in progress. You can either cancel execution in Amazon Web Services Systems Manager or wait and try again later.

*/ -export interface RemediationInProgressException extends __SmithyException, $MetadataBearer { - name: "RemediationInProgressException"; - $fault: "client"; +export class RemediationInProgressException extends __BaseException { + readonly name: "RemediationInProgressException" = "RemediationInProgressException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RemediationInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RemediationInProgressException.prototype); + } } /** @@ -3179,13 +3301,20 @@ export namespace DeleteRemediationExceptionsResponse { /** *

You tried to delete a remediation exception that does not exist.

*/ -export interface NoSuchRemediationExceptionException extends __SmithyException, $MetadataBearer { - name: "NoSuchRemediationExceptionException"; - $fault: "client"; +export class NoSuchRemediationExceptionException extends __BaseException { + readonly name: "NoSuchRemediationExceptionException" = "NoSuchRemediationExceptionException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchRemediationExceptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchRemediationExceptionException.prototype); + } } export interface DeleteResourceConfigRequest { @@ -3212,13 +3341,20 @@ export namespace DeleteResourceConfigRequest { /** *

There is no configuration recorder running.

*/ -export interface NoRunningConfigurationRecorderException extends __SmithyException, $MetadataBearer { - name: "NoRunningConfigurationRecorderException"; - $fault: "client"; +export class NoRunningConfigurationRecorderException extends __BaseException { + readonly name: "NoRunningConfigurationRecorderException" = "NoRunningConfigurationRecorderException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoRunningConfigurationRecorderException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoRunningConfigurationRecorderException.prototype); + } } export interface DeleteRetentionConfigurationRequest { @@ -3240,13 +3376,20 @@ export namespace DeleteRetentionConfigurationRequest { /** *

You have specified a retention configuration that does not exist.

*/ -export interface NoSuchRetentionConfigurationException extends __SmithyException, $MetadataBearer { - name: "NoSuchRetentionConfigurationException"; - $fault: "client"; +export class NoSuchRetentionConfigurationException extends __BaseException { + readonly name: "NoSuchRetentionConfigurationException" = "NoSuchRetentionConfigurationException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchRetentionConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchRetentionConfigurationException.prototype); + } } export interface DeleteStoredQueryRequest { @@ -3279,13 +3422,20 @@ export namespace DeleteStoredQueryResponse { /** *

You have specified a resource that does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -3493,13 +3643,20 @@ export namespace DescribeAggregateComplianceByConfigRulesResponse { /** *

The specified limit is outside the allowable range.

*/ -export interface InvalidLimitException extends __SmithyException, $MetadataBearer { - name: "InvalidLimitException"; - $fault: "client"; +export class InvalidLimitException extends __BaseException { + readonly name: "InvalidLimitException" = "InvalidLimitException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLimitException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLimitException.prototype); + } } /** @@ -3507,13 +3664,20 @@ export interface InvalidLimitException extends __SmithyException, $MetadataBeare * nextToken string that was returned in the previous * response to get the next page of results.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } export interface DescribeAggregateComplianceByConformancePacksRequest { @@ -4133,13 +4297,20 @@ export namespace DescribeConformancePackComplianceResponse { /** *

Config rule that you passed in the filter does not exist.

*/ -export interface NoSuchConfigRuleInConformancePackException extends __SmithyException, $MetadataBearer { - name: "NoSuchConfigRuleInConformancePackException"; - $fault: "client"; +export class NoSuchConfigRuleInConformancePackException extends __BaseException { + readonly name: "NoSuchConfigRuleInConformancePackException" = "NoSuchConfigRuleInConformancePackException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchConfigRuleInConformancePackException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchConfigRuleInConformancePackException.prototype); + } } export interface DescribeConformancePacksRequest { @@ -6164,26 +6335,40 @@ export namespace GetAggregateResourceConfigResponse { /** *

The configuration item size is outside the allowable range.

*/ -export interface OversizedConfigurationItemException extends __SmithyException, $MetadataBearer { - name: "OversizedConfigurationItemException"; - $fault: "client"; +export class OversizedConfigurationItemException extends __BaseException { + readonly name: "OversizedConfigurationItemException" = "OversizedConfigurationItemException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OversizedConfigurationItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OversizedConfigurationItemException.prototype); + } } /** *

You have specified a resource that is either unknown or has not * been discovered.

*/ -export interface ResourceNotDiscoveredException extends __SmithyException, $MetadataBearer { - name: "ResourceNotDiscoveredException"; - $fault: "client"; +export class ResourceNotDiscoveredException extends __BaseException { + readonly name: "ResourceNotDiscoveredException" = "ResourceNotDiscoveredException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotDiscoveredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotDiscoveredException.prototype); + } } /** @@ -7150,13 +7335,20 @@ export namespace GetResourceConfigHistoryResponse { *

The specified time range is not valid. The earlier time is not * chronologically before the later time.

*/ -export interface InvalidTimeRangeException extends __SmithyException, $MetadataBearer { - name: "InvalidTimeRangeException"; - $fault: "client"; +export class InvalidTimeRangeException extends __BaseException { + readonly name: "InvalidTimeRangeException" = "InvalidTimeRangeException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTimeRangeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTimeRangeException.prototype); + } } export interface GetStoredQueryRequest { @@ -7241,122 +7433,192 @@ export namespace GetStoredQueryResponse { *

Your Amazon S3 bucket policy does not permit Config to * write to it.

*/ -export interface InsufficientDeliveryPolicyException extends __SmithyException, $MetadataBearer { - name: "InsufficientDeliveryPolicyException"; - $fault: "client"; +export class InsufficientDeliveryPolicyException extends __BaseException { + readonly name: "InsufficientDeliveryPolicyException" = "InsufficientDeliveryPolicyException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDeliveryPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDeliveryPolicyException.prototype); + } } /** *

You have provided a configuration recorder name that is not * valid.

*/ -export interface InvalidConfigurationRecorderNameException extends __SmithyException, $MetadataBearer { - name: "InvalidConfigurationRecorderNameException"; - $fault: "client"; +export class InvalidConfigurationRecorderNameException extends __BaseException { + readonly name: "InvalidConfigurationRecorderNameException" = "InvalidConfigurationRecorderNameException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConfigurationRecorderNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConfigurationRecorderNameException.prototype); + } } /** *

The specified delivery channel name is not valid.

*/ -export interface InvalidDeliveryChannelNameException extends __SmithyException, $MetadataBearer { - name: "InvalidDeliveryChannelNameException"; - $fault: "client"; +export class InvalidDeliveryChannelNameException extends __BaseException { + readonly name: "InvalidDeliveryChannelNameException" = "InvalidDeliveryChannelNameException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeliveryChannelNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeliveryChannelNameException.prototype); + } } /** *

The syntax of the query is incorrect.

*/ -export interface InvalidExpressionException extends __SmithyException, $MetadataBearer { - name: "InvalidExpressionException"; - $fault: "client"; +export class InvalidExpressionException extends __BaseException { + readonly name: "InvalidExpressionException" = "InvalidExpressionException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExpressionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExpressionException.prototype); + } } /** *

Config throws an exception if the recording group does not contain a valid list of resource types. Invalid values might also be incorrectly formatted.

*/ -export interface InvalidRecordingGroupException extends __SmithyException, $MetadataBearer { - name: "InvalidRecordingGroupException"; - $fault: "client"; +export class InvalidRecordingGroupException extends __BaseException { + readonly name: "InvalidRecordingGroupException" = "InvalidRecordingGroupException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRecordingGroupException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRecordingGroupException.prototype); + } } /** *

The specified ResultToken is invalid.

*/ -export interface InvalidResultTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidResultTokenException"; - $fault: "client"; +export class InvalidResultTokenException extends __BaseException { + readonly name: "InvalidResultTokenException" = "InvalidResultTokenException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResultTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResultTokenException.prototype); + } } /** *

You have provided a null or empty role ARN.

*/ -export interface InvalidRoleException extends __SmithyException, $MetadataBearer { - name: "InvalidRoleException"; - $fault: "client"; +export class InvalidRoleException extends __BaseException { + readonly name: "InvalidRoleException" = "InvalidRoleException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRoleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRoleException.prototype); + } } /** *

The specified Amazon S3 key prefix is not valid.

*/ -export interface InvalidS3KeyPrefixException extends __SmithyException, $MetadataBearer { - name: "InvalidS3KeyPrefixException"; - $fault: "client"; +export class InvalidS3KeyPrefixException extends __BaseException { + readonly name: "InvalidS3KeyPrefixException" = "InvalidS3KeyPrefixException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3KeyPrefixException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3KeyPrefixException.prototype); + } } /** *

The specified Amazon KMS Key ARN is not valid.

*/ -export interface InvalidS3KmsKeyArnException extends __SmithyException, $MetadataBearer { - name: "InvalidS3KmsKeyArnException"; - $fault: "client"; +export class InvalidS3KmsKeyArnException extends __BaseException { + readonly name: "InvalidS3KmsKeyArnException" = "InvalidS3KmsKeyArnException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3KmsKeyArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3KmsKeyArnException.prototype); + } } /** *

The specified Amazon SNS topic does not exist.

*/ -export interface InvalidSNSTopicARNException extends __SmithyException, $MetadataBearer { - name: "InvalidSNSTopicARNException"; - $fault: "client"; +export class InvalidSNSTopicARNException extends __BaseException { + readonly name: "InvalidSNSTopicARNException" = "InvalidSNSTopicARNException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSNSTopicARNException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSNSTopicARNException.prototype); + } } /** @@ -7367,13 +7629,20 @@ export interface InvalidSNSTopicARNException extends __SmithyException, $Metadat * is thrown if the number of accounts and aggregators exceeds the * limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** @@ -7738,13 +8007,20 @@ export namespace ListTagsForResourceResponse { *

You have reached the limit (100,000) of active custom resource types in your account. * Delete unused resources using DeleteResourceConfig.

*/ -export interface MaxActiveResourcesExceededException extends __SmithyException, $MetadataBearer { - name: "MaxActiveResourcesExceededException"; - $fault: "client"; +export class MaxActiveResourcesExceededException extends __BaseException { + readonly name: "MaxActiveResourcesExceededException" = "MaxActiveResourcesExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxActiveResourcesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxActiveResourcesExceededException.prototype); + } } /** @@ -7752,148 +8028,237 @@ export interface MaxActiveResourcesExceededException extends __SmithyException, * contains the maximum number of 150 rules. Consider deleting any * deactivated rules before you add new rules.

*/ -export interface MaxNumberOfConfigRulesExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfConfigRulesExceededException"; - $fault: "client"; +export class MaxNumberOfConfigRulesExceededException extends __BaseException { + readonly name: "MaxNumberOfConfigRulesExceededException" = "MaxNumberOfConfigRulesExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfConfigRulesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfConfigRulesExceededException.prototype); + } } /** *

You have reached the limit of the number of recorders you can * create.

*/ -export interface MaxNumberOfConfigurationRecordersExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfConfigurationRecordersExceededException"; - $fault: "client"; +export class MaxNumberOfConfigurationRecordersExceededException extends __BaseException { + readonly name: "MaxNumberOfConfigurationRecordersExceededException" = + "MaxNumberOfConfigurationRecordersExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfConfigurationRecordersExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfConfigurationRecordersExceededException.prototype); + } } /** *

You have reached the limit (6) of the number of conformance packs in an account (6 conformance pack with 25 Config rules per pack).

*/ -export interface MaxNumberOfConformancePacksExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfConformancePacksExceededException"; - $fault: "client"; +export class MaxNumberOfConformancePacksExceededException extends __BaseException { + readonly name: "MaxNumberOfConformancePacksExceededException" = "MaxNumberOfConformancePacksExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfConformancePacksExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfConformancePacksExceededException.prototype); + } } /** *

You have reached the limit of the number of delivery channels * you can create.

*/ -export interface MaxNumberOfDeliveryChannelsExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfDeliveryChannelsExceededException"; - $fault: "client"; +export class MaxNumberOfDeliveryChannelsExceededException extends __BaseException { + readonly name: "MaxNumberOfDeliveryChannelsExceededException" = "MaxNumberOfDeliveryChannelsExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfDeliveryChannelsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfDeliveryChannelsExceededException.prototype); + } } /** *

You have reached the limit of the number of organization config rules you can create.

*/ -export interface MaxNumberOfOrganizationConfigRulesExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfOrganizationConfigRulesExceededException"; - $fault: "client"; +export class MaxNumberOfOrganizationConfigRulesExceededException extends __BaseException { + readonly name: "MaxNumberOfOrganizationConfigRulesExceededException" = + "MaxNumberOfOrganizationConfigRulesExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfOrganizationConfigRulesExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfOrganizationConfigRulesExceededException.prototype); + } } /** *

You have reached the limit (6) of the number of organization conformance packs in an account (6 conformance pack with 25 Config rules per pack per account).

*/ -export interface MaxNumberOfOrganizationConformancePacksExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfOrganizationConformancePacksExceededException"; - $fault: "client"; +export class MaxNumberOfOrganizationConformancePacksExceededException extends __BaseException { + readonly name: "MaxNumberOfOrganizationConformancePacksExceededException" = + "MaxNumberOfOrganizationConformancePacksExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfOrganizationConformancePacksExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfOrganizationConformancePacksExceededException.prototype); + } } /** *

Failed to add the retention configuration because a retention configuration with that name already exists.

*/ -export interface MaxNumberOfRetentionConfigurationsExceededException extends __SmithyException, $MetadataBearer { - name: "MaxNumberOfRetentionConfigurationsExceededException"; - $fault: "client"; +export class MaxNumberOfRetentionConfigurationsExceededException extends __BaseException { + readonly name: "MaxNumberOfRetentionConfigurationsExceededException" = + "MaxNumberOfRetentionConfigurationsExceededException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxNumberOfRetentionConfigurationsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxNumberOfRetentionConfigurationsExceededException.prototype); + } } /** *

There is no delivery channel available to record * configurations.

*/ -export interface NoAvailableDeliveryChannelException extends __SmithyException, $MetadataBearer { - name: "NoAvailableDeliveryChannelException"; - $fault: "client"; +export class NoAvailableDeliveryChannelException extends __BaseException { + readonly name: "NoAvailableDeliveryChannelException" = "NoAvailableDeliveryChannelException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoAvailableDeliveryChannelException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoAvailableDeliveryChannelException.prototype); + } } /** *

Organization is no longer available.

*/ -export interface NoAvailableOrganizationException extends __SmithyException, $MetadataBearer { - name: "NoAvailableOrganizationException"; - $fault: "client"; +export class NoAvailableOrganizationException extends __BaseException { + readonly name: "NoAvailableOrganizationException" = "NoAvailableOrganizationException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoAvailableOrganizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoAvailableOrganizationException.prototype); + } } /** *

The specified Amazon S3 bucket does not exist.

*/ -export interface NoSuchBucketException extends __SmithyException, $MetadataBearer { - name: "NoSuchBucketException"; - $fault: "client"; +export class NoSuchBucketException extends __BaseException { + readonly name: "NoSuchBucketException" = "NoSuchBucketException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchBucketException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchBucketException.prototype); + } } /** *

Config resource cannot be created because your organization does not have all features enabled.

*/ -export interface OrganizationAllFeaturesNotEnabledException extends __SmithyException, $MetadataBearer { - name: "OrganizationAllFeaturesNotEnabledException"; - $fault: "client"; +export class OrganizationAllFeaturesNotEnabledException extends __BaseException { + readonly name: "OrganizationAllFeaturesNotEnabledException" = "OrganizationAllFeaturesNotEnabledException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationAllFeaturesNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationAllFeaturesNotEnabledException.prototype); + } } /** *

You have specified a template that is not valid or supported.

*/ -export interface OrganizationConformancePackTemplateValidationException extends __SmithyException, $MetadataBearer { - name: "OrganizationConformancePackTemplateValidationException"; - $fault: "client"; +export class OrganizationConformancePackTemplateValidationException extends __BaseException { + readonly name: "OrganizationConformancePackTemplateValidationException" = + "OrganizationConformancePackTemplateValidationException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationConformancePackTemplateValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationConformancePackTemplateValidationException.prototype); + } } export interface PutAggregationAuthorizationRequest { diff --git a/clients/client-config-service/src/models/models_1.ts b/clients/client-config-service/src/models/models_1.ts index 8989eff5ebc96..d31beb312c529 100644 --- a/clients/client-config-service/src/models/models_1.ts +++ b/clients/client-config-service/src/models/models_1.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { ConfigServiceServiceException as __BaseException } from "./ConfigServiceServiceException"; import { FieldInfo, ResourceKey, RetentionConfiguration, StoredQuery, Tag } from "./models_0"; export interface PutResourceConfigRequest { @@ -132,22 +134,39 @@ export namespace PutStoredQueryResponse { /** *

Two users are trying to modify the same query at the same time. Wait for a moment and try again.

*/ -export interface ResourceConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ResourceConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ResourceConcurrentModificationException extends __BaseException { + readonly name: "ResourceConcurrentModificationException" = "ResourceConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConcurrentModificationException.prototype); + } } /** *

You have reached the limit of the number of tags you can use. You have more than 50 tags.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; /** - *

Error executing the command

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** diff --git a/clients/client-config-service/src/protocols/Aws_json1_1.ts b/clients/client-config-service/src/protocols/Aws_json1_1.ts index 42105f40c7aa2..f009f77233d33 100644 --- a/clients/client-config-service/src/protocols/Aws_json1_1.ts +++ b/clients/client-config-service/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -325,6 +324,7 @@ import { } from "../commands/StopConfigurationRecorderCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { ConfigServiceServiceException as __BaseException } from "../models/ConfigServiceServiceException"; import { AccountAggregationSource, AggregateComplianceByConfigRule, @@ -1769,41 +1769,25 @@ const deserializeAws_json1_1BatchGetAggregateResourceConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetResourceConfigCommand = async ( @@ -1831,41 +1815,25 @@ const deserializeAws_json1_1BatchGetResourceConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoAvailableConfigurationRecorderException": case "com.amazonaws.configservice#NoAvailableConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAggregationAuthorizationCommand = async ( @@ -1890,33 +1858,22 @@ const deserializeAws_json1_1DeleteAggregationAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConfigRuleCommand = async ( @@ -1941,41 +1898,25 @@ const deserializeAws_json1_1DeleteConfigRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConfigurationAggregatorCommand = async ( @@ -2000,33 +1941,22 @@ const deserializeAws_json1_1DeleteConfigurationAggregatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConfigurationRecorderCommand = async ( @@ -2051,33 +1981,22 @@ const deserializeAws_json1_1DeleteConfigurationRecorderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationRecorderException": case "com.amazonaws.configservice#NoSuchConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConformancePackCommand = async ( @@ -2102,41 +2021,25 @@ const deserializeAws_json1_1DeleteConformancePackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConformancePackException": case "com.amazonaws.configservice#NoSuchConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeliveryChannelCommand = async ( @@ -2161,41 +2064,25 @@ const deserializeAws_json1_1DeleteDeliveryChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LastDeliveryChannelDeleteFailedException": case "com.amazonaws.configservice#LastDeliveryChannelDeleteFailedException": - response = { - ...(await deserializeAws_json1_1LastDeliveryChannelDeleteFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LastDeliveryChannelDeleteFailedExceptionResponse(parsedOutput, context); case "NoSuchDeliveryChannelException": case "com.amazonaws.configservice#NoSuchDeliveryChannelException": - response = { - ...(await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEvaluationResultsCommand = async ( @@ -2223,41 +2110,25 @@ const deserializeAws_json1_1DeleteEvaluationResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOrganizationConfigRuleCommand = async ( @@ -2282,49 +2153,28 @@ const deserializeAws_json1_1DeleteOrganizationConfigRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchOrganizationConfigRuleException": case "com.amazonaws.configservice#NoSuchOrganizationConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOrganizationConformancePackCommand = async ( @@ -2349,49 +2199,28 @@ const deserializeAws_json1_1DeleteOrganizationConformancePackCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchOrganizationConformancePackException": case "com.amazonaws.configservice#NoSuchOrganizationConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePendingAggregationRequestCommand = async ( @@ -2416,33 +2245,22 @@ const deserializeAws_json1_1DeletePendingAggregationRequestCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRemediationConfigurationCommand = async ( @@ -2470,57 +2288,31 @@ const deserializeAws_json1_1DeleteRemediationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchRemediationConfigurationException": case "com.amazonaws.configservice#NoSuchRemediationConfigurationException": - response = { - ...(await deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse(parsedOutput, context); case "RemediationInProgressException": case "com.amazonaws.configservice#RemediationInProgressException": - response = { - ...(await deserializeAws_json1_1RemediationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RemediationInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRemediationExceptionsCommand = async ( @@ -2548,33 +2340,22 @@ const deserializeAws_json1_1DeleteRemediationExceptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchRemediationExceptionException": case "com.amazonaws.configservice#NoSuchRemediationExceptionException": - response = { - ...(await deserializeAws_json1_1NoSuchRemediationExceptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchRemediationExceptionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourceConfigCommand = async ( @@ -2599,41 +2380,25 @@ const deserializeAws_json1_1DeleteResourceConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoRunningConfigurationRecorderException": case "com.amazonaws.configservice#NoRunningConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRetentionConfigurationCommand = async ( @@ -2658,41 +2423,25 @@ const deserializeAws_json1_1DeleteRetentionConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchRetentionConfigurationException": case "com.amazonaws.configservice#NoSuchRetentionConfigurationException": - response = { - ...(await deserializeAws_json1_1NoSuchRetentionConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchRetentionConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStoredQueryCommand = async ( @@ -2720,41 +2469,25 @@ const deserializeAws_json1_1DeleteStoredQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.configservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeliverConfigSnapshotCommand = async ( @@ -2782,49 +2515,28 @@ const deserializeAws_json1_1DeliverConfigSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoAvailableConfigurationRecorderException": case "com.amazonaws.configservice#NoAvailableConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context); case "NoRunningConfigurationRecorderException": case "com.amazonaws.configservice#NoRunningConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse(parsedOutput, context); case "NoSuchDeliveryChannelException": case "com.amazonaws.configservice#NoSuchDeliveryChannelException": - response = { - ...(await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAggregateComplianceByConfigRulesCommand = async ( @@ -2852,57 +2564,31 @@ const deserializeAws_json1_1DescribeAggregateComplianceByConfigRulesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAggregateComplianceByConformancePacksCommand = async ( @@ -2930,57 +2616,31 @@ const deserializeAws_json1_1DescribeAggregateComplianceByConformancePacksCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAggregationAuthorizationsCommand = async ( @@ -3008,49 +2668,28 @@ const deserializeAws_json1_1DescribeAggregationAuthorizationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeComplianceByConfigRuleCommand = async ( @@ -3078,49 +2717,28 @@ const deserializeAws_json1_1DescribeComplianceByConfigRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeComplianceByResourceCommand = async ( @@ -3148,41 +2766,25 @@ const deserializeAws_json1_1DescribeComplianceByResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigRuleEvaluationStatusCommand = async ( @@ -3210,49 +2812,28 @@ const deserializeAws_json1_1DescribeConfigRuleEvaluationStatusCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigRulesCommand = async ( @@ -3280,41 +2861,25 @@ const deserializeAws_json1_1DescribeConfigRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigurationAggregatorsCommand = async ( @@ -3342,57 +2907,31 @@ const deserializeAws_json1_1DescribeConfigurationAggregatorsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigurationAggregatorSourcesStatusCommand = async ( @@ -3420,57 +2959,31 @@ const deserializeAws_json1_1DescribeConfigurationAggregatorSourcesStatusCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigurationRecordersCommand = async ( @@ -3498,33 +3011,22 @@ const deserializeAws_json1_1DescribeConfigurationRecordersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationRecorderException": case "com.amazonaws.configservice#NoSuchConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConfigurationRecorderStatusCommand = async ( @@ -3552,33 +3054,22 @@ const deserializeAws_json1_1DescribeConfigurationRecorderStatusCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationRecorderException": case "com.amazonaws.configservice#NoSuchConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConformancePackComplianceCommand = async ( @@ -3606,65 +3097,34 @@ const deserializeAws_json1_1DescribeConformancePackComplianceCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleInConformancePackException": case "com.amazonaws.configservice#NoSuchConfigRuleInConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleInConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleInConformancePackExceptionResponse(parsedOutput, context); case "NoSuchConformancePackException": case "com.amazonaws.configservice#NoSuchConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConformancePacksCommand = async ( @@ -3692,57 +3152,31 @@ const deserializeAws_json1_1DescribeConformancePacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConformancePackException": case "com.amazonaws.configservice#NoSuchConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConformancePackStatusCommand = async ( @@ -3770,49 +3204,28 @@ const deserializeAws_json1_1DescribeConformancePackStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDeliveryChannelsCommand = async ( @@ -3840,33 +3253,22 @@ const deserializeAws_json1_1DescribeDeliveryChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchDeliveryChannelException": case "com.amazonaws.configservice#NoSuchDeliveryChannelException": - response = { - ...(await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDeliveryChannelStatusCommand = async ( @@ -3894,33 +3296,22 @@ const deserializeAws_json1_1DescribeDeliveryChannelStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchDeliveryChannelException": case "com.amazonaws.configservice#NoSuchDeliveryChannelException": - response = { - ...(await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationConfigRulesCommand = async ( @@ -3948,57 +3339,31 @@ const deserializeAws_json1_1DescribeOrganizationConfigRulesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchOrganizationConfigRuleException": case "com.amazonaws.configservice#NoSuchOrganizationConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationConfigRuleStatusesCommand = async ( @@ -4026,57 +3391,31 @@ const deserializeAws_json1_1DescribeOrganizationConfigRuleStatusesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchOrganizationConfigRuleException": case "com.amazonaws.configservice#NoSuchOrganizationConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationConformancePacksCommand = async ( @@ -4104,57 +3443,31 @@ const deserializeAws_json1_1DescribeOrganizationConformancePacksCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchOrganizationConformancePackException": case "com.amazonaws.configservice#NoSuchOrganizationConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationConformancePackStatusesCommand = async ( @@ -4182,57 +3495,31 @@ const deserializeAws_json1_1DescribeOrganizationConformancePackStatusesCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchOrganizationConformancePackException": case "com.amazonaws.configservice#NoSuchOrganizationConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePendingAggregationRequestsCommand = async ( @@ -4260,49 +3547,28 @@ const deserializeAws_json1_1DescribePendingAggregationRequestsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRemediationConfigurationsCommand = async ( @@ -4330,25 +3596,19 @@ const deserializeAws_json1_1DescribeRemediationConfigurationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRemediationExceptionsCommand = async ( @@ -4376,41 +3636,25 @@ const deserializeAws_json1_1DescribeRemediationExceptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRemediationExecutionStatusCommand = async ( @@ -4438,49 +3682,28 @@ const deserializeAws_json1_1DescribeRemediationExecutionStatusCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchRemediationConfigurationException": case "com.amazonaws.configservice#NoSuchRemediationConfigurationException": - response = { - ...(await deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRetentionConfigurationsCommand = async ( @@ -4508,49 +3731,28 @@ const deserializeAws_json1_1DescribeRetentionConfigurationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchRetentionConfigurationException": case "com.amazonaws.configservice#NoSuchRetentionConfigurationException": - response = { - ...(await deserializeAws_json1_1NoSuchRetentionConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchRetentionConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAggregateComplianceDetailsByConfigRuleCommand = async ( @@ -4578,57 +3780,31 @@ const deserializeAws_json1_1GetAggregateComplianceDetailsByConfigRuleCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAggregateConfigRuleComplianceSummaryCommand = async ( @@ -4656,57 +3832,31 @@ const deserializeAws_json1_1GetAggregateConfigRuleComplianceSummaryCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAggregateConformancePackComplianceSummaryCommand = async ( @@ -4734,57 +3884,31 @@ const deserializeAws_json1_1GetAggregateConformancePackComplianceSummaryCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAggregateDiscoveredResourceCountsCommand = async ( @@ -4812,57 +3936,31 @@ const deserializeAws_json1_1GetAggregateDiscoveredResourceCountsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAggregateResourceConfigCommand = async ( @@ -4890,57 +3988,31 @@ const deserializeAws_json1_1GetAggregateResourceConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "OversizedConfigurationItemException": case "com.amazonaws.configservice#OversizedConfigurationItemException": - response = { - ...(await deserializeAws_json1_1OversizedConfigurationItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OversizedConfigurationItemExceptionResponse(parsedOutput, context); case "ResourceNotDiscoveredException": case "com.amazonaws.configservice#ResourceNotDiscoveredException": - response = { - ...(await deserializeAws_json1_1ResourceNotDiscoveredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotDiscoveredExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetComplianceDetailsByConfigRuleCommand = async ( @@ -4968,49 +4040,28 @@ const deserializeAws_json1_1GetComplianceDetailsByConfigRuleCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetComplianceDetailsByResourceCommand = async ( @@ -5038,33 +4089,22 @@ const deserializeAws_json1_1GetComplianceDetailsByResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetComplianceSummaryByConfigRuleCommand = async ( @@ -5092,25 +4132,19 @@ const deserializeAws_json1_1GetComplianceSummaryByConfigRuleCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetComplianceSummaryByResourceTypeCommand = async ( @@ -5138,33 +4172,22 @@ const deserializeAws_json1_1GetComplianceSummaryByResourceTypeCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConformancePackComplianceDetailsCommand = async ( @@ -5192,65 +4215,34 @@ const deserializeAws_json1_1GetConformancePackComplianceDetailsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleInConformancePackException": case "com.amazonaws.configservice#NoSuchConfigRuleInConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleInConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleInConformancePackExceptionResponse(parsedOutput, context); case "NoSuchConformancePackException": case "com.amazonaws.configservice#NoSuchConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConformancePackComplianceSummaryCommand = async ( @@ -5278,49 +4270,28 @@ const deserializeAws_json1_1GetConformancePackComplianceSummaryCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConformancePackException": case "com.amazonaws.configservice#NoSuchConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConformancePackExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDiscoveredResourceCountsCommand = async ( @@ -5348,49 +4319,28 @@ const deserializeAws_json1_1GetDiscoveredResourceCountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOrganizationConfigRuleDetailedStatusCommand = async ( @@ -5418,57 +4368,31 @@ const deserializeAws_json1_1GetOrganizationConfigRuleDetailedStatusCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchOrganizationConfigRuleException": case "com.amazonaws.configservice#NoSuchOrganizationConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOrganizationConformancePackDetailedStatusCommand = async ( @@ -5496,57 +4420,31 @@ const deserializeAws_json1_1GetOrganizationConformancePackDetailedStatusCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchOrganizationConformancePackException": case "com.amazonaws.configservice#NoSuchOrganizationConformancePackException": - response = { - ...(await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourceConfigHistoryCommand = async ( @@ -5574,73 +4472,37 @@ const deserializeAws_json1_1GetResourceConfigHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidTimeRangeException": case "com.amazonaws.configservice#InvalidTimeRangeException": - response = { - ...(await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTimeRangeExceptionResponse(parsedOutput, context); case "NoAvailableConfigurationRecorderException": case "com.amazonaws.configservice#NoAvailableConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context); case "ResourceNotDiscoveredException": case "com.amazonaws.configservice#ResourceNotDiscoveredException": - response = { - ...(await deserializeAws_json1_1ResourceNotDiscoveredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotDiscoveredExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetStoredQueryCommand = async ( @@ -5668,41 +4530,25 @@ const deserializeAws_json1_1GetStoredQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.configservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAggregateDiscoveredResourcesCommand = async ( @@ -5730,57 +4576,31 @@ const deserializeAws_json1_1ListAggregateDiscoveredResourcesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDiscoveredResourcesCommand = async ( @@ -5808,57 +4628,31 @@ const deserializeAws_json1_1ListDiscoveredResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoAvailableConfigurationRecorderException": case "com.amazonaws.configservice#NoAvailableConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStoredQueriesCommand = async ( @@ -5886,41 +4680,25 @@ const deserializeAws_json1_1ListStoredQueriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5948,57 +4726,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.configservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAggregationAuthorizationCommand = async ( @@ -6026,33 +4778,22 @@ const deserializeAws_json1_1PutAggregationAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutConfigRuleCommand = async ( @@ -6077,65 +4818,34 @@ const deserializeAws_json1_1PutConfigRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MaxNumberOfConfigRulesExceededException": case "com.amazonaws.configservice#MaxNumberOfConfigRulesExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfConfigRulesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfConfigRulesExceededExceptionResponse(parsedOutput, context); case "NoAvailableConfigurationRecorderException": case "com.amazonaws.configservice#NoAvailableConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutConfigurationAggregatorCommand = async ( @@ -6163,73 +4873,37 @@ const deserializeAws_json1_1PutConfigurationAggregatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.configservice#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.configservice#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.configservice#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); case "OrganizationAllFeaturesNotEnabledException": case "com.amazonaws.configservice#OrganizationAllFeaturesNotEnabledException": - response = { - ...(await deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutConfigurationRecorderCommand = async ( @@ -6254,60 +4928,34 @@ const deserializeAws_json1_1PutConfigurationRecorderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidConfigurationRecorderNameException": case "com.amazonaws.configservice#InvalidConfigurationRecorderNameException": - response = { - ...(await deserializeAws_json1_1InvalidConfigurationRecorderNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConfigurationRecorderNameExceptionResponse(parsedOutput, context); case "InvalidRecordingGroupException": case "com.amazonaws.configservice#InvalidRecordingGroupException": - response = { - ...(await deserializeAws_json1_1InvalidRecordingGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRecordingGroupExceptionResponse(parsedOutput, context); case "InvalidRoleException": case "com.amazonaws.configservice#InvalidRoleException": - response = { - ...(await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleExceptionResponse(parsedOutput, context); case "MaxNumberOfConfigurationRecordersExceededException": case "com.amazonaws.configservice#MaxNumberOfConfigurationRecordersExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfConfigurationRecordersExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfConfigurationRecordersExceededExceptionResponse( + parsedOutput, + context + ); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutConformancePackCommand = async ( @@ -6335,65 +4983,34 @@ const deserializeAws_json1_1PutConformancePackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConformancePackTemplateValidationException": case "com.amazonaws.configservice#ConformancePackTemplateValidationException": - response = { - ...(await deserializeAws_json1_1ConformancePackTemplateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConformancePackTemplateValidationExceptionResponse(parsedOutput, context); case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MaxNumberOfConformancePacksExceededException": case "com.amazonaws.configservice#MaxNumberOfConformancePacksExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfConformancePacksExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfConformancePacksExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutDeliveryChannelCommand = async ( @@ -6418,89 +5035,43 @@ const deserializeAws_json1_1PutDeliveryChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientDeliveryPolicyException": case "com.amazonaws.configservice#InsufficientDeliveryPolicyException": - response = { - ...(await deserializeAws_json1_1InsufficientDeliveryPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientDeliveryPolicyExceptionResponse(parsedOutput, context); case "InvalidDeliveryChannelNameException": case "com.amazonaws.configservice#InvalidDeliveryChannelNameException": - response = { - ...(await deserializeAws_json1_1InvalidDeliveryChannelNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeliveryChannelNameExceptionResponse(parsedOutput, context); case "InvalidS3KeyPrefixException": case "com.amazonaws.configservice#InvalidS3KeyPrefixException": - response = { - ...(await deserializeAws_json1_1InvalidS3KeyPrefixExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3KeyPrefixExceptionResponse(parsedOutput, context); case "InvalidS3KmsKeyArnException": case "com.amazonaws.configservice#InvalidS3KmsKeyArnException": - response = { - ...(await deserializeAws_json1_1InvalidS3KmsKeyArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3KmsKeyArnExceptionResponse(parsedOutput, context); case "InvalidSNSTopicARNException": case "com.amazonaws.configservice#InvalidSNSTopicARNException": - response = { - ...(await deserializeAws_json1_1InvalidSNSTopicARNExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSNSTopicARNExceptionResponse(parsedOutput, context); case "MaxNumberOfDeliveryChannelsExceededException": case "com.amazonaws.configservice#MaxNumberOfDeliveryChannelsExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfDeliveryChannelsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfDeliveryChannelsExceededExceptionResponse(parsedOutput, context); case "NoAvailableConfigurationRecorderException": case "com.amazonaws.configservice#NoAvailableConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse(parsedOutput, context); case "NoSuchBucketException": case "com.amazonaws.configservice#NoSuchBucketException": - response = { - ...(await deserializeAws_json1_1NoSuchBucketExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchBucketExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEvaluationsCommand = async ( @@ -6528,49 +5099,28 @@ const deserializeAws_json1_1PutEvaluationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidResultTokenException": case "com.amazonaws.configservice#InvalidResultTokenException": - response = { - ...(await deserializeAws_json1_1InvalidResultTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResultTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutExternalEvaluationCommand = async ( @@ -6598,41 +5148,25 @@ const deserializeAws_json1_1PutExternalEvaluationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutOrganizationConfigRuleCommand = async ( @@ -6660,92 +5194,46 @@ const deserializeAws_json1_1PutOrganizationConfigRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MaxNumberOfOrganizationConfigRulesExceededException": case "com.amazonaws.configservice#MaxNumberOfOrganizationConfigRulesExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfOrganizationConfigRulesExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfOrganizationConfigRulesExceededExceptionResponse( + parsedOutput, + context + ); case "NoAvailableOrganizationException": case "com.amazonaws.configservice#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); case "OrganizationAllFeaturesNotEnabledException": case "com.amazonaws.configservice#OrganizationAllFeaturesNotEnabledException": - response = { - ...(await deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutOrganizationConformancePackCommand = async ( @@ -6773,95 +5261,49 @@ const deserializeAws_json1_1PutOrganizationConformancePackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "MaxNumberOfOrganizationConformancePacksExceededException": case "com.amazonaws.configservice#MaxNumberOfOrganizationConformancePacksExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfOrganizationConformancePacksExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfOrganizationConformancePacksExceededExceptionResponse( + parsedOutput, + context + ); case "NoAvailableOrganizationException": case "com.amazonaws.configservice#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "OrganizationAccessDeniedException": case "com.amazonaws.configservice#OrganizationAccessDeniedException": - response = { - ...(await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse(parsedOutput, context); case "OrganizationAllFeaturesNotEnabledException": case "com.amazonaws.configservice#OrganizationAllFeaturesNotEnabledException": - response = { - ...(await deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse(parsedOutput, context); case "OrganizationConformancePackTemplateValidationException": case "com.amazonaws.configservice#OrganizationConformancePackTemplateValidationException": - response = { - ...(await deserializeAws_json1_1OrganizationConformancePackTemplateValidationExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationConformancePackTemplateValidationExceptionResponse( + parsedOutput, + context + ); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRemediationConfigurationsCommand = async ( @@ -6889,41 +5331,25 @@ const deserializeAws_json1_1PutRemediationConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRemediationExceptionsCommand = async ( @@ -6951,41 +5377,25 @@ const deserializeAws_json1_1PutRemediationExceptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourceConfigCommand = async ( @@ -7010,57 +5420,31 @@ const deserializeAws_json1_1PutResourceConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "MaxActiveResourcesExceededException": case "com.amazonaws.configservice#MaxActiveResourcesExceededException": - response = { - ...(await deserializeAws_json1_1MaxActiveResourcesExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxActiveResourcesExceededExceptionResponse(parsedOutput, context); case "NoRunningConfigurationRecorderException": case "com.amazonaws.configservice#NoRunningConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRetentionConfigurationCommand = async ( @@ -7088,44 +5472,28 @@ const deserializeAws_json1_1PutRetentionConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MaxNumberOfRetentionConfigurationsExceededException": case "com.amazonaws.configservice#MaxNumberOfRetentionConfigurationsExceededException": - response = { - ...(await deserializeAws_json1_1MaxNumberOfRetentionConfigurationsExceededExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxNumberOfRetentionConfigurationsExceededExceptionResponse( + parsedOutput, + context + ); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutStoredQueryCommand = async ( @@ -7153,49 +5521,28 @@ const deserializeAws_json1_1PutStoredQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceConcurrentModificationException": case "com.amazonaws.configservice#ResourceConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ResourceConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceConcurrentModificationExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.configservice#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SelectAggregateResourceConfigCommand = async ( @@ -7223,57 +5570,31 @@ const deserializeAws_json1_1SelectAggregateResourceConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidExpressionException": case "com.amazonaws.configservice#InvalidExpressionException": - response = { - ...(await deserializeAws_json1_1InvalidExpressionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidExpressionExceptionResponse(parsedOutput, context); case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "NoSuchConfigurationAggregatorException": case "com.amazonaws.configservice#NoSuchConfigurationAggregatorException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SelectResourceConfigCommand = async ( @@ -7301,49 +5622,28 @@ const deserializeAws_json1_1SelectResourceConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidExpressionException": case "com.amazonaws.configservice#InvalidExpressionException": - response = { - ...(await deserializeAws_json1_1InvalidExpressionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidExpressionExceptionResponse(parsedOutput, context); case "InvalidLimitException": case "com.amazonaws.configservice#InvalidLimitException": - response = { - ...(await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLimitExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.configservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartConfigRulesEvaluationCommand = async ( @@ -7371,57 +5671,31 @@ const deserializeAws_json1_1StartConfigRulesEvaluationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.configservice#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NoSuchConfigRuleException": case "com.amazonaws.configservice#NoSuchConfigRuleException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigRuleExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.configservice#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartConfigurationRecorderCommand = async ( @@ -7446,41 +5720,25 @@ const deserializeAws_json1_1StartConfigurationRecorderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoAvailableDeliveryChannelException": case "com.amazonaws.configservice#NoAvailableDeliveryChannelException": - response = { - ...(await deserializeAws_json1_1NoAvailableDeliveryChannelExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableDeliveryChannelExceptionResponse(parsedOutput, context); case "NoSuchConfigurationRecorderException": case "com.amazonaws.configservice#NoSuchConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartRemediationExecutionCommand = async ( @@ -7508,49 +5766,28 @@ const deserializeAws_json1_1StartRemediationExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPermissionsException": case "com.amazonaws.configservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.configservice#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoSuchRemediationConfigurationException": case "com.amazonaws.configservice#NoSuchRemediationConfigurationException": - response = { - ...(await deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopConfigurationRecorderCommand = async ( @@ -7575,33 +5812,22 @@ const deserializeAws_json1_1StopConfigurationRecorderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchConfigurationRecorderException": case "com.amazonaws.configservice#NoSuchConfigurationRecorderException": - response = { - ...(await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -7626,49 +5852,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.configservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.configservice#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -7693,41 +5898,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.configservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.configservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConformancePackTemplateValidationExceptionResponse = async ( @@ -7736,13 +5925,11 @@ const deserializeAws_json1_1ConformancePackTemplateValidationExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConformancePackTemplateValidationException(body, context); - const contents: ConformancePackTemplateValidationException = { - name: "ConformancePackTemplateValidationException", - $fault: "client", + const exception = new ConformancePackTemplateValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientDeliveryPolicyExceptionResponse = async ( @@ -7751,13 +5938,11 @@ const deserializeAws_json1_1InsufficientDeliveryPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientDeliveryPolicyException(body, context); - const contents: InsufficientDeliveryPolicyException = { - name: "InsufficientDeliveryPolicyException", - $fault: "client", + const exception = new InsufficientDeliveryPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientPermissionsExceptionResponse = async ( @@ -7766,13 +5951,11 @@ const deserializeAws_json1_1InsufficientPermissionsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientPermissionsException(body, context); - const contents: InsufficientPermissionsException = { - name: "InsufficientPermissionsException", - $fault: "client", + const exception = new InsufficientPermissionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidConfigurationRecorderNameExceptionResponse = async ( @@ -7781,13 +5964,11 @@ const deserializeAws_json1_1InvalidConfigurationRecorderNameExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidConfigurationRecorderNameException(body, context); - const contents: InvalidConfigurationRecorderNameException = { - name: "InvalidConfigurationRecorderNameException", - $fault: "client", + const exception = new InvalidConfigurationRecorderNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeliveryChannelNameExceptionResponse = async ( @@ -7796,13 +5977,11 @@ const deserializeAws_json1_1InvalidDeliveryChannelNameExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeliveryChannelNameException(body, context); - const contents: InvalidDeliveryChannelNameException = { - name: "InvalidDeliveryChannelNameException", - $fault: "client", + const exception = new InvalidDeliveryChannelNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidExpressionExceptionResponse = async ( @@ -7811,13 +5990,11 @@ const deserializeAws_json1_1InvalidExpressionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidExpressionException(body, context); - const contents: InvalidExpressionException = { - name: "InvalidExpressionException", - $fault: "client", + const exception = new InvalidExpressionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLimitExceptionResponse = async ( @@ -7826,13 +6003,11 @@ const deserializeAws_json1_1InvalidLimitExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLimitException(body, context); - const contents: InvalidLimitException = { - name: "InvalidLimitException", - $fault: "client", + const exception = new InvalidLimitException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -7841,13 +6016,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( @@ -7856,13 +6029,11 @@ const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRecordingGroupExceptionResponse = async ( @@ -7871,13 +6042,11 @@ const deserializeAws_json1_1InvalidRecordingGroupExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRecordingGroupException(body, context); - const contents: InvalidRecordingGroupException = { - name: "InvalidRecordingGroupException", - $fault: "client", + const exception = new InvalidRecordingGroupException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResultTokenExceptionResponse = async ( @@ -7886,13 +6055,11 @@ const deserializeAws_json1_1InvalidResultTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResultTokenException(body, context); - const contents: InvalidResultTokenException = { - name: "InvalidResultTokenException", - $fault: "client", + const exception = new InvalidResultTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRoleExceptionResponse = async ( @@ -7901,13 +6068,11 @@ const deserializeAws_json1_1InvalidRoleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRoleException(body, context); - const contents: InvalidRoleException = { - name: "InvalidRoleException", - $fault: "client", + const exception = new InvalidRoleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidS3KeyPrefixExceptionResponse = async ( @@ -7916,13 +6081,11 @@ const deserializeAws_json1_1InvalidS3KeyPrefixExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidS3KeyPrefixException(body, context); - const contents: InvalidS3KeyPrefixException = { - name: "InvalidS3KeyPrefixException", - $fault: "client", + const exception = new InvalidS3KeyPrefixException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidS3KmsKeyArnExceptionResponse = async ( @@ -7931,13 +6094,11 @@ const deserializeAws_json1_1InvalidS3KmsKeyArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidS3KmsKeyArnException(body, context); - const contents: InvalidS3KmsKeyArnException = { - name: "InvalidS3KmsKeyArnException", - $fault: "client", + const exception = new InvalidS3KmsKeyArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSNSTopicARNExceptionResponse = async ( @@ -7946,13 +6107,11 @@ const deserializeAws_json1_1InvalidSNSTopicARNExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSNSTopicARNException(body, context); - const contents: InvalidSNSTopicARNException = { - name: "InvalidSNSTopicARNException", - $fault: "client", + const exception = new InvalidSNSTopicARNException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTimeRangeExceptionResponse = async ( @@ -7961,13 +6120,11 @@ const deserializeAws_json1_1InvalidTimeRangeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTimeRangeException(body, context); - const contents: InvalidTimeRangeException = { - name: "InvalidTimeRangeException", - $fault: "client", + const exception = new InvalidTimeRangeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LastDeliveryChannelDeleteFailedExceptionResponse = async ( @@ -7976,13 +6133,11 @@ const deserializeAws_json1_1LastDeliveryChannelDeleteFailedExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LastDeliveryChannelDeleteFailedException(body, context); - const contents: LastDeliveryChannelDeleteFailedException = { - name: "LastDeliveryChannelDeleteFailedException", - $fault: "client", + const exception = new LastDeliveryChannelDeleteFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7991,13 +6146,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxActiveResourcesExceededExceptionResponse = async ( @@ -8006,13 +6159,11 @@ const deserializeAws_json1_1MaxActiveResourcesExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxActiveResourcesExceededException(body, context); - const contents: MaxActiveResourcesExceededException = { - name: "MaxActiveResourcesExceededException", - $fault: "client", + const exception = new MaxActiveResourcesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfConfigRulesExceededExceptionResponse = async ( @@ -8021,13 +6172,11 @@ const deserializeAws_json1_1MaxNumberOfConfigRulesExceededExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxNumberOfConfigRulesExceededException(body, context); - const contents: MaxNumberOfConfigRulesExceededException = { - name: "MaxNumberOfConfigRulesExceededException", - $fault: "client", + const exception = new MaxNumberOfConfigRulesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfConfigurationRecordersExceededExceptionResponse = async ( @@ -8036,13 +6185,11 @@ const deserializeAws_json1_1MaxNumberOfConfigurationRecordersExceededExceptionRe ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxNumberOfConfigurationRecordersExceededException(body, context); - const contents: MaxNumberOfConfigurationRecordersExceededException = { - name: "MaxNumberOfConfigurationRecordersExceededException", - $fault: "client", + const exception = new MaxNumberOfConfigurationRecordersExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfConformancePacksExceededExceptionResponse = async ( @@ -8051,13 +6198,11 @@ const deserializeAws_json1_1MaxNumberOfConformancePacksExceededExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxNumberOfConformancePacksExceededException(body, context); - const contents: MaxNumberOfConformancePacksExceededException = { - name: "MaxNumberOfConformancePacksExceededException", - $fault: "client", + const exception = new MaxNumberOfConformancePacksExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfDeliveryChannelsExceededExceptionResponse = async ( @@ -8066,13 +6211,11 @@ const deserializeAws_json1_1MaxNumberOfDeliveryChannelsExceededExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxNumberOfDeliveryChannelsExceededException(body, context); - const contents: MaxNumberOfDeliveryChannelsExceededException = { - name: "MaxNumberOfDeliveryChannelsExceededException", - $fault: "client", + const exception = new MaxNumberOfDeliveryChannelsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfOrganizationConfigRulesExceededExceptionResponse = async ( @@ -8081,13 +6224,11 @@ const deserializeAws_json1_1MaxNumberOfOrganizationConfigRulesExceededExceptionR ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxNumberOfOrganizationConfigRulesExceededException(body, context); - const contents: MaxNumberOfOrganizationConfigRulesExceededException = { - name: "MaxNumberOfOrganizationConfigRulesExceededException", - $fault: "client", + const exception = new MaxNumberOfOrganizationConfigRulesExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfOrganizationConformancePacksExceededExceptionResponse = async ( @@ -8099,13 +6240,11 @@ const deserializeAws_json1_1MaxNumberOfOrganizationConformancePacksExceededExcep body, context ); - const contents: MaxNumberOfOrganizationConformancePacksExceededException = { - name: "MaxNumberOfOrganizationConformancePacksExceededException", - $fault: "client", + const exception = new MaxNumberOfOrganizationConformancePacksExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxNumberOfRetentionConfigurationsExceededExceptionResponse = async ( @@ -8114,13 +6253,11 @@ const deserializeAws_json1_1MaxNumberOfRetentionConfigurationsExceededExceptionR ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxNumberOfRetentionConfigurationsExceededException(body, context); - const contents: MaxNumberOfRetentionConfigurationsExceededException = { - name: "MaxNumberOfRetentionConfigurationsExceededException", - $fault: "client", + const exception = new MaxNumberOfRetentionConfigurationsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse = async ( @@ -8129,13 +6266,11 @@ const deserializeAws_json1_1NoAvailableConfigurationRecorderExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoAvailableConfigurationRecorderException(body, context); - const contents: NoAvailableConfigurationRecorderException = { - name: "NoAvailableConfigurationRecorderException", - $fault: "client", + const exception = new NoAvailableConfigurationRecorderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoAvailableDeliveryChannelExceptionResponse = async ( @@ -8144,13 +6279,11 @@ const deserializeAws_json1_1NoAvailableDeliveryChannelExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoAvailableDeliveryChannelException(body, context); - const contents: NoAvailableDeliveryChannelException = { - name: "NoAvailableDeliveryChannelException", - $fault: "client", + const exception = new NoAvailableDeliveryChannelException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoAvailableOrganizationExceptionResponse = async ( @@ -8159,13 +6292,11 @@ const deserializeAws_json1_1NoAvailableOrganizationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoAvailableOrganizationException(body, context); - const contents: NoAvailableOrganizationException = { - name: "NoAvailableOrganizationException", - $fault: "client", + const exception = new NoAvailableOrganizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse = async ( @@ -8174,13 +6305,11 @@ const deserializeAws_json1_1NoRunningConfigurationRecorderExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoRunningConfigurationRecorderException(body, context); - const contents: NoRunningConfigurationRecorderException = { - name: "NoRunningConfigurationRecorderException", - $fault: "client", + const exception = new NoRunningConfigurationRecorderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchBucketExceptionResponse = async ( @@ -8189,13 +6318,11 @@ const deserializeAws_json1_1NoSuchBucketExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchBucketException(body, context); - const contents: NoSuchBucketException = { - name: "NoSuchBucketException", - $fault: "client", + const exception = new NoSuchBucketException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchConfigRuleExceptionResponse = async ( @@ -8204,13 +6331,11 @@ const deserializeAws_json1_1NoSuchConfigRuleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchConfigRuleException(body, context); - const contents: NoSuchConfigRuleException = { - name: "NoSuchConfigRuleException", - $fault: "client", + const exception = new NoSuchConfigRuleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchConfigRuleInConformancePackExceptionResponse = async ( @@ -8219,13 +6344,11 @@ const deserializeAws_json1_1NoSuchConfigRuleInConformancePackExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchConfigRuleInConformancePackException(body, context); - const contents: NoSuchConfigRuleInConformancePackException = { - name: "NoSuchConfigRuleInConformancePackException", - $fault: "client", + const exception = new NoSuchConfigRuleInConformancePackException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse = async ( @@ -8234,13 +6357,11 @@ const deserializeAws_json1_1NoSuchConfigurationAggregatorExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchConfigurationAggregatorException(body, context); - const contents: NoSuchConfigurationAggregatorException = { - name: "NoSuchConfigurationAggregatorException", - $fault: "client", + const exception = new NoSuchConfigurationAggregatorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse = async ( @@ -8249,13 +6370,11 @@ const deserializeAws_json1_1NoSuchConfigurationRecorderExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchConfigurationRecorderException(body, context); - const contents: NoSuchConfigurationRecorderException = { - name: "NoSuchConfigurationRecorderException", - $fault: "client", + const exception = new NoSuchConfigurationRecorderException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchConformancePackExceptionResponse = async ( @@ -8264,13 +6383,11 @@ const deserializeAws_json1_1NoSuchConformancePackExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchConformancePackException(body, context); - const contents: NoSuchConformancePackException = { - name: "NoSuchConformancePackException", - $fault: "client", + const exception = new NoSuchConformancePackException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse = async ( @@ -8279,13 +6396,11 @@ const deserializeAws_json1_1NoSuchDeliveryChannelExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchDeliveryChannelException(body, context); - const contents: NoSuchDeliveryChannelException = { - name: "NoSuchDeliveryChannelException", - $fault: "client", + const exception = new NoSuchDeliveryChannelException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse = async ( @@ -8294,13 +6409,11 @@ const deserializeAws_json1_1NoSuchOrganizationConfigRuleExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchOrganizationConfigRuleException(body, context); - const contents: NoSuchOrganizationConfigRuleException = { - name: "NoSuchOrganizationConfigRuleException", - $fault: "client", + const exception = new NoSuchOrganizationConfigRuleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse = async ( @@ -8309,13 +6422,11 @@ const deserializeAws_json1_1NoSuchOrganizationConformancePackExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchOrganizationConformancePackException(body, context); - const contents: NoSuchOrganizationConformancePackException = { - name: "NoSuchOrganizationConformancePackException", - $fault: "client", + const exception = new NoSuchOrganizationConformancePackException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse = async ( @@ -8324,13 +6435,11 @@ const deserializeAws_json1_1NoSuchRemediationConfigurationExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchRemediationConfigurationException(body, context); - const contents: NoSuchRemediationConfigurationException = { - name: "NoSuchRemediationConfigurationException", - $fault: "client", + const exception = new NoSuchRemediationConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchRemediationExceptionExceptionResponse = async ( @@ -8339,13 +6448,11 @@ const deserializeAws_json1_1NoSuchRemediationExceptionExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchRemediationExceptionException(body, context); - const contents: NoSuchRemediationExceptionException = { - name: "NoSuchRemediationExceptionException", - $fault: "client", + const exception = new NoSuchRemediationExceptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchRetentionConfigurationExceptionResponse = async ( @@ -8354,13 +6461,11 @@ const deserializeAws_json1_1NoSuchRetentionConfigurationExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchRetentionConfigurationException(body, context); - const contents: NoSuchRetentionConfigurationException = { - name: "NoSuchRetentionConfigurationException", - $fault: "client", + const exception = new NoSuchRetentionConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse = async ( @@ -8369,13 +6474,11 @@ const deserializeAws_json1_1OrganizationAccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationAccessDeniedException(body, context); - const contents: OrganizationAccessDeniedException = { - name: "OrganizationAccessDeniedException", - $fault: "client", + const exception = new OrganizationAccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse = async ( @@ -8384,13 +6487,11 @@ const deserializeAws_json1_1OrganizationAllFeaturesNotEnabledExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationAllFeaturesNotEnabledException(body, context); - const contents: OrganizationAllFeaturesNotEnabledException = { - name: "OrganizationAllFeaturesNotEnabledException", - $fault: "client", + const exception = new OrganizationAllFeaturesNotEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationConformancePackTemplateValidationExceptionResponse = async ( @@ -8399,13 +6500,11 @@ const deserializeAws_json1_1OrganizationConformancePackTemplateValidationExcepti ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationConformancePackTemplateValidationException(body, context); - const contents: OrganizationConformancePackTemplateValidationException = { - name: "OrganizationConformancePackTemplateValidationException", - $fault: "client", + const exception = new OrganizationConformancePackTemplateValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OversizedConfigurationItemExceptionResponse = async ( @@ -8414,13 +6513,11 @@ const deserializeAws_json1_1OversizedConfigurationItemExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OversizedConfigurationItemException(body, context); - const contents: OversizedConfigurationItemException = { - name: "OversizedConfigurationItemException", - $fault: "client", + const exception = new OversizedConfigurationItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RemediationInProgressExceptionResponse = async ( @@ -8429,13 +6526,11 @@ const deserializeAws_json1_1RemediationInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RemediationInProgressException(body, context); - const contents: RemediationInProgressException = { - name: "RemediationInProgressException", - $fault: "client", + const exception = new RemediationInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceConcurrentModificationExceptionResponse = async ( @@ -8444,13 +6539,11 @@ const deserializeAws_json1_1ResourceConcurrentModificationExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceConcurrentModificationException(body, context); - const contents: ResourceConcurrentModificationException = { - name: "ResourceConcurrentModificationException", - $fault: "client", + const exception = new ResourceConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -8459,13 +6552,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotDiscoveredExceptionResponse = async ( @@ -8474,13 +6565,11 @@ const deserializeAws_json1_1ResourceNotDiscoveredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotDiscoveredException(body, context); - const contents: ResourceNotDiscoveredException = { - name: "ResourceNotDiscoveredException", - $fault: "client", + const exception = new ResourceNotDiscoveredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -8489,13 +6578,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -8504,13 +6591,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -8519,13 +6604,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccountAggregationSource = ( diff --git a/clients/client-connect-contact-lens/src/index.ts b/clients/client-connect-contact-lens/src/index.ts index b0446f04153c5..8b6ec520db007 100644 --- a/clients/client-connect-contact-lens/src/index.ts +++ b/clients/client-connect-contact-lens/src/index.ts @@ -3,3 +3,4 @@ export * from "./ConnectContactLensClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ConnectContactLensServiceException } from "./models/ConnectContactLensServiceException"; diff --git a/clients/client-connect-contact-lens/src/models/ConnectContactLensServiceException.ts b/clients/client-connect-contact-lens/src/models/ConnectContactLensServiceException.ts new file mode 100644 index 0000000000000..25227edae9463 --- /dev/null +++ b/clients/client-connect-contact-lens/src/models/ConnectContactLensServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ConnectContactLens service. + */ +export class ConnectContactLensServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ConnectContactLensServiceException.prototype); + } +} diff --git a/clients/client-connect-contact-lens/src/models/models_0.ts b/clients/client-connect-contact-lens/src/models/models_0.ts index 616ec164e5591..ec8e99d94a4a7 100644 --- a/clients/client-connect-contact-lens/src/models/models_0.ts +++ b/clients/client-connect-contact-lens/src/models/models_0.ts @@ -1,30 +1,69 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ConnectContactLensServiceException as __BaseException } from "./ConnectContactLensServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

Request processing failed due to an error or failure with the service.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } export interface ListRealtimeContactAnalysisSegmentsRequest { @@ -290,17 +329,41 @@ export namespace ListRealtimeContactAnalysisSegmentsResponse { /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The throttling limit has been exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } diff --git a/clients/client-connect-contact-lens/src/protocols/Aws_restJson1.ts b/clients/client-connect-contact-lens/src/protocols/Aws_restJson1.ts index 9b10fd3b7bfd0..b17c676b4dbac 100644 --- a/clients/client-connect-contact-lens/src/protocols/Aws_restJson1.ts +++ b/clients/client-connect-contact-lens/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -7,16 +8,15 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { ListRealtimeContactAnalysisSegmentsCommandInput, ListRealtimeContactAnalysisSegmentsCommandOutput, } from "../commands/ListRealtimeContactAnalysisSegmentsCommand"; +import { ConnectContactLensServiceException as __BaseException } from "../models/ConnectContactLensServiceException"; import { AccessDeniedException, Categories, @@ -91,150 +91,114 @@ const deserializeAws_restJson1ListRealtimeContactAnalysisSegmentsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectcontactlens#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connectcontactlens#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connectcontactlens#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connectcontactlens#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectcontactlens#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1Categories = (output: any, context: __SerdeContext): Categories => { diff --git a/clients/client-connect/src/index.ts b/clients/client-connect/src/index.ts index c34a318326812..ea0f6fa538f78 100644 --- a/clients/client-connect/src/index.ts +++ b/clients/client-connect/src/index.ts @@ -3,3 +3,4 @@ export * from "./ConnectClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ConnectServiceException } from "./models/ConnectServiceException"; diff --git a/clients/client-connect/src/models/ConnectServiceException.ts b/clients/client-connect/src/models/ConnectServiceException.ts new file mode 100644 index 0000000000000..78668f6b2d6ba --- /dev/null +++ b/clients/client-connect/src/models/ConnectServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Connect service. + */ +export class ConnectServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ConnectServiceException.prototype); + } +} diff --git a/clients/client-connect/src/models/models_0.ts b/clients/client-connect/src/models/models_0.ts index 32b3f38263b6c..59748db9c821f 100644 --- a/clients/client-connect/src/models/models_0.ts +++ b/clients/client-connect/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ConnectServiceException as __BaseException } from "./ConnectServiceException"; /** *

You do not have sufficient permissions to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -157,76 +171,160 @@ export namespace AssociateApprovedOriginRequest { /** *

Request processing failed because of an error or failure with the service.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; /** *

The message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

One or more of the specified parameters are not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

The message about the parameters.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** *

The message about the request.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

A resource already has that name.

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The message about the resource.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The service quota has been exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

The throttling limit has been exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** @@ -301,13 +399,25 @@ export namespace AssociateBotRequest { /** *

The allowed limit for the resource has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

The message about the limit.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export enum VocabularyLanguageCode { @@ -867,10 +977,22 @@ export namespace CreateAgentStatusResponse { /** *

A resource with the specified name already exists.

*/ -export interface DuplicateResourceException extends __SmithyException, $MetadataBearer { - name: "DuplicateResourceException"; - $fault: "client"; +export class DuplicateResourceException extends __BaseException { + readonly name: "DuplicateResourceException" = "DuplicateResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateResourceException.prototype); + this.Message = opts.Message; + } } export enum ContactFlowType { @@ -970,13 +1092,25 @@ export namespace ProblemDetail { /** *

The contact flow is not valid.

*/ -export interface InvalidContactFlowException extends __SmithyException, $MetadataBearer { - name: "InvalidContactFlowException"; - $fault: "client"; +export class InvalidContactFlowException extends __BaseException { + readonly name: "InvalidContactFlowException" = "InvalidContactFlowException"; + readonly $fault: "client" = "client"; /** *

The problems with the contact flow. Please fix before trying again.

*/ problems?: ProblemDetail[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidContactFlowException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidContactFlowException.prototype); + this.problems = opts.problems; + } } export interface CreateContactFlowModuleRequest { @@ -1045,19 +1179,43 @@ export namespace CreateContactFlowModuleResponse { /** *

An entity with the same name already exists.

*/ -export interface IdempotencyException extends __SmithyException, $MetadataBearer { - name: "IdempotencyException"; - $fault: "client"; +export class IdempotencyException extends __BaseException { + readonly name: "IdempotencyException" = "IdempotencyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotencyException.prototype); + this.Message = opts.Message; + } } /** *

The problems with the module. Please fix before trying again.

*/ -export interface InvalidContactFlowModuleException extends __SmithyException, $MetadataBearer { - name: "InvalidContactFlowModuleException"; - $fault: "client"; +export class InvalidContactFlowModuleException extends __BaseException { + readonly name: "InvalidContactFlowModuleException" = "InvalidContactFlowModuleException"; + readonly $fault: "client" = "client"; Problems?: ProblemDetail[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidContactFlowModuleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidContactFlowModuleException.prototype); + this.Problems = opts.Problems; + } } export enum HoursOfOperationDays { @@ -2277,9 +2435,9 @@ export enum ResourceType { /** *

That resource is already in use. Please try another.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource.

@@ -2290,6 +2448,20 @@ export interface ResourceInUseException extends __SmithyException, $MetadataBear *

The identifier for the resource.

*/ ResourceId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ResourceId = opts.ResourceId; + } } export interface DeleteUseCaseRequest { @@ -2606,10 +2778,22 @@ export namespace DescribeContactResponse { /** *

The contact flow has not been published.

*/ -export interface ContactFlowNotPublishedException extends __SmithyException, $MetadataBearer { - name: "ContactFlowNotPublishedException"; - $fault: "client"; +export class ContactFlowNotPublishedException extends __BaseException { + readonly name: "ContactFlowNotPublishedException" = "ContactFlowNotPublishedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContactFlowNotPublishedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContactFlowNotPublishedException.prototype); + this.Message = opts.Message; + } } export interface DescribeContactFlowRequest { @@ -4596,10 +4780,22 @@ export namespace GetFederationTokenResponse { /** *

No user with the specified credentials was found in the Amazon Connect instance.

*/ -export interface UserNotFoundException extends __SmithyException, $MetadataBearer { - name: "UserNotFoundException"; - $fault: "client"; +export class UserNotFoundException extends __BaseException { + readonly name: "UserNotFoundException" = "UserNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserNotFoundException.prototype); + this.Message = opts.Message; + } } export enum HistoricalMetricName { @@ -7813,11 +8009,23 @@ export namespace StartContactStreamingResponse { /** *

Outbound calls to the destination number are not allowed.

*/ -export interface DestinationNotAllowedException extends __SmithyException, $MetadataBearer { - name: "DestinationNotAllowedException"; - $fault: "client"; +export class DestinationNotAllowedException extends __BaseException { + readonly name: "DestinationNotAllowedException" = "DestinationNotAllowedException"; + readonly $fault: "client" = "client"; /** *

The message about the outbound calls.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DestinationNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DestinationNotAllowedException.prototype); + this.Message = opts.Message; + } } diff --git a/clients/client-connect/src/models/models_1.ts b/clients/client-connect/src/models/models_1.ts index 3cec78f742dfc..a154d38de0d91 100644 --- a/clients/client-connect/src/models/models_1.ts +++ b/clients/client-connect/src/models/models_1.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { ConnectServiceException as __BaseException } from "./ConnectServiceException"; import { AgentStatusState, ContactFlowModuleState, @@ -21,13 +23,25 @@ import { /** *

The contact is not permitted.

*/ -export interface OutboundContactNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OutboundContactNotPermittedException"; - $fault: "client"; +export class OutboundContactNotPermittedException extends __BaseException { + readonly name: "OutboundContactNotPermittedException" = "OutboundContactNotPermittedException"; + readonly $fault: "client" = "client"; /** *

The message about the contact.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OutboundContactNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OutboundContactNotPermittedException.prototype); + this.Message = opts.Message; + } } /** @@ -271,13 +285,25 @@ export namespace StartTaskContactResponse { /** *

The contact with the specified ID is not active or does not exist.

*/ -export interface ContactNotFoundException extends __SmithyException, $MetadataBearer { - name: "ContactNotFoundException"; - $fault: "client"; +export class ContactNotFoundException extends __BaseException { + readonly name: "ContactNotFoundException" = "ContactNotFoundException"; + readonly $fault: "client" = "client"; /** *

The message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContactNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContactNotFoundException.prototype); + this.Message = opts.Message; + } } export interface StopContactRequest { diff --git a/clients/client-connect/src/protocols/Aws_restJson1.ts b/clients/client-connect/src/protocols/Aws_restJson1.ts index f5476ee6840dc..4a6fbc817461e 100644 --- a/clients/client-connect/src/protocols/Aws_restJson1.ts +++ b/clients/client-connect/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -416,6 +415,7 @@ import { UpdateUserSecurityProfilesCommandInput, UpdateUserSecurityProfilesCommandOutput, } from "../commands/UpdateUserSecurityProfilesCommand"; +import { ConnectServiceException as __BaseException } from "../models/ConnectServiceException"; import { AccessDeniedException, AgentInfo, @@ -5778,81 +5778,40 @@ const deserializeAws_restJson1AssociateApprovedOriginCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateBotCommand = async ( @@ -5877,81 +5836,40 @@ const deserializeAws_restJson1AssociateBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateDefaultVocabularyCommand = async ( @@ -5976,65 +5894,34 @@ const deserializeAws_restJson1AssociateDefaultVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateInstanceStorageConfigCommand = async ( @@ -6063,73 +5950,37 @@ const deserializeAws_restJson1AssociateInstanceStorageConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateLambdaFunctionCommand = async ( @@ -6154,81 +6005,40 @@ const deserializeAws_restJson1AssociateLambdaFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateLexBotCommand = async ( @@ -6253,81 +6063,40 @@ const deserializeAws_restJson1AssociateLexBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateQueueQuickConnectsCommand = async ( @@ -6352,73 +6121,37 @@ const deserializeAws_restJson1AssociateQueueQuickConnectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateRoutingProfileQueuesCommand = async ( @@ -6443,65 +6176,34 @@ const deserializeAws_restJson1AssociateRoutingProfileQueuesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateSecurityKeyCommand = async ( @@ -6530,81 +6232,40 @@ const deserializeAws_restJson1AssociateSecurityKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAgentStatusCommand = async ( @@ -6637,81 +6298,40 @@ const deserializeAws_restJson1CreateAgentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateContactFlowCommand = async ( @@ -6744,89 +6364,43 @@ const deserializeAws_restJson1CreateContactFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidContactFlowException": case "com.amazonaws.connect#InvalidContactFlowException": - response = { - ...(await deserializeAws_restJson1InvalidContactFlowExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidContactFlowExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateContactFlowModuleCommand = async ( @@ -6859,105 +6433,49 @@ const deserializeAws_restJson1CreateContactFlowModuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "IdempotencyException": case "com.amazonaws.connect#IdempotencyException": - response = { - ...(await deserializeAws_restJson1IdempotencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotencyExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidContactFlowModuleException": case "com.amazonaws.connect#InvalidContactFlowModuleException": - response = { - ...(await deserializeAws_restJson1InvalidContactFlowModuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidContactFlowModuleExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateHoursOfOperationCommand = async ( @@ -6990,81 +6508,40 @@ const deserializeAws_restJson1CreateHoursOfOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInstanceCommand = async ( @@ -7097,65 +6574,34 @@ const deserializeAws_restJson1CreateInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIntegrationAssociationCommand = async ( @@ -7188,65 +6634,34 @@ const deserializeAws_restJson1CreateIntegrationAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateQueueCommand = async ( @@ -7279,81 +6694,40 @@ const deserializeAws_restJson1CreateQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateQuickConnectCommand = async ( @@ -7386,81 +6760,40 @@ const deserializeAws_restJson1CreateQuickConnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRoutingProfileCommand = async ( @@ -7493,81 +6826,40 @@ const deserializeAws_restJson1CreateRoutingProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSecurityProfileCommand = async ( @@ -7600,81 +6892,40 @@ const deserializeAws_restJson1CreateSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUseCaseCommand = async ( @@ -7707,65 +6958,34 @@ const deserializeAws_restJson1CreateUseCaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUserCommand = async ( @@ -7798,81 +7018,40 @@ const deserializeAws_restJson1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUserHierarchyGroupCommand = async ( @@ -7905,81 +7084,40 @@ const deserializeAws_restJson1CreateUserHierarchyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVocabularyCommand = async ( @@ -8016,81 +7154,40 @@ const deserializeAws_restJson1CreateVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.connect#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteContactFlowCommand = async ( @@ -8115,73 +7212,37 @@ const deserializeAws_restJson1DeleteContactFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteContactFlowModuleCommand = async ( @@ -8206,73 +7267,37 @@ const deserializeAws_restJson1DeleteContactFlowModuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteHoursOfOperationCommand = async ( @@ -8297,65 +7322,34 @@ const deserializeAws_restJson1DeleteHoursOfOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInstanceCommand = async ( @@ -8380,49 +7374,28 @@ const deserializeAws_restJson1DeleteInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntegrationAssociationCommand = async ( @@ -8447,57 +7420,31 @@ const deserializeAws_restJson1DeleteIntegrationAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteQuickConnectCommand = async ( @@ -8522,65 +7469,34 @@ const deserializeAws_restJson1DeleteQuickConnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSecurityProfileCommand = async ( @@ -8605,81 +7521,40 @@ const deserializeAws_restJson1DeleteSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.connect#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUseCaseCommand = async ( @@ -8704,57 +7579,31 @@ const deserializeAws_restJson1DeleteUseCaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserCommand = async ( @@ -8779,65 +7628,34 @@ const deserializeAws_restJson1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserHierarchyGroupCommand = async ( @@ -8862,73 +7680,37 @@ const deserializeAws_restJson1DeleteUserHierarchyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.connect#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVocabularyCommand = async ( @@ -8965,73 +7747,37 @@ const deserializeAws_restJson1DeleteVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.connect#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAgentStatusCommand = async ( @@ -9060,65 +7806,34 @@ const deserializeAws_restJson1DescribeAgentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeContactCommand = async ( @@ -9147,65 +7862,34 @@ const deserializeAws_restJson1DescribeContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeContactFlowCommand = async ( @@ -9234,73 +7918,37 @@ const deserializeAws_restJson1DescribeContactFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContactFlowNotPublishedException": case "com.amazonaws.connect#ContactFlowNotPublishedException": - response = { - ...(await deserializeAws_restJson1ContactFlowNotPublishedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContactFlowNotPublishedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeContactFlowModuleCommand = async ( @@ -9329,73 +7977,37 @@ const deserializeAws_restJson1DescribeContactFlowModuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeHoursOfOperationCommand = async ( @@ -9424,65 +8036,34 @@ const deserializeAws_restJson1DescribeHoursOfOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInstanceCommand = async ( @@ -9511,49 +8092,28 @@ const deserializeAws_restJson1DescribeInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInstanceAttributeCommand = async ( @@ -9582,65 +8142,34 @@ const deserializeAws_restJson1DescribeInstanceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInstanceStorageConfigCommand = async ( @@ -9669,65 +8198,34 @@ const deserializeAws_restJson1DescribeInstanceStorageConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeQueueCommand = async ( @@ -9756,65 +8254,34 @@ const deserializeAws_restJson1DescribeQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeQuickConnectCommand = async ( @@ -9843,65 +8310,34 @@ const deserializeAws_restJson1DescribeQuickConnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRoutingProfileCommand = async ( @@ -9930,65 +8366,34 @@ const deserializeAws_restJson1DescribeRoutingProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSecurityProfileCommand = async ( @@ -10017,65 +8422,34 @@ const deserializeAws_restJson1DescribeSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUserCommand = async ( @@ -10104,65 +8478,34 @@ const deserializeAws_restJson1DescribeUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUserHierarchyGroupCommand = async ( @@ -10191,65 +8534,34 @@ const deserializeAws_restJson1DescribeUserHierarchyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUserHierarchyStructureCommand = async ( @@ -10278,65 +8590,34 @@ const deserializeAws_restJson1DescribeUserHierarchyStructureCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVocabularyCommand = async ( @@ -10365,65 +8646,34 @@ const deserializeAws_restJson1DescribeVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateApprovedOriginCommand = async ( @@ -10448,65 +8698,34 @@ const deserializeAws_restJson1DisassociateApprovedOriginCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateBotCommand = async ( @@ -10531,57 +8750,31 @@ const deserializeAws_restJson1DisassociateBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateInstanceStorageConfigCommand = async ( @@ -10606,65 +8799,34 @@ const deserializeAws_restJson1DisassociateInstanceStorageConfigCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateLambdaFunctionCommand = async ( @@ -10689,65 +8851,34 @@ const deserializeAws_restJson1DisassociateLambdaFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateLexBotCommand = async ( @@ -10772,65 +8903,34 @@ const deserializeAws_restJson1DisassociateLexBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateQueueQuickConnectsCommand = async ( @@ -10855,65 +8955,34 @@ const deserializeAws_restJson1DisassociateQueueQuickConnectsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateRoutingProfileQueuesCommand = async ( @@ -10938,65 +9007,34 @@ const deserializeAws_restJson1DisassociateRoutingProfileQueuesCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateSecurityKeyCommand = async ( @@ -11021,65 +9059,34 @@ const deserializeAws_restJson1DisassociateSecurityKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContactAttributesCommand = async ( @@ -11108,49 +9115,28 @@ const deserializeAws_restJson1GetContactAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCurrentMetricDataCommand = async ( @@ -11187,65 +9173,34 @@ const deserializeAws_restJson1GetCurrentMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFederationTokenCommand = async ( @@ -11274,73 +9229,37 @@ const deserializeAws_restJson1GetFederationTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UserNotFoundException": case "com.amazonaws.connect#UserNotFoundException": - response = { - ...(await deserializeAws_restJson1UserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UserNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMetricDataCommand = async ( @@ -11373,65 +9292,34 @@ const deserializeAws_restJson1GetMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAgentStatusesCommand = async ( @@ -11467,65 +9355,34 @@ const deserializeAws_restJson1ListAgentStatusesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApprovedOriginsCommand = async ( @@ -11558,65 +9415,34 @@ const deserializeAws_restJson1ListApprovedOriginsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotsCommand = async ( @@ -11649,57 +9475,31 @@ const deserializeAws_restJson1ListBotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContactFlowModulesCommand = async ( @@ -11735,73 +9535,37 @@ const deserializeAws_restJson1ListContactFlowModulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContactFlowsCommand = async ( @@ -11837,65 +9601,34 @@ const deserializeAws_restJson1ListContactFlowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContactReferencesCommand = async ( @@ -11928,65 +9661,34 @@ const deserializeAws_restJson1ListContactReferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDefaultVocabulariesCommand = async ( @@ -12019,57 +9721,31 @@ const deserializeAws_restJson1ListDefaultVocabulariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListHoursOfOperationsCommand = async ( @@ -12105,65 +9781,34 @@ const deserializeAws_restJson1ListHoursOfOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInstanceAttributesCommand = async ( @@ -12196,65 +9841,34 @@ const deserializeAws_restJson1ListInstanceAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInstancesCommand = async ( @@ -12287,41 +9901,25 @@ const deserializeAws_restJson1ListInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInstanceStorageConfigsCommand = async ( @@ -12354,65 +9952,34 @@ const deserializeAws_restJson1ListInstanceStorageConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIntegrationAssociationsCommand = async ( @@ -12448,57 +10015,31 @@ const deserializeAws_restJson1ListIntegrationAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLambdaFunctionsCommand = async ( @@ -12531,65 +10072,34 @@ const deserializeAws_restJson1ListLambdaFunctionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLexBotsCommand = async ( @@ -12622,65 +10132,34 @@ const deserializeAws_restJson1ListLexBotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPhoneNumbersCommand = async ( @@ -12716,65 +10195,34 @@ const deserializeAws_restJson1ListPhoneNumbersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPromptsCommand = async ( @@ -12807,65 +10255,34 @@ const deserializeAws_restJson1ListPromptsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListQueueQuickConnectsCommand = async ( @@ -12901,65 +10318,34 @@ const deserializeAws_restJson1ListQueueQuickConnectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListQueuesCommand = async ( @@ -12992,65 +10378,34 @@ const deserializeAws_restJson1ListQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListQuickConnectsCommand = async ( @@ -13086,65 +10441,34 @@ const deserializeAws_restJson1ListQuickConnectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoutingProfileQueuesCommand = async ( @@ -13180,65 +10504,34 @@ const deserializeAws_restJson1ListRoutingProfileQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoutingProfilesCommand = async ( @@ -13274,65 +10567,34 @@ const deserializeAws_restJson1ListRoutingProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSecurityKeysCommand = async ( @@ -13365,65 +10627,34 @@ const deserializeAws_restJson1ListSecurityKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSecurityProfilePermissionsCommand = async ( @@ -13456,65 +10687,34 @@ const deserializeAws_restJson1ListSecurityProfilePermissionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSecurityProfilesCommand = async ( @@ -13550,65 +10750,34 @@ const deserializeAws_restJson1ListSecurityProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -13637,65 +10806,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUseCasesCommand = async ( @@ -13728,57 +10866,31 @@ const deserializeAws_restJson1ListUseCasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUserHierarchyGroupsCommand = async ( @@ -13814,65 +10926,34 @@ const deserializeAws_restJson1ListUserHierarchyGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUsersCommand = async ( @@ -13905,65 +10986,34 @@ const deserializeAws_restJson1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResumeContactRecordingCommand = async ( @@ -13988,49 +11038,28 @@ const deserializeAws_restJson1ResumeContactRecordingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchVocabulariesCommand = async ( @@ -14063,57 +11092,31 @@ const deserializeAws_restJson1SearchVocabulariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartChatContactCommand = async ( @@ -14150,65 +11153,34 @@ const deserializeAws_restJson1StartChatContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartContactRecordingCommand = async ( @@ -14233,57 +11205,31 @@ const deserializeAws_restJson1StartContactRecordingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartContactStreamingCommand = async ( @@ -14312,65 +11258,34 @@ const deserializeAws_restJson1StartContactStreamingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartOutboundVoiceContactCommand = async ( @@ -14399,81 +11314,40 @@ const deserializeAws_restJson1StartOutboundVoiceContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DestinationNotAllowedException": case "com.amazonaws.connect#DestinationNotAllowedException": - response = { - ...(await deserializeAws_restJson1DestinationNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DestinationNotAllowedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "OutboundContactNotPermittedException": case "com.amazonaws.connect#OutboundContactNotPermittedException": - response = { - ...(await deserializeAws_restJson1OutboundContactNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OutboundContactNotPermittedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartTaskContactCommand = async ( @@ -14502,73 +11376,37 @@ const deserializeAws_restJson1StartTaskContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connect#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopContactCommand = async ( @@ -14593,65 +11431,34 @@ const deserializeAws_restJson1StopContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContactNotFoundException": case "com.amazonaws.connect#ContactNotFoundException": - response = { - ...(await deserializeAws_restJson1ContactNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContactNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopContactRecordingCommand = async ( @@ -14676,49 +11483,28 @@ const deserializeAws_restJson1StopContactRecordingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopContactStreamingCommand = async ( @@ -14743,57 +11529,31 @@ const deserializeAws_restJson1StopContactStreamingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SuspendContactRecordingCommand = async ( @@ -14818,49 +11578,28 @@ const deserializeAws_restJson1SuspendContactRecordingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -14885,65 +11624,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -14968,65 +11676,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAgentStatusCommand = async ( @@ -15051,81 +11728,40 @@ const deserializeAws_restJson1UpdateAgentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactCommand = async ( @@ -15150,65 +11786,34 @@ const deserializeAws_restJson1UpdateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactAttributesCommand = async ( @@ -15233,57 +11838,31 @@ const deserializeAws_restJson1UpdateContactAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactFlowContentCommand = async ( @@ -15308,73 +11887,37 @@ const deserializeAws_restJson1UpdateContactFlowContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidContactFlowException": case "com.amazonaws.connect#InvalidContactFlowException": - response = { - ...(await deserializeAws_restJson1InvalidContactFlowExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidContactFlowExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactFlowMetadataCommand = async ( @@ -15399,73 +11942,37 @@ const deserializeAws_restJson1UpdateContactFlowMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactFlowModuleContentCommand = async ( @@ -15490,73 +11997,37 @@ const deserializeAws_restJson1UpdateContactFlowModuleContentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidContactFlowModuleException": case "com.amazonaws.connect#InvalidContactFlowModuleException": - response = { - ...(await deserializeAws_restJson1InvalidContactFlowModuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidContactFlowModuleExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactFlowModuleMetadataCommand = async ( @@ -15581,81 +12052,40 @@ const deserializeAws_restJson1UpdateContactFlowModuleMetadataCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connect#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactFlowNameCommand = async ( @@ -15680,73 +12110,37 @@ const deserializeAws_restJson1UpdateContactFlowNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactScheduleCommand = async ( @@ -15771,73 +12165,37 @@ const deserializeAws_restJson1UpdateContactScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.connect#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateHoursOfOperationCommand = async ( @@ -15862,73 +12220,37 @@ const deserializeAws_restJson1UpdateHoursOfOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInstanceAttributeCommand = async ( @@ -15953,65 +12275,34 @@ const deserializeAws_restJson1UpdateInstanceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInstanceStorageConfigCommand = async ( @@ -16036,65 +12327,34 @@ const deserializeAws_restJson1UpdateInstanceStorageConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQueueHoursOfOperationCommand = async ( @@ -16119,65 +12379,34 @@ const deserializeAws_restJson1UpdateQueueHoursOfOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQueueMaxContactsCommand = async ( @@ -16202,65 +12431,34 @@ const deserializeAws_restJson1UpdateQueueMaxContactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQueueNameCommand = async ( @@ -16285,73 +12483,37 @@ const deserializeAws_restJson1UpdateQueueNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQueueOutboundCallerConfigCommand = async ( @@ -16376,65 +12538,34 @@ const deserializeAws_restJson1UpdateQueueOutboundCallerConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQueueStatusCommand = async ( @@ -16459,65 +12590,34 @@ const deserializeAws_restJson1UpdateQueueStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQuickConnectConfigCommand = async ( @@ -16542,65 +12642,34 @@ const deserializeAws_restJson1UpdateQuickConnectConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQuickConnectNameCommand = async ( @@ -16625,65 +12694,34 @@ const deserializeAws_restJson1UpdateQuickConnectNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoutingProfileConcurrencyCommand = async ( @@ -16708,65 +12746,34 @@ const deserializeAws_restJson1UpdateRoutingProfileConcurrencyCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoutingProfileDefaultOutboundQueueCommand = async ( @@ -16791,65 +12798,34 @@ const deserializeAws_restJson1UpdateRoutingProfileDefaultOutboundQueueCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoutingProfileNameCommand = async ( @@ -16874,73 +12850,37 @@ const deserializeAws_restJson1UpdateRoutingProfileNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoutingProfileQueuesCommand = async ( @@ -16965,65 +12905,34 @@ const deserializeAws_restJson1UpdateRoutingProfileQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSecurityProfileCommand = async ( @@ -17048,65 +12957,34 @@ const deserializeAws_restJson1UpdateSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserHierarchyCommand = async ( @@ -17131,65 +13009,34 @@ const deserializeAws_restJson1UpdateUserHierarchyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserHierarchyGroupNameCommand = async ( @@ -17214,73 +13061,37 @@ const deserializeAws_restJson1UpdateUserHierarchyGroupNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.connect#DuplicateResourceException": - response = { - ...(await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DuplicateResourceExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserHierarchyStructureCommand = async ( @@ -17305,73 +13116,37 @@ const deserializeAws_restJson1UpdateUserHierarchyStructureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.connect#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserIdentityInfoCommand = async ( @@ -17396,65 +13171,34 @@ const deserializeAws_restJson1UpdateUserIdentityInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserPhoneConfigCommand = async ( @@ -17479,65 +13223,34 @@ const deserializeAws_restJson1UpdateUserPhoneConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserRoutingProfileCommand = async ( @@ -17562,65 +13275,34 @@ const deserializeAws_restJson1UpdateUserRoutingProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserSecurityProfilesCommand = async ( @@ -17645,317 +13327,265 @@ const deserializeAws_restJson1UpdateUserSecurityProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.connect#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.connect#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.connect#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connect#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ContactFlowNotPublishedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ContactFlowNotPublishedException = { - name: "ContactFlowNotPublishedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ContactFlowNotPublishedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ContactNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ContactNotFoundException = { - name: "ContactNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ContactNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DestinationNotAllowedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DestinationNotAllowedException = { - name: "DestinationNotAllowedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DestinationNotAllowedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DuplicateResourceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DuplicateResourceException = { - name: "DuplicateResourceException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DuplicateResourceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IdempotencyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IdempotencyException = { - name: "IdempotencyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IdempotencyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidContactFlowExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidContactFlowException = { - name: "InvalidContactFlowException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - problems: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.problems !== undefined && data.problems !== null) { contents.problems = deserializeAws_restJson1Problems(data.problems, context); } - return contents; + const exception = new InvalidContactFlowException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidContactFlowModuleExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidContactFlowModuleException = { - name: "InvalidContactFlowModuleException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Problems: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Problems !== undefined && data.Problems !== null) { contents.Problems = deserializeAws_restJson1Problems(data.Problems, context); } - return contents; + const exception = new InvalidContactFlowModuleException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1OutboundContactNotPermittedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: OutboundContactNotPermittedException = { - name: "OutboundContactNotPermittedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new OutboundContactNotPermittedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -17966,75 +13596,75 @@ const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UserNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UserNotFoundException = { - name: "UserNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UserNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AnswerMachineDetectionConfig = ( diff --git a/clients/client-connectparticipant/src/index.ts b/clients/client-connectparticipant/src/index.ts index 24b34012b67c4..4108a89f03b1b 100644 --- a/clients/client-connectparticipant/src/index.ts +++ b/clients/client-connectparticipant/src/index.ts @@ -3,3 +3,4 @@ export * from "./ConnectParticipantClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ConnectParticipantServiceException } from "./models/ConnectParticipantServiceException"; diff --git a/clients/client-connectparticipant/src/models/ConnectParticipantServiceException.ts b/clients/client-connectparticipant/src/models/ConnectParticipantServiceException.ts new file mode 100644 index 0000000000000..885ac79aaf081 --- /dev/null +++ b/clients/client-connectparticipant/src/models/ConnectParticipantServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ConnectParticipant service. + */ +export class ConnectParticipantServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ConnectParticipantServiceException.prototype); + } +} diff --git a/clients/client-connectparticipant/src/models/models_0.ts b/clients/client-connectparticipant/src/models/models_0.ts index 25b73ab5a81fd..1d339922f8579 100644 --- a/clients/client-connectparticipant/src/models/models_0.ts +++ b/clients/client-connectparticipant/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ConnectParticipantServiceException as __BaseException } from "./ConnectParticipantServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface CompleteAttachmentUploadRequest { @@ -50,46 +65,106 @@ export namespace CompleteAttachmentUploadResponse { /** *

An attachment with that identifier is already being uploaded.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

This exception occurs when there is an internal failure in the Amazon Connect service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The number of attachments per contact exceeds the quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The input fails to satisfy the constraints specified by Amazon Connect.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum ConnectionType { diff --git a/clients/client-connectparticipant/src/protocols/Aws_restJson1.ts b/clients/client-connectparticipant/src/protocols/Aws_restJson1.ts index 2a1e6e4f0a1a3..94ea95e854061 100644 --- a/clients/client-connectparticipant/src/protocols/Aws_restJson1.ts +++ b/clients/client-connectparticipant/src/protocols/Aws_restJson1.ts @@ -1,15 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -33,6 +32,7 @@ import { StartAttachmentUploadCommandInput, StartAttachmentUploadCommandOutput, } from "../commands/StartAttachmentUploadCommand"; +import { ConnectParticipantServiceException as __BaseException } from "../models/ConnectParticipantServiceException"; import { AccessDeniedException, AttachmentItem, @@ -301,73 +301,37 @@ const deserializeAws_restJson1CompleteAttachmentUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.connectparticipant#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connectparticipant#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateParticipantConnectionCommand = async ( @@ -400,57 +364,31 @@ const deserializeAws_restJson1CreateParticipantConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisconnectParticipantCommand = async ( @@ -475,57 +413,31 @@ const deserializeAws_restJson1DisconnectParticipantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAttachmentCommand = async ( @@ -558,57 +470,31 @@ const deserializeAws_restJson1GetAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTranscriptCommand = async ( @@ -645,57 +531,31 @@ const deserializeAws_restJson1GetTranscriptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendEventCommand = async ( @@ -728,57 +588,31 @@ const deserializeAws_restJson1SendEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendMessageCommand = async ( @@ -811,57 +645,31 @@ const deserializeAws_restJson1SendMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartAttachmentUploadCommand = async ( @@ -894,167 +702,130 @@ const deserializeAws_restJson1StartAttachmentUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.connectparticipant#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.connectparticipant#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.connectparticipant#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.connectparticipant#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.connectparticipant#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AttachmentIdList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-cost-and-usage-report-service/src/index.ts b/clients/client-cost-and-usage-report-service/src/index.ts index 2460ae6912cfc..1b2414011448d 100644 --- a/clients/client-cost-and-usage-report-service/src/index.ts +++ b/clients/client-cost-and-usage-report-service/src/index.ts @@ -3,3 +3,4 @@ export * from "./CostAndUsageReportServiceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CostAndUsageReportServiceServiceException } from "./models/CostAndUsageReportServiceServiceException"; diff --git a/clients/client-cost-and-usage-report-service/src/models/CostAndUsageReportServiceServiceException.ts b/clients/client-cost-and-usage-report-service/src/models/CostAndUsageReportServiceServiceException.ts new file mode 100644 index 0000000000000..7f0dce3b78f79 --- /dev/null +++ b/clients/client-cost-and-usage-report-service/src/models/CostAndUsageReportServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CostAndUsageReportService service. + */ +export class CostAndUsageReportServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CostAndUsageReportServiceServiceException.prototype); + } +} diff --git a/clients/client-cost-and-usage-report-service/src/models/models_0.ts b/clients/client-cost-and-usage-report-service/src/models/models_0.ts index 22bd9f051e693..76703bcc002fb 100644 --- a/clients/client-cost-and-usage-report-service/src/models/models_0.ts +++ b/clients/client-cost-and-usage-report-service/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CostAndUsageReportServiceServiceException as __BaseException } from "./CostAndUsageReportServiceServiceException"; export enum AdditionalArtifact { ATHENA = "ATHENA", @@ -47,25 +50,49 @@ export namespace DeleteReportDefinitionResponse { /** *

An error on the server occurred during the processing of your request. Try again later.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; /** *

A message to show the detail of the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + this.Message = opts.Message; + } } /** *

The input fails to satisfy the constraints specified by an AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A message to show the detail of the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -290,13 +317,25 @@ export namespace ModifyReportDefinitionResponse { /** *

A report with the specified name already exists in the account. Specify a different report name.

*/ -export interface DuplicateReportNameException extends __SmithyException, $MetadataBearer { - name: "DuplicateReportNameException"; - $fault: "client"; +export class DuplicateReportNameException extends __BaseException { + readonly name: "DuplicateReportNameException" = "DuplicateReportNameException"; + readonly $fault: "client" = "client"; /** *

A message to show the detail of the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateReportNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateReportNameException.prototype); + this.Message = opts.Message; + } } /** @@ -336,11 +375,23 @@ export namespace PutReportDefinitionResponse { /** *

This account already has five reports defined. To define a new report, you must delete an existing report.

*/ -export interface ReportLimitReachedException extends __SmithyException, $MetadataBearer { - name: "ReportLimitReachedException"; - $fault: "client"; +export class ReportLimitReachedException extends __BaseException { + readonly name: "ReportLimitReachedException" = "ReportLimitReachedException"; + readonly $fault: "client" = "client"; /** *

A message to show the detail of the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReportLimitReachedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReportLimitReachedException.prototype); + this.Message = opts.Message; + } } diff --git a/clients/client-cost-and-usage-report-service/src/protocols/Aws_json1_1.ts b/clients/client-cost-and-usage-report-service/src/protocols/Aws_json1_1.ts index c5c946a258ab1..c8a40ea9c25ae 100644 --- a/clients/client-cost-and-usage-report-service/src/protocols/Aws_json1_1.ts +++ b/clients/client-cost-and-usage-report-service/src/protocols/Aws_json1_1.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectBoolean as __expectBoolean, expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectBoolean as __expectBoolean, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -25,6 +27,7 @@ import { PutReportDefinitionCommandInput, PutReportDefinitionCommandOutput, } from "../commands/PutReportDefinitionCommand"; +import { CostAndUsageReportServiceServiceException as __BaseException } from "../models/CostAndUsageReportServiceServiceException"; import { AdditionalArtifact, DeleteReportDefinitionRequest, @@ -120,41 +123,25 @@ const deserializeAws_json1_1DeleteReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.costandusagereportservice#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.costandusagereportservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReportDefinitionsCommand = async ( @@ -182,33 +169,22 @@ const deserializeAws_json1_1DescribeReportDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.costandusagereportservice#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyReportDefinitionCommand = async ( @@ -236,41 +212,25 @@ const deserializeAws_json1_1ModifyReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.costandusagereportservice#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.costandusagereportservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutReportDefinitionCommand = async ( @@ -298,57 +258,31 @@ const deserializeAws_json1_1PutReportDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateReportNameException": case "com.amazonaws.costandusagereportservice#DuplicateReportNameException": - response = { - ...(await deserializeAws_json1_1DuplicateReportNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateReportNameExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.costandusagereportservice#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ReportLimitReachedException": case "com.amazonaws.costandusagereportservice#ReportLimitReachedException": - response = { - ...(await deserializeAws_json1_1ReportLimitReachedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReportLimitReachedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.costandusagereportservice#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DuplicateReportNameExceptionResponse = async ( @@ -357,13 +291,11 @@ const deserializeAws_json1_1DuplicateReportNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateReportNameException(body, context); - const contents: DuplicateReportNameException = { - name: "DuplicateReportNameException", - $fault: "client", + const exception = new DuplicateReportNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -372,13 +304,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReportLimitReachedExceptionResponse = async ( @@ -387,13 +317,11 @@ const deserializeAws_json1_1ReportLimitReachedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReportLimitReachedException(body, context); - const contents: ReportLimitReachedException = { - name: "ReportLimitReachedException", - $fault: "client", + const exception = new ReportLimitReachedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -402,13 +330,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AdditionalArtifactList = ( diff --git a/clients/client-cost-explorer/src/index.ts b/clients/client-cost-explorer/src/index.ts index a7e7f07f0f5c5..f770909875e17 100644 --- a/clients/client-cost-explorer/src/index.ts +++ b/clients/client-cost-explorer/src/index.ts @@ -3,3 +3,4 @@ export * from "./CostExplorerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { CostExplorerServiceException } from "./models/CostExplorerServiceException"; diff --git a/clients/client-cost-explorer/src/models/CostExplorerServiceException.ts b/clients/client-cost-explorer/src/models/CostExplorerServiceException.ts new file mode 100644 index 0000000000000..ee81bddf8a576 --- /dev/null +++ b/clients/client-cost-explorer/src/models/CostExplorerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CostExplorer service. + */ +export class CostExplorerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CostExplorerServiceException.prototype); + } +} diff --git a/clients/client-cost-explorer/src/models/models_0.ts b/clients/client-cost-explorer/src/models/models_0.ts index fa0f39d207268..b51c26436bec0 100644 --- a/clients/client-cost-explorer/src/models/models_0.ts +++ b/clients/client-cost-explorer/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CostExplorerServiceException as __BaseException } from "./CostExplorerServiceException"; export enum AccountScope { LINKED = "LINKED", @@ -464,10 +467,22 @@ export namespace CreateAnomalyMonitorResponse { /** *

You made too many calls in a short period of time. Try again later.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface CreateAnomalySubscriptionRequest { @@ -506,10 +521,22 @@ export namespace CreateAnomalySubscriptionResponse { *

The cost anomaly monitor does not exist for the account. *

*/ -export interface UnknownMonitorException extends __SmithyException, $MetadataBearer { - name: "UnknownMonitorException"; - $fault: "client"; +export class UnknownMonitorException extends __BaseException { + readonly name: "UnknownMonitorException" = "UnknownMonitorException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnknownMonitorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnknownMonitorException.prototype); + this.Message = opts.Message; + } } export enum CostCategoryInheritedValueDimensionName { @@ -668,10 +695,22 @@ export namespace CreateCostCategoryDefinitionResponse { *

You've reached the limit on the number of resources you can create, or exceeded the * size of an individual resource.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export interface DeleteAnomalyMonitorRequest { @@ -732,10 +771,22 @@ export namespace DeleteAnomalySubscriptionResponse { *

The cost anomaly subscription does not exist for the account. *

*/ -export interface UnknownSubscriptionException extends __SmithyException, $MetadataBearer { - name: "UnknownSubscriptionException"; - $fault: "client"; +export class UnknownSubscriptionException extends __BaseException { + readonly name: "UnknownSubscriptionException" = "UnknownSubscriptionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnknownSubscriptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnknownSubscriptionException.prototype); + this.Message = opts.Message; + } } export interface DeleteCostCategoryDefinitionRequest { @@ -786,10 +837,22 @@ export namespace DeleteCostCategoryDefinitionResponse { * The specified ARN in the request doesn't exist. *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeCostCategoryDefinitionRequest { @@ -960,10 +1023,22 @@ export namespace GetAnomaliesResponse { /** *

The pagination token is invalid. Try again without a pagination token.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface GetAnomalyMonitorsRequest { @@ -1050,19 +1125,43 @@ export namespace GetAnomalySubscriptionsResponse { /** *

The requested report expired. Update the date interval and try again.

*/ -export interface BillExpirationException extends __SmithyException, $MetadataBearer { - name: "BillExpirationException"; - $fault: "client"; +export class BillExpirationException extends __BaseException { + readonly name: "BillExpirationException" = "BillExpirationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BillExpirationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BillExpirationException.prototype); + this.Message = opts.Message; + } } /** *

The requested data is unavailable.

*/ -export interface DataUnavailableException extends __SmithyException, $MetadataBearer { - name: "DataUnavailableException"; - $fault: "client"; +export class DataUnavailableException extends __BaseException { + readonly name: "DataUnavailableException" = "DataUnavailableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataUnavailableException.prototype); + this.Message = opts.Message; + } } export enum Granularity { @@ -1273,10 +1372,22 @@ export namespace GetCostAndUsageResponse { *

Your request parameters changed between pages. Try again with the old parameters or * without a pagination token.

*/ -export interface RequestChangedException extends __SmithyException, $MetadataBearer { - name: "RequestChangedException"; - $fault: "client"; +export class RequestChangedException extends __BaseException { + readonly name: "RequestChangedException" = "RequestChangedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestChangedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestChangedException.prototype); + this.Message = opts.Message; + } } export interface GetCostAndUsageWithResourcesResponse { @@ -4003,10 +4114,22 @@ export namespace GetUsageForecastResponse { /** *

Cost Explorer was unable to identify the usage unit. Provide UsageType/UsageTypeGroup filter selections that contain matching units, for example: hours.

*/ -export interface UnresolvableUsageUnitException extends __SmithyException, $MetadataBearer { - name: "UnresolvableUsageUnitException"; - $fault: "client"; +export class UnresolvableUsageUnitException extends __BaseException { + readonly name: "UnresolvableUsageUnitException" = "UnresolvableUsageUnitException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnresolvableUsageUnitException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnresolvableUsageUnitException.prototype); + this.Message = opts.Message; + } } export interface ListCostCategoryDefinitionsRequest { diff --git a/clients/client-cost-explorer/src/protocols/Aws_json1_1.ts b/clients/client-cost-explorer/src/protocols/Aws_json1_1.ts index 2e4d1e91683e0..69338f68a7f89 100644 --- a/clients/client-cost-explorer/src/protocols/Aws_json1_1.ts +++ b/clients/client-cost-explorer/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectString as __expectString, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -111,6 +110,7 @@ import { UpdateCostCategoryDefinitionCommandInput, UpdateCostCategoryDefinitionCommandOutput, } from "../commands/UpdateCostCategoryDefinitionCommand"; +import { CostExplorerServiceException as __BaseException } from "../models/CostExplorerServiceException"; import { Anomaly, AnomalyDateInterval, @@ -680,33 +680,22 @@ const deserializeAws_json1_1CreateAnomalyMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAnomalySubscriptionCommand = async ( @@ -734,41 +723,25 @@ const deserializeAws_json1_1CreateAnomalySubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownMonitorException": case "com.amazonaws.costexplorer#UnknownMonitorException": - response = { - ...(await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCostCategoryDefinitionCommand = async ( @@ -796,41 +769,25 @@ const deserializeAws_json1_1CreateCostCategoryDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.costexplorer#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAnomalyMonitorCommand = async ( @@ -858,41 +815,25 @@ const deserializeAws_json1_1DeleteAnomalyMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownMonitorException": case "com.amazonaws.costexplorer#UnknownMonitorException": - response = { - ...(await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAnomalySubscriptionCommand = async ( @@ -920,41 +861,25 @@ const deserializeAws_json1_1DeleteAnomalySubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownSubscriptionException": case "com.amazonaws.costexplorer#UnknownSubscriptionException": - response = { - ...(await deserializeAws_json1_1UnknownSubscriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownSubscriptionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCostCategoryDefinitionCommand = async ( @@ -982,41 +907,25 @@ const deserializeAws_json1_1DeleteCostCategoryDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.costexplorer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCostCategoryDefinitionCommand = async ( @@ -1044,41 +953,25 @@ const deserializeAws_json1_1DescribeCostCategoryDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.costexplorer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAnomaliesCommand = async ( @@ -1106,41 +999,25 @@ const deserializeAws_json1_1GetAnomaliesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAnomalyMonitorsCommand = async ( @@ -1168,49 +1045,28 @@ const deserializeAws_json1_1GetAnomalyMonitorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownMonitorException": case "com.amazonaws.costexplorer#UnknownMonitorException": - response = { - ...(await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAnomalySubscriptionsCommand = async ( @@ -1238,49 +1094,28 @@ const deserializeAws_json1_1GetAnomalySubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownSubscriptionException": case "com.amazonaws.costexplorer#UnknownSubscriptionException": - response = { - ...(await deserializeAws_json1_1UnknownSubscriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownSubscriptionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCostAndUsageCommand = async ( @@ -1308,65 +1143,34 @@ const deserializeAws_json1_1GetCostAndUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BillExpirationException": case "com.amazonaws.costexplorer#BillExpirationException": - response = { - ...(await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context); case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RequestChangedException": case "com.amazonaws.costexplorer#RequestChangedException": - response = { - ...(await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCostAndUsageWithResourcesCommand = async ( @@ -1394,65 +1198,34 @@ const deserializeAws_json1_1GetCostAndUsageWithResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BillExpirationException": case "com.amazonaws.costexplorer#BillExpirationException": - response = { - ...(await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context); case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RequestChangedException": case "com.amazonaws.costexplorer#RequestChangedException": - response = { - ...(await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCostCategoriesCommand = async ( @@ -1480,65 +1253,34 @@ const deserializeAws_json1_1GetCostCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BillExpirationException": case "com.amazonaws.costexplorer#BillExpirationException": - response = { - ...(await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context); case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RequestChangedException": case "com.amazonaws.costexplorer#RequestChangedException": - response = { - ...(await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCostForecastCommand = async ( @@ -1566,41 +1308,25 @@ const deserializeAws_json1_1GetCostForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDimensionValuesCommand = async ( @@ -1628,65 +1354,34 @@ const deserializeAws_json1_1GetDimensionValuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BillExpirationException": case "com.amazonaws.costexplorer#BillExpirationException": - response = { - ...(await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context); case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RequestChangedException": case "com.amazonaws.costexplorer#RequestChangedException": - response = { - ...(await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetReservationCoverageCommand = async ( @@ -1714,49 +1409,28 @@ const deserializeAws_json1_1GetReservationCoverageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetReservationPurchaseRecommendationCommand = async ( @@ -1784,49 +1458,28 @@ const deserializeAws_json1_1GetReservationPurchaseRecommendationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetReservationUtilizationCommand = async ( @@ -1854,49 +1507,28 @@ const deserializeAws_json1_1GetReservationUtilizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRightsizingRecommendationCommand = async ( @@ -1924,41 +1556,25 @@ const deserializeAws_json1_1GetRightsizingRecommendationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSavingsPlansCoverageCommand = async ( @@ -1986,49 +1602,28 @@ const deserializeAws_json1_1GetSavingsPlansCoverageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSavingsPlansPurchaseRecommendationCommand = async ( @@ -2056,41 +1651,25 @@ const deserializeAws_json1_1GetSavingsPlansPurchaseRecommendationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSavingsPlansUtilizationCommand = async ( @@ -2118,41 +1697,25 @@ const deserializeAws_json1_1GetSavingsPlansUtilizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSavingsPlansUtilizationDetailsCommand = async ( @@ -2180,49 +1743,28 @@ const deserializeAws_json1_1GetSavingsPlansUtilizationDetailsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTagsCommand = async ( @@ -2250,65 +1792,34 @@ const deserializeAws_json1_1GetTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BillExpirationException": case "com.amazonaws.costexplorer#BillExpirationException": - response = { - ...(await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BillExpirationExceptionResponse(parsedOutput, context); case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.costexplorer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RequestChangedException": case "com.amazonaws.costexplorer#RequestChangedException": - response = { - ...(await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestChangedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUsageForecastCommand = async ( @@ -2336,49 +1847,28 @@ const deserializeAws_json1_1GetUsageForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DataUnavailableException": case "com.amazonaws.costexplorer#DataUnavailableException": - response = { - ...(await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataUnavailableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnresolvableUsageUnitException": case "com.amazonaws.costexplorer#UnresolvableUsageUnitException": - response = { - ...(await deserializeAws_json1_1UnresolvableUsageUnitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnresolvableUsageUnitExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCostCategoryDefinitionsCommand = async ( @@ -2406,33 +1896,22 @@ const deserializeAws_json1_1ListCostCategoryDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ProvideAnomalyFeedbackCommand = async ( @@ -2460,33 +1939,22 @@ const deserializeAws_json1_1ProvideAnomalyFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAnomalyMonitorCommand = async ( @@ -2514,41 +1982,25 @@ const deserializeAws_json1_1UpdateAnomalyMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownMonitorException": case "com.amazonaws.costexplorer#UnknownMonitorException": - response = { - ...(await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAnomalySubscriptionCommand = async ( @@ -2576,49 +2028,28 @@ const deserializeAws_json1_1UpdateAnomalySubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnknownMonitorException": case "com.amazonaws.costexplorer#UnknownMonitorException": - response = { - ...(await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownMonitorExceptionResponse(parsedOutput, context); case "UnknownSubscriptionException": case "com.amazonaws.costexplorer#UnknownSubscriptionException": - response = { - ...(await deserializeAws_json1_1UnknownSubscriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownSubscriptionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCostCategoryDefinitionCommand = async ( @@ -2646,49 +2077,28 @@ const deserializeAws_json1_1UpdateCostCategoryDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.costexplorer#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.costexplorer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.costexplorer#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1BillExpirationExceptionResponse = async ( @@ -2697,13 +2107,11 @@ const deserializeAws_json1_1BillExpirationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BillExpirationException(body, context); - const contents: BillExpirationException = { - name: "BillExpirationException", - $fault: "client", + const exception = new BillExpirationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DataUnavailableExceptionResponse = async ( @@ -2712,13 +2120,11 @@ const deserializeAws_json1_1DataUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataUnavailableException(body, context); - const contents: DataUnavailableException = { - name: "DataUnavailableException", - $fault: "client", + const exception = new DataUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -2727,13 +2133,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2742,13 +2146,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestChangedExceptionResponse = async ( @@ -2757,13 +2159,11 @@ const deserializeAws_json1_1RequestChangedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestChangedException(body, context); - const contents: RequestChangedException = { - name: "RequestChangedException", - $fault: "client", + const exception = new RequestChangedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2772,13 +2172,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( @@ -2787,13 +2185,11 @@ const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnknownMonitorExceptionResponse = async ( @@ -2802,13 +2198,11 @@ const deserializeAws_json1_1UnknownMonitorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnknownMonitorException(body, context); - const contents: UnknownMonitorException = { - name: "UnknownMonitorException", - $fault: "client", + const exception = new UnknownMonitorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnknownSubscriptionExceptionResponse = async ( @@ -2817,13 +2211,11 @@ const deserializeAws_json1_1UnknownSubscriptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnknownSubscriptionException(body, context); - const contents: UnknownSubscriptionException = { - name: "UnknownSubscriptionException", - $fault: "client", + const exception = new UnknownSubscriptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnresolvableUsageUnitExceptionResponse = async ( @@ -2832,13 +2224,11 @@ const deserializeAws_json1_1UnresolvableUsageUnitExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnresolvableUsageUnitException(body, context); - const contents: UnresolvableUsageUnitException = { - name: "UnresolvableUsageUnitException", - $fault: "client", + const exception = new UnresolvableUsageUnitException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AnomalyDateInterval = (input: AnomalyDateInterval, context: __SerdeContext): any => { diff --git a/clients/client-customer-profiles/src/index.ts b/clients/client-customer-profiles/src/index.ts index 6f18df967f865..47afc84643ee3 100644 --- a/clients/client-customer-profiles/src/index.ts +++ b/clients/client-customer-profiles/src/index.ts @@ -2,3 +2,4 @@ export * from "./CustomerProfiles"; export * from "./CustomerProfilesClient"; export * from "./commands"; export * from "./models"; +export { CustomerProfilesServiceException } from "./models/CustomerProfilesServiceException"; diff --git a/clients/client-customer-profiles/src/models/CustomerProfilesServiceException.ts b/clients/client-customer-profiles/src/models/CustomerProfilesServiceException.ts new file mode 100644 index 0000000000000..d05abfab60927 --- /dev/null +++ b/clients/client-customer-profiles/src/models/CustomerProfilesServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from CustomerProfiles service. + */ +export class CustomerProfilesServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, CustomerProfilesServiceException.prototype); + } +} diff --git a/clients/client-customer-profiles/src/models/models_0.ts b/clients/client-customer-profiles/src/models/models_0.ts index 6f485a81af945..f7f5c44354032 100644 --- a/clients/client-customer-profiles/src/models/models_0.ts +++ b/clients/client-customer-profiles/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { CustomerProfilesServiceException as __BaseException } from "./CustomerProfilesServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface AddProfileKeyRequest { @@ -64,37 +79,85 @@ export namespace AddProfileKeyResponse { /** *

The input you provided is invalid.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** *

An internal service error occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource does not exist, or access was denied.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You exceeded the maximum number of requests.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts b/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts index 92bc840dcb2d2..1ee8dfd3621f8 100644 --- a/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts +++ b/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddProfileKeyCommandInput, AddProfileKeyCommandOutput } from "../commands/AddProfileKeyCommand"; @@ -88,6 +87,7 @@ import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/T import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateDomainCommandInput, UpdateDomainCommandOutput } from "../commands/UpdateDomainCommand"; import { UpdateProfileCommandInput, UpdateProfileCommandOutput } from "../commands/UpdateProfileCommand"; +import { CustomerProfilesServiceException as __BaseException } from "../models/CustomerProfilesServiceException"; import { AccessDeniedException, Address, @@ -1425,65 +1425,34 @@ const deserializeAws_restJson1AddProfileKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainCommand = async ( @@ -1540,65 +1509,34 @@ const deserializeAws_restJson1CreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProfileCommand = async ( @@ -1627,65 +1565,34 @@ const deserializeAws_restJson1CreateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainCommand = async ( @@ -1714,65 +1621,34 @@ const deserializeAws_restJson1DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntegrationCommand = async ( @@ -1801,65 +1677,34 @@ const deserializeAws_restJson1DeleteIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProfileCommand = async ( @@ -1888,65 +1733,34 @@ const deserializeAws_restJson1DeleteProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProfileKeyCommand = async ( @@ -1975,65 +1789,34 @@ const deserializeAws_restJson1DeleteProfileKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProfileObjectCommand = async ( @@ -2062,65 +1845,34 @@ const deserializeAws_restJson1DeleteProfileObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProfileObjectTypeCommand = async ( @@ -2149,65 +1901,34 @@ const deserializeAws_restJson1DeleteProfileObjectTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAutoMergingPreviewCommand = async ( @@ -2248,65 +1969,34 @@ const deserializeAws_restJson1GetAutoMergingPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainCommand = async ( @@ -2367,65 +2057,34 @@ const deserializeAws_restJson1GetDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIdentityResolutionJobCommand = async ( @@ -2494,65 +2153,34 @@ const deserializeAws_restJson1GetIdentityResolutionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntegrationCommand = async ( @@ -2605,65 +2233,34 @@ const deserializeAws_restJson1GetIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMatchesCommand = async ( @@ -2704,65 +2301,34 @@ const deserializeAws_restJson1GetMatchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProfileObjectTypeCommand = async ( @@ -2835,65 +2401,34 @@ const deserializeAws_restJson1GetProfileObjectTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProfileObjectTypeTemplateCommand = async ( @@ -2946,65 +2481,34 @@ const deserializeAws_restJson1GetProfileObjectTypeTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccountIntegrationsCommand = async ( @@ -3037,65 +2541,34 @@ const deserializeAws_restJson1ListAccountIntegrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainsCommand = async ( @@ -3128,65 +2601,34 @@ const deserializeAws_restJson1ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIdentityResolutionJobsCommand = async ( @@ -3222,65 +2664,34 @@ const deserializeAws_restJson1ListIdentityResolutionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIntegrationsCommand = async ( @@ -3313,65 +2724,34 @@ const deserializeAws_restJson1ListIntegrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProfileObjectsCommand = async ( @@ -3404,65 +2784,34 @@ const deserializeAws_restJson1ListProfileObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProfileObjectTypesCommand = async ( @@ -3495,65 +2844,34 @@ const deserializeAws_restJson1ListProfileObjectTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProfileObjectTypeTemplatesCommand = async ( @@ -3586,65 +2904,34 @@ const deserializeAws_restJson1ListProfileObjectTypeTemplatesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3673,49 +2960,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MergeProfilesCommand = async ( @@ -3744,57 +3010,31 @@ const deserializeAws_restJson1MergeProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutIntegrationCommand = async ( @@ -3847,65 +3087,34 @@ const deserializeAws_restJson1PutIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutProfileObjectCommand = async ( @@ -3934,65 +3143,34 @@ const deserializeAws_restJson1PutProfileObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutProfileObjectTypeCommand = async ( @@ -4065,65 +3243,34 @@ const deserializeAws_restJson1PutProfileObjectTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchProfilesCommand = async ( @@ -4156,65 +3303,34 @@ const deserializeAws_restJson1SearchProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4239,49 +3355,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4306,49 +3401,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainCommand = async ( @@ -4405,65 +3479,34 @@ const deserializeAws_restJson1UpdateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProfileCommand = async ( @@ -4492,150 +3535,114 @@ const deserializeAws_restJson1UpdateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.customerprofiles#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.customerprofiles#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.customerprofiles#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.customerprofiles#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.customerprofiles#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Address = (input: Address, context: __SerdeContext): any => { diff --git a/clients/client-data-pipeline/src/index.ts b/clients/client-data-pipeline/src/index.ts index 8bf86a354651b..3570cda397c38 100644 --- a/clients/client-data-pipeline/src/index.ts +++ b/clients/client-data-pipeline/src/index.ts @@ -3,3 +3,4 @@ export * from "./DataPipelineClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DataPipelineServiceException } from "./models/DataPipelineServiceException"; diff --git a/clients/client-data-pipeline/src/models/DataPipelineServiceException.ts b/clients/client-data-pipeline/src/models/DataPipelineServiceException.ts new file mode 100644 index 0000000000000..46ed3e820062b --- /dev/null +++ b/clients/client-data-pipeline/src/models/DataPipelineServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DataPipeline service. + */ +export class DataPipelineServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DataPipelineServiceException.prototype); + } +} diff --git a/clients/client-data-pipeline/src/models/models_0.ts b/clients/client-data-pipeline/src/models/models_0.ts index 95fda001d7a24..0df7c331aa832 100644 --- a/clients/client-data-pipeline/src/models/models_0.ts +++ b/clients/client-data-pipeline/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DataPipelineServiceException as __BaseException } from "./DataPipelineServiceException"; /** *

A value or list of parameter values.

@@ -70,49 +73,77 @@ export namespace ActivatePipelineOutput { /** *

An internal service error occurred.

*/ -export interface InternalServiceError extends __SmithyException, $MetadataBearer { - name: "InternalServiceError"; - $fault: "server"; +export class InternalServiceError extends __BaseException { + readonly name: "InternalServiceError" = "InternalServiceError"; + readonly $fault: "server" = "server"; /** - *

Description of the error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceError.prototype); + } } /** *

The request was not valid. Verify that your request was properly formatted, that the signature was generated with the correct credentials, and that you haven't exceeded any of the service limits for your account.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

Description of the error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The specified pipeline has been deleted.

*/ -export interface PipelineDeletedException extends __SmithyException, $MetadataBearer { - name: "PipelineDeletedException"; - $fault: "client"; +export class PipelineDeletedException extends __BaseException { + readonly name: "PipelineDeletedException" = "PipelineDeletedException"; + readonly $fault: "client" = "client"; /** - *

Description of the error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineDeletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineDeletedException.prototype); + } } /** *

The specified pipeline was not found. Verify that you used the correct user and account identifiers.

*/ -export interface PipelineNotFoundException extends __SmithyException, $MetadataBearer { - name: "PipelineNotFoundException"; - $fault: "client"; +export class PipelineNotFoundException extends __BaseException { + readonly name: "PipelineNotFoundException" = "PipelineNotFoundException"; + readonly $fault: "client" = "client"; /** - *

Description of the error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PipelineNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PipelineNotFoundException.prototype); + } } /** @@ -557,13 +588,20 @@ export namespace EvaluateExpressionOutput { /** *

The specified task was not found.

*/ -export interface TaskNotFoundException extends __SmithyException, $MetadataBearer { - name: "TaskNotFoundException"; - $fault: "client"; +export class TaskNotFoundException extends __BaseException { + readonly name: "TaskNotFoundException" = "TaskNotFoundException"; + readonly $fault: "client" = "client"; /** - *

Description of the error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TaskNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TaskNotFoundException.prototype); + } } /** diff --git a/clients/client-data-pipeline/src/protocols/Aws_json1_1.ts b/clients/client-data-pipeline/src/protocols/Aws_json1_1.ts index f1b8e03b13495..885d7d70ffd3b 100644 --- a/clients/client-data-pipeline/src/protocols/Aws_json1_1.ts +++ b/clients/client-data-pipeline/src/protocols/Aws_json1_1.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectBoolean as __expectBoolean, expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectBoolean as __expectBoolean, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { ActivatePipelineCommandInput, ActivatePipelineCommandOutput } from "../commands/ActivatePipelineCommand"; @@ -40,6 +42,7 @@ import { ValidatePipelineDefinitionCommandInput, ValidatePipelineDefinitionCommandOutput, } from "../commands/ValidatePipelineDefinitionCommand"; +import { DataPipelineServiceException as __BaseException } from "../models/DataPipelineServiceException"; import { ActivatePipelineInput, ActivatePipelineOutput, @@ -371,57 +374,31 @@ const deserializeAws_json1_1ActivatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddTagsCommand = async ( @@ -449,57 +426,31 @@ const deserializeAws_json1_1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePipelineCommand = async ( @@ -527,41 +478,25 @@ const deserializeAws_json1_1CreatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeactivatePipelineCommand = async ( @@ -589,57 +524,31 @@ const deserializeAws_json1_1DeactivatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePipelineCommand = async ( @@ -664,49 +573,28 @@ const deserializeAws_json1_1DeletePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeObjectsCommand = async ( @@ -734,57 +622,31 @@ const deserializeAws_json1_1DescribeObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePipelinesCommand = async ( @@ -812,57 +674,31 @@ const deserializeAws_json1_1DescribePipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EvaluateExpressionCommand = async ( @@ -890,65 +726,34 @@ const deserializeAws_json1_1EvaluateExpressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "TaskNotFoundException": case "com.amazonaws.datapipeline#TaskNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPipelineDefinitionCommand = async ( @@ -976,57 +781,31 @@ const deserializeAws_json1_1GetPipelineDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelinesCommand = async ( @@ -1054,41 +833,25 @@ const deserializeAws_json1_1ListPipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PollForTaskCommand = async ( @@ -1116,49 +879,28 @@ const deserializeAws_json1_1PollForTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TaskNotFoundException": case "com.amazonaws.datapipeline#TaskNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPipelineDefinitionCommand = async ( @@ -1186,57 +928,31 @@ const deserializeAws_json1_1PutPipelineDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1QueryObjectsCommand = async ( @@ -1264,57 +980,31 @@ const deserializeAws_json1_1QueryObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsCommand = async ( @@ -1342,57 +1032,31 @@ const deserializeAws_json1_1RemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReportTaskProgressCommand = async ( @@ -1420,65 +1084,34 @@ const deserializeAws_json1_1ReportTaskProgressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "TaskNotFoundException": case "com.amazonaws.datapipeline#TaskNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReportTaskRunnerHeartbeatCommand = async ( @@ -1506,41 +1139,25 @@ const deserializeAws_json1_1ReportTaskRunnerHeartbeatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetStatusCommand = async ( @@ -1565,57 +1182,31 @@ const deserializeAws_json1_1SetStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetTaskStatusCommand = async ( @@ -1643,65 +1234,34 @@ const deserializeAws_json1_1SetTaskStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); case "TaskNotFoundException": case "com.amazonaws.datapipeline#TaskNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ValidatePipelineDefinitionCommand = async ( @@ -1729,57 +1289,31 @@ const deserializeAws_json1_1ValidatePipelineDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.datapipeline#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datapipeline#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "PipelineDeletedException": case "com.amazonaws.datapipeline#PipelineDeletedException": - response = { - ...(await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineDeletedExceptionResponse(parsedOutput, context); case "PipelineNotFoundException": case "com.amazonaws.datapipeline#PipelineNotFoundException": - response = { - ...(await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PipelineNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServiceErrorResponse = async ( @@ -1788,13 +1322,11 @@ const deserializeAws_json1_1InternalServiceErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceError(body, context); - const contents: InternalServiceError = { - name: "InternalServiceError", - $fault: "server", + const exception = new InternalServiceError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -1803,13 +1335,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineDeletedExceptionResponse = async ( @@ -1818,13 +1348,11 @@ const deserializeAws_json1_1PipelineDeletedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineDeletedException(body, context); - const contents: PipelineDeletedException = { - name: "PipelineDeletedException", - $fault: "client", + const exception = new PipelineDeletedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PipelineNotFoundExceptionResponse = async ( @@ -1833,13 +1361,11 @@ const deserializeAws_json1_1PipelineNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PipelineNotFoundException(body, context); - const contents: PipelineNotFoundException = { - name: "PipelineNotFoundException", - $fault: "client", + const exception = new PipelineNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TaskNotFoundExceptionResponse = async ( @@ -1848,13 +1374,11 @@ const deserializeAws_json1_1TaskNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TaskNotFoundException(body, context); - const contents: TaskNotFoundException = { - name: "TaskNotFoundException", - $fault: "client", + const exception = new TaskNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActivatePipelineInput = (input: ActivatePipelineInput, context: __SerdeContext): any => { diff --git a/clients/client-database-migration-service/src/index.ts b/clients/client-database-migration-service/src/index.ts index 1615d60d791d3..a1f58a0851c9d 100644 --- a/clients/client-database-migration-service/src/index.ts +++ b/clients/client-database-migration-service/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { DatabaseMigrationServiceServiceException } from "./models/DatabaseMigrationServiceServiceException"; diff --git a/clients/client-database-migration-service/src/models/DatabaseMigrationServiceServiceException.ts b/clients/client-database-migration-service/src/models/DatabaseMigrationServiceServiceException.ts new file mode 100644 index 0000000000000..864c7f14dd3c8 --- /dev/null +++ b/clients/client-database-migration-service/src/models/DatabaseMigrationServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DatabaseMigrationService service. + */ +export class DatabaseMigrationServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DatabaseMigrationServiceServiceException.prototype); + } +} diff --git a/clients/client-database-migration-service/src/models/models_0.ts b/clients/client-database-migration-service/src/models/models_0.ts index 61c9b59620e91..429f33c32fde4 100644 --- a/clients/client-database-migration-service/src/models/models_0.ts +++ b/clients/client-database-migration-service/src/models/models_0.ts @@ -1,17 +1,26 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DatabaseMigrationServiceServiceException as __BaseException } from "./DatabaseMigrationServiceServiceException"; /** *

DMS was denied access to the endpoint. Check that the * role is correctly configured.

*/ -export interface AccessDeniedFault extends __SmithyException, $MetadataBearer { - name: "AccessDeniedFault"; - $fault: "client"; +export class AccessDeniedFault extends __BaseException { + readonly name: "AccessDeniedFault" = "AccessDeniedFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedFault.prototype); + } } /** @@ -139,13 +148,20 @@ export namespace AddTagsToResourceResponse { /** *

The resource could not be found.

*/ -export interface ResourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundFault"; - $fault: "client"; +export class ResourceNotFoundFault extends __BaseException { + readonly name: "ResourceNotFoundFault" = "ResourceNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundFault.prototype); + } } /** @@ -500,13 +516,20 @@ export namespace CancelReplicationTaskAssessmentRunResponse { /** *

The resource is in a state that prevents it from being used for database migration.

*/ -export interface InvalidResourceStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidResourceStateFault"; - $fault: "client"; +export class InvalidResourceStateFault extends __BaseException { + readonly name: "InvalidResourceStateFault" = "InvalidResourceStateFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceStateFault.prototype); + } } /** @@ -3780,48 +3803,79 @@ export namespace CreateEndpointResponse { /** *

DMS cannot access the KMS key.

*/ -export interface KMSKeyNotAccessibleFault extends __SmithyException, $MetadataBearer { - name: "KMSKeyNotAccessibleFault"; - $fault: "client"; +export class KMSKeyNotAccessibleFault extends __BaseException { + readonly name: "KMSKeyNotAccessibleFault" = "KMSKeyNotAccessibleFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSKeyNotAccessibleFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSKeyNotAccessibleFault.prototype); + } } /** *

The resource you are attempting to create already exists.

*/ -export interface ResourceAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsFault"; - $fault: "client"; +export class ResourceAlreadyExistsFault extends __BaseException { + readonly name: "ResourceAlreadyExistsFault" = "ResourceAlreadyExistsFault"; + readonly $fault: "client" = "client"; + resourceArn?: string; /** - *

+ * @internal */ - message?: string; - - resourceArn?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsFault.prototype); + this.resourceArn = opts.resourceArn; + } } /** *

The quota for this resource quota has been exceeded.

*/ -export interface ResourceQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ResourceQuotaExceededFault"; - $fault: "client"; +export class ResourceQuotaExceededFault extends __BaseException { + readonly name: "ResourceQuotaExceededFault" = "ResourceQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceQuotaExceededFault.prototype); + } } /** *

Insufficient privileges are preventing access to an Amazon S3 object.

*/ -export interface S3AccessDeniedFault extends __SmithyException, $MetadataBearer { - name: "S3AccessDeniedFault"; - $fault: "client"; - message?: string; +export class S3AccessDeniedFault extends __BaseException { + readonly name: "S3AccessDeniedFault" = "S3AccessDeniedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "S3AccessDeniedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, S3AccessDeniedFault.prototype); + } } /** @@ -3979,70 +4033,134 @@ export namespace CreateEventSubscriptionResponse { /** *

The ciphertext references a key that doesn't exist or that the DMS account doesn't have access to.

*/ -export interface KMSAccessDeniedFault extends __SmithyException, $MetadataBearer { - name: "KMSAccessDeniedFault"; - $fault: "client"; - message?: string; +export class KMSAccessDeniedFault extends __BaseException { + readonly name: "KMSAccessDeniedFault" = "KMSAccessDeniedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSAccessDeniedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSAccessDeniedFault.prototype); + } } /** *

The specified KMS key isn't enabled.

*/ -export interface KMSDisabledFault extends __SmithyException, $MetadataBearer { - name: "KMSDisabledFault"; - $fault: "client"; - message?: string; +export class KMSDisabledFault extends __BaseException { + readonly name: "KMSDisabledFault" = "KMSDisabledFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSDisabledFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSDisabledFault.prototype); + } } /** *

The state of the specified KMS resource isn't valid for this request.

*/ -export interface KMSInvalidStateFault extends __SmithyException, $MetadataBearer { - name: "KMSInvalidStateFault"; - $fault: "client"; - message?: string; +export class KMSInvalidStateFault extends __BaseException { + readonly name: "KMSInvalidStateFault" = "KMSInvalidStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInvalidStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSInvalidStateFault.prototype); + } } /** *

The specified KMS entity or resource can't be found.

*/ -export interface KMSNotFoundFault extends __SmithyException, $MetadataBearer { - name: "KMSNotFoundFault"; - $fault: "client"; - message?: string; +export class KMSNotFoundFault extends __BaseException { + readonly name: "KMSNotFoundFault" = "KMSNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSNotFoundFault.prototype); + } } /** *

This request triggered KMS request throttling.

*/ -export interface KMSThrottlingFault extends __SmithyException, $MetadataBearer { - name: "KMSThrottlingFault"; - $fault: "client"; - message?: string; +export class KMSThrottlingFault extends __BaseException { + readonly name: "KMSThrottlingFault" = "KMSThrottlingFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSThrottlingFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSThrottlingFault.prototype); + } } /** *

The SNS topic is invalid.

*/ -export interface SNSInvalidTopicFault extends __SmithyException, $MetadataBearer { - name: "SNSInvalidTopicFault"; - $fault: "client"; +export class SNSInvalidTopicFault extends __BaseException { + readonly name: "SNSInvalidTopicFault" = "SNSInvalidTopicFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSInvalidTopicFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSInvalidTopicFault.prototype); + } } /** *

You are not authorized for the SNS subscription.

*/ -export interface SNSNoAuthorizationFault extends __SmithyException, $MetadataBearer { - name: "SNSNoAuthorizationFault"; - $fault: "client"; +export class SNSNoAuthorizationFault extends __BaseException { + readonly name: "SNSNoAuthorizationFault" = "SNSNoAuthorizationFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSNoAuthorizationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSNoAuthorizationFault.prototype); + } } /** @@ -4625,49 +4743,77 @@ export namespace CreateReplicationInstanceResponse { /** *

There are not enough resources allocated to the database migration.

*/ -export interface InsufficientResourceCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientResourceCapacityFault"; - $fault: "client"; +export class InsufficientResourceCapacityFault extends __BaseException { + readonly name: "InsufficientResourceCapacityFault" = "InsufficientResourceCapacityFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientResourceCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientResourceCapacityFault.prototype); + } } /** *

The subnet provided is invalid.

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet group and add more AZs.

*/ -export interface ReplicationSubnetGroupDoesNotCoverEnoughAZs extends __SmithyException, $MetadataBearer { - name: "ReplicationSubnetGroupDoesNotCoverEnoughAZs"; - $fault: "client"; +export class ReplicationSubnetGroupDoesNotCoverEnoughAZs extends __BaseException { + readonly name: "ReplicationSubnetGroupDoesNotCoverEnoughAZs" = "ReplicationSubnetGroupDoesNotCoverEnoughAZs"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationSubnetGroupDoesNotCoverEnoughAZs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationSubnetGroupDoesNotCoverEnoughAZs.prototype); + } } /** *

The storage quota has been exceeded.

*/ -export interface StorageQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "StorageQuotaExceededFault"; - $fault: "client"; +export class StorageQuotaExceededFault extends __BaseException { + readonly name: "StorageQuotaExceededFault" = "StorageQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageQuotaExceededFault.prototype); + } } /** @@ -7755,10 +7901,20 @@ export namespace ImportCertificateResponse { /** *

The certificate was not valid.

*/ -export interface InvalidCertificateFault extends __SmithyException, $MetadataBearer { - name: "InvalidCertificateFault"; - $fault: "client"; - message?: string; +export class InvalidCertificateFault extends __BaseException { + readonly name: "InvalidCertificateFault" = "InvalidCertificateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCertificateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCertificateFault.prototype); + } } /** @@ -8321,13 +8477,20 @@ export namespace ModifyReplicationInstanceResponse { /** *

An upgrade dependency is preventing the database migration.

*/ -export interface UpgradeDependencyFailureFault extends __SmithyException, $MetadataBearer { - name: "UpgradeDependencyFailureFault"; - $fault: "client"; +export class UpgradeDependencyFailureFault extends __BaseException { + readonly name: "UpgradeDependencyFailureFault" = "UpgradeDependencyFailureFault"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UpgradeDependencyFailureFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UpgradeDependencyFailureFault.prototype); + } } /** @@ -8381,13 +8544,20 @@ export namespace ModifyReplicationSubnetGroupResponse { /** *

The specified subnet is already in use.

*/ -export interface SubnetAlreadyInUse extends __SmithyException, $MetadataBearer { - name: "SubnetAlreadyInUse"; - $fault: "client"; +export class SubnetAlreadyInUse extends __BaseException { + readonly name: "SubnetAlreadyInUse" = "SubnetAlreadyInUse"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetAlreadyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetAlreadyInUse.prototype); + } } /** @@ -8885,20 +9055,40 @@ export namespace StartReplicationTaskAssessmentResponse { /** *

An Key Management Service (KMS) error is preventing access to KMS.

*/ -export interface KMSFault extends __SmithyException, $MetadataBearer { - name: "KMSFault"; - $fault: "client"; - message?: string; +export class KMSFault extends __BaseException { + readonly name: "KMSFault" = "KMSFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSFault.prototype); + } } /** *

A specified Amazon S3 bucket, bucket folder, or other object can't be * found.

*/ -export interface S3ResourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "S3ResourceNotFoundFault"; - $fault: "client"; - message?: string; +export class S3ResourceNotFoundFault extends __BaseException { + readonly name: "S3ResourceNotFoundFault" = "S3ResourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "S3ResourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, S3ResourceNotFoundFault.prototype); + } } /** diff --git a/clients/client-database-migration-service/src/protocols/Aws_json1_1.ts b/clients/client-database-migration-service/src/protocols/Aws_json1_1.ts index 7a534e4181ccf..f124af7258ddf 100644 --- a/clients/client-database-migration-service/src/protocols/Aws_json1_1.ts +++ b/clients/client-database-migration-service/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddTagsToResourceCommandInput, AddTagsToResourceCommandOutput } from "../commands/AddTagsToResourceCommand"; @@ -198,6 +197,7 @@ import { StopReplicationTaskCommandOutput, } from "../commands/StopReplicationTaskCommand"; import { TestConnectionCommandInput, TestConnectionCommandOutput } from "../commands/TestConnectionCommand"; +import { DatabaseMigrationServiceServiceException as __BaseException } from "../models/DatabaseMigrationServiceServiceException"; import { AccessDeniedFault, AccountQuota, @@ -1122,33 +1122,22 @@ const deserializeAws_json1_1AddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ApplyPendingMaintenanceActionCommand = async ( @@ -1176,33 +1165,22 @@ const deserializeAws_json1_1ApplyPendingMaintenanceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelReplicationTaskAssessmentRunCommand = async ( @@ -1230,49 +1208,28 @@ const deserializeAws_json1_1CancelReplicationTaskAssessmentRunCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEndpointCommand = async ( @@ -1300,81 +1257,40 @@ const deserializeAws_json1_1CreateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); case "S3AccessDeniedFault": case "com.amazonaws.databasemigrationservice#S3AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1S3AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1S3AccessDeniedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEventSubscriptionCommand = async ( @@ -1402,105 +1318,49 @@ const deserializeAws_json1_1CreateEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "KMSAccessDeniedFault": case "com.amazonaws.databasemigrationservice#KMSAccessDeniedFault": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedFaultResponse(parsedOutput, context); case "KMSDisabledFault": case "com.amazonaws.databasemigrationservice#KMSDisabledFault": - response = { - ...(await deserializeAws_json1_1KMSDisabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledFaultResponse(parsedOutput, context); case "KMSInvalidStateFault": case "com.amazonaws.databasemigrationservice#KMSInvalidStateFault": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateFaultResponse(parsedOutput, context); case "KMSNotFoundFault": case "com.amazonaws.databasemigrationservice#KMSNotFoundFault": - response = { - ...(await deserializeAws_json1_1KMSNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundFaultResponse(parsedOutput, context); case "KMSThrottlingFault": case "com.amazonaws.databasemigrationservice#KMSThrottlingFault": - response = { - ...(await deserializeAws_json1_1KMSThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSThrottlingFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.databasemigrationservice#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_json1_1SNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.databasemigrationservice#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_json1_1SNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SNSNoAuthorizationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateReplicationInstanceCommand = async ( @@ -1528,105 +1388,49 @@ const deserializeAws_json1_1CreateReplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InsufficientResourceCapacityFault": case "com.amazonaws.databasemigrationservice#InsufficientResourceCapacityFault": - response = { - ...(await deserializeAws_json1_1InsufficientResourceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientResourceCapacityFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.databasemigrationservice#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ReplicationSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.databasemigrationservice#ReplicationSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.databasemigrationservice#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1StorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateReplicationSubnetGroupCommand = async ( @@ -1654,73 +1458,37 @@ const deserializeAws_json1_1CreateReplicationSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.databasemigrationservice#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "ReplicationSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.databasemigrationservice#ReplicationSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateReplicationTaskCommand = async ( @@ -1748,73 +1516,37 @@ const deserializeAws_json1_1CreateReplicationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCertificateCommand = async ( @@ -1842,41 +1574,25 @@ const deserializeAws_json1_1DeleteCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectionCommand = async ( @@ -1904,49 +1620,28 @@ const deserializeAws_json1_1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEndpointCommand = async ( @@ -1974,41 +1669,25 @@ const deserializeAws_json1_1DeleteEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventSubscriptionCommand = async ( @@ -2036,41 +1715,25 @@ const deserializeAws_json1_1DeleteEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReplicationInstanceCommand = async ( @@ -2098,41 +1761,25 @@ const deserializeAws_json1_1DeleteReplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReplicationSubnetGroupCommand = async ( @@ -2160,41 +1807,25 @@ const deserializeAws_json1_1DeleteReplicationSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReplicationTaskCommand = async ( @@ -2222,41 +1853,25 @@ const deserializeAws_json1_1DeleteReplicationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReplicationTaskAssessmentRunCommand = async ( @@ -2284,49 +1899,28 @@ const deserializeAws_json1_1DeleteReplicationTaskAssessmentRunCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountAttributesCommand = async ( @@ -2354,25 +1948,19 @@ const deserializeAws_json1_1DescribeAccountAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicableIndividualAssessmentsCommand = async ( @@ -2400,49 +1988,28 @@ const deserializeAws_json1_1DescribeApplicableIndividualAssessmentsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCertificatesCommand = async ( @@ -2470,33 +2037,22 @@ const deserializeAws_json1_1DescribeCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionsCommand = async ( @@ -2524,33 +2080,22 @@ const deserializeAws_json1_1DescribeConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointsCommand = async ( @@ -2578,33 +2123,22 @@ const deserializeAws_json1_1DescribeEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointSettingsCommand = async ( @@ -2632,25 +2166,19 @@ const deserializeAws_json1_1DescribeEndpointSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointTypesCommand = async ( @@ -2678,25 +2206,19 @@ const deserializeAws_json1_1DescribeEndpointTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventCategoriesCommand = async ( @@ -2724,25 +2246,19 @@ const deserializeAws_json1_1DescribeEventCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsCommand = async ( @@ -2770,25 +2286,19 @@ const deserializeAws_json1_1DescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventSubscriptionsCommand = async ( @@ -2816,33 +2326,22 @@ const deserializeAws_json1_1DescribeEventSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrderableReplicationInstancesCommand = async ( @@ -2870,25 +2369,19 @@ const deserializeAws_json1_1DescribeOrderableReplicationInstancesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePendingMaintenanceActionsCommand = async ( @@ -2916,33 +2409,22 @@ const deserializeAws_json1_1DescribePendingMaintenanceActionsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRefreshSchemasStatusCommand = async ( @@ -2970,41 +2452,25 @@ const deserializeAws_json1_1DescribeRefreshSchemasStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationInstancesCommand = async ( @@ -3032,33 +2498,22 @@ const deserializeAws_json1_1DescribeReplicationInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationInstanceTaskLogsCommand = async ( @@ -3086,41 +2541,25 @@ const deserializeAws_json1_1DescribeReplicationInstanceTaskLogsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationSubnetGroupsCommand = async ( @@ -3148,33 +2587,22 @@ const deserializeAws_json1_1DescribeReplicationSubnetGroupsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationTaskAssessmentResultsCommand = async ( @@ -3202,33 +2630,22 @@ const deserializeAws_json1_1DescribeReplicationTaskAssessmentResultsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationTaskAssessmentRunsCommand = async ( @@ -3256,33 +2673,22 @@ const deserializeAws_json1_1DescribeReplicationTaskAssessmentRunsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationTaskIndividualAssessmentsCommand = async ( @@ -3310,33 +2716,22 @@ const deserializeAws_json1_1DescribeReplicationTaskIndividualAssessmentsCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplicationTasksCommand = async ( @@ -3364,33 +2759,22 @@ const deserializeAws_json1_1DescribeReplicationTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSchemasCommand = async ( @@ -3418,41 +2802,25 @@ const deserializeAws_json1_1DescribeSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTableStatisticsCommand = async ( @@ -3480,41 +2848,25 @@ const deserializeAws_json1_1DescribeTableStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportCertificateCommand = async ( @@ -3542,49 +2894,28 @@ const deserializeAws_json1_1ImportCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidCertificateFault": case "com.amazonaws.databasemigrationservice#InvalidCertificateFault": - response = { - ...(await deserializeAws_json1_1InvalidCertificateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCertificateFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3612,33 +2943,22 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyEndpointCommand = async ( @@ -3666,65 +2986,34 @@ const deserializeAws_json1_1ModifyEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyEventSubscriptionCommand = async ( @@ -3752,97 +3041,46 @@ const deserializeAws_json1_1ModifyEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "KMSAccessDeniedFault": case "com.amazonaws.databasemigrationservice#KMSAccessDeniedFault": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedFaultResponse(parsedOutput, context); case "KMSDisabledFault": case "com.amazonaws.databasemigrationservice#KMSDisabledFault": - response = { - ...(await deserializeAws_json1_1KMSDisabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledFaultResponse(parsedOutput, context); case "KMSInvalidStateFault": case "com.amazonaws.databasemigrationservice#KMSInvalidStateFault": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateFaultResponse(parsedOutput, context); case "KMSNotFoundFault": case "com.amazonaws.databasemigrationservice#KMSNotFoundFault": - response = { - ...(await deserializeAws_json1_1KMSNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundFaultResponse(parsedOutput, context); case "KMSThrottlingFault": case "com.amazonaws.databasemigrationservice#KMSThrottlingFault": - response = { - ...(await deserializeAws_json1_1KMSThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSThrottlingFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.databasemigrationservice#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_json1_1SNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.databasemigrationservice#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_json1_1SNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SNSNoAuthorizationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyReplicationInstanceCommand = async ( @@ -3870,81 +3108,40 @@ const deserializeAws_json1_1ModifyReplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InsufficientResourceCapacityFault": case "com.amazonaws.databasemigrationservice#InsufficientResourceCapacityFault": - response = { - ...(await deserializeAws_json1_1InsufficientResourceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientResourceCapacityFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.databasemigrationservice#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1StorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageQuotaExceededFaultResponse(parsedOutput, context); case "UpgradeDependencyFailureFault": case "com.amazonaws.databasemigrationservice#UpgradeDependencyFailureFault": - response = { - ...(await deserializeAws_json1_1UpgradeDependencyFailureFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UpgradeDependencyFailureFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyReplicationSubnetGroupCommand = async ( @@ -3972,73 +3169,37 @@ const deserializeAws_json1_1ModifyReplicationSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.databasemigrationservice#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "ReplicationSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.databasemigrationservice#ReplicationSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); case "SubnetAlreadyInUse": case "com.amazonaws.databasemigrationservice#SubnetAlreadyInUse": - response = { - ...(await deserializeAws_json1_1SubnetAlreadyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetAlreadyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyReplicationTaskCommand = async ( @@ -4066,57 +3227,31 @@ const deserializeAws_json1_1ModifyReplicationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MoveReplicationTaskCommand = async ( @@ -4144,65 +3279,34 @@ const deserializeAws_json1_1MoveReplicationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebootReplicationInstanceCommand = async ( @@ -4230,41 +3334,25 @@ const deserializeAws_json1_1RebootReplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RefreshSchemasCommand = async ( @@ -4292,57 +3380,31 @@ const deserializeAws_json1_1RefreshSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReloadTablesCommand = async ( @@ -4370,41 +3432,25 @@ const deserializeAws_json1_1ReloadTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromResourceCommand = async ( @@ -4432,33 +3478,22 @@ const deserializeAws_json1_1RemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartReplicationTaskCommand = async ( @@ -4486,49 +3521,28 @@ const deserializeAws_json1_1StartReplicationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartReplicationTaskAssessmentCommand = async ( @@ -4556,41 +3570,25 @@ const deserializeAws_json1_1StartReplicationTaskAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartReplicationTaskAssessmentRunCommand = async ( @@ -4618,121 +3616,55 @@ const deserializeAws_json1_1StartReplicationTaskAssessmentRunCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSAccessDeniedFault": case "com.amazonaws.databasemigrationservice#KMSAccessDeniedFault": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedFaultResponse(parsedOutput, context); case "KMSDisabledFault": case "com.amazonaws.databasemigrationservice#KMSDisabledFault": - response = { - ...(await deserializeAws_json1_1KMSDisabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledFaultResponse(parsedOutput, context); case "KMSFault": case "com.amazonaws.databasemigrationservice#KMSFault": - response = { - ...(await deserializeAws_json1_1KMSFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSFaultResponse(parsedOutput, context); case "KMSInvalidStateFault": case "com.amazonaws.databasemigrationservice#KMSInvalidStateFault": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "KMSNotFoundFault": case "com.amazonaws.databasemigrationservice#KMSNotFoundFault": - response = { - ...(await deserializeAws_json1_1KMSNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundFaultResponse(parsedOutput, context); case "ResourceAlreadyExistsFault": case "com.amazonaws.databasemigrationservice#ResourceAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "S3AccessDeniedFault": case "com.amazonaws.databasemigrationservice#S3AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1S3AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1S3AccessDeniedFaultResponse(parsedOutput, context); case "S3ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#S3ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1S3ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1S3ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopReplicationTaskCommand = async ( @@ -4760,41 +3692,25 @@ const deserializeAws_json1_1StopReplicationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestConnectionCommand = async ( @@ -4822,65 +3738,34 @@ const deserializeAws_json1_1TestConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedFault": case "com.amazonaws.databasemigrationservice#AccessDeniedFault": - response = { - ...(await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedFaultResponse(parsedOutput, context); case "InvalidResourceStateFault": case "com.amazonaws.databasemigrationservice#InvalidResourceStateFault": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.databasemigrationservice#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.databasemigrationservice#ResourceNotFoundFault": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundFaultResponse(parsedOutput, context); case "ResourceQuotaExceededFault": case "com.amazonaws.databasemigrationservice#ResourceQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedFaultResponse = async ( @@ -4889,13 +3774,11 @@ const deserializeAws_json1_1AccessDeniedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedFault(body, context); - const contents: AccessDeniedFault = { - name: "AccessDeniedFault", - $fault: "client", + const exception = new AccessDeniedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientResourceCapacityFaultResponse = async ( @@ -4904,13 +3787,11 @@ const deserializeAws_json1_1InsufficientResourceCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientResourceCapacityFault(body, context); - const contents: InsufficientResourceCapacityFault = { - name: "InsufficientResourceCapacityFault", - $fault: "client", + const exception = new InsufficientResourceCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCertificateFaultResponse = async ( @@ -4919,13 +3800,11 @@ const deserializeAws_json1_1InvalidCertificateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCertificateFault(body, context); - const contents: InvalidCertificateFault = { - name: "InvalidCertificateFault", - $fault: "client", + const exception = new InvalidCertificateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceStateFaultResponse = async ( @@ -4934,13 +3813,11 @@ const deserializeAws_json1_1InvalidResourceStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceStateFault(body, context); - const contents: InvalidResourceStateFault = { - name: "InvalidResourceStateFault", - $fault: "client", + const exception = new InvalidResourceStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSubnetResponse = async ( @@ -4949,13 +3826,11 @@ const deserializeAws_json1_1InvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSubnet(body, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSAccessDeniedFaultResponse = async ( @@ -4964,13 +3839,11 @@ const deserializeAws_json1_1KMSAccessDeniedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSAccessDeniedFault(body, context); - const contents: KMSAccessDeniedFault = { - name: "KMSAccessDeniedFault", - $fault: "client", + const exception = new KMSAccessDeniedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSDisabledFaultResponse = async ( @@ -4979,13 +3852,11 @@ const deserializeAws_json1_1KMSDisabledFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSDisabledFault(body, context); - const contents: KMSDisabledFault = { - name: "KMSDisabledFault", - $fault: "client", + const exception = new KMSDisabledFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSFaultResponse = async ( @@ -4994,13 +3865,11 @@ const deserializeAws_json1_1KMSFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSFault(body, context); - const contents: KMSFault = { - name: "KMSFault", - $fault: "client", + const exception = new KMSFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSInvalidStateFaultResponse = async ( @@ -5009,13 +3878,11 @@ const deserializeAws_json1_1KMSInvalidStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSInvalidStateFault(body, context); - const contents: KMSInvalidStateFault = { - name: "KMSInvalidStateFault", - $fault: "client", + const exception = new KMSInvalidStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse = async ( @@ -5024,13 +3891,11 @@ const deserializeAws_json1_1KMSKeyNotAccessibleFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSKeyNotAccessibleFault(body, context); - const contents: KMSKeyNotAccessibleFault = { - name: "KMSKeyNotAccessibleFault", - $fault: "client", + const exception = new KMSKeyNotAccessibleFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSNotFoundFaultResponse = async ( @@ -5039,13 +3904,11 @@ const deserializeAws_json1_1KMSNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSNotFoundFault(body, context); - const contents: KMSNotFoundFault = { - name: "KMSNotFoundFault", - $fault: "client", + const exception = new KMSNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSThrottlingFaultResponse = async ( @@ -5054,13 +3917,11 @@ const deserializeAws_json1_1KMSThrottlingFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSThrottlingFault(body, context); - const contents: KMSThrottlingFault = { - name: "KMSThrottlingFault", - $fault: "client", + const exception = new KMSThrottlingFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse = async ( @@ -5069,13 +3930,11 @@ const deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZsResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReplicationSubnetGroupDoesNotCoverEnoughAZs(body, context); - const contents: ReplicationSubnetGroupDoesNotCoverEnoughAZs = { - name: "ReplicationSubnetGroupDoesNotCoverEnoughAZs", - $fault: "client", + const exception = new ReplicationSubnetGroupDoesNotCoverEnoughAZs({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsFaultResponse = async ( @@ -5084,13 +3943,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsFault(body, context); - const contents: ResourceAlreadyExistsFault = { - name: "ResourceAlreadyExistsFault", - $fault: "client", + const exception = new ResourceAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundFaultResponse = async ( @@ -5099,13 +3956,11 @@ const deserializeAws_json1_1ResourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundFault(body, context); - const contents: ResourceNotFoundFault = { - name: "ResourceNotFoundFault", - $fault: "client", + const exception = new ResourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceQuotaExceededFaultResponse = async ( @@ -5114,13 +3969,11 @@ const deserializeAws_json1_1ResourceQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceQuotaExceededFault(body, context); - const contents: ResourceQuotaExceededFault = { - name: "ResourceQuotaExceededFault", - $fault: "client", + const exception = new ResourceQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1S3AccessDeniedFaultResponse = async ( @@ -5129,13 +3982,11 @@ const deserializeAws_json1_1S3AccessDeniedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1S3AccessDeniedFault(body, context); - const contents: S3AccessDeniedFault = { - name: "S3AccessDeniedFault", - $fault: "client", + const exception = new S3AccessDeniedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1S3ResourceNotFoundFaultResponse = async ( @@ -5144,13 +3995,11 @@ const deserializeAws_json1_1S3ResourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1S3ResourceNotFoundFault(body, context); - const contents: S3ResourceNotFoundFault = { - name: "S3ResourceNotFoundFault", - $fault: "client", + const exception = new S3ResourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SNSInvalidTopicFaultResponse = async ( @@ -5159,13 +4008,11 @@ const deserializeAws_json1_1SNSInvalidTopicFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SNSInvalidTopicFault(body, context); - const contents: SNSInvalidTopicFault = { - name: "SNSInvalidTopicFault", - $fault: "client", + const exception = new SNSInvalidTopicFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SNSNoAuthorizationFaultResponse = async ( @@ -5174,13 +4021,11 @@ const deserializeAws_json1_1SNSNoAuthorizationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SNSNoAuthorizationFault(body, context); - const contents: SNSNoAuthorizationFault = { - name: "SNSNoAuthorizationFault", - $fault: "client", + const exception = new SNSNoAuthorizationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1StorageQuotaExceededFaultResponse = async ( @@ -5189,13 +4034,11 @@ const deserializeAws_json1_1StorageQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1StorageQuotaExceededFault(body, context); - const contents: StorageQuotaExceededFault = { - name: "StorageQuotaExceededFault", - $fault: "client", + const exception = new StorageQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetAlreadyInUseResponse = async ( @@ -5204,13 +4047,11 @@ const deserializeAws_json1_1SubnetAlreadyInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetAlreadyInUse(body, context); - const contents: SubnetAlreadyInUse = { - name: "SubnetAlreadyInUse", - $fault: "client", + const exception = new SubnetAlreadyInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UpgradeDependencyFailureFaultResponse = async ( @@ -5219,13 +4060,11 @@ const deserializeAws_json1_1UpgradeDependencyFailureFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UpgradeDependencyFailureFault(body, context); - const contents: UpgradeDependencyFailureFault = { - name: "UpgradeDependencyFailureFault", - $fault: "client", + const exception = new UpgradeDependencyFailureFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsToResourceMessage = ( diff --git a/clients/client-databrew/src/index.ts b/clients/client-databrew/src/index.ts index f08d9a8441027..99290280bc515 100644 --- a/clients/client-databrew/src/index.ts +++ b/clients/client-databrew/src/index.ts @@ -3,3 +3,4 @@ export * from "./DataBrewClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DataBrewServiceException } from "./models/DataBrewServiceException"; diff --git a/clients/client-databrew/src/models/DataBrewServiceException.ts b/clients/client-databrew/src/models/DataBrewServiceException.ts new file mode 100644 index 0000000000000..e052ff25f7d2d --- /dev/null +++ b/clients/client-databrew/src/models/DataBrewServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DataBrew service. + */ +export class DataBrewServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DataBrewServiceException.prototype); + } +} diff --git a/clients/client-databrew/src/models/models_0.ts b/clients/client-databrew/src/models/models_0.ts index 391db4fda66cf..b1d79ec98a499 100644 --- a/clients/client-databrew/src/models/models_0.ts +++ b/clients/client-databrew/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DataBrewServiceException as __BaseException } from "./DataBrewServiceException"; /** *

Access to the specified resource was denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -113,28 +127,64 @@ export namespace BatchDeleteRecipeVersionResponse { /** *

Updating or deleting a resource can cause an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

One or more resources can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The input parameters for this request failed validation.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum InputFormat { @@ -656,10 +706,22 @@ export namespace CreateDatasetResponse { /** *

A service quota is exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -1203,10 +1265,22 @@ export namespace CreateProjectResponse { /** *

An internal service failure occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-databrew/src/protocols/Aws_restJson1.ts b/clients/client-databrew/src/protocols/Aws_restJson1.ts index 01204713541f8..1cf418e3a7900 100644 --- a/clients/client-databrew/src/protocols/Aws_restJson1.ts +++ b/clients/client-databrew/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -79,6 +78,7 @@ import { UpdateRecipeCommandInput, UpdateRecipeCommandOutput } from "../commands import { UpdateRecipeJobCommandInput, UpdateRecipeJobCommandOutput } from "../commands/UpdateRecipeJobCommand"; import { UpdateRulesetCommandInput, UpdateRulesetCommandOutput } from "../commands/UpdateRulesetCommand"; import { UpdateScheduleCommandInput, UpdateScheduleCommandOutput } from "../commands/UpdateScheduleCommand"; +import { DataBrewServiceException as __BaseException } from "../models/DataBrewServiceException"; import { AccessDeniedException, AllowedStatistics, @@ -1612,49 +1612,28 @@ const deserializeAws_restJson1BatchDeleteRecipeVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDatasetCommand = async ( @@ -1683,57 +1662,31 @@ const deserializeAws_restJson1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.databrew#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProfileJobCommand = async ( @@ -1762,65 +1715,34 @@ const deserializeAws_restJson1CreateProfileJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.databrew#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProjectCommand = async ( @@ -1849,57 +1771,31 @@ const deserializeAws_restJson1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.databrew#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRecipeCommand = async ( @@ -1928,49 +1824,28 @@ const deserializeAws_restJson1CreateRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRecipeJobCommand = async ( @@ -1999,65 +1874,34 @@ const deserializeAws_restJson1CreateRecipeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.databrew#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRulesetCommand = async ( @@ -2086,49 +1930,28 @@ const deserializeAws_restJson1CreateRulesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateScheduleCommand = async ( @@ -2157,49 +1980,28 @@ const deserializeAws_restJson1CreateScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatasetCommand = async ( @@ -2228,49 +2030,28 @@ const deserializeAws_restJson1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobCommand = async ( @@ -2299,49 +2080,28 @@ const deserializeAws_restJson1DeleteJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProjectCommand = async ( @@ -2370,49 +2130,28 @@ const deserializeAws_restJson1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecipeVersionCommand = async ( @@ -2445,49 +2184,28 @@ const deserializeAws_restJson1DeleteRecipeVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRulesetCommand = async ( @@ -2516,49 +2234,28 @@ const deserializeAws_restJson1DeleteRulesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteScheduleCommand = async ( @@ -2587,41 +2284,25 @@ const deserializeAws_restJson1DeleteScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDatasetCommand = async ( @@ -2694,41 +2375,25 @@ const deserializeAws_restJson1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobCommand = async ( @@ -2852,41 +2517,25 @@ const deserializeAws_restJson1DescribeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobRunCommand = async ( @@ -2990,41 +2639,25 @@ const deserializeAws_restJson1DescribeJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProjectCommand = async ( @@ -3105,41 +2738,25 @@ const deserializeAws_restJson1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRecipeCommand = async ( @@ -3216,41 +2833,25 @@ const deserializeAws_restJson1DescribeRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRulesetCommand = async ( @@ -3315,41 +2916,25 @@ const deserializeAws_restJson1DescribeRulesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeScheduleCommand = async ( @@ -3410,41 +2995,25 @@ const deserializeAws_restJson1DescribeScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatasetsCommand = async ( @@ -3477,33 +3046,22 @@ const deserializeAws_restJson1ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobRunsCommand = async ( @@ -3536,41 +3094,25 @@ const deserializeAws_restJson1ListJobRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -3603,33 +3145,22 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectsCommand = async ( @@ -3662,33 +3193,22 @@ const deserializeAws_restJson1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecipesCommand = async ( @@ -3721,33 +3241,22 @@ const deserializeAws_restJson1ListRecipesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecipeVersionsCommand = async ( @@ -3780,33 +3289,22 @@ const deserializeAws_restJson1ListRecipeVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRulesetsCommand = async ( @@ -3839,41 +3337,25 @@ const deserializeAws_restJson1ListRulesetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSchedulesCommand = async ( @@ -3906,33 +3388,22 @@ const deserializeAws_restJson1ListSchedulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3961,49 +3432,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.databrew#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishRecipeCommand = async ( @@ -4032,49 +3482,28 @@ const deserializeAws_restJson1PublishRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendProjectSessionActionCommand = async ( @@ -4111,49 +3540,28 @@ const deserializeAws_restJson1SendProjectSessionActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartJobRunCommand = async ( @@ -4182,57 +3590,31 @@ const deserializeAws_restJson1StartJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartProjectSessionCommand = async ( @@ -4265,57 +3647,31 @@ const deserializeAws_restJson1StartProjectSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.databrew#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopJobRunCommand = async ( @@ -4344,41 +3700,25 @@ const deserializeAws_restJson1StopJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4403,49 +3743,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.databrew#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4470,49 +3789,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.databrew#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDatasetCommand = async ( @@ -4541,49 +3839,28 @@ const deserializeAws_restJson1UpdateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.databrew#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProfileJobCommand = async ( @@ -4612,49 +3889,28 @@ const deserializeAws_restJson1UpdateProfileJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.databrew#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProjectCommand = async ( @@ -4687,41 +3943,25 @@ const deserializeAws_restJson1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRecipeCommand = async ( @@ -4750,41 +3990,25 @@ const deserializeAws_restJson1UpdateRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRecipeJobCommand = async ( @@ -4813,49 +4037,28 @@ const deserializeAws_restJson1UpdateRecipeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.databrew#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRulesetCommand = async ( @@ -4884,41 +4087,25 @@ const deserializeAws_restJson1UpdateRulesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateScheduleCommand = async ( @@ -4947,151 +4134,124 @@ const deserializeAws_restJson1UpdateScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.databrew#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.databrew#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.databrew#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AllowedStatisticList = (input: AllowedStatistics[], context: __SerdeContext): any => { diff --git a/clients/client-dataexchange/src/index.ts b/clients/client-dataexchange/src/index.ts index 7a00844b183bc..97e8af24b2154 100644 --- a/clients/client-dataexchange/src/index.ts +++ b/clients/client-dataexchange/src/index.ts @@ -3,3 +3,4 @@ export * from "./DataExchangeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DataExchangeServiceException } from "./models/DataExchangeServiceException"; diff --git a/clients/client-dataexchange/src/models/DataExchangeServiceException.ts b/clients/client-dataexchange/src/models/DataExchangeServiceException.ts new file mode 100644 index 0000000000000..63e464d245d64 --- /dev/null +++ b/clients/client-dataexchange/src/models/DataExchangeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DataExchange service. + */ +export class DataExchangeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DataExchangeServiceException.prototype); + } +} diff --git a/clients/client-dataexchange/src/models/models_0.ts b/clients/client-dataexchange/src/models/models_0.ts index 1e8230e7c2909..6e7868785e60a 100644 --- a/clients/client-dataexchange/src/models/models_0.ts +++ b/clients/client-dataexchange/src/models/models_0.ts @@ -1,15 +1,30 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DataExchangeServiceException as __BaseException } from "./DataExchangeServiceException"; /** *

Access to the resource is denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

Access to the resource is denied.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ServerSideEncryptionTypes { @@ -388,9 +403,9 @@ export enum ResourceType { /** *

The request couldn't be completed because it conflicted with the current state of the resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The request couldn't be completed because it conflicted with the current state of the resource.

*/ @@ -405,26 +420,52 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource with the conflict.

*/ ResourceType?: ResourceType | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** * An exception occurred with the service. */ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** * The message identifying the service exception that occurred. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The resource couldn't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The resource couldn't be found.

*/ @@ -439,18 +480,44 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of resource that couldn't be found.

*/ ResourceType?: ResourceType | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The limit on the number of requests per second was exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

The limit on the number of requests per second was exceeded.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } export enum ExceptionCause { @@ -461,9 +528,9 @@ export enum ExceptionCause { /** *

The request was invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The message that informs you about what was invalid about the request.

*/ @@ -473,6 +540,19 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The message that informs you about what the exception was.

*/ ExceptionCause?: ExceptionCause | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.ExceptionCause = opts.ExceptionCause; + } } export enum Code { @@ -637,9 +717,9 @@ export enum LimitName { /** *

The request has exceeded the quotas imposed by the service.

*/ -export interface ServiceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceLimitExceededException"; - $fault: "client"; +export class ServiceLimitExceededException extends __BaseException { + readonly name: "ServiceLimitExceededException" = "ServiceLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The name of the quota that was exceeded.

*/ @@ -654,6 +734,20 @@ export interface ServiceLimitExceededException extends __SmithyException, $Metad *

The request has exceeded the quotas imposed by the service.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLimitExceededException.prototype); + this.LimitName = opts.LimitName; + this.LimitValue = opts.LimitValue; + this.Message = opts.Message; + } } /** diff --git a/clients/client-dataexchange/src/protocols/Aws_restJson1.ts b/clients/client-dataexchange/src/protocols/Aws_restJson1.ts index 019d96f903427..1c18c84f6ff7e 100644 --- a/clients/client-dataexchange/src/protocols/Aws_restJson1.ts +++ b/clients/client-dataexchange/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelJobCommandInput, CancelJobCommandOutput } from "../commands/CancelJobCommand"; @@ -54,6 +53,7 @@ import { UpdateAssetCommandInput, UpdateAssetCommandOutput } from "../commands/U import { UpdateDataSetCommandInput, UpdateDataSetCommandOutput } from "../commands/UpdateDataSetCommand"; import { UpdateEventActionCommandInput, UpdateEventActionCommandOutput } from "../commands/UpdateEventActionCommand"; import { UpdateRevisionCommandInput, UpdateRevisionCommandOutput } from "../commands/UpdateRevisionCommand"; +import { DataExchangeServiceException as __BaseException } from "../models/DataExchangeServiceException"; import { AccessDeniedException, Action, @@ -1080,65 +1080,34 @@ const deserializeAws_restJson1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataSetCommand = async ( @@ -1207,65 +1176,34 @@ const deserializeAws_restJson1CreateDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.dataexchange#ServiceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEventActionCommand = async ( @@ -1314,65 +1252,34 @@ const deserializeAws_restJson1CreateEventActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.dataexchange#ServiceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobCommand = async ( @@ -1429,65 +1336,34 @@ const deserializeAws_restJson1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRevisionCommand = async ( @@ -1548,65 +1424,34 @@ const deserializeAws_restJson1CreateRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssetCommand = async ( @@ -1631,73 +1476,37 @@ const deserializeAws_restJson1DeleteAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataSetCommand = async ( @@ -1722,73 +1531,37 @@ const deserializeAws_restJson1DeleteDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEventActionCommand = async ( @@ -1813,57 +1586,31 @@ const deserializeAws_restJson1DeleteEventActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRevisionCommand = async ( @@ -1888,73 +1635,37 @@ const deserializeAws_restJson1DeleteRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssetCommand = async ( @@ -2019,57 +1730,31 @@ const deserializeAws_restJson1GetAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataSetCommand = async ( @@ -2138,57 +1823,31 @@ const deserializeAws_restJson1GetDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEventActionCommand = async ( @@ -2237,57 +1896,31 @@ const deserializeAws_restJson1GetEventActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobCommand = async ( @@ -2344,57 +1977,31 @@ const deserializeAws_restJson1GetJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRevisionCommand = async ( @@ -2455,57 +2062,31 @@ const deserializeAws_restJson1GetRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataSetRevisionsCommand = async ( @@ -2538,57 +2119,31 @@ const deserializeAws_restJson1ListDataSetRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataSetsCommand = async ( @@ -2621,57 +2176,31 @@ const deserializeAws_restJson1ListDataSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEventActionsCommand = async ( @@ -2704,57 +2233,31 @@ const deserializeAws_restJson1ListEventActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -2787,57 +2290,31 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRevisionAssetsCommand = async ( @@ -2870,57 +2347,31 @@ const deserializeAws_restJson1ListRevisionAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2949,25 +2400,19 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendApiAssetCommand = async ( @@ -3003,65 +2448,34 @@ const deserializeAws_restJson1SendApiAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartJobCommand = async ( @@ -3086,73 +2500,37 @@ const deserializeAws_restJson1StartJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3177,25 +2555,19 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3220,25 +2592,19 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssetCommand = async ( @@ -3303,73 +2669,37 @@ const deserializeAws_restJson1UpdateAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataSetCommand = async ( @@ -3434,65 +2764,34 @@ const deserializeAws_restJson1UpdateDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEventActionCommand = async ( @@ -3541,65 +2840,34 @@ const deserializeAws_restJson1UpdateEventActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRevisionCommand = async ( @@ -3656,104 +2924,60 @@ const deserializeAws_restJson1UpdateRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.dataexchange#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.dataexchange#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.dataexchange#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dataexchange#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.dataexchange#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.dataexchange#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3764,38 +2988,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3806,21 +3026,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceLimitExceededException = { - name: "ServiceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - LimitName: undefined, - LimitValue: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.LimitName !== undefined && data.LimitName !== null) { contents.LimitName = __expectString(data.LimitName); @@ -3831,37 +3048,34 @@ const deserializeAws_restJson1ServiceLimitExceededExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ExceptionCause: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ExceptionCause !== undefined && data.ExceptionCause !== null) { contents.ExceptionCause = __expectString(data.ExceptionCause); @@ -3869,7 +3083,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Action = (input: Action, context: __SerdeContext): any => { diff --git a/clients/client-datasync/src/index.ts b/clients/client-datasync/src/index.ts index 8a6cd69b9d679..c9ecd4b03d1c0 100644 --- a/clients/client-datasync/src/index.ts +++ b/clients/client-datasync/src/index.ts @@ -3,3 +3,4 @@ export * from "./DataSyncClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DataSyncServiceException } from "./models/DataSyncServiceException"; diff --git a/clients/client-datasync/src/models/DataSyncServiceException.ts b/clients/client-datasync/src/models/DataSyncServiceException.ts new file mode 100644 index 0000000000000..f7bed127f62cc --- /dev/null +++ b/clients/client-datasync/src/models/DataSyncServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DataSync service. + */ +export class DataSyncServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DataSyncServiceException.prototype); + } +} diff --git a/clients/client-datasync/src/models/models_0.ts b/clients/client-datasync/src/models/models_0.ts index a63cdf8cb57b9..1acc6f43da012 100644 --- a/clients/client-datasync/src/models/models_0.ts +++ b/clients/client-datasync/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DataSyncServiceException as __BaseException } from "./DataSyncServiceException"; export enum AgentStatus { OFFLINE = "OFFLINE", @@ -76,21 +78,43 @@ export namespace CancelTaskExecutionResponse { /** *

This exception is thrown when an error occurs in the DataSync service.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; - message?: string; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; errorCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + this.errorCode = opts.errorCode; + } } /** *

This exception is thrown when the client submits a malformed request.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; errorCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.errorCode = opts.errorCode; + } } /** diff --git a/clients/client-datasync/src/protocols/Aws_json1_1.ts b/clients/client-datasync/src/protocols/Aws_json1_1.ts index ec15e59d38439..c5cfbcb63dfa4 100644 --- a/clients/client-datasync/src/protocols/Aws_json1_1.ts +++ b/clients/client-datasync/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -101,6 +100,7 @@ import { UpdateTaskExecutionCommandInput, UpdateTaskExecutionCommandOutput, } from "../commands/UpdateTaskExecutionCommand"; +import { DataSyncServiceException as __BaseException } from "../models/DataSyncServiceException"; import { AgentListEntry, CancelTaskExecutionRequest, @@ -750,41 +750,25 @@ const deserializeAws_json1_1CancelTaskExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAgentCommand = async ( @@ -812,41 +796,25 @@ const deserializeAws_json1_1CreateAgentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationEfsCommand = async ( @@ -874,41 +842,25 @@ const deserializeAws_json1_1CreateLocationEfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationFsxLustreCommand = async ( @@ -936,41 +888,25 @@ const deserializeAws_json1_1CreateLocationFsxLustreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationFsxWindowsCommand = async ( @@ -998,41 +934,25 @@ const deserializeAws_json1_1CreateLocationFsxWindowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationHdfsCommand = async ( @@ -1060,41 +980,25 @@ const deserializeAws_json1_1CreateLocationHdfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationNfsCommand = async ( @@ -1122,41 +1026,25 @@ const deserializeAws_json1_1CreateLocationNfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationObjectStorageCommand = async ( @@ -1184,41 +1072,25 @@ const deserializeAws_json1_1CreateLocationObjectStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationS3Command = async ( @@ -1246,41 +1118,25 @@ const deserializeAws_json1_1CreateLocationS3CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLocationSmbCommand = async ( @@ -1308,41 +1164,25 @@ const deserializeAws_json1_1CreateLocationSmbCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTaskCommand = async ( @@ -1370,41 +1210,25 @@ const deserializeAws_json1_1CreateTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAgentCommand = async ( @@ -1432,41 +1256,25 @@ const deserializeAws_json1_1DeleteAgentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLocationCommand = async ( @@ -1494,41 +1302,25 @@ const deserializeAws_json1_1DeleteLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTaskCommand = async ( @@ -1556,41 +1348,25 @@ const deserializeAws_json1_1DeleteTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAgentCommand = async ( @@ -1618,41 +1394,25 @@ const deserializeAws_json1_1DescribeAgentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationEfsCommand = async ( @@ -1680,41 +1440,25 @@ const deserializeAws_json1_1DescribeLocationEfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationFsxLustreCommand = async ( @@ -1742,41 +1486,25 @@ const deserializeAws_json1_1DescribeLocationFsxLustreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationFsxWindowsCommand = async ( @@ -1804,41 +1532,25 @@ const deserializeAws_json1_1DescribeLocationFsxWindowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationHdfsCommand = async ( @@ -1866,41 +1578,25 @@ const deserializeAws_json1_1DescribeLocationHdfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationNfsCommand = async ( @@ -1928,41 +1624,25 @@ const deserializeAws_json1_1DescribeLocationNfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationObjectStorageCommand = async ( @@ -1990,41 +1670,25 @@ const deserializeAws_json1_1DescribeLocationObjectStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationS3Command = async ( @@ -2052,41 +1716,25 @@ const deserializeAws_json1_1DescribeLocationS3CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationSmbCommand = async ( @@ -2114,41 +1762,25 @@ const deserializeAws_json1_1DescribeLocationSmbCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTaskCommand = async ( @@ -2176,41 +1808,25 @@ const deserializeAws_json1_1DescribeTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTaskExecutionCommand = async ( @@ -2238,41 +1854,25 @@ const deserializeAws_json1_1DescribeTaskExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAgentsCommand = async ( @@ -2300,41 +1900,25 @@ const deserializeAws_json1_1ListAgentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLocationsCommand = async ( @@ -2362,41 +1946,25 @@ const deserializeAws_json1_1ListLocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2424,41 +1992,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTaskExecutionsCommand = async ( @@ -2486,41 +2038,25 @@ const deserializeAws_json1_1ListTaskExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTasksCommand = async ( @@ -2548,41 +2084,25 @@ const deserializeAws_json1_1ListTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTaskExecutionCommand = async ( @@ -2610,41 +2130,25 @@ const deserializeAws_json1_1StartTaskExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2672,41 +2176,25 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2734,41 +2222,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAgentCommand = async ( @@ -2796,41 +2268,25 @@ const deserializeAws_json1_1UpdateAgentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLocationHdfsCommand = async ( @@ -2858,41 +2314,25 @@ const deserializeAws_json1_1UpdateLocationHdfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLocationNfsCommand = async ( @@ -2920,41 +2360,25 @@ const deserializeAws_json1_1UpdateLocationNfsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLocationObjectStorageCommand = async ( @@ -2982,41 +2406,25 @@ const deserializeAws_json1_1UpdateLocationObjectStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLocationSmbCommand = async ( @@ -3044,41 +2452,25 @@ const deserializeAws_json1_1UpdateLocationSmbCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTaskCommand = async ( @@ -3106,41 +2498,25 @@ const deserializeAws_json1_1UpdateTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTaskExecutionCommand = async ( @@ -3168,41 +2544,25 @@ const deserializeAws_json1_1UpdateTaskExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.datasync#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.datasync#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalExceptionResponse = async ( @@ -3211,13 +2571,11 @@ const deserializeAws_json1_1InternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalException(body, context); - const contents: InternalException = { - name: "InternalException", - $fault: "server", + const exception = new InternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -3226,13 +2584,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AgentArnList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-dax/src/index.ts b/clients/client-dax/src/index.ts index 375705e241b55..376749ff90c6f 100644 --- a/clients/client-dax/src/index.ts +++ b/clients/client-dax/src/index.ts @@ -2,3 +2,4 @@ export * from "./DAX"; export * from "./DAXClient"; export * from "./commands"; export * from "./models"; +export { DAXServiceException } from "./models/DAXServiceException"; diff --git a/clients/client-dax/src/models/DAXServiceException.ts b/clients/client-dax/src/models/DAXServiceException.ts new file mode 100644 index 0000000000000..8b4762cfe6170 --- /dev/null +++ b/clients/client-dax/src/models/DAXServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DAX service. + */ +export class DAXServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DAXServiceException.prototype); + } +} diff --git a/clients/client-dax/src/models/models_0.ts b/clients/client-dax/src/models/models_0.ts index d670851820a42..475707cd5fd63 100644 --- a/clients/client-dax/src/models/models_0.ts +++ b/clients/client-dax/src/models/models_0.ts @@ -1,22 +1,45 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DAXServiceException as __BaseException } from "./DAXServiceException"; /** *

You already have a DAX cluster with the given identifier.

*/ -export interface ClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterAlreadyExistsFault extends __BaseException { + readonly name: "ClusterAlreadyExistsFault" = "ClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterAlreadyExistsFault.prototype); + } } /** *

You have attempted to exceed the maximum number of DAX clusters for your AWS * account.

*/ -export interface ClusterQuotaForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterQuotaForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class ClusterQuotaForCustomerExceededFault extends __BaseException { + readonly name: "ClusterQuotaForCustomerExceededFault" = "ClusterQuotaForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterQuotaForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterQuotaForCustomerExceededFault.prototype); + } } export enum ClusterEndpointEncryptionType { @@ -593,94 +616,194 @@ export namespace CreateClusterResponse { *

There are not enough system resources to create the cluster you requested (or to * resize an already-existing cluster).

*/ -export interface InsufficientClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientClusterCapacityFault extends __BaseException { + readonly name: "InsufficientClusterCapacityFault" = "InsufficientClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientClusterCapacityFault.prototype); + } } /** *

The requested DAX cluster is not in the available * state.

*/ -export interface InvalidClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterStateFault extends __BaseException { + readonly name: "InvalidClusterStateFault" = "InvalidClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterStateFault.prototype); + } } /** *

Two or more incompatible parameters were specified.

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; - message?: string; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + } } /** *

One or more parameters in a parameter group are in an invalid state.

*/ -export interface InvalidParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidParameterGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidParameterGroupStateFault extends __BaseException { + readonly name: "InvalidParameterGroupStateFault" = "InvalidParameterGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterGroupStateFault.prototype); + } } /** *

The value for a parameter is invalid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; - message?: string; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** *

The VPC network is in an invalid state.

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; - message?: string; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

You have attempted to exceed the maximum number of nodes for a DAX * cluster.

*/ -export interface NodeQuotaForClusterExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeQuotaForClusterExceededFault"; - $fault: "client"; - message?: string; +export class NodeQuotaForClusterExceededFault extends __BaseException { + readonly name: "NodeQuotaForClusterExceededFault" = "NodeQuotaForClusterExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeQuotaForClusterExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeQuotaForClusterExceededFault.prototype); + } } /** *

You have attempted to exceed the maximum number of nodes for your AWS * account.

*/ -export interface NodeQuotaForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeQuotaForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class NodeQuotaForCustomerExceededFault extends __BaseException { + readonly name: "NodeQuotaForCustomerExceededFault" = "NodeQuotaForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeQuotaForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeQuotaForCustomerExceededFault.prototype); + } } /** *

The specified parameter group does not exist.

*/ -export interface ParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class ParameterGroupNotFoundFault extends __BaseException { + readonly name: "ParameterGroupNotFoundFault" = "ParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterGroupNotFoundFault.prototype); + } } /** *

The specified service linked role (SLR) was not found.

*/ -export interface ServiceLinkedRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ServiceLinkedRoleNotFoundFault"; - $fault: "client"; - message?: string; +export class ServiceLinkedRoleNotFoundFault extends __BaseException { + readonly name: "ServiceLinkedRoleNotFoundFault" = "ServiceLinkedRoleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLinkedRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLinkedRoleNotFoundFault.prototype); + } } /** @@ -688,28 +811,59 @@ export interface ServiceLinkedRoleNotFoundFault extends __SmithyException, $Meta * encrypted clusters in a 30 day period. Contact AWS customer support to discuss options * for continuing to create encrypted clusters.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The requested subnet group name does not refer to an existing subnet * group.

*/ -export interface SubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class SubnetGroupNotFoundFault extends __BaseException { + readonly name: "SubnetGroupNotFoundFault" = "SubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupNotFoundFault.prototype); + } } /** *

You have exceeded the maximum number of tags for this DAX cluster.

*/ -export interface TagQuotaPerResourceExceeded extends __SmithyException, $MetadataBearer { - name: "TagQuotaPerResourceExceeded"; - $fault: "client"; - message?: string; +export class TagQuotaPerResourceExceeded extends __BaseException { + readonly name: "TagQuotaPerResourceExceeded" = "TagQuotaPerResourceExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagQuotaPerResourceExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagQuotaPerResourceExceeded.prototype); + } } export interface CreateParameterGroupRequest { @@ -779,19 +933,39 @@ export namespace CreateParameterGroupResponse { /** *

The specified parameter group already exists.

*/ -export interface ParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ParameterGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "ParameterGroupAlreadyExistsFault" = "ParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterGroupAlreadyExistsFault.prototype); + } } /** *

You have attempted to exceed the maximum number of parameter groups.

*/ -export interface ParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ParameterGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "ParameterGroupQuotaExceededFault" = "ParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterGroupQuotaExceededFault.prototype); + } } export interface CreateSubnetGroupRequest { @@ -912,48 +1086,98 @@ export namespace CreateSubnetGroupResponse { /** *

An invalid subnet identifier was specified.

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; - message?: string; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

The specified subnet group already exists.

*/ -export interface SubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class SubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "SubnetGroupAlreadyExistsFault" = "SubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of * subnets in a subnet group.

*/ -export interface SubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "SubnetGroupQuotaExceededFault" = "SubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupQuotaExceededFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of * subnets in a subnet group.

*/ -export interface SubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SubnetQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SubnetQuotaExceededFault extends __BaseException { + readonly name: "SubnetQuotaExceededFault" = "SubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetQuotaExceededFault.prototype); + } } /** *

The requested cluster ID does not refer to an existing DAX cluster.

*/ -export interface ClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterNotFoundFault extends __BaseException { + readonly name: "ClusterNotFoundFault" = "ClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterNotFoundFault.prototype); + } } export interface DecreaseReplicationFactorRequest { @@ -1007,10 +1231,20 @@ export namespace DecreaseReplicationFactorResponse { /** *

None of the nodes in the cluster have the given node ID.

*/ -export interface NodeNotFoundFault extends __SmithyException, $MetadataBearer { - name: "NodeNotFoundFault"; - $fault: "client"; - message?: string; +export class NodeNotFoundFault extends __BaseException { + readonly name: "NodeNotFoundFault" = "NodeNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeNotFoundFault.prototype); + } } export interface DeleteClusterRequest { @@ -1114,10 +1348,20 @@ export namespace DeleteSubnetGroupResponse { /** *

The specified subnet group is currently in use.

*/ -export interface SubnetGroupInUseFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupInUseFault"; - $fault: "client"; - message?: string; +export class SubnetGroupInUseFault extends __BaseException { + readonly name: "SubnetGroupInUseFault" = "SubnetGroupInUseFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupInUseFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupInUseFault.prototype); + } } export interface DescribeClustersRequest { @@ -1651,10 +1895,20 @@ export namespace IncreaseReplicationFactorResponse { /** *

The Amazon Resource Name (ARN) supplied in the request is not valid.

*/ -export interface InvalidARNFault extends __SmithyException, $MetadataBearer { - name: "InvalidARNFault"; - $fault: "client"; - message?: string; +export class InvalidARNFault extends __BaseException { + readonly name: "InvalidARNFault" = "InvalidARNFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidARNFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidARNFault.prototype); + } } export interface ListTagsRequest { @@ -1779,10 +2033,20 @@ export namespace TagResourceResponse { /** *

The tag does not exist.

*/ -export interface TagNotFoundFault extends __SmithyException, $MetadataBearer { - name: "TagNotFoundFault"; - $fault: "client"; - message?: string; +export class TagNotFoundFault extends __BaseException { + readonly name: "TagNotFoundFault" = "TagNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagNotFoundFault.prototype); + } } export interface UntagResourceRequest { @@ -1958,10 +2222,20 @@ export namespace UpdateParameterGroupResponse { /** *

The requested subnet is being used by another subnet group.

*/ -export interface SubnetInUse extends __SmithyException, $MetadataBearer { - name: "SubnetInUse"; - $fault: "client"; - message?: string; +export class SubnetInUse extends __BaseException { + readonly name: "SubnetInUse" = "SubnetInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetInUse.prototype); + } } export interface UpdateSubnetGroupRequest { diff --git a/clients/client-dax/src/protocols/Aws_json1_1.ts b/clients/client-dax/src/protocols/Aws_json1_1.ts index 72340fa769944..77f7bea25bcc6 100644 --- a/clients/client-dax/src/protocols/Aws_json1_1.ts +++ b/clients/client-dax/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateClusterCommandInput, CreateClusterCommandOutput } from "../commands/CreateClusterCommand"; @@ -60,6 +59,7 @@ import { UpdateParameterGroupCommandOutput, } from "../commands/UpdateParameterGroupCommand"; import { UpdateSubnetGroupCommandInput, UpdateSubnetGroupCommandOutput } from "../commands/UpdateSubnetGroupCommand"; +import { DAXServiceException as __BaseException } from "../models/DAXServiceException"; import { Cluster, ClusterAlreadyExistsFault, @@ -446,145 +446,64 @@ const deserializeAws_json1_1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterAlreadyExistsFault": case "com.amazonaws.dax#ClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.dax#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.dax#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_json1_1InsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.dax#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.dax#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.dax#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.dax#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.dax#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.dax#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.dax#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.dax#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateParameterGroupCommand = async ( @@ -612,73 +531,37 @@ const deserializeAws_json1_1CreateParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.dax#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupAlreadyExistsFault": case "com.amazonaws.dax#ParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "ParameterGroupQuotaExceededFault": case "com.amazonaws.dax#ParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSubnetGroupCommand = async ( @@ -706,65 +589,34 @@ const deserializeAws_json1_1CreateSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSubnet": case "com.amazonaws.dax#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupAlreadyExistsFault": case "com.amazonaws.dax#SubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "SubnetGroupQuotaExceededFault": case "com.amazonaws.dax#SubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "SubnetQuotaExceededFault": case "com.amazonaws.dax#SubnetQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DecreaseReplicationFactorCommand = async ( @@ -792,73 +644,37 @@ const deserializeAws_json1_1DecreaseReplicationFactorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NodeNotFoundFault": case "com.amazonaws.dax#NodeNotFoundFault": - response = { - ...(await deserializeAws_json1_1NodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteClusterCommand = async ( @@ -886,65 +702,34 @@ const deserializeAws_json1_1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteParameterGroupCommand = async ( @@ -972,65 +757,34 @@ const deserializeAws_json1_1DeleteParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.dax#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.dax#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSubnetGroupCommand = async ( @@ -1058,49 +812,28 @@ const deserializeAws_json1_1DeleteSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupInUseFault": case "com.amazonaws.dax#SubnetGroupInUseFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupInUseFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.dax#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClustersCommand = async ( @@ -1128,57 +861,31 @@ const deserializeAws_json1_1DescribeClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDefaultParametersCommand = async ( @@ -1206,49 +913,28 @@ const deserializeAws_json1_1DescribeDefaultParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsCommand = async ( @@ -1276,49 +962,28 @@ const deserializeAws_json1_1DescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeParameterGroupsCommand = async ( @@ -1346,57 +1011,31 @@ const deserializeAws_json1_1DescribeParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.dax#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeParametersCommand = async ( @@ -1424,57 +1063,31 @@ const deserializeAws_json1_1DescribeParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.dax#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSubnetGroupsCommand = async ( @@ -1502,41 +1115,25 @@ const deserializeAws_json1_1DescribeSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.dax#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1IncreaseReplicationFactorCommand = async ( @@ -1564,97 +1161,46 @@ const deserializeAws_json1_1IncreaseReplicationFactorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.dax#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_json1_1InsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.dax#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.dax#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.dax#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -1682,73 +1228,37 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.dax#InvalidARNFault": - response = { - ...(await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebootNodeCommand = async ( @@ -1776,73 +1286,37 @@ const deserializeAws_json1_1RebootNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NodeNotFoundFault": case "com.amazonaws.dax#NodeNotFoundFault": - response = { - ...(await deserializeAws_json1_1NodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1870,81 +1344,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.dax#InvalidARNFault": - response = { - ...(await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.dax#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1972,81 +1405,40 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.dax#InvalidARNFault": - response = { - ...(await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "TagNotFoundFault": case "com.amazonaws.dax#TagNotFoundFault": - response = { - ...(await deserializeAws_json1_1TagNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateClusterCommand = async ( @@ -2074,81 +1466,40 @@ const deserializeAws_json1_1UpdateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.dax#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.dax#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.dax#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.dax#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateParameterGroupCommand = async ( @@ -2176,65 +1527,34 @@ const deserializeAws_json1_1UpdateParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.dax#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.dax#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.dax#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.dax#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSubnetGroupCommand = async ( @@ -2262,65 +1582,34 @@ const deserializeAws_json1_1UpdateSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSubnet": case "com.amazonaws.dax#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.dax#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.dax#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "SubnetInUse": case "com.amazonaws.dax#SubnetInUse": - response = { - ...(await deserializeAws_json1_1SubnetInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetInUseResponse(parsedOutput, context); case "SubnetQuotaExceededFault": case "com.amazonaws.dax#SubnetQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ClusterAlreadyExistsFaultResponse = async ( @@ -2329,13 +1618,11 @@ const deserializeAws_json1_1ClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterAlreadyExistsFault(body, context); - const contents: ClusterAlreadyExistsFault = { - name: "ClusterAlreadyExistsFault", - $fault: "client", + const exception = new ClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterNotFoundFaultResponse = async ( @@ -2344,13 +1631,11 @@ const deserializeAws_json1_1ClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterNotFoundFault(body, context); - const contents: ClusterNotFoundFault = { - name: "ClusterNotFoundFault", - $fault: "client", + const exception = new ClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse = async ( @@ -2359,13 +1644,11 @@ const deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterQuotaForCustomerExceededFault(body, context); - const contents: ClusterQuotaForCustomerExceededFault = { - name: "ClusterQuotaForCustomerExceededFault", - $fault: "client", + const exception = new ClusterQuotaForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientClusterCapacityFaultResponse = async ( @@ -2374,13 +1657,11 @@ const deserializeAws_json1_1InsufficientClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientClusterCapacityFault(body, context); - const contents: InsufficientClusterCapacityFault = { - name: "InsufficientClusterCapacityFault", - $fault: "client", + const exception = new InsufficientClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidARNFaultResponse = async ( @@ -2389,13 +1670,11 @@ const deserializeAws_json1_1InvalidARNFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidARNFault(body, context); - const contents: InvalidARNFault = { - name: "InvalidARNFault", - $fault: "client", + const exception = new InvalidARNFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidClusterStateFaultResponse = async ( @@ -2404,13 +1683,11 @@ const deserializeAws_json1_1InvalidClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidClusterStateFault(body, context); - const contents: InvalidClusterStateFault = { - name: "InvalidClusterStateFault", - $fault: "client", + const exception = new InvalidClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ( @@ -2419,13 +1696,11 @@ const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterCombinationException(body, context); - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", + const exception = new InvalidParameterCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterGroupStateFaultResponse = async ( @@ -2434,13 +1709,11 @@ const deserializeAws_json1_1InvalidParameterGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterGroupStateFault(body, context); - const contents: InvalidParameterGroupStateFault = { - name: "InvalidParameterGroupStateFault", - $fault: "client", + const exception = new InvalidParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( @@ -2449,13 +1722,11 @@ const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSubnetResponse = async ( @@ -2464,13 +1735,11 @@ const deserializeAws_json1_1InvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSubnet(body, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse = async ( @@ -2479,13 +1748,11 @@ const deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidVPCNetworkStateFault(body, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NodeNotFoundFaultResponse = async ( @@ -2494,13 +1761,11 @@ const deserializeAws_json1_1NodeNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NodeNotFoundFault(body, context); - const contents: NodeNotFoundFault = { - name: "NodeNotFoundFault", - $fault: "client", + const exception = new NodeNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse = async ( @@ -2509,13 +1774,11 @@ const deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NodeQuotaForClusterExceededFault(body, context); - const contents: NodeQuotaForClusterExceededFault = { - name: "NodeQuotaForClusterExceededFault", - $fault: "client", + const exception = new NodeQuotaForClusterExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse = async ( @@ -2524,13 +1787,11 @@ const deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NodeQuotaForCustomerExceededFault(body, context); - const contents: NodeQuotaForCustomerExceededFault = { - name: "NodeQuotaForCustomerExceededFault", - $fault: "client", + const exception = new NodeQuotaForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse = async ( @@ -2539,13 +1800,11 @@ const deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterGroupAlreadyExistsFault(body, context); - const contents: ParameterGroupAlreadyExistsFault = { - name: "ParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new ParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterGroupNotFoundFaultResponse = async ( @@ -2554,13 +1813,11 @@ const deserializeAws_json1_1ParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterGroupNotFoundFault(body, context); - const contents: ParameterGroupNotFoundFault = { - name: "ParameterGroupNotFoundFault", - $fault: "client", + const exception = new ParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse = async ( @@ -2569,13 +1826,11 @@ const deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterGroupQuotaExceededFault(body, context); - const contents: ParameterGroupQuotaExceededFault = { - name: "ParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new ParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse = async ( @@ -2584,13 +1839,11 @@ const deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceLinkedRoleNotFoundFault(body, context); - const contents: ServiceLinkedRoleNotFoundFault = { - name: "ServiceLinkedRoleNotFoundFault", - $fault: "client", + const exception = new ServiceLinkedRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( @@ -2599,13 +1852,11 @@ const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse = async ( @@ -2614,13 +1865,11 @@ const deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupAlreadyExistsFault(body, context); - const contents: SubnetGroupAlreadyExistsFault = { - name: "SubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new SubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupInUseFaultResponse = async ( @@ -2629,13 +1878,11 @@ const deserializeAws_json1_1SubnetGroupInUseFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupInUseFault(body, context); - const contents: SubnetGroupInUseFault = { - name: "SubnetGroupInUseFault", - $fault: "client", + const exception = new SubnetGroupInUseFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupNotFoundFaultResponse = async ( @@ -2644,13 +1891,11 @@ const deserializeAws_json1_1SubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupNotFoundFault(body, context); - const contents: SubnetGroupNotFoundFault = { - name: "SubnetGroupNotFoundFault", - $fault: "client", + const exception = new SubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse = async ( @@ -2659,13 +1904,11 @@ const deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupQuotaExceededFault(body, context); - const contents: SubnetGroupQuotaExceededFault = { - name: "SubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new SubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetInUseResponse = async ( @@ -2674,13 +1917,11 @@ const deserializeAws_json1_1SubnetInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetInUse(body, context); - const contents: SubnetInUse = { - name: "SubnetInUse", - $fault: "client", + const exception = new SubnetInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetQuotaExceededFaultResponse = async ( @@ -2689,13 +1930,11 @@ const deserializeAws_json1_1SubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetQuotaExceededFault(body, context); - const contents: SubnetQuotaExceededFault = { - name: "SubnetQuotaExceededFault", - $fault: "client", + const exception = new SubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagNotFoundFaultResponse = async ( @@ -2704,13 +1943,11 @@ const deserializeAws_json1_1TagNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagNotFoundFault(body, context); - const contents: TagNotFoundFault = { - name: "TagNotFoundFault", - $fault: "client", + const exception = new TagNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagQuotaPerResourceExceededResponse = async ( @@ -2719,13 +1956,11 @@ const deserializeAws_json1_1TagQuotaPerResourceExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagQuotaPerResourceExceeded(body, context); - const contents: TagQuotaPerResourceExceeded = { - name: "TagQuotaPerResourceExceeded", - $fault: "client", + const exception = new TagQuotaPerResourceExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AvailabilityZoneList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-detective/src/index.ts b/clients/client-detective/src/index.ts index 052f03e0634cb..2534628b57464 100644 --- a/clients/client-detective/src/index.ts +++ b/clients/client-detective/src/index.ts @@ -3,3 +3,4 @@ export * from "./DetectiveClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DetectiveServiceException } from "./models/DetectiveServiceException"; diff --git a/clients/client-detective/src/models/DetectiveServiceException.ts b/clients/client-detective/src/models/DetectiveServiceException.ts new file mode 100644 index 0000000000000..7589efab4fde3 --- /dev/null +++ b/clients/client-detective/src/models/DetectiveServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Detective service. + */ +export class DetectiveServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DetectiveServiceException.prototype); + } +} diff --git a/clients/client-detective/src/models/models_0.ts b/clients/client-detective/src/models/models_0.ts index b4c2d7181aec7..246b4427824a4 100644 --- a/clients/client-detective/src/models/models_0.ts +++ b/clients/client-detective/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DetectiveServiceException as __BaseException } from "./DetectiveServiceException"; export interface AcceptInvitationRequest { /** @@ -21,37 +24,85 @@ export namespace AcceptInvitationRequest { /** *

The request attempted an invalid action.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The request was valid but failed because of a problem with the service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The request refers to a nonexistent resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The request parameters are invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -165,10 +216,22 @@ export namespace CreateGraphResponse { * * */ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export interface CreateMembersRequest { @@ -542,10 +605,22 @@ export namespace DescribeOrganizationConfigurationResponse { *

The request cannot be completed because too many other requests are occurring at the * same time.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } export interface DisassociateMembershipRequest { diff --git a/clients/client-detective/src/protocols/Aws_restJson1.ts b/clients/client-detective/src/protocols/Aws_restJson1.ts index 43c0c914a1092..c96e9039d0524 100644 --- a/clients/client-detective/src/protocols/Aws_restJson1.ts +++ b/clients/client-detective/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AcceptInvitationCommandInput, AcceptInvitationCommandOutput } from "../commands/AcceptInvitationCommand"; @@ -61,6 +60,7 @@ import { UpdateOrganizationConfigurationCommandInput, UpdateOrganizationConfigurationCommandOutput, } from "../commands/UpdateOrganizationConfigurationCommand"; +import { DetectiveServiceException as __BaseException } from "../models/DetectiveServiceException"; import { Account, Administrator, @@ -618,57 +618,31 @@ const deserializeAws_restJson1AcceptInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.detective#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGraphCommand = async ( @@ -697,49 +671,28 @@ const deserializeAws_restJson1CreateGraphCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.detective#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.detective#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMembersCommand = async ( @@ -772,57 +725,31 @@ const deserializeAws_restJson1CreateMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.detective#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGraphCommand = async ( @@ -847,49 +774,28 @@ const deserializeAws_restJson1DeleteGraphCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMembersCommand = async ( @@ -922,57 +828,31 @@ const deserializeAws_restJson1DeleteMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.detective#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationConfigurationCommand = async ( @@ -1001,49 +881,28 @@ const deserializeAws_restJson1DescribeOrganizationConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.detective#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableOrganizationAdminAccountCommand = async ( @@ -1068,49 +927,28 @@ const deserializeAws_restJson1DisableOrganizationAdminAccountCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.detective#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateMembershipCommand = async ( @@ -1135,57 +973,31 @@ const deserializeAws_restJson1DisassociateMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.detective#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableOrganizationAdminAccountCommand = async ( @@ -1210,49 +1022,28 @@ const deserializeAws_restJson1EnableOrganizationAdminAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.detective#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMembersCommand = async ( @@ -1285,49 +1076,28 @@ const deserializeAws_restJson1GetMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGraphsCommand = async ( @@ -1360,41 +1130,25 @@ const deserializeAws_restJson1ListGraphsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInvitationsCommand = async ( @@ -1427,41 +1181,25 @@ const deserializeAws_restJson1ListInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMembersCommand = async ( @@ -1494,49 +1232,28 @@ const deserializeAws_restJson1ListMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOrganizationAdminAccountsCommand = async ( @@ -1569,49 +1286,28 @@ const deserializeAws_restJson1ListOrganizationAdminAccountsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.detective#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1640,49 +1336,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectInvitationCommand = async ( @@ -1707,57 +1382,31 @@ const deserializeAws_restJson1RejectInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.detective#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMonitoringMemberCommand = async ( @@ -1782,65 +1431,34 @@ const deserializeAws_restJson1StartMonitoringMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.detective#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.detective#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1865,49 +1483,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1932,49 +1529,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.detective#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOrganizationConfigurationCommand = async ( @@ -1999,151 +1575,124 @@ const deserializeAws_restJson1UpdateOrganizationConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.detective#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.detective#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.detective#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Account = (input: Account, context: __SerdeContext): any => { diff --git a/clients/client-device-farm/src/index.ts b/clients/client-device-farm/src/index.ts index 8662735742ad6..761a69782cd29 100644 --- a/clients/client-device-farm/src/index.ts +++ b/clients/client-device-farm/src/index.ts @@ -3,3 +3,4 @@ export * from "./DeviceFarmClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DeviceFarmServiceException } from "./models/DeviceFarmServiceException"; diff --git a/clients/client-device-farm/src/models/DeviceFarmServiceException.ts b/clients/client-device-farm/src/models/DeviceFarmServiceException.ts new file mode 100644 index 0000000000000..4fe0a89bdb883 --- /dev/null +++ b/clients/client-device-farm/src/models/DeviceFarmServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DeviceFarm service. + */ +export class DeviceFarmServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DeviceFarmServiceException.prototype); + } +} diff --git a/clients/client-device-farm/src/models/models_0.ts b/clients/client-device-farm/src/models/models_0.ts index fe6e6480151b9..16cc1a72c2931 100644 --- a/clients/client-device-farm/src/models/models_0.ts +++ b/clients/client-device-farm/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DeviceFarmServiceException as __BaseException } from "./DeviceFarmServiceException"; /** *

Represents information about free trial device minutes for an AWS @@ -97,13 +99,20 @@ export namespace AccountSettings { /** *

An invalid argument was specified.

*/ -export interface ArgumentException extends __SmithyException, $MetadataBearer { - name: "ArgumentException"; - $fault: "client"; +export class ArgumentException extends __BaseException { + readonly name: "ArgumentException" = "ArgumentException"; + readonly $fault: "client" = "client"; /** - *

Any additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ArgumentException.prototype); + } } export enum ArtifactType { @@ -279,10 +288,20 @@ export enum BillingMethod { /** *

The requested object could not be deleted.

*/ -export interface CannotDeleteException extends __SmithyException, $MetadataBearer { - name: "CannotDeleteException"; - $fault: "client"; - message?: string; +export class CannotDeleteException extends __BaseException { + readonly name: "CannotDeleteException" = "CannotDeleteException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CannotDeleteException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CannotDeleteException.prototype); + } } /** @@ -652,37 +671,58 @@ export namespace CreateDevicePoolResult { /** *

A limit was exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Any additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The specified entity was not found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** - *

Any additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** *

There was a problem with the service account.

*/ -export interface ServiceAccountException extends __SmithyException, $MetadataBearer { - name: "ServiceAccountException"; - $fault: "client"; +export class ServiceAccountException extends __BaseException { + readonly name: "ServiceAccountException" = "ServiceAccountException"; + readonly $fault: "client" = "client"; /** - *

Any additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceAccountException.prototype); + } } export interface CreateInstanceProfileRequest { @@ -1056,11 +1096,22 @@ export namespace CreateProjectResult { /** *

The operation was not successful. Try again.

*/ -export interface TagOperationException extends __SmithyException, $MetadataBearer { - name: "TagOperationException"; - $fault: "client"; - message?: string; +export class TagOperationException extends __BaseException { + readonly name: "TagOperationException" = "TagOperationException"; + readonly $fault: "client" = "client"; resourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagOperationException.prototype); + this.resourceName = opts.resourceName; + } } /** @@ -1827,10 +1878,20 @@ export namespace CreateTestGridProjectResult { *

An internal exception was raised in the service. Contact aws-devicefarm-support@amazon.com if you see this * error.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; - message?: string; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + } } export interface CreateTestGridUrlRequest { @@ -2685,10 +2746,20 @@ export namespace DeleteVPCEConfigurationResult { *

There was an error with the update request, or you do not have sufficient permissions * to update this VPC endpoint configuration.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; - message?: string; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + } } /** @@ -3908,13 +3979,20 @@ export namespace GetOfferingStatusResult { *

Exception gets thrown when a user is not eligible to perform the specified * transaction.

*/ -export interface NotEligibleException extends __SmithyException, $MetadataBearer { - name: "NotEligibleException"; - $fault: "client"; +export class NotEligibleException extends __BaseException { + readonly name: "NotEligibleException" = "NotEligibleException"; + readonly $fault: "client" = "client"; /** - *

The HTTP response code of a Not Eligible exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotEligibleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotEligibleException.prototype); + } } /** @@ -7176,13 +7254,20 @@ export namespace RenewOfferingResult { /** *

An entity with the same name already exists.

*/ -export interface IdempotencyException extends __SmithyException, $MetadataBearer { - name: "IdempotencyException"; - $fault: "client"; +export class IdempotencyException extends __BaseException { + readonly name: "IdempotencyException" = "IdempotencyException"; + readonly $fault: "client" = "client"; /** - *

Any additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotencyException.prototype); + } } /** @@ -7570,11 +7655,22 @@ export namespace StopRunResult { *

The request doesn't comply with the AWS Identity and Access Management (IAM) tag * policy. Correct your request and then retry it.

*/ -export interface TagPolicyException extends __SmithyException, $MetadataBearer { - name: "TagPolicyException"; - $fault: "client"; - message?: string; +export class TagPolicyException extends __BaseException { + readonly name: "TagPolicyException" = "TagPolicyException"; + readonly $fault: "client" = "client"; resourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagPolicyException.prototype); + this.resourceName = opts.resourceName; + } } export interface TagResourceRequest { @@ -7618,11 +7714,22 @@ export namespace TagResourceResponse { *

The list of tags on the repository is over the limit. The maximum number of tags that * can be applied to a repository is 50.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; resourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.resourceName = opts.resourceName; + } } export interface UntagResourceRequest { diff --git a/clients/client-device-farm/src/protocols/Aws_json1_1.ts b/clients/client-device-farm/src/protocols/Aws_json1_1.ts index b15143c0d8dbb..b80eb3bcabf5f 100644 --- a/clients/client-device-farm/src/protocols/Aws_json1_1.ts +++ b/clients/client-device-farm/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateDevicePoolCommandInput, CreateDevicePoolCommandOutput } from "../commands/CreateDevicePoolCommand"; @@ -192,6 +191,7 @@ import { UpdateVPCEConfigurationCommandInput, UpdateVPCEConfigurationCommandOutput, } from "../commands/UpdateVPCEConfigurationCommand"; +import { DeviceFarmServiceException as __BaseException } from "../models/DeviceFarmServiceException"; import { AccountSettings, ArgumentException, @@ -1438,57 +1438,31 @@ const deserializeAws_json1_1CreateDevicePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInstanceProfileCommand = async ( @@ -1516,57 +1490,31 @@ const deserializeAws_json1_1CreateInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNetworkProfileCommand = async ( @@ -1594,57 +1542,31 @@ const deserializeAws_json1_1CreateNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProjectCommand = async ( @@ -1672,65 +1594,34 @@ const deserializeAws_json1_1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); case "TagOperationException": case "com.amazonaws.devicefarm#TagOperationException": - response = { - ...(await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRemoteAccessSessionCommand = async ( @@ -1758,57 +1649,31 @@ const deserializeAws_json1_1CreateRemoteAccessSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTestGridProjectCommand = async ( @@ -1836,49 +1701,28 @@ const deserializeAws_json1_1CreateTestGridProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTestGridUrlCommand = async ( @@ -1906,49 +1750,28 @@ const deserializeAws_json1_1CreateTestGridUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUploadCommand = async ( @@ -1976,57 +1799,31 @@ const deserializeAws_json1_1CreateUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVPCEConfigurationCommand = async ( @@ -2054,49 +1851,28 @@ const deserializeAws_json1_1CreateVPCEConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDevicePoolCommand = async ( @@ -2124,57 +1900,31 @@ const deserializeAws_json1_1DeleteDevicePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInstanceProfileCommand = async ( @@ -2202,57 +1952,31 @@ const deserializeAws_json1_1DeleteInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNetworkProfileCommand = async ( @@ -2280,57 +2004,31 @@ const deserializeAws_json1_1DeleteNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProjectCommand = async ( @@ -2358,57 +2056,31 @@ const deserializeAws_json1_1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRemoteAccessSessionCommand = async ( @@ -2436,57 +2108,31 @@ const deserializeAws_json1_1DeleteRemoteAccessSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRunCommand = async ( @@ -2514,57 +2160,31 @@ const deserializeAws_json1_1DeleteRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTestGridProjectCommand = async ( @@ -2592,57 +2212,31 @@ const deserializeAws_json1_1DeleteTestGridProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "CannotDeleteException": case "com.amazonaws.devicefarm#CannotDeleteException": - response = { - ...(await deserializeAws_json1_1CannotDeleteExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CannotDeleteExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUploadCommand = async ( @@ -2670,57 +2264,31 @@ const deserializeAws_json1_1DeleteUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVPCEConfigurationCommand = async ( @@ -2748,57 +2316,31 @@ const deserializeAws_json1_1DeleteVPCEConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.devicefarm#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAccountSettingsCommand = async ( @@ -2826,57 +2368,31 @@ const deserializeAws_json1_1GetAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeviceCommand = async ( @@ -2904,57 +2420,31 @@ const deserializeAws_json1_1GetDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeviceInstanceCommand = async ( @@ -2982,57 +2472,31 @@ const deserializeAws_json1_1GetDeviceInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDevicePoolCommand = async ( @@ -3060,57 +2524,31 @@ const deserializeAws_json1_1GetDevicePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDevicePoolCompatibilityCommand = async ( @@ -3138,57 +2576,31 @@ const deserializeAws_json1_1GetDevicePoolCompatibilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceProfileCommand = async ( @@ -3216,57 +2628,31 @@ const deserializeAws_json1_1GetInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobCommand = async ( @@ -3294,57 +2680,31 @@ const deserializeAws_json1_1GetJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetNetworkProfileCommand = async ( @@ -3372,57 +2732,31 @@ const deserializeAws_json1_1GetNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOfferingStatusCommand = async ( @@ -3450,65 +2784,34 @@ const deserializeAws_json1_1GetOfferingStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotEligibleException": case "com.amazonaws.devicefarm#NotEligibleException": - response = { - ...(await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetProjectCommand = async ( @@ -3536,57 +2839,31 @@ const deserializeAws_json1_1GetProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRemoteAccessSessionCommand = async ( @@ -3614,57 +2891,31 @@ const deserializeAws_json1_1GetRemoteAccessSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRunCommand = async ( @@ -3692,57 +2943,31 @@ const deserializeAws_json1_1GetRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSuiteCommand = async ( @@ -3770,57 +2995,31 @@ const deserializeAws_json1_1GetSuiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTestCommand = async ( @@ -3848,57 +3047,31 @@ const deserializeAws_json1_1GetTestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTestGridProjectCommand = async ( @@ -3926,49 +3099,28 @@ const deserializeAws_json1_1GetTestGridProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTestGridSessionCommand = async ( @@ -3996,49 +3148,28 @@ const deserializeAws_json1_1GetTestGridSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUploadCommand = async ( @@ -4066,57 +3197,31 @@ const deserializeAws_json1_1GetUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetVPCEConfigurationCommand = async ( @@ -4144,49 +3249,28 @@ const deserializeAws_json1_1GetVPCEConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InstallToRemoteAccessSessionCommand = async ( @@ -4214,57 +3298,31 @@ const deserializeAws_json1_1InstallToRemoteAccessSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListArtifactsCommand = async ( @@ -4292,57 +3350,31 @@ const deserializeAws_json1_1ListArtifactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeviceInstancesCommand = async ( @@ -4370,57 +3402,31 @@ const deserializeAws_json1_1ListDeviceInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDevicePoolsCommand = async ( @@ -4448,57 +3454,31 @@ const deserializeAws_json1_1ListDevicePoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDevicesCommand = async ( @@ -4526,57 +3506,31 @@ const deserializeAws_json1_1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInstanceProfilesCommand = async ( @@ -4604,57 +3558,31 @@ const deserializeAws_json1_1ListInstanceProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListJobsCommand = async ( @@ -4682,57 +3610,31 @@ const deserializeAws_json1_1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListNetworkProfilesCommand = async ( @@ -4760,57 +3662,31 @@ const deserializeAws_json1_1ListNetworkProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOfferingPromotionsCommand = async ( @@ -4838,65 +3714,34 @@ const deserializeAws_json1_1ListOfferingPromotionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotEligibleException": case "com.amazonaws.devicefarm#NotEligibleException": - response = { - ...(await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOfferingsCommand = async ( @@ -4924,65 +3769,34 @@ const deserializeAws_json1_1ListOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotEligibleException": case "com.amazonaws.devicefarm#NotEligibleException": - response = { - ...(await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOfferingTransactionsCommand = async ( @@ -5010,65 +3824,34 @@ const deserializeAws_json1_1ListOfferingTransactionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotEligibleException": case "com.amazonaws.devicefarm#NotEligibleException": - response = { - ...(await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProjectsCommand = async ( @@ -5096,57 +3879,31 @@ const deserializeAws_json1_1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRemoteAccessSessionsCommand = async ( @@ -5174,57 +3931,31 @@ const deserializeAws_json1_1ListRemoteAccessSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRunsCommand = async ( @@ -5252,57 +3983,31 @@ const deserializeAws_json1_1ListRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSamplesCommand = async ( @@ -5330,57 +4035,31 @@ const deserializeAws_json1_1ListSamplesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSuitesCommand = async ( @@ -5408,57 +4087,31 @@ const deserializeAws_json1_1ListSuitesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5486,49 +4139,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TagOperationException": case "com.amazonaws.devicefarm#TagOperationException": - response = { - ...(await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTestGridProjectsCommand = async ( @@ -5556,41 +4188,25 @@ const deserializeAws_json1_1ListTestGridProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTestGridSessionActionsCommand = async ( @@ -5618,49 +4234,28 @@ const deserializeAws_json1_1ListTestGridSessionActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTestGridSessionArtifactsCommand = async ( @@ -5688,49 +4283,28 @@ const deserializeAws_json1_1ListTestGridSessionArtifactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTestGridSessionsCommand = async ( @@ -5758,49 +4332,28 @@ const deserializeAws_json1_1ListTestGridSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTestsCommand = async ( @@ -5828,57 +4381,31 @@ const deserializeAws_json1_1ListTestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUniqueProblemsCommand = async ( @@ -5906,57 +4433,31 @@ const deserializeAws_json1_1ListUniqueProblemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUploadsCommand = async ( @@ -5984,57 +4485,31 @@ const deserializeAws_json1_1ListUploadsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVPCEConfigurationsCommand = async ( @@ -6062,41 +4537,25 @@ const deserializeAws_json1_1ListVPCEConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PurchaseOfferingCommand = async ( @@ -6124,65 +4583,34 @@ const deserializeAws_json1_1PurchaseOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotEligibleException": case "com.amazonaws.devicefarm#NotEligibleException": - response = { - ...(await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RenewOfferingCommand = async ( @@ -6210,65 +4638,34 @@ const deserializeAws_json1_1RenewOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotEligibleException": case "com.amazonaws.devicefarm#NotEligibleException": - response = { - ...(await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotEligibleExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ScheduleRunCommand = async ( @@ -6296,65 +4693,34 @@ const deserializeAws_json1_1ScheduleRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "IdempotencyException": case "com.amazonaws.devicefarm#IdempotencyException": - response = { - ...(await deserializeAws_json1_1IdempotencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotencyExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopJobCommand = async ( @@ -6382,57 +4748,31 @@ const deserializeAws_json1_1StopJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopRemoteAccessSessionCommand = async ( @@ -6460,57 +4800,31 @@ const deserializeAws_json1_1StopRemoteAccessSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopRunCommand = async ( @@ -6538,57 +4852,31 @@ const deserializeAws_json1_1StopRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6616,65 +4904,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TagOperationException": case "com.amazonaws.devicefarm#TagOperationException": - response = { - ...(await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.devicefarm#TagPolicyException": - response = { - ...(await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.devicefarm#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6702,49 +4959,28 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TagOperationException": case "com.amazonaws.devicefarm#TagOperationException": - response = { - ...(await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDeviceInstanceCommand = async ( @@ -6772,57 +5008,31 @@ const deserializeAws_json1_1UpdateDeviceInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDevicePoolCommand = async ( @@ -6850,57 +5060,31 @@ const deserializeAws_json1_1UpdateDevicePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateInstanceProfileCommand = async ( @@ -6928,57 +5112,31 @@ const deserializeAws_json1_1UpdateInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNetworkProfileCommand = async ( @@ -7006,57 +5164,31 @@ const deserializeAws_json1_1UpdateNetworkProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProjectCommand = async ( @@ -7084,57 +5216,31 @@ const deserializeAws_json1_1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTestGridProjectCommand = async ( @@ -7162,57 +5268,31 @@ const deserializeAws_json1_1UpdateTestGridProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.devicefarm#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUploadCommand = async ( @@ -7240,57 +5320,31 @@ const deserializeAws_json1_1UpdateUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.devicefarm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVPCEConfigurationCommand = async ( @@ -7318,57 +5372,31 @@ const deserializeAws_json1_1UpdateVPCEConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ArgumentException": case "com.amazonaws.devicefarm#ArgumentException": - response = { - ...(await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ArgumentExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.devicefarm#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.devicefarm#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceAccountException": case "com.amazonaws.devicefarm#ServiceAccountException": - response = { - ...(await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ArgumentExceptionResponse = async ( @@ -7377,13 +5405,11 @@ const deserializeAws_json1_1ArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ArgumentException(body, context); - const contents: ArgumentException = { - name: "ArgumentException", - $fault: "client", + const exception = new ArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CannotDeleteExceptionResponse = async ( @@ -7392,13 +5418,11 @@ const deserializeAws_json1_1CannotDeleteExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CannotDeleteException(body, context); - const contents: CannotDeleteException = { - name: "CannotDeleteException", - $fault: "client", + const exception = new CannotDeleteException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotencyExceptionResponse = async ( @@ -7407,13 +5431,11 @@ const deserializeAws_json1_1IdempotencyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotencyException(body, context); - const contents: IdempotencyException = { - name: "IdempotencyException", - $fault: "client", + const exception = new IdempotencyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceExceptionResponse = async ( @@ -7422,13 +5444,11 @@ const deserializeAws_json1_1InternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceException(body, context); - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", + const exception = new InternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( @@ -7437,13 +5457,11 @@ const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOperationException(body, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7452,13 +5470,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotEligibleExceptionResponse = async ( @@ -7467,13 +5483,11 @@ const deserializeAws_json1_1NotEligibleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotEligibleException(body, context); - const contents: NotEligibleException = { - name: "NotEligibleException", - $fault: "client", + const exception = new NotEligibleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -7482,13 +5496,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceAccountExceptionResponse = async ( @@ -7497,13 +5509,11 @@ const deserializeAws_json1_1ServiceAccountExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceAccountException(body, context); - const contents: ServiceAccountException = { - name: "ServiceAccountException", - $fault: "client", + const exception = new ServiceAccountException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagOperationExceptionResponse = async ( @@ -7512,13 +5522,11 @@ const deserializeAws_json1_1TagOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagOperationException(body, context); - const contents: TagOperationException = { - name: "TagOperationException", - $fault: "client", + const exception = new TagOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagPolicyExceptionResponse = async ( @@ -7527,13 +5535,11 @@ const deserializeAws_json1_1TagPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagPolicyException(body, context); - const contents: TagPolicyException = { - name: "TagPolicyException", - $fault: "client", + const exception = new TagPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -7542,13 +5548,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AmazonResourceNames = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-devops-guru/src/index.ts b/clients/client-devops-guru/src/index.ts index 8f242f3723483..cf71b23ffac9c 100644 --- a/clients/client-devops-guru/src/index.ts +++ b/clients/client-devops-guru/src/index.ts @@ -3,3 +3,4 @@ export * from "./DevOpsGuruClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DevOpsGuruServiceException } from "./models/DevOpsGuruServiceException"; diff --git a/clients/client-devops-guru/src/models/DevOpsGuruServiceException.ts b/clients/client-devops-guru/src/models/DevOpsGuruServiceException.ts new file mode 100644 index 0000000000000..76b5c0829e151 --- /dev/null +++ b/clients/client-devops-guru/src/models/DevOpsGuruServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DevOpsGuru service. + */ +export class DevOpsGuruServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DevOpsGuruServiceException.prototype); + } +} diff --git a/clients/client-devops-guru/src/models/models_0.ts b/clients/client-devops-guru/src/models/models_0.ts index b8c34ce74f0b2..1fb89492bf21b 100644 --- a/clients/client-devops-guru/src/models/models_0.ts +++ b/clients/client-devops-guru/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DevOpsGuruServiceException as __BaseException } from "./DevOpsGuruServiceException"; /** *

You don't have permissions to perform the requested operation. The user or role that @@ -6,10 +9,22 @@ import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException * the required permissions. For more information, see Access Management in the * IAM User Guide.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -159,9 +174,9 @@ export namespace AddNotificationChannelResponse { /** *

An exception that is thrown when a conflict occurs.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the Amazon Web Services resource in which a conflict occurred.

@@ -172,28 +187,55 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the Amazon Web Services resource in which a conflict occurred.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

An internal failure in an Amazon service occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; /** *

The number of seconds after which the action that caused the internal server * exception can be retried.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

A requested resource could not be found

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the Amazon Web Services resource that could not be found.

@@ -204,23 +246,49 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the Amazon Web Services resource that could not be found.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request contains a value that exceeds a maximum quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to a request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The code of the quota that was exceeded, causing the throttling exception.

@@ -237,6 +305,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer * be retried.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** @@ -277,9 +360,9 @@ export enum ValidationExceptionReason { *

Contains information about data passed in to a field during a request that is not * valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A message that describes the validation exception.

*/ @@ -294,6 +377,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

An array of fields that are associated with the validation exception.

*/ Fields?: ValidationExceptionField[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Fields = opts.Fields; + } } /** diff --git a/clients/client-devops-guru/src/protocols/Aws_restJson1.ts b/clients/client-devops-guru/src/protocols/Aws_restJson1.ts index c54919a2785f6..1301146319a9f 100644 --- a/clients/client-devops-guru/src/protocols/Aws_restJson1.ts +++ b/clients/client-devops-guru/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -100,6 +99,7 @@ import { UpdateServiceIntegrationCommandInput, UpdateServiceIntegrationCommandOutput, } from "../commands/UpdateServiceIntegrationCommand"; +import { DevOpsGuruServiceException as __BaseException } from "../models/DevOpsGuruServiceException"; import { AccessDeniedException, AccountHealth, @@ -988,81 +988,40 @@ const deserializeAws_restJson1AddNotificationChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.devopsguru#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.devopsguru#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccountHealthCommand = async ( @@ -1103,57 +1062,31 @@ const deserializeAws_restJson1DescribeAccountHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccountOverviewCommand = async ( @@ -1190,57 +1123,31 @@ const deserializeAws_restJson1DescribeAccountOverviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAnomalyCommand = async ( @@ -1273,65 +1180,34 @@ const deserializeAws_restJson1DescribeAnomalyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFeedbackCommand = async ( @@ -1360,65 +1236,34 @@ const deserializeAws_restJson1DescribeFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInsightCommand = async ( @@ -1451,65 +1296,34 @@ const deserializeAws_restJson1DescribeInsightCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationHealthCommand = async ( @@ -1550,57 +1364,31 @@ const deserializeAws_restJson1DescribeOrganizationHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationOverviewCommand = async ( @@ -1633,57 +1421,31 @@ const deserializeAws_restJson1DescribeOrganizationOverviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationResourceCollectionHealthCommand = async ( @@ -1728,57 +1490,31 @@ const deserializeAws_restJson1DescribeOrganizationResourceCollectionHealthComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeResourceCollectionHealthCommand = async ( @@ -1819,57 +1555,31 @@ const deserializeAws_restJson1DescribeResourceCollectionHealthCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeServiceIntegrationCommand = async ( @@ -1898,57 +1608,31 @@ const deserializeAws_restJson1DescribeServiceIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCostEstimationCommand = async ( @@ -2000,65 +1684,34 @@ const deserializeAws_restJson1GetCostEstimationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceCollectionCommand = async ( @@ -2091,65 +1744,34 @@ const deserializeAws_restJson1GetResourceCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnomaliesForInsightCommand = async ( @@ -2186,65 +1808,34 @@ const deserializeAws_restJson1ListAnomaliesForInsightCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEventsCommand = async ( @@ -2277,65 +1868,34 @@ const deserializeAws_restJson1ListEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInsightsCommand = async ( @@ -2372,57 +1932,31 @@ const deserializeAws_restJson1ListInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNotificationChannelsCommand = async ( @@ -2455,57 +1989,31 @@ const deserializeAws_restJson1ListNotificationChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOrganizationInsightsCommand = async ( @@ -2542,57 +2050,31 @@ const deserializeAws_restJson1ListOrganizationInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecommendationsCommand = async ( @@ -2625,65 +2107,34 @@ const deserializeAws_restJson1ListRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFeedbackCommand = async ( @@ -2708,73 +2159,37 @@ const deserializeAws_restJson1PutFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.devopsguru#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveNotificationChannelCommand = async ( @@ -2799,73 +2214,37 @@ const deserializeAws_restJson1RemoveNotificationChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.devopsguru#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchInsightsCommand = async ( @@ -2902,57 +2281,31 @@ const deserializeAws_restJson1SearchInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchOrganizationInsightsCommand = async ( @@ -2989,57 +2342,31 @@ const deserializeAws_restJson1SearchOrganizationInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartCostEstimationCommand = async ( @@ -3064,73 +2391,37 @@ const deserializeAws_restJson1StartCostEstimationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.devopsguru#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.devopsguru#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceCollectionCommand = async ( @@ -3155,65 +2446,34 @@ const deserializeAws_restJson1UpdateResourceCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.devopsguru#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateServiceIntegrationCommand = async ( @@ -3238,96 +2498,57 @@ const deserializeAws_restJson1UpdateServiceIntegrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.devopsguru#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.devopsguru#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.devopsguru#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.devopsguru#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.devopsguru#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3338,20 +2559,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RetryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3359,21 +2578,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3384,39 +2600,34 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - RetryAfterSeconds: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3430,21 +2641,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Fields: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Fields !== undefined && data.Fields !== null) { contents.Fields = deserializeAws_restJson1ValidationExceptionFields(data.Fields, context); @@ -3455,7 +2663,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountIdList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-direct-connect/src/index.ts b/clients/client-direct-connect/src/index.ts index fb36a9062b44f..739dbc01130b7 100644 --- a/clients/client-direct-connect/src/index.ts +++ b/clients/client-direct-connect/src/index.ts @@ -2,3 +2,4 @@ export * from "./DirectConnect"; export * from "./DirectConnectClient"; export * from "./commands"; export * from "./models"; +export { DirectConnectServiceException } from "./models/DirectConnectServiceException"; diff --git a/clients/client-direct-connect/src/models/DirectConnectServiceException.ts b/clients/client-direct-connect/src/models/DirectConnectServiceException.ts new file mode 100644 index 0000000000000..b3e4856664805 --- /dev/null +++ b/clients/client-direct-connect/src/models/DirectConnectServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DirectConnect service. + */ +export class DirectConnectServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DirectConnectServiceException.prototype); + } +} diff --git a/clients/client-direct-connect/src/models/models_0.ts b/clients/client-direct-connect/src/models/models_0.ts index 389d0523d3927..3af5c5ae1d8b4 100644 --- a/clients/client-direct-connect/src/models/models_0.ts +++ b/clients/client-direct-connect/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DirectConnectServiceException as __BaseException } from "./DirectConnectServiceException"; /** *

Information about a route filter prefix that a customer can advertise through Border Gateway Protocol (BGP) @@ -201,19 +204,39 @@ export namespace AcceptDirectConnectGatewayAssociationProposalResult { /** *

One or more parameters are not valid.

*/ -export interface DirectConnectClientException extends __SmithyException, $MetadataBearer { - name: "DirectConnectClientException"; - $fault: "client"; - message?: string; +export class DirectConnectClientException extends __BaseException { + readonly name: "DirectConnectClientException" = "DirectConnectClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectConnectClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectConnectClientException.prototype); + } } /** *

A server-side error occurred.

*/ -export interface DirectConnectServerException extends __SmithyException, $MetadataBearer { - name: "DirectConnectServerException"; - $fault: "server"; - message?: string; +export class DirectConnectServerException extends __BaseException { + readonly name: "DirectConnectServerException" = "DirectConnectServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectConnectServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DirectConnectServerException.prototype); + } } export enum AddressFamily { @@ -590,19 +613,39 @@ export namespace AllocateHostedConnectionRequest { /** *

A tag key was specified more than once.

*/ -export interface DuplicateTagKeysException extends __SmithyException, $MetadataBearer { - name: "DuplicateTagKeysException"; - $fault: "client"; - message?: string; +export class DuplicateTagKeysException extends __BaseException { + readonly name: "DuplicateTagKeysException" = "DuplicateTagKeysException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateTagKeysException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateTagKeysException.prototype); + } } /** *

You have reached the limit on the number of tags that can be assigned.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** diff --git a/clients/client-direct-connect/src/protocols/Aws_json1_1.ts b/clients/client-direct-connect/src/protocols/Aws_json1_1.ts index c4b7a1abb3327..78ab809942417 100644 --- a/clients/client-direct-connect/src/protocols/Aws_json1_1.ts +++ b/clients/client-direct-connect/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -215,6 +214,7 @@ import { UpdateVirtualInterfaceAttributesCommandInput, UpdateVirtualInterfaceAttributesCommandOutput, } from "../commands/UpdateVirtualInterfaceAttributesCommand"; +import { DirectConnectServiceException as __BaseException } from "../models/DirectConnectServiceException"; import { AcceptDirectConnectGatewayAssociationProposalRequest, AcceptDirectConnectGatewayAssociationProposalResult, @@ -1192,41 +1192,25 @@ const deserializeAws_json1_1AcceptDirectConnectGatewayAssociationProposalCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AllocateConnectionOnInterconnectCommand = async ( @@ -1254,41 +1238,25 @@ const deserializeAws_json1_1AllocateConnectionOnInterconnectCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AllocateHostedConnectionCommand = async ( @@ -1316,57 +1284,31 @@ const deserializeAws_json1_1AllocateHostedConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AllocatePrivateVirtualInterfaceCommand = async ( @@ -1394,57 +1336,31 @@ const deserializeAws_json1_1AllocatePrivateVirtualInterfaceCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AllocatePublicVirtualInterfaceCommand = async ( @@ -1472,57 +1388,31 @@ const deserializeAws_json1_1AllocatePublicVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AllocateTransitVirtualInterfaceCommand = async ( @@ -1550,57 +1440,31 @@ const deserializeAws_json1_1AllocateTransitVirtualInterfaceCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateConnectionWithLagCommand = async ( @@ -1628,41 +1492,25 @@ const deserializeAws_json1_1AssociateConnectionWithLagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateHostedConnectionCommand = async ( @@ -1690,41 +1538,25 @@ const deserializeAws_json1_1AssociateHostedConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateMacSecKeyCommand = async ( @@ -1752,41 +1584,25 @@ const deserializeAws_json1_1AssociateMacSecKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateVirtualInterfaceCommand = async ( @@ -1814,41 +1630,25 @@ const deserializeAws_json1_1AssociateVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmConnectionCommand = async ( @@ -1876,41 +1676,25 @@ const deserializeAws_json1_1ConfirmConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmCustomerAgreementCommand = async ( @@ -1938,41 +1722,25 @@ const deserializeAws_json1_1ConfirmCustomerAgreementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmPrivateVirtualInterfaceCommand = async ( @@ -2000,41 +1768,25 @@ const deserializeAws_json1_1ConfirmPrivateVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmPublicVirtualInterfaceCommand = async ( @@ -2062,41 +1814,25 @@ const deserializeAws_json1_1ConfirmPublicVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConfirmTransitVirtualInterfaceCommand = async ( @@ -2124,41 +1860,25 @@ const deserializeAws_json1_1ConfirmTransitVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBGPPeerCommand = async ( @@ -2186,41 +1906,25 @@ const deserializeAws_json1_1CreateBGPPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConnectionCommand = async ( @@ -2248,57 +1952,31 @@ const deserializeAws_json1_1CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDirectConnectGatewayCommand = async ( @@ -2326,41 +2004,25 @@ const deserializeAws_json1_1CreateDirectConnectGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDirectConnectGatewayAssociationCommand = async ( @@ -2388,41 +2050,25 @@ const deserializeAws_json1_1CreateDirectConnectGatewayAssociationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDirectConnectGatewayAssociationProposalCommand = async ( @@ -2450,41 +2096,25 @@ const deserializeAws_json1_1CreateDirectConnectGatewayAssociationProposalCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInterconnectCommand = async ( @@ -2512,57 +2142,31 @@ const deserializeAws_json1_1CreateInterconnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLagCommand = async ( @@ -2590,57 +2194,31 @@ const deserializeAws_json1_1CreateLagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePrivateVirtualInterfaceCommand = async ( @@ -2668,57 +2246,31 @@ const deserializeAws_json1_1CreatePrivateVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePublicVirtualInterfaceCommand = async ( @@ -2746,57 +2298,31 @@ const deserializeAws_json1_1CreatePublicVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTransitVirtualInterfaceCommand = async ( @@ -2824,57 +2350,31 @@ const deserializeAws_json1_1CreateTransitVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBGPPeerCommand = async ( @@ -2902,41 +2402,25 @@ const deserializeAws_json1_1DeleteBGPPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectionCommand = async ( @@ -2964,41 +2448,25 @@ const deserializeAws_json1_1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDirectConnectGatewayCommand = async ( @@ -3026,41 +2494,25 @@ const deserializeAws_json1_1DeleteDirectConnectGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDirectConnectGatewayAssociationCommand = async ( @@ -3088,41 +2540,25 @@ const deserializeAws_json1_1DeleteDirectConnectGatewayAssociationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDirectConnectGatewayAssociationProposalCommand = async ( @@ -3150,41 +2586,25 @@ const deserializeAws_json1_1DeleteDirectConnectGatewayAssociationProposalCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInterconnectCommand = async ( @@ -3212,41 +2632,25 @@ const deserializeAws_json1_1DeleteInterconnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLagCommand = async ( @@ -3274,41 +2678,25 @@ const deserializeAws_json1_1DeleteLagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVirtualInterfaceCommand = async ( @@ -3336,41 +2724,25 @@ const deserializeAws_json1_1DeleteVirtualInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionLoaCommand = async ( @@ -3398,41 +2770,25 @@ const deserializeAws_json1_1DescribeConnectionLoaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionsCommand = async ( @@ -3460,41 +2816,25 @@ const deserializeAws_json1_1DescribeConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionsOnInterconnectCommand = async ( @@ -3522,41 +2862,25 @@ const deserializeAws_json1_1DescribeConnectionsOnInterconnectCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCustomerMetadataCommand = async ( @@ -3584,41 +2908,25 @@ const deserializeAws_json1_1DescribeCustomerMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDirectConnectGatewayAssociationProposalsCommand = async ( @@ -3646,41 +2954,25 @@ const deserializeAws_json1_1DescribeDirectConnectGatewayAssociationProposalsComm ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDirectConnectGatewayAssociationsCommand = async ( @@ -3708,41 +3000,25 @@ const deserializeAws_json1_1DescribeDirectConnectGatewayAssociationsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDirectConnectGatewayAttachmentsCommand = async ( @@ -3770,41 +3046,25 @@ const deserializeAws_json1_1DescribeDirectConnectGatewayAttachmentsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDirectConnectGatewaysCommand = async ( @@ -3832,41 +3092,25 @@ const deserializeAws_json1_1DescribeDirectConnectGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHostedConnectionsCommand = async ( @@ -3894,41 +3138,25 @@ const deserializeAws_json1_1DescribeHostedConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInterconnectLoaCommand = async ( @@ -3956,41 +3184,25 @@ const deserializeAws_json1_1DescribeInterconnectLoaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInterconnectsCommand = async ( @@ -4018,41 +3230,25 @@ const deserializeAws_json1_1DescribeInterconnectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLagsCommand = async ( @@ -4080,41 +3276,25 @@ const deserializeAws_json1_1DescribeLagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLoaCommand = async ( @@ -4142,41 +3322,25 @@ const deserializeAws_json1_1DescribeLoaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLocationsCommand = async ( @@ -4204,41 +3368,25 @@ const deserializeAws_json1_1DescribeLocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRouterConfigurationCommand = async ( @@ -4266,41 +3414,25 @@ const deserializeAws_json1_1DescribeRouterConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTagsCommand = async ( @@ -4328,41 +3460,25 @@ const deserializeAws_json1_1DescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVirtualGatewaysCommand = async ( @@ -4390,41 +3506,25 @@ const deserializeAws_json1_1DescribeVirtualGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVirtualInterfacesCommand = async ( @@ -4452,41 +3552,25 @@ const deserializeAws_json1_1DescribeVirtualInterfacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateConnectionFromLagCommand = async ( @@ -4514,41 +3598,25 @@ const deserializeAws_json1_1DisassociateConnectionFromLagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateMacSecKeyCommand = async ( @@ -4576,41 +3644,25 @@ const deserializeAws_json1_1DisassociateMacSecKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVirtualInterfaceTestHistoryCommand = async ( @@ -4638,41 +3690,25 @@ const deserializeAws_json1_1ListVirtualInterfaceTestHistoryCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartBgpFailoverTestCommand = async ( @@ -4700,41 +3736,25 @@ const deserializeAws_json1_1StartBgpFailoverTestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopBgpFailoverTestCommand = async ( @@ -4762,41 +3782,25 @@ const deserializeAws_json1_1StopBgpFailoverTestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4824,57 +3828,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.directconnect#DuplicateTagKeysException": - response = { - ...(await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.directconnect#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -4902,41 +3880,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConnectionCommand = async ( @@ -4964,41 +3926,25 @@ const deserializeAws_json1_1UpdateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDirectConnectGatewayCommand = async ( @@ -5026,41 +3972,25 @@ const deserializeAws_json1_1UpdateDirectConnectGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDirectConnectGatewayAssociationCommand = async ( @@ -5088,41 +4018,25 @@ const deserializeAws_json1_1UpdateDirectConnectGatewayAssociationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLagCommand = async ( @@ -5150,41 +4064,25 @@ const deserializeAws_json1_1UpdateLagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVirtualInterfaceAttributesCommand = async ( @@ -5212,41 +4110,25 @@ const deserializeAws_json1_1UpdateVirtualInterfaceAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectConnectClientException": case "com.amazonaws.directconnect#DirectConnectClientException": - response = { - ...(await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectClientExceptionResponse(parsedOutput, context); case "DirectConnectServerException": case "com.amazonaws.directconnect#DirectConnectServerException": - response = { - ...(await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectConnectServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DirectConnectClientExceptionResponse = async ( @@ -5255,13 +4137,11 @@ const deserializeAws_json1_1DirectConnectClientExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectConnectClientException(body, context); - const contents: DirectConnectClientException = { - name: "DirectConnectClientException", - $fault: "client", + const exception = new DirectConnectClientException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectConnectServerExceptionResponse = async ( @@ -5270,13 +4150,11 @@ const deserializeAws_json1_1DirectConnectServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectConnectServerException(body, context); - const contents: DirectConnectServerException = { - name: "DirectConnectServerException", - $fault: "server", + const exception = new DirectConnectServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateTagKeysExceptionResponse = async ( @@ -5285,13 +4163,11 @@ const deserializeAws_json1_1DuplicateTagKeysExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateTagKeysException(body, context); - const contents: DuplicateTagKeysException = { - name: "DuplicateTagKeysException", - $fault: "client", + const exception = new DuplicateTagKeysException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -5300,13 +4176,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptDirectConnectGatewayAssociationProposalRequest = ( diff --git a/clients/client-directory-service/src/index.ts b/clients/client-directory-service/src/index.ts index fea6779c23877..ce9584c831227 100644 --- a/clients/client-directory-service/src/index.ts +++ b/clients/client-directory-service/src/index.ts @@ -3,3 +3,4 @@ export * from "./DirectoryServiceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DirectoryServiceServiceException } from "./models/DirectoryServiceServiceException"; diff --git a/clients/client-directory-service/src/models/DirectoryServiceServiceException.ts b/clients/client-directory-service/src/models/DirectoryServiceServiceException.ts new file mode 100644 index 0000000000000..440d6c1461df5 --- /dev/null +++ b/clients/client-directory-service/src/models/DirectoryServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DirectoryService service. + */ +export class DirectoryServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DirectoryServiceServiceException.prototype); + } +} diff --git a/clients/client-directory-service/src/models/models_0.ts b/clients/client-directory-service/src/models/models_0.ts index e86254c4cce11..dbad72ab68d38 100644 --- a/clients/client-directory-service/src/models/models_0.ts +++ b/clients/client-directory-service/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DirectoryServiceServiceException as __BaseException } from "./DirectoryServiceServiceException"; export interface AcceptSharedDirectoryRequest { /** @@ -123,9 +125,9 @@ export namespace AcceptSharedDirectoryResult { /** *

A client exception has occurred.

*/ -export interface ClientException extends __SmithyException, $MetadataBearer { - name: "ClientException"; - $fault: "client"; +export class ClientException extends __BaseException { + readonly name: "ClientException" = "ClientException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -135,14 +137,27 @@ export interface ClientException extends __SmithyException, $MetadataBearer { *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The specified directory has already been shared with this Amazon Web Services account.

*/ -export interface DirectoryAlreadySharedException extends __SmithyException, $MetadataBearer { - name: "DirectoryAlreadySharedException"; - $fault: "client"; +export class DirectoryAlreadySharedException extends __BaseException { + readonly name: "DirectoryAlreadySharedException" = "DirectoryAlreadySharedException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -152,14 +167,27 @@ export interface DirectoryAlreadySharedException extends __SmithyException, $Met *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryAlreadySharedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryAlreadySharedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The specified entity could not be found.

*/ -export interface EntityDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "EntityDoesNotExistException"; - $fault: "client"; +export class EntityDoesNotExistException extends __BaseException { + readonly name: "EntityDoesNotExistException" = "EntityDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -169,14 +197,27 @@ export interface EntityDoesNotExistException extends __SmithyException, $Metadat *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityDoesNotExistException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

One or more parameters are not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -186,14 +227,27 @@ export interface InvalidParameterException extends __SmithyException, $MetadataB *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

An exception has occurred in Directory Service.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; /** *

The descriptive message for the exception.

*/ @@ -203,14 +257,27 @@ export interface ServiceException extends __SmithyException, $MetadataBearer { *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

Client authentication is not available in this region at this time.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -220,6 +287,19 @@ export interface AccessDeniedException extends __SmithyException, $MetadataBeare *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -358,9 +438,9 @@ export namespace AddIpRoutesResult { /** *

The specified directory is unavailable or could not be found.

*/ -export interface DirectoryUnavailableException extends __SmithyException, $MetadataBearer { - name: "DirectoryUnavailableException"; - $fault: "client"; +export class DirectoryUnavailableException extends __BaseException { + readonly name: "DirectoryUnavailableException" = "DirectoryUnavailableException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -370,14 +450,27 @@ export interface DirectoryUnavailableException extends __SmithyException, $Metad *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryUnavailableException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The specified entity already exists.

*/ -export interface EntityAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EntityAlreadyExistsException"; - $fault: "client"; +export class EntityAlreadyExistsException extends __BaseException { + readonly name: "EntityAlreadyExistsException" = "EntityAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -387,15 +480,28 @@ export interface EntityAlreadyExistsException extends __SmithyException, $Metada *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityAlreadyExistsException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The maximum allowed number of IP addresses was exceeded. The default limit is 100 IP * address blocks.

*/ -export interface IpRouteLimitExceededException extends __SmithyException, $MetadataBearer { - name: "IpRouteLimitExceededException"; - $fault: "client"; +export class IpRouteLimitExceededException extends __BaseException { + readonly name: "IpRouteLimitExceededException" = "IpRouteLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -405,6 +511,19 @@ export interface IpRouteLimitExceededException extends __SmithyException, $Metad *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IpRouteLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IpRouteLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -475,9 +594,9 @@ export namespace AddRegionResult { *

The Region you specified is the same Region where the Managed Microsoft AD directory * was created. Specify a different Region and try again.

*/ -export interface DirectoryAlreadyInRegionException extends __SmithyException, $MetadataBearer { - name: "DirectoryAlreadyInRegionException"; - $fault: "client"; +export class DirectoryAlreadyInRegionException extends __BaseException { + readonly name: "DirectoryAlreadyInRegionException" = "DirectoryAlreadyInRegionException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -487,14 +606,27 @@ export interface DirectoryAlreadyInRegionException extends __SmithyException, $M *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryAlreadyInRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryAlreadyInRegionException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The specified directory does not exist in the system.

*/ -export interface DirectoryDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "DirectoryDoesNotExistException"; - $fault: "client"; +export class DirectoryDoesNotExistException extends __BaseException { + readonly name: "DirectoryDoesNotExistException" = "DirectoryDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -504,15 +636,28 @@ export interface DirectoryDoesNotExistException extends __SmithyException, $Meta *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryDoesNotExistException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

You have reached the limit for maximum number of simultaneous Region replications per * directory.

*/ -export interface RegionLimitExceededException extends __SmithyException, $MetadataBearer { - name: "RegionLimitExceededException"; - $fault: "client"; +export class RegionLimitExceededException extends __BaseException { + readonly name: "RegionLimitExceededException" = "RegionLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -522,14 +667,27 @@ export interface RegionLimitExceededException extends __SmithyException, $Metada *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RegionLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RegionLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The operation is not supported.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -539,6 +697,19 @@ export interface UnsupportedOperationException extends __SmithyException, $Metad *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -605,9 +776,9 @@ export namespace AddTagsToResourceResult { /** *

The maximum allowed number of tags was exceeded.

*/ -export interface TagLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagLimitExceededException"; - $fault: "client"; +export class TagLimitExceededException extends __BaseException { + readonly name: "TagLimitExceededException" = "TagLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -617,6 +788,19 @@ export interface TagLimitExceededException extends __SmithyException, $MetadataB *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -646,9 +830,9 @@ export namespace Attribute { /** *

An authentication error occurred.

*/ -export interface AuthenticationFailedException extends __SmithyException, $MetadataBearer { - name: "AuthenticationFailedException"; - $fault: "client"; +export class AuthenticationFailedException extends __BaseException { + readonly name: "AuthenticationFailedException" = "AuthenticationFailedException"; + readonly $fault: "client" = "client"; /** *

The textual message for the exception.

*/ @@ -658,6 +842,19 @@ export interface AuthenticationFailedException extends __SmithyException, $Metad *

The identifier of the request that caused the exception.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthenticationFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthenticationFailedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface CancelSchemaExtensionRequest { @@ -782,9 +979,9 @@ export namespace Certificate { /** *

The certificate has already been registered into the system.

*/ -export interface CertificateAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "CertificateAlreadyExistsException"; - $fault: "client"; +export class CertificateAlreadyExistsException extends __BaseException { + readonly name: "CertificateAlreadyExistsException" = "CertificateAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -794,14 +991,27 @@ export interface CertificateAlreadyExistsException extends __SmithyException, $M *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateAlreadyExistsException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The certificate is not present in the system for describe or deregister activities.

*/ -export interface CertificateDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "CertificateDoesNotExistException"; - $fault: "client"; +export class CertificateDoesNotExistException extends __BaseException { + readonly name: "CertificateDoesNotExistException" = "CertificateDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -811,6 +1021,19 @@ export interface CertificateDoesNotExistException extends __SmithyException, $Me *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateDoesNotExistException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -856,9 +1079,9 @@ export namespace CertificateInfo { *

The certificate is being used for the LDAP security connection and cannot be removed * without disabling LDAP security.

*/ -export interface CertificateInUseException extends __SmithyException, $MetadataBearer { - name: "CertificateInUseException"; - $fault: "client"; +export class CertificateInUseException extends __BaseException { + readonly name: "CertificateInUseException" = "CertificateInUseException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -868,14 +1091,27 @@ export interface CertificateInUseException extends __SmithyException, $MetadataB *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateInUseException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The certificate could not be added because the certificate limit has been reached.

*/ -export interface CertificateLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CertificateLimitExceededException"; - $fault: "client"; +export class CertificateLimitExceededException extends __BaseException { + readonly name: "CertificateLimitExceededException" = "CertificateLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -885,6 +1121,19 @@ export interface CertificateLimitExceededException extends __SmithyException, $M *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum ClientAuthenticationStatus { @@ -1123,9 +1372,9 @@ export namespace ConnectDirectoryResult { * GetDirectoryLimits operation to determine your directory limits in * the region.

*/ -export interface DirectoryLimitExceededException extends __SmithyException, $MetadataBearer { - name: "DirectoryLimitExceededException"; - $fault: "client"; +export class DirectoryLimitExceededException extends __BaseException { + readonly name: "DirectoryLimitExceededException" = "DirectoryLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -1135,6 +1384,19 @@ export interface DirectoryLimitExceededException extends __SmithyException, $Met *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -1429,9 +1691,9 @@ export namespace CreateLogSubscriptionResult { /** *

The account does not have sufficient permission to perform the operation.

*/ -export interface InsufficientPermissionsException extends __SmithyException, $MetadataBearer { - name: "InsufficientPermissionsException"; - $fault: "client"; +export class InsufficientPermissionsException extends __BaseException { + readonly name: "InsufficientPermissionsException" = "InsufficientPermissionsException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -1441,6 +1703,19 @@ export interface InsufficientPermissionsException extends __SmithyException, $Me *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientPermissionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientPermissionsException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum DirectoryEdition { @@ -1572,9 +1847,9 @@ export namespace CreateSnapshotResult { * use the GetSnapshotLimits operation to determine the snapshot limits * for a directory.

*/ -export interface SnapshotLimitExceededException extends __SmithyException, $MetadataBearer { - name: "SnapshotLimitExceededException"; - $fault: "client"; +export class SnapshotLimitExceededException extends __BaseException { + readonly name: "SnapshotLimitExceededException" = "SnapshotLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -1584,6 +1859,19 @@ export interface SnapshotLimitExceededException extends __SmithyException, $Meta *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum SelectiveAuth { @@ -2549,9 +2837,9 @@ export namespace DescribeDirectoriesResult { /** *

The NextToken value is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -2561,6 +2849,19 @@ export interface InvalidNextTokenException extends __SmithyException, $MetadataB *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface DescribeDomainControllersRequest { @@ -3394,9 +3695,9 @@ export namespace DirectoryLimits { /** *

The specified directory has not been shared with this Amazon Web Services account.

*/ -export interface DirectoryNotSharedException extends __SmithyException, $MetadataBearer { - name: "DirectoryNotSharedException"; - $fault: "client"; +export class DirectoryNotSharedException extends __BaseException { + readonly name: "DirectoryNotSharedException" = "DirectoryNotSharedException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -3406,6 +3707,19 @@ export interface DirectoryNotSharedException extends __SmithyException, $Metadat *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryNotSharedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryNotSharedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface DisableClientAuthenticationRequest { @@ -3443,9 +3757,9 @@ export namespace DisableClientAuthenticationResult { /** *

Client authentication is already enabled.

*/ -export interface InvalidClientAuthStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidClientAuthStatusException"; - $fault: "client"; +export class InvalidClientAuthStatusException extends __BaseException { + readonly name: "InvalidClientAuthStatusException" = "InvalidClientAuthStatusException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -3455,6 +3769,19 @@ export interface InvalidClientAuthStatusException extends __SmithyException, $Me *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientAuthStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientAuthStatusException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface DisableLDAPSRequest { @@ -3494,9 +3821,9 @@ export namespace DisableLDAPSResult { *

The LDAP activities could not be performed because they are limited by the LDAPS * status.

*/ -export interface InvalidLDAPSStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidLDAPSStatusException"; - $fault: "client"; +export class InvalidLDAPSStatusException extends __BaseException { + readonly name: "InvalidLDAPSStatusException" = "InvalidLDAPSStatusException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -3506,6 +3833,19 @@ export interface InvalidLDAPSStatusException extends __SmithyException, $Metadat *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLDAPSStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLDAPSStatusException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -3633,9 +3973,9 @@ export namespace EnableClientAuthenticationResult { *

Client authentication setup could not be completed because at least one valid certificate must be * registered in the system.

*/ -export interface NoAvailableCertificateException extends __SmithyException, $MetadataBearer { - name: "NoAvailableCertificateException"; - $fault: "client"; +export class NoAvailableCertificateException extends __BaseException { + readonly name: "NoAvailableCertificateException" = "NoAvailableCertificateException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -3645,6 +3985,19 @@ export interface NoAvailableCertificateException extends __SmithyException, $Met *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoAvailableCertificateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoAvailableCertificateException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface EnableLDAPSRequest { @@ -4274,9 +4627,9 @@ export namespace ListTagsForResourceResult { /** *

The certificate PEM that was provided has incorrect encoding.

*/ -export interface InvalidCertificateException extends __SmithyException, $MetadataBearer { - name: "InvalidCertificateException"; - $fault: "client"; +export class InvalidCertificateException extends __BaseException { + readonly name: "InvalidCertificateException" = "InvalidCertificateException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4286,6 +4639,19 @@ export interface InvalidCertificateException extends __SmithyException, $Metadat *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCertificateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCertificateException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface RegisterCertificateRequest { @@ -4503,9 +4869,9 @@ export namespace RemoveTagsFromResourceResult { *

The new password provided by the user does not meet the password complexity * requirements defined in your directory.

*/ -export interface InvalidPasswordException extends __SmithyException, $MetadataBearer { - name: "InvalidPasswordException"; - $fault: "client"; +export class InvalidPasswordException extends __BaseException { + readonly name: "InvalidPasswordException" = "InvalidPasswordException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4515,6 +4881,19 @@ export interface InvalidPasswordException extends __SmithyException, $MetadataBe *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPasswordException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPasswordException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface ResetUserPasswordRequest { @@ -4559,9 +4938,9 @@ export namespace ResetUserPasswordResult { /** *

The user provided a username that does not exist in your directory.

*/ -export interface UserDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "UserDoesNotExistException"; - $fault: "client"; +export class UserDoesNotExistException extends __BaseException { + readonly name: "UserDoesNotExistException" = "UserDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4571,6 +4950,19 @@ export interface UserDoesNotExistException extends __SmithyException, $MetadataB *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserDoesNotExistException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -4609,9 +5001,9 @@ export namespace RestoreFromSnapshotResult { /** *

The specified shared target is not valid.

*/ -export interface InvalidTargetException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetException"; - $fault: "client"; +export class InvalidTargetException extends __BaseException { + readonly name: "InvalidTargetException" = "InvalidTargetException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4621,14 +5013,27 @@ export interface InvalidTargetException extends __SmithyException, $MetadataBear *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

Exception encountered while trying to access your Amazon Web Services organization.

*/ -export interface OrganizationsException extends __SmithyException, $MetadataBearer { - name: "OrganizationsException"; - $fault: "client"; +export class OrganizationsException extends __BaseException { + readonly name: "OrganizationsException" = "OrganizationsException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4638,6 +5043,19 @@ export interface OrganizationsException extends __SmithyException, $MetadataBear *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationsException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum TargetType { @@ -4726,9 +5144,9 @@ export namespace ShareDirectoryResult { *

The maximum number of Amazon Web Services accounts that you can share with this directory has been * reached.

*/ -export interface ShareLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ShareLimitExceededException"; - $fault: "client"; +export class ShareLimitExceededException extends __BaseException { + readonly name: "ShareLimitExceededException" = "ShareLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4738,6 +5156,19 @@ export interface ShareLimitExceededException extends __SmithyException, $Metadat *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ShareLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ShareLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface StartSchemaExtensionRequest { @@ -4906,9 +5337,9 @@ export namespace UpdateConditionalForwarderResult { *

The maximum allowed number of domain controllers per directory was exceeded. The * default limit per directory is 20 domain controllers.

*/ -export interface DomainControllerLimitExceededException extends __SmithyException, $MetadataBearer { - name: "DomainControllerLimitExceededException"; - $fault: "client"; +export class DomainControllerLimitExceededException extends __BaseException { + readonly name: "DomainControllerLimitExceededException" = "DomainControllerLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The descriptive message for the exception.

*/ @@ -4918,6 +5349,19 @@ export interface DomainControllerLimitExceededException extends __SmithyExceptio *

The Amazon Web Services request identifier.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainControllerLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainControllerLimitExceededException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface UpdateNumberOfDomainControllersRequest { diff --git a/clients/client-directory-service/src/protocols/Aws_json1_1.ts b/clients/client-directory-service/src/protocols/Aws_json1_1.ts index 4212e5285c910..d4d31444bddb4 100644 --- a/clients/client-directory-service/src/protocols/Aws_json1_1.ts +++ b/clients/client-directory-service/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -163,6 +162,7 @@ import { import { UpdateRadiusCommandInput, UpdateRadiusCommandOutput } from "../commands/UpdateRadiusCommand"; import { UpdateTrustCommandInput, UpdateTrustCommandOutput } from "../commands/UpdateTrustCommand"; import { VerifyTrustCommandInput, VerifyTrustCommandOutput } from "../commands/VerifyTrustCommand"; +import { DirectoryServiceServiceException as __BaseException } from "../models/DirectoryServiceServiceException"; import { AcceptSharedDirectoryRequest, AcceptSharedDirectoryResult, @@ -1201,65 +1201,34 @@ const deserializeAws_json1_1AcceptSharedDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryAlreadySharedException": case "com.amazonaws.directoryservice#DirectoryAlreadySharedException": - response = { - ...(await deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddIpRoutesCommand = async ( @@ -1287,81 +1256,40 @@ const deserializeAws_json1_1AddIpRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "IpRouteLimitExceededException": case "com.amazonaws.directoryservice#IpRouteLimitExceededException": - response = { - ...(await deserializeAws_json1_1IpRouteLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IpRouteLimitExceededExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddRegionCommand = async ( @@ -1389,105 +1317,49 @@ const deserializeAws_json1_1AddRegionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryAlreadyInRegionException": case "com.amazonaws.directoryservice#DirectoryAlreadyInRegionException": - response = { - ...(await deserializeAws_json1_1DirectoryAlreadyInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryAlreadyInRegionExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RegionLimitExceededException": case "com.amazonaws.directoryservice#RegionLimitExceededException": - response = { - ...(await deserializeAws_json1_1RegionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegionLimitExceededExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddTagsToResourceCommand = async ( @@ -1515,65 +1387,34 @@ const deserializeAws_json1_1AddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.directoryservice#TagLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelSchemaExtensionCommand = async ( @@ -1601,49 +1442,28 @@ const deserializeAws_json1_1CancelSchemaExtensionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConnectDirectoryCommand = async ( @@ -1671,57 +1491,31 @@ const deserializeAws_json1_1ConnectDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryLimitExceededException": case "com.amazonaws.directoryservice#DirectoryLimitExceededException": - response = { - ...(await deserializeAws_json1_1DirectoryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAliasCommand = async ( @@ -1749,65 +1543,34 @@ const deserializeAws_json1_1CreateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateComputerCommand = async ( @@ -1835,89 +1598,43 @@ const deserializeAws_json1_1CreateComputerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationFailedException": case "com.amazonaws.directoryservice#AuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1AuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthenticationFailedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConditionalForwarderCommand = async ( @@ -1945,81 +1662,40 @@ const deserializeAws_json1_1CreateConditionalForwarderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDirectoryCommand = async ( @@ -2047,57 +1723,31 @@ const deserializeAws_json1_1CreateDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryLimitExceededException": case "com.amazonaws.directoryservice#DirectoryLimitExceededException": - response = { - ...(await deserializeAws_json1_1DirectoryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLogSubscriptionCommand = async ( @@ -2125,73 +1775,37 @@ const deserializeAws_json1_1CreateLogSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InsufficientPermissionsException": case "com.amazonaws.directoryservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMicrosoftADCommand = async ( @@ -2219,65 +1833,34 @@ const deserializeAws_json1_1CreateMicrosoftADCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryLimitExceededException": case "com.amazonaws.directoryservice#DirectoryLimitExceededException": - response = { - ...(await deserializeAws_json1_1DirectoryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSnapshotCommand = async ( @@ -2305,65 +1888,34 @@ const deserializeAws_json1_1CreateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "SnapshotLimitExceededException": case "com.amazonaws.directoryservice#SnapshotLimitExceededException": - response = { - ...(await deserializeAws_json1_1SnapshotLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTrustCommand = async ( @@ -2391,73 +1943,37 @@ const deserializeAws_json1_1CreateTrustCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConditionalForwarderCommand = async ( @@ -2485,73 +2001,37 @@ const deserializeAws_json1_1DeleteConditionalForwarderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDirectoryCommand = async ( @@ -2579,49 +2059,28 @@ const deserializeAws_json1_1DeleteDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLogSubscriptionCommand = async ( @@ -2649,57 +2108,31 @@ const deserializeAws_json1_1DeleteLogSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSnapshotCommand = async ( @@ -2727,57 +2160,31 @@ const deserializeAws_json1_1DeleteSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTrustCommand = async ( @@ -2805,65 +2212,34 @@ const deserializeAws_json1_1DeleteTrustCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterCertificateCommand = async ( @@ -2891,89 +2267,43 @@ const deserializeAws_json1_1DeregisterCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateDoesNotExistException": case "com.amazonaws.directoryservice#CertificateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CertificateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CertificateDoesNotExistExceptionResponse(parsedOutput, context); case "CertificateInUseException": case "com.amazonaws.directoryservice#CertificateInUseException": - response = { - ...(await deserializeAws_json1_1CertificateInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CertificateInUseExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterEventTopicCommand = async ( @@ -3001,57 +2331,31 @@ const deserializeAws_json1_1DeregisterEventTopicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCertificateCommand = async ( @@ -3079,73 +2383,37 @@ const deserializeAws_json1_1DescribeCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateDoesNotExistException": case "com.amazonaws.directoryservice#CertificateDoesNotExistException": - response = { - ...(await deserializeAws_json1_1CertificateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CertificateDoesNotExistExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClientAuthenticationSettingsCommand = async ( @@ -3173,73 +2441,37 @@ const deserializeAws_json1_1DescribeClientAuthenticationSettingsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConditionalForwardersCommand = async ( @@ -3267,73 +2499,37 @@ const deserializeAws_json1_1DescribeConditionalForwardersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDirectoriesCommand = async ( @@ -3361,65 +2557,34 @@ const deserializeAws_json1_1DescribeDirectoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDomainControllersCommand = async ( @@ -3447,73 +2612,37 @@ const deserializeAws_json1_1DescribeDomainControllersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventTopicsCommand = async ( @@ -3541,57 +2670,31 @@ const deserializeAws_json1_1DescribeEventTopicsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLDAPSSettingsCommand = async ( @@ -3619,73 +2722,37 @@ const deserializeAws_json1_1DescribeLDAPSSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRegionsCommand = async ( @@ -3713,81 +2780,40 @@ const deserializeAws_json1_1DescribeRegionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSharedDirectoriesCommand = async ( @@ -3815,73 +2841,37 @@ const deserializeAws_json1_1DescribeSharedDirectoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSnapshotsCommand = async ( @@ -3909,65 +2899,34 @@ const deserializeAws_json1_1DescribeSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrustsCommand = async ( @@ -3995,73 +2954,37 @@ const deserializeAws_json1_1DescribeTrustsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableClientAuthenticationCommand = async ( @@ -4089,73 +3012,37 @@ const deserializeAws_json1_1DisableClientAuthenticationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidClientAuthStatusException": case "com.amazonaws.directoryservice#InvalidClientAuthStatusException": - response = { - ...(await deserializeAws_json1_1InvalidClientAuthStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientAuthStatusExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableLDAPSCommand = async ( @@ -4183,81 +3070,40 @@ const deserializeAws_json1_1DisableLDAPSCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidLDAPSStatusException": case "com.amazonaws.directoryservice#InvalidLDAPSStatusException": - response = { - ...(await deserializeAws_json1_1InvalidLDAPSStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLDAPSStatusExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableRadiusCommand = async ( @@ -4285,49 +3131,28 @@ const deserializeAws_json1_1DisableRadiusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableSsoCommand = async ( @@ -4355,65 +3180,34 @@ const deserializeAws_json1_1DisableSsoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationFailedException": case "com.amazonaws.directoryservice#AuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1AuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthenticationFailedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InsufficientPermissionsException": case "com.amazonaws.directoryservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableClientAuthenticationCommand = async ( @@ -4441,81 +3235,40 @@ const deserializeAws_json1_1EnableClientAuthenticationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidClientAuthStatusException": case "com.amazonaws.directoryservice#InvalidClientAuthStatusException": - response = { - ...(await deserializeAws_json1_1InvalidClientAuthStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClientAuthStatusExceptionResponse(parsedOutput, context); case "NoAvailableCertificateException": case "com.amazonaws.directoryservice#NoAvailableCertificateException": - response = { - ...(await deserializeAws_json1_1NoAvailableCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableCertificateExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableLDAPSCommand = async ( @@ -4543,89 +3296,43 @@ const deserializeAws_json1_1EnableLDAPSCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidLDAPSStatusException": case "com.amazonaws.directoryservice#InvalidLDAPSStatusException": - response = { - ...(await deserializeAws_json1_1InvalidLDAPSStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLDAPSStatusExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NoAvailableCertificateException": case "com.amazonaws.directoryservice#NoAvailableCertificateException": - response = { - ...(await deserializeAws_json1_1NoAvailableCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableCertificateExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableRadiusCommand = async ( @@ -4653,65 +3360,34 @@ const deserializeAws_json1_1EnableRadiusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.directoryservice#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableSsoCommand = async ( @@ -4739,65 +3415,34 @@ const deserializeAws_json1_1EnableSsoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationFailedException": case "com.amazonaws.directoryservice#AuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1AuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthenticationFailedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InsufficientPermissionsException": case "com.amazonaws.directoryservice#InsufficientPermissionsException": - response = { - ...(await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientPermissionsExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDirectoryLimitsCommand = async ( @@ -4825,49 +3470,28 @@ const deserializeAws_json1_1GetDirectoryLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSnapshotLimitsCommand = async ( @@ -4895,49 +3519,28 @@ const deserializeAws_json1_1GetSnapshotLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCertificatesCommand = async ( @@ -4965,73 +3568,37 @@ const deserializeAws_json1_1ListCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIpRoutesCommand = async ( @@ -5059,65 +3626,34 @@ const deserializeAws_json1_1ListIpRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLogSubscriptionsCommand = async ( @@ -5145,57 +3681,31 @@ const deserializeAws_json1_1ListLogSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSchemaExtensionsCommand = async ( @@ -5223,57 +3733,31 @@ const deserializeAws_json1_1ListSchemaExtensionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5301,65 +3785,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.directoryservice#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterCertificateCommand = async ( @@ -5387,97 +3840,46 @@ const deserializeAws_json1_1RegisterCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateAlreadyExistsException": case "com.amazonaws.directoryservice#CertificateAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1CertificateAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CertificateAlreadyExistsExceptionResponse(parsedOutput, context); case "CertificateLimitExceededException": case "com.amazonaws.directoryservice#CertificateLimitExceededException": - response = { - ...(await deserializeAws_json1_1CertificateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CertificateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidCertificateException": case "com.amazonaws.directoryservice#InvalidCertificateException": - response = { - ...(await deserializeAws_json1_1InvalidCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCertificateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterEventTopicCommand = async ( @@ -5505,57 +3907,31 @@ const deserializeAws_json1_1RegisterEventTopicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectSharedDirectoryCommand = async ( @@ -5583,65 +3959,34 @@ const deserializeAws_json1_1RejectSharedDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryAlreadySharedException": case "com.amazonaws.directoryservice#DirectoryAlreadySharedException": - response = { - ...(await deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveIpRoutesCommand = async ( @@ -5669,65 +4014,34 @@ const deserializeAws_json1_1RemoveIpRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveRegionCommand = async ( @@ -5755,73 +4069,37 @@ const deserializeAws_json1_1RemoveRegionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryDoesNotExistException": case "com.amazonaws.directoryservice#DirectoryDoesNotExistException": - response = { - ...(await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromResourceCommand = async ( @@ -5849,57 +4127,31 @@ const deserializeAws_json1_1RemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetUserPasswordCommand = async ( @@ -5927,81 +4179,40 @@ const deserializeAws_json1_1ResetUserPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.directoryservice#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); case "UserDoesNotExistException": case "com.amazonaws.directoryservice#UserDoesNotExistException": - response = { - ...(await deserializeAws_json1_1UserDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreFromSnapshotCommand = async ( @@ -6029,57 +4240,31 @@ const deserializeAws_json1_1RestoreFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ShareDirectoryCommand = async ( @@ -6107,105 +4292,49 @@ const deserializeAws_json1_1ShareDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.directoryservice#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryAlreadySharedException": case "com.amazonaws.directoryservice#DirectoryAlreadySharedException": - response = { - ...(await deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTargetException": case "com.amazonaws.directoryservice#InvalidTargetException": - response = { - ...(await deserializeAws_json1_1InvalidTargetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetExceptionResponse(parsedOutput, context); case "OrganizationsException": case "com.amazonaws.directoryservice#OrganizationsException": - response = { - ...(await deserializeAws_json1_1OrganizationsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationsExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "ShareLimitExceededException": case "com.amazonaws.directoryservice#ShareLimitExceededException": - response = { - ...(await deserializeAws_json1_1ShareLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ShareLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSchemaExtensionCommand = async ( @@ -6233,73 +4362,37 @@ const deserializeAws_json1_1StartSchemaExtensionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "SnapshotLimitExceededException": case "com.amazonaws.directoryservice#SnapshotLimitExceededException": - response = { - ...(await deserializeAws_json1_1SnapshotLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnshareDirectoryCommand = async ( @@ -6327,65 +4420,34 @@ const deserializeAws_json1_1UnshareDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryNotSharedException": case "com.amazonaws.directoryservice#DirectoryNotSharedException": - response = { - ...(await deserializeAws_json1_1DirectoryNotSharedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryNotSharedExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidTargetException": case "com.amazonaws.directoryservice#InvalidTargetException": - response = { - ...(await deserializeAws_json1_1InvalidTargetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConditionalForwarderCommand = async ( @@ -6413,73 +4475,37 @@ const deserializeAws_json1_1UpdateConditionalForwarderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNumberOfDomainControllersCommand = async ( @@ -6507,81 +4533,40 @@ const deserializeAws_json1_1UpdateNumberOfDomainControllersCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.directoryservice#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "DomainControllerLimitExceededException": case "com.amazonaws.directoryservice#DomainControllerLimitExceededException": - response = { - ...(await deserializeAws_json1_1DomainControllerLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DomainControllerLimitExceededExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRadiusCommand = async ( @@ -6609,57 +4594,31 @@ const deserializeAws_json1_1UpdateRadiusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTrustCommand = async ( @@ -6687,57 +4646,31 @@ const deserializeAws_json1_1UpdateTrustCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1VerifyTrustCommand = async ( @@ -6765,65 +4698,34 @@ const deserializeAws_json1_1VerifyTrustCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.directoryservice#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "EntityDoesNotExistException": case "com.amazonaws.directoryservice#EntityDoesNotExistException": - response = { - ...(await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.directoryservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.directoryservice#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.directoryservice#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -6832,13 +4734,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AuthenticationFailedExceptionResponse = async ( @@ -6847,13 +4747,11 @@ const deserializeAws_json1_1AuthenticationFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AuthenticationFailedException(body, context); - const contents: AuthenticationFailedException = { - name: "AuthenticationFailedException", - $fault: "client", + const exception = new AuthenticationFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CertificateAlreadyExistsExceptionResponse = async ( @@ -6862,13 +4760,11 @@ const deserializeAws_json1_1CertificateAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CertificateAlreadyExistsException(body, context); - const contents: CertificateAlreadyExistsException = { - name: "CertificateAlreadyExistsException", - $fault: "client", + const exception = new CertificateAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CertificateDoesNotExistExceptionResponse = async ( @@ -6877,13 +4773,11 @@ const deserializeAws_json1_1CertificateDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CertificateDoesNotExistException(body, context); - const contents: CertificateDoesNotExistException = { - name: "CertificateDoesNotExistException", - $fault: "client", + const exception = new CertificateDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CertificateInUseExceptionResponse = async ( @@ -6892,13 +4786,11 @@ const deserializeAws_json1_1CertificateInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CertificateInUseException(body, context); - const contents: CertificateInUseException = { - name: "CertificateInUseException", - $fault: "client", + const exception = new CertificateInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CertificateLimitExceededExceptionResponse = async ( @@ -6907,13 +4799,11 @@ const deserializeAws_json1_1CertificateLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CertificateLimitExceededException(body, context); - const contents: CertificateLimitExceededException = { - name: "CertificateLimitExceededException", - $fault: "client", + const exception = new CertificateLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClientExceptionResponse = async ( @@ -6922,13 +4812,11 @@ const deserializeAws_json1_1ClientExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClientException(body, context); - const contents: ClientException = { - name: "ClientException", - $fault: "client", + const exception = new ClientException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryAlreadyInRegionExceptionResponse = async ( @@ -6937,13 +4825,11 @@ const deserializeAws_json1_1DirectoryAlreadyInRegionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryAlreadyInRegionException(body, context); - const contents: DirectoryAlreadyInRegionException = { - name: "DirectoryAlreadyInRegionException", - $fault: "client", + const exception = new DirectoryAlreadyInRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse = async ( @@ -6952,13 +4838,11 @@ const deserializeAws_json1_1DirectoryAlreadySharedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryAlreadySharedException(body, context); - const contents: DirectoryAlreadySharedException = { - name: "DirectoryAlreadySharedException", - $fault: "client", + const exception = new DirectoryAlreadySharedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse = async ( @@ -6967,13 +4851,11 @@ const deserializeAws_json1_1DirectoryDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryDoesNotExistException(body, context); - const contents: DirectoryDoesNotExistException = { - name: "DirectoryDoesNotExistException", - $fault: "client", + const exception = new DirectoryDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryLimitExceededExceptionResponse = async ( @@ -6982,13 +4864,11 @@ const deserializeAws_json1_1DirectoryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryLimitExceededException(body, context); - const contents: DirectoryLimitExceededException = { - name: "DirectoryLimitExceededException", - $fault: "client", + const exception = new DirectoryLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryNotSharedExceptionResponse = async ( @@ -6997,13 +4877,11 @@ const deserializeAws_json1_1DirectoryNotSharedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryNotSharedException(body, context); - const contents: DirectoryNotSharedException = { - name: "DirectoryNotSharedException", - $fault: "client", + const exception = new DirectoryNotSharedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryUnavailableExceptionResponse = async ( @@ -7012,13 +4890,11 @@ const deserializeAws_json1_1DirectoryUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryUnavailableException(body, context); - const contents: DirectoryUnavailableException = { - name: "DirectoryUnavailableException", - $fault: "client", + const exception = new DirectoryUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DomainControllerLimitExceededExceptionResponse = async ( @@ -7027,13 +4903,11 @@ const deserializeAws_json1_1DomainControllerLimitExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DomainControllerLimitExceededException(body, context); - const contents: DomainControllerLimitExceededException = { - name: "DomainControllerLimitExceededException", - $fault: "client", + const exception = new DomainControllerLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntityAlreadyExistsExceptionResponse = async ( @@ -7042,13 +4916,11 @@ const deserializeAws_json1_1EntityAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntityAlreadyExistsException(body, context); - const contents: EntityAlreadyExistsException = { - name: "EntityAlreadyExistsException", - $fault: "client", + const exception = new EntityAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntityDoesNotExistExceptionResponse = async ( @@ -7057,13 +4929,11 @@ const deserializeAws_json1_1EntityDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntityDoesNotExistException(body, context); - const contents: EntityDoesNotExistException = { - name: "EntityDoesNotExistException", - $fault: "client", + const exception = new EntityDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientPermissionsExceptionResponse = async ( @@ -7072,13 +4942,11 @@ const deserializeAws_json1_1InsufficientPermissionsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientPermissionsException(body, context); - const contents: InsufficientPermissionsException = { - name: "InsufficientPermissionsException", - $fault: "client", + const exception = new InsufficientPermissionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCertificateExceptionResponse = async ( @@ -7087,13 +4955,11 @@ const deserializeAws_json1_1InvalidCertificateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCertificateException(body, context); - const contents: InvalidCertificateException = { - name: "InvalidCertificateException", - $fault: "client", + const exception = new InvalidCertificateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidClientAuthStatusExceptionResponse = async ( @@ -7102,13 +4968,11 @@ const deserializeAws_json1_1InvalidClientAuthStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidClientAuthStatusException(body, context); - const contents: InvalidClientAuthStatusException = { - name: "InvalidClientAuthStatusException", - $fault: "client", + const exception = new InvalidClientAuthStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLDAPSStatusExceptionResponse = async ( @@ -7117,13 +4981,11 @@ const deserializeAws_json1_1InvalidLDAPSStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLDAPSStatusException(body, context); - const contents: InvalidLDAPSStatusException = { - name: "InvalidLDAPSStatusException", - $fault: "client", + const exception = new InvalidLDAPSStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -7132,13 +4994,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -7147,13 +5007,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPasswordExceptionResponse = async ( @@ -7162,13 +5020,11 @@ const deserializeAws_json1_1InvalidPasswordExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPasswordException(body, context); - const contents: InvalidPasswordException = { - name: "InvalidPasswordException", - $fault: "client", + const exception = new InvalidPasswordException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetExceptionResponse = async ( @@ -7177,13 +5033,11 @@ const deserializeAws_json1_1InvalidTargetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTargetException(body, context); - const contents: InvalidTargetException = { - name: "InvalidTargetException", - $fault: "client", + const exception = new InvalidTargetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IpRouteLimitExceededExceptionResponse = async ( @@ -7192,13 +5046,11 @@ const deserializeAws_json1_1IpRouteLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IpRouteLimitExceededException(body, context); - const contents: IpRouteLimitExceededException = { - name: "IpRouteLimitExceededException", - $fault: "client", + const exception = new IpRouteLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoAvailableCertificateExceptionResponse = async ( @@ -7207,13 +5059,11 @@ const deserializeAws_json1_1NoAvailableCertificateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoAvailableCertificateException(body, context); - const contents: NoAvailableCertificateException = { - name: "NoAvailableCertificateException", - $fault: "client", + const exception = new NoAvailableCertificateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationsExceptionResponse = async ( @@ -7222,13 +5072,11 @@ const deserializeAws_json1_1OrganizationsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationsException(body, context); - const contents: OrganizationsException = { - name: "OrganizationsException", - $fault: "client", + const exception = new OrganizationsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RegionLimitExceededExceptionResponse = async ( @@ -7237,13 +5085,11 @@ const deserializeAws_json1_1RegionLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RegionLimitExceededException(body, context); - const contents: RegionLimitExceededException = { - name: "RegionLimitExceededException", - $fault: "client", + const exception = new RegionLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceExceptionResponse = async ( @@ -7252,13 +5098,11 @@ const deserializeAws_json1_1ServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceException(body, context); - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", + const exception = new ServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ShareLimitExceededExceptionResponse = async ( @@ -7267,13 +5111,11 @@ const deserializeAws_json1_1ShareLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ShareLimitExceededException(body, context); - const contents: ShareLimitExceededException = { - name: "ShareLimitExceededException", - $fault: "client", + const exception = new ShareLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SnapshotLimitExceededExceptionResponse = async ( @@ -7282,13 +5124,11 @@ const deserializeAws_json1_1SnapshotLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SnapshotLimitExceededException(body, context); - const contents: SnapshotLimitExceededException = { - name: "SnapshotLimitExceededException", - $fault: "client", + const exception = new SnapshotLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagLimitExceededExceptionResponse = async ( @@ -7297,13 +5137,11 @@ const deserializeAws_json1_1TagLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagLimitExceededException(body, context); - const contents: TagLimitExceededException = { - name: "TagLimitExceededException", - $fault: "client", + const exception = new TagLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -7312,13 +5150,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserDoesNotExistExceptionResponse = async ( @@ -7327,13 +5163,11 @@ const deserializeAws_json1_1UserDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserDoesNotExistException(body, context); - const contents: UserDoesNotExistException = { - name: "UserDoesNotExistException", - $fault: "client", + const exception = new UserDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptSharedDirectoryRequest = ( diff --git a/clients/client-dlm/src/index.ts b/clients/client-dlm/src/index.ts index f951f9a26e2c5..02eb3fbb9c4a6 100644 --- a/clients/client-dlm/src/index.ts +++ b/clients/client-dlm/src/index.ts @@ -2,3 +2,4 @@ export * from "./DLM"; export * from "./DLMClient"; export * from "./commands"; export * from "./models"; +export { DLMServiceException } from "./models/DLMServiceException"; diff --git a/clients/client-dlm/src/models/DLMServiceException.ts b/clients/client-dlm/src/models/DLMServiceException.ts new file mode 100644 index 0000000000000..f420320cf8afe --- /dev/null +++ b/clients/client-dlm/src/models/DLMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DLM service. + */ +export class DLMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DLMServiceException.prototype); + } +} diff --git a/clients/client-dlm/src/models/models_0.ts b/clients/client-dlm/src/models/models_0.ts index c974c07917db0..d9dafa59c5743 100644 --- a/clients/client-dlm/src/models/models_0.ts +++ b/clients/client-dlm/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DLMServiceException as __BaseException } from "./DLMServiceException"; /** *

Specifies the encryption settings for shared snapshots that are copied across Regions.

@@ -734,20 +737,33 @@ export namespace CreateLifecyclePolicyResponse { /** *

The service failed in an unexpected way.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Bad request. The request is missing required parameters or has invalid * parameters.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** @@ -759,20 +775,49 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea *

The request included parameters that cannot be provided together.

*/ MutuallyExclusiveParameters?: string[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.RequiredParameters = opts.RequiredParameters; + this.MutuallyExclusiveParameters = opts.MutuallyExclusiveParameters; + } } /** *

The request failed because a limit was exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

Value is the type of resource for which a limit was exceeded.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.ResourceType = opts.ResourceType; + } } export interface DeleteLifecyclePolicyRequest { @@ -805,9 +850,9 @@ export namespace DeleteLifecyclePolicyResponse { /** *

A requested resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** @@ -819,6 +864,21 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

Value is a list of resource IDs that were not found.

*/ ResourceIds?: string[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.ResourceType = opts.ResourceType; + this.ResourceIds = opts.ResourceIds; + } } export enum GettablePolicyStateValues { diff --git a/clients/client-dlm/src/protocols/Aws_restJson1.ts b/clients/client-dlm/src/protocols/Aws_restJson1.ts index cecbf419e72e8..61f160285cebd 100644 --- a/clients/client-dlm/src/protocols/Aws_restJson1.ts +++ b/clients/client-dlm/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -40,6 +39,7 @@ import { UpdateLifecyclePolicyCommandInput, UpdateLifecyclePolicyCommandOutput, } from "../commands/UpdateLifecyclePolicyCommand"; +import { DLMServiceException as __BaseException } from "../models/DLMServiceException"; import { _Parameters, Action, @@ -344,49 +344,28 @@ const deserializeAws_restJson1CreateLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.dlm#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dlm#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLifecyclePolicyCommand = async ( @@ -411,49 +390,28 @@ const deserializeAws_restJson1DeleteLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dlm#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLifecyclePoliciesCommand = async ( @@ -482,57 +440,31 @@ const deserializeAws_restJson1GetLifecyclePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.dlm#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dlm#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLifecyclePolicyCommand = async ( @@ -561,49 +493,28 @@ const deserializeAws_restJson1GetLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dlm#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -632,49 +543,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.dlm#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -699,49 +589,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.dlm#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -766,49 +635,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.dlm#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLifecyclePolicyCommand = async ( @@ -833,70 +681,38 @@ const deserializeAws_restJson1UpdateLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.dlm#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.dlm#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dlm#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dlm#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -904,22 +720,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - MutuallyExclusiveParameters: undefined, - RequiredParameters: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -936,21 +748,18 @@ const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( if (data.RequiredParameters !== undefined && data.RequiredParameters !== null) { contents.RequiredParameters = deserializeAws_restJson1ParameterList(data.RequiredParameters, context); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -961,22 +770,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - ResourceIds: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -990,7 +795,11 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Action = (input: Action, context: __SerdeContext): any => { diff --git a/clients/client-docdb/src/index.ts b/clients/client-docdb/src/index.ts index bdf243055c3bf..92032300a2e46 100644 --- a/clients/client-docdb/src/index.ts +++ b/clients/client-docdb/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { DocDBServiceException } from "./models/DocDBServiceException"; diff --git a/clients/client-docdb/src/models/DocDBServiceException.ts b/clients/client-docdb/src/models/DocDBServiceException.ts new file mode 100644 index 0000000000000..da4b50f518165 --- /dev/null +++ b/clients/client-docdb/src/models/DocDBServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DocDB service. + */ +export class DocDBServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DocDBServiceException.prototype); + } +} diff --git a/clients/client-docdb/src/models/models_0.ts b/clients/client-docdb/src/models/models_0.ts index 4c8d7da4236d3..1d35b797186a8 100644 --- a/clients/client-docdb/src/models/models_0.ts +++ b/clients/client-docdb/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DocDBServiceException as __BaseException } from "./DocDBServiceException"; /** *

Represents the input to AddSourceIdentifierToSubscription. @@ -137,19 +140,39 @@ export namespace AddSourceIdentifierToSubscriptionResult { /** *

The requested source could not be found.

*/ -export interface SourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SourceNotFoundFault"; - $fault: "client"; - message?: string; +export class SourceNotFoundFault extends __BaseException { + readonly name: "SourceNotFoundFault" = "SourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceNotFoundFault.prototype); + } } /** *

The subscription name does not exist.

*/ -export interface SubscriptionNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionNotFoundFault extends __BaseException { + readonly name: "SubscriptionNotFoundFault" = "SubscriptionNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionNotFoundFault.prototype); + } } /** @@ -206,30 +229,60 @@ export namespace AddTagsToResourceMessage { *

* DBClusterIdentifier doesn't refer to an existing cluster.

*/ -export interface DBClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterNotFoundFault extends __BaseException { + readonly name: "DBClusterNotFoundFault" = "DBClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterNotFoundFault.prototype); + } } /** *

* DBInstanceIdentifier doesn't refer to an existing instance.

*/ -export interface DBInstanceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceNotFoundFault"; - $fault: "client"; - message?: string; +export class DBInstanceNotFoundFault extends __BaseException { + readonly name: "DBInstanceNotFoundFault" = "DBInstanceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceNotFoundFault.prototype); + } } /** *

* DBSnapshotIdentifier doesn't refer to an existing snapshot.

*/ -export interface DBSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class DBSnapshotNotFoundFault extends __BaseException { + readonly name: "DBSnapshotNotFoundFault" = "DBSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSnapshotNotFoundFault.prototype); + } } /** @@ -383,29 +436,59 @@ export namespace ApplyPendingMaintenanceActionResult { /** *

The cluster isn't in a valid state.

*/ -export interface InvalidDBClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBClusterStateFault extends __BaseException { + readonly name: "InvalidDBClusterStateFault" = "InvalidDBClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterStateFault.prototype); + } } /** *

The specified instance isn't in the available state. *

*/ -export interface InvalidDBInstanceStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBInstanceStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBInstanceStateFault extends __BaseException { + readonly name: "InvalidDBInstanceStateFault" = "InvalidDBInstanceStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBInstanceStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBInstanceStateFault.prototype); + } } /** *

The specified resource ID was not found.

*/ -export interface ResourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundFault"; - $fault: "client"; - message?: string; +export class ResourceNotFoundFault extends __BaseException { + readonly name: "ResourceNotFoundFault" = "ResourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundFault.prototype); + } } /** @@ -529,29 +612,59 @@ export namespace CopyDBClusterParameterGroupResult { /** *

A parameter group with the same name already exists.

*/ -export interface DBParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBParameterGroupAlreadyExistsFault" = "DBParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupAlreadyExistsFault.prototype); + } } /** *

* DBParameterGroupName doesn't refer to an existing parameter group.

*/ -export interface DBParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBParameterGroupNotFoundFault extends __BaseException { + readonly name: "DBParameterGroupNotFoundFault" = "DBParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupNotFoundFault.prototype); + } } /** *

This request would cause you to exceed the allowed number of parameter groups.

*/ -export interface DBParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "DBParameterGroupQuotaExceededFault" = "DBParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupQuotaExceededFault.prototype); + } } /** @@ -808,47 +921,97 @@ export namespace CopyDBClusterSnapshotResult { /** *

You already have a cluster snapshot with the given identifier.

*/ -export interface DBClusterSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterSnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBClusterSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterSnapshotAlreadyExistsFault" = "DBClusterSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterSnapshotAlreadyExistsFault.prototype); + } } /** *

* DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot.

*/ -export interface DBClusterSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterSnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterSnapshotNotFoundFault extends __BaseException { + readonly name: "DBClusterSnapshotNotFoundFault" = "DBClusterSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterSnapshotNotFoundFault.prototype); + } } /** *

The provided value isn't a valid cluster snapshot state.

*/ -export interface InvalidDBClusterSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBClusterSnapshotStateFault extends __BaseException { + readonly name: "InvalidDBClusterSnapshotStateFault" = "InvalidDBClusterSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterSnapshotStateFault.prototype); + } } /** *

An error occurred when accessing an KMS key.

*/ -export interface KMSKeyNotAccessibleFault extends __SmithyException, $MetadataBearer { - name: "KMSKeyNotAccessibleFault"; - $fault: "client"; - message?: string; +export class KMSKeyNotAccessibleFault extends __BaseException { + readonly name: "KMSKeyNotAccessibleFault" = "KMSKeyNotAccessibleFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSKeyNotAccessibleFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSKeyNotAccessibleFault.prototype); + } } /** *

The request would cause you to exceed the allowed number of snapshots.

*/ -export interface SnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SnapshotQuotaExceededFault extends __BaseException { + readonly name: "SnapshotQuotaExceededFault" = "SnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotQuotaExceededFault.prototype); + } } /** @@ -1368,114 +1531,234 @@ export namespace CreateDBClusterResult { /** *

You already have a cluster with the given identifier.

*/ -export interface DBClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBClusterAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterAlreadyExistsFault" = "DBClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterAlreadyExistsFault.prototype); + } } /** *

* DBClusterParameterGroupName doesn't refer to an existing cluster parameter group.

*/ -export interface DBClusterParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterParameterGroupNotFoundFault extends __BaseException { + readonly name: "DBClusterParameterGroupNotFoundFault" = "DBClusterParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterParameterGroupNotFoundFault.prototype); + } } /** *

The cluster can't be created because you have reached the maximum allowed quota of clusters.

*/ -export interface DBClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBClusterQuotaExceededFault extends __BaseException { + readonly name: "DBClusterQuotaExceededFault" = "DBClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterQuotaExceededFault.prototype); + } } /** *

Subnets in the subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

*/ -export interface DBSubnetGroupDoesNotCoverEnoughAZs extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupDoesNotCoverEnoughAZs"; - $fault: "client"; - message?: string; +export class DBSubnetGroupDoesNotCoverEnoughAZs extends __BaseException { + readonly name: "DBSubnetGroupDoesNotCoverEnoughAZs" = "DBSubnetGroupDoesNotCoverEnoughAZs"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupDoesNotCoverEnoughAZs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupDoesNotCoverEnoughAZs.prototype); + } } /** *

* DBSubnetGroupName doesn't refer to an existing subnet group.

*/ -export interface DBSubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupNotFoundFault extends __BaseException { + readonly name: "DBSubnetGroupNotFoundFault" = "DBSubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupNotFoundFault.prototype); + } } /** *

The GlobalClusterIdentifier doesn't refer to an existing global cluster.

*/ -export interface GlobalClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "GlobalClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class GlobalClusterNotFoundFault extends __BaseException { + readonly name: "GlobalClusterNotFoundFault" = "GlobalClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalClusterNotFoundFault.prototype); + } } /** *

There is not enough storage available for the current action. You might be able to resolve this error by updating your subnet group to use different Availability Zones that have more storage available.

*/ -export interface InsufficientStorageClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientStorageClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientStorageClusterCapacityFault extends __BaseException { + readonly name: "InsufficientStorageClusterCapacityFault" = "InsufficientStorageClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientStorageClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientStorageClusterCapacityFault.prototype); + } } /** *

The subnet group can't be deleted because it's in use.

*/ -export interface InvalidDBSubnetGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSubnetGroupStateFault extends __BaseException { + readonly name: "InvalidDBSubnetGroupStateFault" = "InvalidDBSubnetGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetGroupStateFault.prototype); + } } /** *

The requested operation can't be performed while the cluster is in this state.

*/ -export interface InvalidGlobalClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidGlobalClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidGlobalClusterStateFault extends __BaseException { + readonly name: "InvalidGlobalClusterStateFault" = "InvalidGlobalClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGlobalClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGlobalClusterStateFault.prototype); + } } /** *

The requested subnet is not valid, or multiple subnets were requested that are not all * in a common virtual private cloud (VPC).

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; - message?: string; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

The subnet group doesn't cover all Availability Zones after it is created * because of changes that were made.

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; - message?: string; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

The request would cause you to exceed the allowed amount of storage available across * all instances.

*/ -export interface StorageQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "StorageQuotaExceededFault"; - $fault: "client"; - message?: string; +export class StorageQuotaExceededFault extends __BaseException { + readonly name: "StorageQuotaExceededFault" = "StorageQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageQuotaExceededFault.prototype); + } } /** @@ -1613,10 +1896,20 @@ export namespace CreateDBClusterSnapshotResult { *

The specified CIDR IP or Amazon EC2 security group isn't authorized for the specified security group.

*

Amazon DocumentDB also might not be authorized to perform necessary actions on your behalf using IAM.

*/ -export interface AuthorizationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationNotFoundFault"; - $fault: "client"; - message?: string; +export class AuthorizationNotFoundFault extends __BaseException { + readonly name: "AuthorizationNotFoundFault" = "AuthorizationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationNotFoundFault.prototype); + } } /** @@ -2167,48 +2460,98 @@ export namespace CreateDBInstanceResult { /** *

You already have a instance with the given identifier.

*/ -export interface DBInstanceAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBInstanceAlreadyExistsFault extends __BaseException { + readonly name: "DBInstanceAlreadyExistsFault" = "DBInstanceAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceAlreadyExistsFault.prototype); + } } /** *

* DBSecurityGroupName doesn't refer to an existing security group.

*/ -export interface DBSecurityGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSecurityGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBSecurityGroupNotFoundFault extends __BaseException { + readonly name: "DBSecurityGroupNotFoundFault" = "DBSecurityGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSecurityGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSecurityGroupNotFoundFault.prototype); + } } /** *

The request would cause you to exceed the allowed number of instances.

*/ -export interface InstanceQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "InstanceQuotaExceededFault"; - $fault: "client"; - message?: string; +export class InstanceQuotaExceededFault extends __BaseException { + readonly name: "InstanceQuotaExceededFault" = "InstanceQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceQuotaExceededFault.prototype); + } } /** *

The specified instance class isn't available in the specified Availability Zone.

*/ -export interface InsufficientDBInstanceCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientDBInstanceCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientDBInstanceCapacityFault extends __BaseException { + readonly name: "InsufficientDBInstanceCapacityFault" = "InsufficientDBInstanceCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDBInstanceCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDBInstanceCapacityFault.prototype); + } } /** *

Storage of the specified StorageType can't be associated with the DB * instance.

*/ -export interface StorageTypeNotSupportedFault extends __SmithyException, $MetadataBearer { - name: "StorageTypeNotSupportedFault"; - $fault: "client"; - message?: string; +export class StorageTypeNotSupportedFault extends __BaseException { + readonly name: "StorageTypeNotSupportedFault" = "StorageTypeNotSupportedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageTypeNotSupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageTypeNotSupportedFault.prototype); + } } /** @@ -2269,28 +2612,58 @@ export namespace CreateDBSubnetGroupResult { *

* DBSubnetGroupName is already being used by an existing subnet group.

*/ -export interface DBSubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBSubnetGroupAlreadyExistsFault" = "DBSubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupAlreadyExistsFault.prototype); + } } /** *

The request would cause you to exceed the allowed number of subnet groups.

*/ -export interface DBSubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "DBSubnetGroupQuotaExceededFault" = "DBSubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupQuotaExceededFault.prototype); + } } /** *

The request would cause you to exceed the allowed number of subnets in a subnet group.

*/ -export interface DBSubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBSubnetQuotaExceededFault extends __BaseException { + readonly name: "DBSubnetQuotaExceededFault" = "DBSubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetQuotaExceededFault.prototype); + } } /** @@ -2390,55 +2763,115 @@ export namespace CreateEventSubscriptionResult { /** *

You have reached the maximum number of event subscriptions.

*/ -export interface EventSubscriptionQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "EventSubscriptionQuotaExceededFault"; - $fault: "client"; - message?: string; +export class EventSubscriptionQuotaExceededFault extends __BaseException { + readonly name: "EventSubscriptionQuotaExceededFault" = "EventSubscriptionQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventSubscriptionQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventSubscriptionQuotaExceededFault.prototype); + } } /** *

Amazon SNS has responded that there is a problem with the specified topic.

*/ -export interface SNSInvalidTopicFault extends __SmithyException, $MetadataBearer { - name: "SNSInvalidTopicFault"; - $fault: "client"; - message?: string; +export class SNSInvalidTopicFault extends __BaseException { + readonly name: "SNSInvalidTopicFault" = "SNSInvalidTopicFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSInvalidTopicFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSInvalidTopicFault.prototype); + } } /** *

You do not have permission to publish to the SNS topic Amazon Resource Name (ARN).

*/ -export interface SNSNoAuthorizationFault extends __SmithyException, $MetadataBearer { - name: "SNSNoAuthorizationFault"; - $fault: "client"; - message?: string; +export class SNSNoAuthorizationFault extends __BaseException { + readonly name: "SNSNoAuthorizationFault" = "SNSNoAuthorizationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSNoAuthorizationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSNoAuthorizationFault.prototype); + } } /** *

The SNS topic Amazon Resource Name (ARN) does not exist.

*/ -export interface SNSTopicArnNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SNSTopicArnNotFoundFault"; - $fault: "client"; - message?: string; +export class SNSTopicArnNotFoundFault extends __BaseException { + readonly name: "SNSTopicArnNotFoundFault" = "SNSTopicArnNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSTopicArnNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSTopicArnNotFoundFault.prototype); + } } /** *

The provided subscription name already exists.

*/ -export interface SubscriptionAlreadyExistFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionAlreadyExistFault"; - $fault: "client"; - message?: string; +export class SubscriptionAlreadyExistFault extends __BaseException { + readonly name: "SubscriptionAlreadyExistFault" = "SubscriptionAlreadyExistFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionAlreadyExistFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionAlreadyExistFault.prototype); + } } /** *

The provided category does not exist.

*/ -export interface SubscriptionCategoryNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionCategoryNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionCategoryNotFoundFault extends __BaseException { + readonly name: "SubscriptionCategoryNotFoundFault" = "SubscriptionCategoryNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionCategoryNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionCategoryNotFoundFault.prototype); + } } /** @@ -2602,19 +3035,39 @@ export namespace CreateGlobalClusterResult { /** *

The GlobalClusterIdentifier already exists. Choose a new global cluster identifier (unique name) to create a new global cluster.

*/ -export interface GlobalClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "GlobalClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class GlobalClusterAlreadyExistsFault extends __BaseException { + readonly name: "GlobalClusterAlreadyExistsFault" = "GlobalClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalClusterAlreadyExistsFault.prototype); + } } /** *

The number of global clusters for this account is already at the maximum allowed.

*/ -export interface GlobalClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "GlobalClusterQuotaExceededFault"; - $fault: "client"; - message?: string; +export class GlobalClusterQuotaExceededFault extends __BaseException { + readonly name: "GlobalClusterQuotaExceededFault" = "GlobalClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalClusterQuotaExceededFault.prototype); + } } /** @@ -2722,10 +3175,20 @@ export namespace DeleteDBClusterParameterGroupMessage { /** *

The parameter group is in use, or it is in a state that is not valid. If you are trying to delete the parameter group, you can't delete it when the parameter group is in this state.

*/ -export interface InvalidDBParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBParameterGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBParameterGroupStateFault extends __BaseException { + readonly name: "InvalidDBParameterGroupStateFault" = "InvalidDBParameterGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBParameterGroupStateFault.prototype); + } } /** @@ -2768,10 +3231,20 @@ export namespace DeleteDBClusterSnapshotResult { *

* DBSnapshotIdentifier is already being used by an existing snapshot.

*/ -export interface DBSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "DBSnapshotAlreadyExistsFault" = "DBSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSnapshotAlreadyExistsFault.prototype); + } } /** @@ -2845,10 +3318,20 @@ export namespace DeleteDBSubnetGroupMessage { /** *

The subnet isn't in the available state.

*/ -export interface InvalidDBSubnetStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSubnetStateFault extends __BaseException { + readonly name: "InvalidDBSubnetStateFault" = "InvalidDBSubnetStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetStateFault.prototype); + } } /** @@ -2890,10 +3373,20 @@ export namespace DeleteEventSubscriptionResult { *

Someone else might be modifying a subscription. Wait a few seconds, and try * again.

*/ -export interface InvalidEventSubscriptionStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidEventSubscriptionStateFault"; - $fault: "client"; - message?: string; +export class InvalidEventSubscriptionStateFault extends __BaseException { + readonly name: "InvalidEventSubscriptionStateFault" = "InvalidEventSubscriptionStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventSubscriptionStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventSubscriptionStateFault.prototype); + } } /** @@ -3010,10 +3503,20 @@ export namespace CertificateMessage { *

* CertificateIdentifier doesn't refer to an existing certificate.

*/ -export interface CertificateNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CertificateNotFoundFault"; - $fault: "client"; - message?: string; +export class CertificateNotFoundFault extends __BaseException { + readonly name: "CertificateNotFoundFault" = "CertificateNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateNotFoundFault.prototype); + } } /** @@ -4709,10 +5212,20 @@ export namespace TagListMessage { /** *

The state of the security group doesn't allow deletion.

*/ -export interface InvalidDBSecurityGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSecurityGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSecurityGroupStateFault extends __BaseException { + readonly name: "InvalidDBSecurityGroupStateFault" = "InvalidDBSecurityGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSecurityGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSecurityGroupStateFault.prototype); + } } /** @@ -5034,20 +5547,40 @@ export namespace ModifyDBClusterSnapshotAttributeResult { *

You have exceeded the maximum number of accounts that you can share a manual DB * snapshot with.

*/ -export interface SharedSnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SharedSnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SharedSnapshotQuotaExceededFault extends __BaseException { + readonly name: "SharedSnapshotQuotaExceededFault" = "SharedSnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SharedSnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SharedSnapshotQuotaExceededFault.prototype); + } } /** *

The upgrade failed because a resource that the depends on can't be * modified.

*/ -export interface DBUpgradeDependencyFailureFault extends __SmithyException, $MetadataBearer { - name: "DBUpgradeDependencyFailureFault"; - $fault: "client"; - message?: string; +export class DBUpgradeDependencyFailureFault extends __BaseException { + readonly name: "DBUpgradeDependencyFailureFault" = "DBUpgradeDependencyFailureFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBUpgradeDependencyFailureFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBUpgradeDependencyFailureFault.prototype); + } } /** @@ -5216,10 +5749,20 @@ export namespace ModifyDBSubnetGroupResult { /** *

The subnet is already in use in the Availability Zone.

*/ -export interface SubnetAlreadyInUse extends __SmithyException, $MetadataBearer { - name: "SubnetAlreadyInUse"; - $fault: "client"; - message?: string; +export class SubnetAlreadyInUse extends __BaseException { + readonly name: "SubnetAlreadyInUse" = "SubnetAlreadyInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetAlreadyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetAlreadyInUse.prototype); + } } /** @@ -5533,29 +6076,59 @@ export namespace ResetDBClusterParameterGroupMessage { /** *

The cluster doesn't have enough capacity for the current operation.

*/ -export interface InsufficientDBClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientDBClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientDBClusterCapacityFault extends __BaseException { + readonly name: "InsufficientDBClusterCapacityFault" = "InsufficientDBClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDBClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDBClusterCapacityFault.prototype); + } } /** *

The state of the snapshot doesn't allow deletion.

*/ -export interface InvalidDBSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSnapshotStateFault extends __BaseException { + readonly name: "InvalidDBSnapshotStateFault" = "InvalidDBSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSnapshotStateFault.prototype); + } } /** *

You cannot restore from a virtual private cloud (VPC) backup to a non-VPC DB * instance.

*/ -export interface InvalidRestoreFault extends __SmithyException, $MetadataBearer { - name: "InvalidRestoreFault"; - $fault: "client"; - message?: string; +export class InvalidRestoreFault extends __BaseException { + readonly name: "InvalidRestoreFault" = "InvalidRestoreFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRestoreFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRestoreFault.prototype); + } } /** diff --git a/clients/client-docdb/src/protocols/Aws_query.ts b/clients/client-docdb/src/protocols/Aws_query.ts index 68eaa5f23dd15..b16be3941ab45 100644 --- a/clients/client-docdb/src/protocols/Aws_query.ts +++ b/clients/client-docdb/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -193,6 +192,7 @@ import { } from "../commands/RestoreDBClusterToPointInTimeCommand"; import { StartDBClusterCommandInput, StartDBClusterCommandOutput } from "../commands/StartDBClusterCommand"; import { StopDBClusterCommandInput, StopDBClusterCommandOutput } from "../commands/StopDBClusterCommand"; +import { DocDBServiceException as __BaseException } from "../models/DocDBServiceException"; import { AddSourceIdentifierToSubscriptionMessage, AddSourceIdentifierToSubscriptionResult, @@ -1262,41 +1262,25 @@ const deserializeAws_queryAddSourceIdentifierToSubscriptionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SourceNotFoundFault": case "com.amazonaws.docdb#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.docdb#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddTagsToResourceCommand = async ( @@ -1321,49 +1305,28 @@ const deserializeAws_queryAddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.docdb#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryApplyPendingMaintenanceActionCommand = async ( @@ -1391,49 +1354,28 @@ const deserializeAws_queryApplyPendingMaintenanceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.docdb#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBClusterParameterGroupCommand = async ( @@ -1461,49 +1403,28 @@ const deserializeAws_queryCopyDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.docdb#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.docdb#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBClusterSnapshotCommand = async ( @@ -1531,73 +1452,37 @@ const deserializeAws_queryCopyDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.docdb#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.docdb#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterCommand = async ( @@ -1625,161 +1510,70 @@ const deserializeAws_queryCreateDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.docdb#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.docdb#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterNotFoundFault": case "com.amazonaws.docdb#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.docdb#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.docdb#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.docdb#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.docdb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.docdb#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.docdb#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterParameterGroupCommand = async ( @@ -1807,41 +1601,25 @@ const deserializeAws_queryCreateDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.docdb#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.docdb#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterSnapshotCommand = async ( @@ -1869,65 +1647,34 @@ const deserializeAws_queryCreateDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.docdb#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBInstanceCommand = async ( @@ -1955,145 +1702,64 @@ const deserializeAws_queryCreateDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.docdb#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.docdb#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.docdb#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.docdb#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.docdb#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.docdb#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.docdb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.docdb#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.docdb#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.docdb#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBSubnetGroupCommand = async ( @@ -2121,65 +1787,34 @@ const deserializeAws_queryCreateDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupAlreadyExistsFault": case "com.amazonaws.docdb#DBSubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.docdb#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupQuotaExceededFault": case "com.amazonaws.docdb#DBSubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "DBSubnetQuotaExceededFault": case "com.amazonaws.docdb#DBSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateEventSubscriptionCommand = async ( @@ -2207,81 +1842,40 @@ const deserializeAws_queryCreateEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.docdb#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.docdb#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.docdb#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.docdb#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SourceNotFoundFault": case "com.amazonaws.docdb#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionAlreadyExistFault": case "com.amazonaws.docdb#SubscriptionAlreadyExistFault": - response = { - ...(await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.docdb#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateGlobalClusterCommand = async ( @@ -2309,57 +1903,31 @@ const deserializeAws_queryCreateGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterAlreadyExistsFault": case "com.amazonaws.docdb#GlobalClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse(parsedOutput, context); case "GlobalClusterQuotaExceededFault": case "com.amazonaws.docdb#GlobalClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryGlobalClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterQuotaExceededFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterCommand = async ( @@ -2387,65 +1955,34 @@ const deserializeAws_queryDeleteDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.docdb#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterParameterGroupCommand = async ( @@ -2470,41 +2007,25 @@ const deserializeAws_queryDeleteDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.docdb#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterSnapshotCommand = async ( @@ -2532,41 +2053,25 @@ const deserializeAws_queryDeleteDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBInstanceCommand = async ( @@ -2594,65 +2099,34 @@ const deserializeAws_queryDeleteDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotAlreadyExistsFault": case "com.amazonaws.docdb#DBSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.docdb#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBSubnetGroupCommand = async ( @@ -2677,49 +2151,28 @@ const deserializeAws_queryDeleteDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.docdb#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetStateFault": case "com.amazonaws.docdb#InvalidDBSubnetStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEventSubscriptionCommand = async ( @@ -2747,41 +2200,25 @@ const deserializeAws_queryDeleteEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEventSubscriptionStateFault": case "com.amazonaws.docdb#InvalidEventSubscriptionStateFault": - response = { - ...(await deserializeAws_queryInvalidEventSubscriptionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEventSubscriptionStateFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.docdb#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteGlobalClusterCommand = async ( @@ -2809,41 +2246,25 @@ const deserializeAws_queryDeleteGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalClusterNotFoundFault": case "com.amazonaws.docdb#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.docdb#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCertificatesCommand = async ( @@ -2871,33 +2292,22 @@ const deserializeAws_queryDescribeCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateNotFoundFault": case "com.amazonaws.docdb#CertificateNotFoundFault": - response = { - ...(await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterParameterGroupsCommand = async ( @@ -2925,33 +2335,22 @@ const deserializeAws_queryDescribeDBClusterParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterParametersCommand = async ( @@ -2979,33 +2378,22 @@ const deserializeAws_queryDescribeDBClusterParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClustersCommand = async ( @@ -3033,33 +2421,22 @@ const deserializeAws_queryDescribeDBClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterSnapshotAttributesCommand = async ( @@ -3090,33 +2467,22 @@ const deserializeAws_queryDescribeDBClusterSnapshotAttributesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterSnapshotsCommand = async ( @@ -3144,33 +2510,22 @@ const deserializeAws_queryDescribeDBClusterSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBEngineVersionsCommand = async ( @@ -3198,25 +2553,19 @@ const deserializeAws_queryDescribeDBEngineVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBInstancesCommand = async ( @@ -3244,33 +2593,22 @@ const deserializeAws_queryDescribeDBInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBSubnetGroupsCommand = async ( @@ -3298,33 +2636,22 @@ const deserializeAws_queryDescribeDBSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEngineDefaultClusterParametersCommand = async ( @@ -3355,25 +2682,19 @@ const deserializeAws_queryDescribeEngineDefaultClusterParametersCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventCategoriesCommand = async ( @@ -3401,25 +2722,19 @@ const deserializeAws_queryDescribeEventCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventsCommand = async ( @@ -3447,25 +2762,19 @@ const deserializeAws_queryDescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventSubscriptionsCommand = async ( @@ -3493,33 +2802,22 @@ const deserializeAws_queryDescribeEventSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SubscriptionNotFoundFault": case "com.amazonaws.docdb#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeGlobalClustersCommand = async ( @@ -3547,33 +2845,22 @@ const deserializeAws_queryDescribeGlobalClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalClusterNotFoundFault": case "com.amazonaws.docdb#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeOrderableDBInstanceOptionsCommand = async ( @@ -3604,25 +2891,19 @@ const deserializeAws_queryDescribeOrderableDBInstanceOptionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePendingMaintenanceActionsCommand = async ( @@ -3653,33 +2934,22 @@ const deserializeAws_queryDescribePendingMaintenanceActionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.docdb#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFailoverDBClusterCommand = async ( @@ -3707,49 +2977,28 @@ const deserializeAws_queryFailoverDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -3777,49 +3026,28 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.docdb#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterCommand = async ( @@ -3847,113 +3075,52 @@ const deserializeAws_queryModifyDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.docdb#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.docdb#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.docdb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.docdb#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterParameterGroupCommand = async ( @@ -3981,41 +3148,25 @@ const deserializeAws_queryModifyDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.docdb#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterSnapshotAttributeCommand = async ( @@ -4046,49 +3197,28 @@ const deserializeAws_queryModifyDBClusterSnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "SharedSnapshotQuotaExceededFault": case "com.amazonaws.docdb#SharedSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBInstanceCommand = async ( @@ -4116,129 +3246,58 @@ const deserializeAws_queryModifyDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.docdb#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "CertificateNotFoundFault": case "com.amazonaws.docdb#CertificateNotFoundFault": - response = { - ...(await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.docdb#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.docdb#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBUpgradeDependencyFailureFault": case "com.amazonaws.docdb#DBUpgradeDependencyFailureFault": - response = { - ...(await deserializeAws_queryDBUpgradeDependencyFailureFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBUpgradeDependencyFailureFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.docdb#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.docdb#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.docdb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.docdb#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.docdb#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBSubnetGroupCommand = async ( @@ -4266,65 +3325,34 @@ const deserializeAws_queryModifyDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.docdb#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetQuotaExceededFault": case "com.amazonaws.docdb#DBSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "SubnetAlreadyInUse": case "com.amazonaws.docdb#SubnetAlreadyInUse": - response = { - ...(await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyEventSubscriptionCommand = async ( @@ -4352,73 +3380,37 @@ const deserializeAws_queryModifyEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.docdb#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.docdb#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.docdb#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.docdb#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.docdb#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.docdb#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyGlobalClusterCommand = async ( @@ -4446,41 +3438,25 @@ const deserializeAws_queryModifyGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalClusterNotFoundFault": case "com.amazonaws.docdb#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.docdb#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebootDBInstanceCommand = async ( @@ -4508,41 +3484,25 @@ const deserializeAws_queryRebootDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveFromGlobalClusterCommand = async ( @@ -4570,49 +3530,28 @@ const deserializeAws_queryRemoveFromGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterNotFoundFault": case "com.amazonaws.docdb#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.docdb#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveSourceIdentifierFromSubscriptionCommand = async ( @@ -4643,41 +3582,25 @@ const deserializeAws_queryRemoveSourceIdentifierFromSubscriptionCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SourceNotFoundFault": case "com.amazonaws.docdb#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.docdb#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveTagsFromResourceCommand = async ( @@ -4702,49 +3625,28 @@ const deserializeAws_queryRemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.docdb#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.docdb#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetDBClusterParameterGroupCommand = async ( @@ -4772,41 +3674,25 @@ const deserializeAws_queryResetDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.docdb#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.docdb#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterFromSnapshotCommand = async ( @@ -4834,137 +3720,61 @@ const deserializeAws_queryRestoreDBClusterFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.docdb#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.docdb#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBClusterCapacityFault": case "com.amazonaws.docdb#InsufficientDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.docdb#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.docdb#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.docdb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.docdb#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.docdb#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterToPointInTimeCommand = async ( @@ -4992,145 +3802,64 @@ const deserializeAws_queryRestoreDBClusterToPointInTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.docdb#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.docdb#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.docdb#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.docdb#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBClusterCapacityFault": case "com.amazonaws.docdb#InsufficientDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.docdb#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.docdb#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.docdb#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.docdb#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.docdb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.docdb#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.docdb#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartDBClusterCommand = async ( @@ -5158,49 +3887,28 @@ const deserializeAws_queryStartDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopDBClusterCommand = async ( @@ -5228,49 +3936,28 @@ const deserializeAws_queryStopDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.docdb#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.docdb#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.docdb#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( @@ -5279,13 +3966,11 @@ const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationNotFoundFault(body.Error, context); - const contents: AuthorizationNotFoundFault = { - name: "AuthorizationNotFoundFault", - $fault: "client", + const exception = new AuthorizationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCertificateNotFoundFaultResponse = async ( @@ -5294,13 +3979,11 @@ const deserializeAws_queryCertificateNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCertificateNotFoundFault(body.Error, context); - const contents: CertificateNotFoundFault = { - name: "CertificateNotFoundFault", - $fault: "client", + const exception = new CertificateNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterAlreadyExistsFaultResponse = async ( @@ -5309,13 +3992,11 @@ const deserializeAws_queryDBClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterAlreadyExistsFault(body.Error, context); - const contents: DBClusterAlreadyExistsFault = { - name: "DBClusterAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterNotFoundFaultResponse = async ( @@ -5324,13 +4005,11 @@ const deserializeAws_queryDBClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterNotFoundFault(body.Error, context); - const contents: DBClusterNotFoundFault = { - name: "DBClusterNotFoundFault", - $fault: "client", + const exception = new DBClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse = async ( @@ -5339,13 +4018,11 @@ const deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterParameterGroupNotFoundFault(body.Error, context); - const contents: DBClusterParameterGroupNotFoundFault = { - name: "DBClusterParameterGroupNotFoundFault", - $fault: "client", + const exception = new DBClusterParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterQuotaExceededFaultResponse = async ( @@ -5354,13 +4031,11 @@ const deserializeAws_queryDBClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterQuotaExceededFault(body.Error, context); - const contents: DBClusterQuotaExceededFault = { - name: "DBClusterQuotaExceededFault", - $fault: "client", + const exception = new DBClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse = async ( @@ -5369,13 +4044,11 @@ const deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterSnapshotAlreadyExistsFault(body.Error, context); - const contents: DBClusterSnapshotAlreadyExistsFault = { - name: "DBClusterSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse = async ( @@ -5384,13 +4057,11 @@ const deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterSnapshotNotFoundFault(body.Error, context); - const contents: DBClusterSnapshotNotFoundFault = { - name: "DBClusterSnapshotNotFoundFault", - $fault: "client", + const exception = new DBClusterSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceAlreadyExistsFaultResponse = async ( @@ -5399,13 +4070,11 @@ const deserializeAws_queryDBInstanceAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceAlreadyExistsFault(body.Error, context); - const contents: DBInstanceAlreadyExistsFault = { - name: "DBInstanceAlreadyExistsFault", - $fault: "client", + const exception = new DBInstanceAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceNotFoundFaultResponse = async ( @@ -5414,13 +4083,11 @@ const deserializeAws_queryDBInstanceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceNotFoundFault(body.Error, context); - const contents: DBInstanceNotFoundFault = { - name: "DBInstanceNotFoundFault", - $fault: "client", + const exception = new DBInstanceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse = async ( @@ -5429,13 +4096,11 @@ const deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupAlreadyExistsFault(body.Error, context); - const contents: DBParameterGroupAlreadyExistsFault = { - name: "DBParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupNotFoundFaultResponse = async ( @@ -5444,13 +4109,11 @@ const deserializeAws_queryDBParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupNotFoundFault(body.Error, context); - const contents: DBParameterGroupNotFoundFault = { - name: "DBParameterGroupNotFoundFault", - $fault: "client", + const exception = new DBParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse = async ( @@ -5459,13 +4122,11 @@ const deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupQuotaExceededFault(body.Error, context); - const contents: DBParameterGroupQuotaExceededFault = { - name: "DBParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new DBParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSecurityGroupNotFoundFaultResponse = async ( @@ -5474,13 +4135,11 @@ const deserializeAws_queryDBSecurityGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSecurityGroupNotFoundFault(body.Error, context); - const contents: DBSecurityGroupNotFoundFault = { - name: "DBSecurityGroupNotFoundFault", - $fault: "client", + const exception = new DBSecurityGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse = async ( @@ -5489,13 +4148,11 @@ const deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSnapshotAlreadyExistsFault(body.Error, context); - const contents: DBSnapshotAlreadyExistsFault = { - name: "DBSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new DBSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSnapshotNotFoundFaultResponse = async ( @@ -5504,13 +4161,11 @@ const deserializeAws_queryDBSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSnapshotNotFoundFault(body.Error, context); - const contents: DBSnapshotNotFoundFault = { - name: "DBSnapshotNotFoundFault", - $fault: "client", + const exception = new DBSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse = async ( @@ -5519,13 +4174,11 @@ const deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupAlreadyExistsFault(body.Error, context); - const contents: DBSubnetGroupAlreadyExistsFault = { - name: "DBSubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBSubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse = async ( @@ -5534,13 +4187,11 @@ const deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZs(body.Error, context); - const contents: DBSubnetGroupDoesNotCoverEnoughAZs = { - name: "DBSubnetGroupDoesNotCoverEnoughAZs", - $fault: "client", + const exception = new DBSubnetGroupDoesNotCoverEnoughAZs({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupNotFoundFaultResponse = async ( @@ -5549,13 +4200,11 @@ const deserializeAws_queryDBSubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupNotFoundFault(body.Error, context); - const contents: DBSubnetGroupNotFoundFault = { - name: "DBSubnetGroupNotFoundFault", - $fault: "client", + const exception = new DBSubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse = async ( @@ -5564,13 +4213,11 @@ const deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupQuotaExceededFault(body.Error, context); - const contents: DBSubnetGroupQuotaExceededFault = { - name: "DBSubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new DBSubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetQuotaExceededFaultResponse = async ( @@ -5579,13 +4226,11 @@ const deserializeAws_queryDBSubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetQuotaExceededFault(body.Error, context); - const contents: DBSubnetQuotaExceededFault = { - name: "DBSubnetQuotaExceededFault", - $fault: "client", + const exception = new DBSubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBUpgradeDependencyFailureFaultResponse = async ( @@ -5594,13 +4239,11 @@ const deserializeAws_queryDBUpgradeDependencyFailureFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBUpgradeDependencyFailureFault(body.Error, context); - const contents: DBUpgradeDependencyFailureFault = { - name: "DBUpgradeDependencyFailureFault", - $fault: "client", + const exception = new DBUpgradeDependencyFailureFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( @@ -5609,13 +4252,11 @@ const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEventSubscriptionQuotaExceededFault(body.Error, context); - const contents: EventSubscriptionQuotaExceededFault = { - name: "EventSubscriptionQuotaExceededFault", - $fault: "client", + const exception = new EventSubscriptionQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse = async ( @@ -5624,13 +4265,11 @@ const deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalClusterAlreadyExistsFault(body.Error, context); - const contents: GlobalClusterAlreadyExistsFault = { - name: "GlobalClusterAlreadyExistsFault", - $fault: "client", + const exception = new GlobalClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalClusterNotFoundFaultResponse = async ( @@ -5639,13 +4278,11 @@ const deserializeAws_queryGlobalClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalClusterNotFoundFault(body.Error, context); - const contents: GlobalClusterNotFoundFault = { - name: "GlobalClusterNotFoundFault", - $fault: "client", + const exception = new GlobalClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalClusterQuotaExceededFaultResponse = async ( @@ -5654,13 +4291,11 @@ const deserializeAws_queryGlobalClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalClusterQuotaExceededFault(body.Error, context); - const contents: GlobalClusterQuotaExceededFault = { - name: "GlobalClusterQuotaExceededFault", - $fault: "client", + const exception = new GlobalClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInstanceQuotaExceededFaultResponse = async ( @@ -5669,13 +4304,11 @@ const deserializeAws_queryInstanceQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInstanceQuotaExceededFault(body.Error, context); - const contents: InstanceQuotaExceededFault = { - name: "InstanceQuotaExceededFault", - $fault: "client", + const exception = new InstanceQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientDBClusterCapacityFaultResponse = async ( @@ -5684,13 +4317,11 @@ const deserializeAws_queryInsufficientDBClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientDBClusterCapacityFault(body.Error, context); - const contents: InsufficientDBClusterCapacityFault = { - name: "InsufficientDBClusterCapacityFault", - $fault: "client", + const exception = new InsufficientDBClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse = async ( @@ -5699,13 +4330,11 @@ const deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientDBInstanceCapacityFault(body.Error, context); - const contents: InsufficientDBInstanceCapacityFault = { - name: "InsufficientDBInstanceCapacityFault", - $fault: "client", + const exception = new InsufficientDBInstanceCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse = async ( @@ -5714,13 +4343,11 @@ const deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientStorageClusterCapacityFault(body.Error, context); - const contents: InsufficientStorageClusterCapacityFault = { - name: "InsufficientStorageClusterCapacityFault", - $fault: "client", + const exception = new InsufficientStorageClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse = async ( @@ -5729,13 +4356,11 @@ const deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterSnapshotStateFault(body.Error, context); - const contents: InvalidDBClusterSnapshotStateFault = { - name: "InvalidDBClusterSnapshotStateFault", - $fault: "client", + const exception = new InvalidDBClusterSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterStateFaultResponse = async ( @@ -5744,13 +4369,11 @@ const deserializeAws_queryInvalidDBClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterStateFault(body.Error, context); - const contents: InvalidDBClusterStateFault = { - name: "InvalidDBClusterStateFault", - $fault: "client", + const exception = new InvalidDBClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBInstanceStateFaultResponse = async ( @@ -5759,13 +4382,11 @@ const deserializeAws_queryInvalidDBInstanceStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBInstanceStateFault(body.Error, context); - const contents: InvalidDBInstanceStateFault = { - name: "InvalidDBInstanceStateFault", - $fault: "client", + const exception = new InvalidDBInstanceStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBParameterGroupStateFaultResponse = async ( @@ -5774,13 +4395,11 @@ const deserializeAws_queryInvalidDBParameterGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBParameterGroupStateFault(body.Error, context); - const contents: InvalidDBParameterGroupStateFault = { - name: "InvalidDBParameterGroupStateFault", - $fault: "client", + const exception = new InvalidDBParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse = async ( @@ -5789,13 +4408,11 @@ const deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSecurityGroupStateFault(body.Error, context); - const contents: InvalidDBSecurityGroupStateFault = { - name: "InvalidDBSecurityGroupStateFault", - $fault: "client", + const exception = new InvalidDBSecurityGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSnapshotStateFaultResponse = async ( @@ -5804,13 +4421,11 @@ const deserializeAws_queryInvalidDBSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSnapshotStateFault(body.Error, context); - const contents: InvalidDBSnapshotStateFault = { - name: "InvalidDBSnapshotStateFault", - $fault: "client", + const exception = new InvalidDBSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse = async ( @@ -5819,13 +4434,11 @@ const deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetGroupStateFault(body.Error, context); - const contents: InvalidDBSubnetGroupStateFault = { - name: "InvalidDBSubnetGroupStateFault", - $fault: "client", + const exception = new InvalidDBSubnetGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetStateFaultResponse = async ( @@ -5834,13 +4447,11 @@ const deserializeAws_queryInvalidDBSubnetStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetStateFault(body.Error, context); - const contents: InvalidDBSubnetStateFault = { - name: "InvalidDBSubnetStateFault", - $fault: "client", + const exception = new InvalidDBSubnetStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidEventSubscriptionStateFaultResponse = async ( @@ -5849,13 +4460,11 @@ const deserializeAws_queryInvalidEventSubscriptionStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidEventSubscriptionStateFault(body.Error, context); - const contents: InvalidEventSubscriptionStateFault = { - name: "InvalidEventSubscriptionStateFault", - $fault: "client", + const exception = new InvalidEventSubscriptionStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidGlobalClusterStateFaultResponse = async ( @@ -5864,13 +4473,11 @@ const deserializeAws_queryInvalidGlobalClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidGlobalClusterStateFault(body.Error, context); - const contents: InvalidGlobalClusterStateFault = { - name: "InvalidGlobalClusterStateFault", - $fault: "client", + const exception = new InvalidGlobalClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRestoreFaultResponse = async ( @@ -5879,13 +4486,11 @@ const deserializeAws_queryInvalidRestoreFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRestoreFault(body.Error, context); - const contents: InvalidRestoreFault = { - name: "InvalidRestoreFault", - $fault: "client", + const exception = new InvalidRestoreFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetResponse = async ( @@ -5894,13 +4499,11 @@ const deserializeAws_queryInvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnet(body.Error, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( @@ -5909,13 +4512,11 @@ const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidVPCNetworkStateFault(body.Error, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSKeyNotAccessibleFaultResponse = async ( @@ -5924,13 +4525,11 @@ const deserializeAws_queryKMSKeyNotAccessibleFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSKeyNotAccessibleFault(body.Error, context); - const contents: KMSKeyNotAccessibleFault = { - name: "KMSKeyNotAccessibleFault", - $fault: "client", + const exception = new KMSKeyNotAccessibleFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundFaultResponse = async ( @@ -5939,13 +4538,11 @@ const deserializeAws_queryResourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundFault(body.Error, context); - const contents: ResourceNotFoundFault = { - name: "ResourceNotFoundFault", - $fault: "client", + const exception = new ResourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySharedSnapshotQuotaExceededFaultResponse = async ( @@ -5954,13 +4551,11 @@ const deserializeAws_querySharedSnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySharedSnapshotQuotaExceededFault(body.Error, context); - const contents: SharedSnapshotQuotaExceededFault = { - name: "SharedSnapshotQuotaExceededFault", - $fault: "client", + const exception = new SharedSnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( @@ -5969,13 +4564,11 @@ const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotQuotaExceededFault(body.Error, context); - const contents: SnapshotQuotaExceededFault = { - name: "SnapshotQuotaExceededFault", - $fault: "client", + const exception = new SnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSInvalidTopicFaultResponse = async ( @@ -5984,13 +4577,11 @@ const deserializeAws_querySNSInvalidTopicFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSInvalidTopicFault(body.Error, context); - const contents: SNSInvalidTopicFault = { - name: "SNSInvalidTopicFault", - $fault: "client", + const exception = new SNSInvalidTopicFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( @@ -5999,13 +4590,11 @@ const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSNoAuthorizationFault(body.Error, context); - const contents: SNSNoAuthorizationFault = { - name: "SNSNoAuthorizationFault", - $fault: "client", + const exception = new SNSNoAuthorizationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( @@ -6014,13 +4603,11 @@ const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSTopicArnNotFoundFault(body.Error, context); - const contents: SNSTopicArnNotFoundFault = { - name: "SNSTopicArnNotFoundFault", - $fault: "client", + const exception = new SNSTopicArnNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySourceNotFoundFaultResponse = async ( @@ -6029,13 +4616,11 @@ const deserializeAws_querySourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySourceNotFoundFault(body.Error, context); - const contents: SourceNotFoundFault = { - name: "SourceNotFoundFault", - $fault: "client", + const exception = new SourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStorageQuotaExceededFaultResponse = async ( @@ -6044,13 +4629,11 @@ const deserializeAws_queryStorageQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStorageQuotaExceededFault(body.Error, context); - const contents: StorageQuotaExceededFault = { - name: "StorageQuotaExceededFault", - $fault: "client", + const exception = new StorageQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStorageTypeNotSupportedFaultResponse = async ( @@ -6059,13 +4642,11 @@ const deserializeAws_queryStorageTypeNotSupportedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStorageTypeNotSupportedFault(body.Error, context); - const contents: StorageTypeNotSupportedFault = { - name: "StorageTypeNotSupportedFault", - $fault: "client", + const exception = new StorageTypeNotSupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetAlreadyInUseResponse = async ( @@ -6074,13 +4655,11 @@ const deserializeAws_querySubnetAlreadyInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetAlreadyInUse(body.Error, context); - const contents: SubnetAlreadyInUse = { - name: "SubnetAlreadyInUse", - $fault: "client", + const exception = new SubnetAlreadyInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( @@ -6089,13 +4668,11 @@ const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionAlreadyExistFault(body.Error, context); - const contents: SubscriptionAlreadyExistFault = { - name: "SubscriptionAlreadyExistFault", - $fault: "client", + const exception = new SubscriptionAlreadyExistFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( @@ -6104,13 +4681,11 @@ const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionCategoryNotFoundFault(body.Error, context); - const contents: SubscriptionCategoryNotFoundFault = { - name: "SubscriptionCategoryNotFoundFault", - $fault: "client", + const exception = new SubscriptionCategoryNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( @@ -6119,13 +4694,11 @@ const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionNotFoundFault(body.Error, context); - const contents: SubscriptionNotFoundFault = { - name: "SubscriptionNotFoundFault", - $fault: "client", + const exception = new SubscriptionNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAddSourceIdentifierToSubscriptionMessage = ( diff --git a/clients/client-drs/src/index.ts b/clients/client-drs/src/index.ts index bff96309b36b0..e993be02312ea 100644 --- a/clients/client-drs/src/index.ts +++ b/clients/client-drs/src/index.ts @@ -3,3 +3,4 @@ export * from "./DrsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { DrsServiceException } from "./models/DrsServiceException"; diff --git a/clients/client-drs/src/models/DrsServiceException.ts b/clients/client-drs/src/models/DrsServiceException.ts new file mode 100644 index 0000000000000..0da6793b8a70f --- /dev/null +++ b/clients/client-drs/src/models/DrsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Drs service. + */ +export class DrsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DrsServiceException.prototype); + } +} diff --git a/clients/client-drs/src/models/models_0.ts b/clients/client-drs/src/models/models_0.ts index e8bd37cefe20e..cf2dfb1a2ffbc 100644 --- a/clients/client-drs/src/models/models_0.ts +++ b/clients/client-drs/src/models/models_0.ts @@ -1,23 +1,35 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DrsServiceException as __BaseException } from "./DrsServiceException"; /** *

TYou do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.code = opts.code; + } } /** *

The request could not be completed due to a conflict with the current state of the target resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; code?: string; /** *

The ID of the resource.

@@ -28,6 +40,21 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.code = opts.code; + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -201,14 +228,26 @@ export namespace CreateReplicationConfigurationTemplateRequest { /** *

The request processing has failed because of an unknown error, exception or failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

The number of seconds after which the request should be safe to retry.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } export interface ReplicationConfigurationTemplate { @@ -307,10 +346,9 @@ export namespace ReplicationConfigurationTemplate { /** *

The request could not be completed because its exceeded the service quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; code?: string; /** *

The ID of the resource.

@@ -331,15 +369,31 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

Quota code.

*/ quotaCode?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.code = opts.code; + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

Service code.

*/ @@ -354,16 +408,42 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The number of seconds after which the request should be safe to retry.

*/ retryAfterSeconds?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The account performing the request has not been initialized.

*/ -export interface UninitializedAccountException extends __SmithyException, $MetadataBearer { - name: "UninitializedAccountException"; - $fault: "client"; - message?: string; +export class UninitializedAccountException extends __BaseException { + readonly name: "UninitializedAccountException" = "UninitializedAccountException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UninitializedAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UninitializedAccountException.prototype); + this.code = opts.code; + } } /** @@ -400,10 +480,9 @@ export enum ValidationExceptionReason { /** *

The input fails to satisfy the constraints specified by the AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; code?: string; /** *

Validation exception reason.

@@ -414,6 +493,21 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

A list of fields that failed validation.

*/ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.code = opts.code; + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } export enum DataReplicationErrorString { @@ -658,10 +752,9 @@ export namespace DeleteJobResponse { /** *

The resource for this operation was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; code?: string; /** *

The ID of the resource.

@@ -672,6 +765,21 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } export interface DeleteRecoveryInstanceRequest { diff --git a/clients/client-drs/src/protocols/Aws_restJson1.ts b/clients/client-drs/src/protocols/Aws_restJson1.ts index ad11142db1ca8..be5c5fd272a19 100644 --- a/clients/client-drs/src/protocols/Aws_restJson1.ts +++ b/clients/client-drs/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -109,6 +108,7 @@ import { UpdateReplicationConfigurationTemplateCommandInput, UpdateReplicationConfigurationTemplateCommandOutput, } from "../commands/UpdateReplicationConfigurationTemplateCommand"; +import { DrsServiceException as __BaseException } from "../models/DrsServiceException"; import { AccessDeniedException, ConflictException, @@ -1186,73 +1186,37 @@ const deserializeAws_restJson1CreateReplicationConfigurationTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.drs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobCommand = async ( @@ -1277,65 +1241,34 @@ const deserializeAws_restJson1DeleteJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecoveryInstanceCommand = async ( @@ -1360,65 +1293,34 @@ const deserializeAws_restJson1DeleteRecoveryInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = async ( @@ -1443,65 +1345,34 @@ const deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSourceServerCommand = async ( @@ -1526,65 +1397,34 @@ const deserializeAws_restJson1DeleteSourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobLogItemsCommand = async ( @@ -1617,57 +1457,31 @@ const deserializeAws_restJson1DescribeJobLogItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobsCommand = async ( @@ -1700,57 +1514,31 @@ const deserializeAws_restJson1DescribeJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRecoveryInstancesCommand = async ( @@ -1783,57 +1571,31 @@ const deserializeAws_restJson1DescribeRecoveryInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRecoverySnapshotsCommand = async ( @@ -1866,65 +1628,34 @@ const deserializeAws_restJson1DescribeRecoverySnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = async ( @@ -1957,65 +1688,34 @@ const deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSourceServersCommand = async ( @@ -2048,57 +1748,31 @@ const deserializeAws_restJson1DescribeSourceServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisconnectRecoveryInstanceCommand = async ( @@ -2123,73 +1797,37 @@ const deserializeAws_restJson1DisconnectRecoveryInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisconnectSourceServerCommand = async ( @@ -2246,65 +1884,34 @@ const deserializeAws_restJson1DisconnectSourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFailbackReplicationConfigurationCommand = async ( @@ -2345,57 +1952,31 @@ const deserializeAws_restJson1GetFailbackReplicationConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchConfigurationCommand = async ( @@ -2452,57 +2033,31 @@ const deserializeAws_restJson1GetLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReplicationConfigurationCommand = async ( @@ -2597,57 +2152,31 @@ const deserializeAws_restJson1GetReplicationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitializeServiceCommand = async ( @@ -2672,57 +2201,31 @@ const deserializeAws_restJson1InitializeServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2751,65 +2254,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RetryDataReplicationCommand = async ( @@ -2866,65 +2338,34 @@ const deserializeAws_restJson1RetryDataReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartFailbackLaunchCommand = async ( @@ -2953,73 +2394,37 @@ const deserializeAws_restJson1StartFailbackLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.drs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartRecoveryCommand = async ( @@ -3048,65 +2453,34 @@ const deserializeAws_restJson1StartRecoveryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.drs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopFailbackCommand = async ( @@ -3131,57 +2505,31 @@ const deserializeAws_restJson1StopFailbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3206,65 +2554,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TerminateRecoveryInstancesCommand = async ( @@ -3293,65 +2610,34 @@ const deserializeAws_restJson1TerminateRecoveryInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.drs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3376,65 +2662,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFailbackReplicationConfigurationCommand = async ( @@ -3459,65 +2714,34 @@ const deserializeAws_restJson1UpdateFailbackReplicationConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLaunchConfigurationCommand = async ( @@ -3574,73 +2798,37 @@ const deserializeAws_restJson1UpdateLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReplicationConfigurationCommand = async ( @@ -3735,81 +2923,40 @@ const deserializeAws_restJson1UpdateReplicationConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.drs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReplicationConfigurationTemplateCommand = async ( @@ -3901,86 +3048,44 @@ const deserializeAws_restJson1UpdateReplicationConfigurationTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.drs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.drs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.drs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.drs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.drs#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.drs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3988,22 +3093,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4017,20 +3118,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseLong(parsedOutput.headers["retry-after"]); } @@ -4038,22 +3137,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4067,24 +3162,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4104,22 +3193,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -4133,20 +3218,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UninitializedAccountExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UninitializedAccountException = { - name: "UninitializedAccountException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4154,22 +3237,18 @@ const deserializeAws_restJson1UninitializedAccountExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UninitializedAccountException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4183,7 +3262,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DescribeJobsRequestFilters = ( diff --git a/clients/client-dynamodb-streams/src/index.ts b/clients/client-dynamodb-streams/src/index.ts index 37432f95d6bb1..5d3660ad3f258 100644 --- a/clients/client-dynamodb-streams/src/index.ts +++ b/clients/client-dynamodb-streams/src/index.ts @@ -2,3 +2,4 @@ export * from "./DynamoDBStreams"; export * from "./DynamoDBStreamsClient"; export * from "./commands"; export * from "./models"; +export { DynamoDBStreamsServiceException } from "./models/DynamoDBStreamsServiceException"; diff --git a/clients/client-dynamodb-streams/src/models/DynamoDBStreamsServiceException.ts b/clients/client-dynamodb-streams/src/models/DynamoDBStreamsServiceException.ts new file mode 100644 index 0000000000000..9359e735c1708 --- /dev/null +++ b/clients/client-dynamodb-streams/src/models/DynamoDBStreamsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DynamoDBStreams service. + */ +export class DynamoDBStreamsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DynamoDBStreamsServiceException.prototype); + } +} diff --git a/clients/client-dynamodb-streams/src/models/models_0.ts b/clients/client-dynamodb-streams/src/models/models_0.ts index b2c79db9efdae..5659b614a4749 100644 --- a/clients/client-dynamodb-streams/src/models/models_0.ts +++ b/clients/client-dynamodb-streams/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DynamoDBStreamsServiceException as __BaseException } from "./DynamoDBStreamsServiceException"; /** *

Represents the input of a DescribeStream operation.

@@ -280,13 +283,20 @@ export namespace DescribeStreamOutput { /** *

An error occurred on the server side.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; /** - *

The server encountered an internal error trying to fulfill the request.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + } } /** @@ -294,13 +304,20 @@ export interface InternalServerError extends __SmithyException, $MetadataBearer * might not be specified correctly, or its status might not be * ACTIVE.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The resource which is being requested does not exist.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -308,13 +325,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * iterator expires 15 minutes after it is retrieved using the GetShardIterator * action.

*/ -export interface ExpiredIteratorException extends __SmithyException, $MetadataBearer { - name: "ExpiredIteratorException"; - $fault: "client"; +export class ExpiredIteratorException extends __BaseException { + readonly name: "ExpiredIteratorException" = "ExpiredIteratorException"; + readonly $fault: "client" = "client"; /** - *

The provided iterator exceeds the maximum age allowed.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredIteratorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredIteratorException.prototype); + } } /** @@ -382,13 +406,20 @@ export namespace Identity { * concurrent operations.

*

There is a soft account quota of 256 tables.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Too many operations for a given subscriber.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** @@ -405,13 +436,20 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear * * */ -export interface TrimmedDataAccessException extends __SmithyException, $MetadataBearer { - name: "TrimmedDataAccessException"; - $fault: "client"; +export class TrimmedDataAccessException extends __BaseException { + readonly name: "TrimmedDataAccessException" = "TrimmedDataAccessException"; + readonly $fault: "client" = "client"; /** - *

"The data you are trying to access has been trimmed.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrimmedDataAccessException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrimmedDataAccessException.prototype); + } } export type ShardIteratorType = "AFTER_SEQUENCE_NUMBER" | "AT_SEQUENCE_NUMBER" | "LATEST" | "TRIM_HORIZON"; diff --git a/clients/client-dynamodb-streams/src/protocols/Aws_json1_0.ts b/clients/client-dynamodb-streams/src/protocols/Aws_json1_0.ts index ed6d67a2c4b35..e9cbef260b019 100644 --- a/clients/client-dynamodb-streams/src/protocols/Aws_json1_0.ts +++ b/clients/client-dynamodb-streams/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,16 +12,15 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DescribeStreamCommandInput, DescribeStreamCommandOutput } from "../commands/DescribeStreamCommand"; import { GetRecordsCommandInput, GetRecordsCommandOutput } from "../commands/GetRecordsCommand"; import { GetShardIteratorCommandInput, GetShardIteratorCommandOutput } from "../commands/GetShardIteratorCommand"; import { ListStreamsCommandInput, ListStreamsCommandOutput } from "../commands/ListStreamsCommand"; +import { DynamoDBStreamsServiceException as __BaseException } from "../models/DynamoDBStreamsServiceException"; import { _Record, _Stream, @@ -123,41 +123,25 @@ const deserializeAws_json1_0DescribeStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodbstreams#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodbstreams#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetRecordsCommand = async ( @@ -185,65 +169,34 @@ const deserializeAws_json1_0GetRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredIteratorException": case "com.amazonaws.dynamodbstreams#ExpiredIteratorException": - response = { - ...(await deserializeAws_json1_0ExpiredIteratorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExpiredIteratorExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodbstreams#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodbstreams#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodbstreams#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TrimmedDataAccessException": case "com.amazonaws.dynamodbstreams#TrimmedDataAccessException": - response = { - ...(await deserializeAws_json1_0TrimmedDataAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TrimmedDataAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetShardIteratorCommand = async ( @@ -271,49 +224,28 @@ const deserializeAws_json1_0GetShardIteratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodbstreams#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodbstreams#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TrimmedDataAccessException": case "com.amazonaws.dynamodbstreams#TrimmedDataAccessException": - response = { - ...(await deserializeAws_json1_0TrimmedDataAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TrimmedDataAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListStreamsCommand = async ( @@ -341,41 +273,25 @@ const deserializeAws_json1_0ListStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodbstreams#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodbstreams#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0ExpiredIteratorExceptionResponse = async ( @@ -384,13 +300,11 @@ const deserializeAws_json1_0ExpiredIteratorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ExpiredIteratorException(body, context); - const contents: ExpiredIteratorException = { - name: "ExpiredIteratorException", - $fault: "client", + const exception = new ExpiredIteratorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerErrorResponse = async ( @@ -399,13 +313,11 @@ const deserializeAws_json1_0InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededExceptionResponse = async ( @@ -414,13 +326,11 @@ const deserializeAws_json1_0LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -429,13 +339,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TrimmedDataAccessExceptionResponse = async ( @@ -444,13 +352,11 @@ const deserializeAws_json1_0TrimmedDataAccessExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TrimmedDataAccessException(body, context); - const contents: TrimmedDataAccessException = { - name: "TrimmedDataAccessException", - $fault: "client", + const exception = new TrimmedDataAccessException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0DescribeStreamInput = (input: DescribeStreamInput, context: __SerdeContext): any => { diff --git a/clients/client-dynamodb/src/index.ts b/clients/client-dynamodb/src/index.ts index 76ff9d9f71837..fb5ff00f753df 100644 --- a/clients/client-dynamodb/src/index.ts +++ b/clients/client-dynamodb/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { DynamoDBServiceException } from "./models/DynamoDBServiceException"; diff --git a/clients/client-dynamodb/src/models/DynamoDBServiceException.ts b/clients/client-dynamodb/src/models/DynamoDBServiceException.ts new file mode 100644 index 0000000000000..655b9b6f072bf --- /dev/null +++ b/clients/client-dynamodb/src/models/DynamoDBServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from DynamoDB service. + */ +export class DynamoDBServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, DynamoDBServiceException.prototype); + } +} diff --git a/clients/client-dynamodb/src/models/models_0.ts b/clients/client-dynamodb/src/models/models_0.ts index 5e7887f13d1b2..9265831c2dd90 100644 --- a/clients/client-dynamodb/src/models/models_0.ts +++ b/clients/client-dynamodb/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { DynamoDBServiceException as __BaseException } from "./DynamoDBServiceException"; /** *

Contains details of a table archival operation.

@@ -933,19 +936,39 @@ export namespace BackupDescription { *

There is another ongoing conflicting backup control plane operation on the table. * The backup is either being created, deleted or restored to a table.

*/ -export interface BackupInUseException extends __SmithyException, $MetadataBearer { - name: "BackupInUseException"; - $fault: "client"; - message?: string; +export class BackupInUseException extends __BaseException { + readonly name: "BackupInUseException" = "BackupInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupInUseException.prototype); + } } /** *

Backup not found for the given BackupARN.

*/ -export interface BackupNotFoundException extends __SmithyException, $MetadataBearer { - name: "BackupNotFoundException"; - $fault: "client"; - message?: string; +export class BackupNotFoundException extends __BaseException { + readonly name: "BackupNotFoundException" = "BackupNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupNotFoundException.prototype); + } } /** @@ -1167,13 +1190,20 @@ export namespace BatchStatementError { /** *

An error occurred on the server side.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; /** - *

The server encountered an internal error trying to fulfill the request.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + } } /** @@ -1181,16 +1211,38 @@ export interface InternalServerError extends __SmithyException, $MetadataBearer * Amazon Web Services Support to request a * quota increase.

*/ -export interface RequestLimitExceeded extends __SmithyException, $MetadataBearer { - name: "RequestLimitExceeded"; - $fault: "client"; - message?: string; +export class RequestLimitExceeded extends __BaseException { + readonly name: "RequestLimitExceeded" = "RequestLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestLimitExceeded.prototype); + } } -export interface InvalidEndpointException extends __SmithyException, $MetadataBearer { - name: "InvalidEndpointException"; - $fault: "client"; +export class InvalidEndpointException extends __BaseException { + readonly name: "InvalidEndpointException" = "InvalidEndpointException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndpointException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndpointException.prototype); + this.Message = opts.Message; + } } /** @@ -1199,26 +1251,40 @@ export interface InvalidEndpointException extends __SmithyException, $MetadataBe * successful, unless your retry queue is too large to finish. Reduce the frequency of * requests and use exponential backoff. For more information, go to Error Retries and Exponential Backoff in the Amazon DynamoDB Developer Guide.

*/ -export interface ProvisionedThroughputExceededException extends __SmithyException, $MetadataBearer { - name: "ProvisionedThroughputExceededException"; - $fault: "client"; +export class ProvisionedThroughputExceededException extends __BaseException { + readonly name: "ProvisionedThroughputExceededException" = "ProvisionedThroughputExceededException"; + readonly $fault: "client" = "client"; /** - *

You exceeded your maximum allowed provisioned throughput.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedThroughputExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedThroughputExceededException.prototype); + } } /** *

The operation tried to access a nonexistent table or index. The resource might not * be specified correctly, or its status might not be ACTIVE.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The resource which is being requested does not exist.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export type ReturnItemCollectionMetrics = "NONE" | "SIZE"; @@ -1227,14 +1293,20 @@ export type ReturnItemCollectionMetrics = "NONE" | "SIZE"; *

An item collection is too large. This exception is only returned for tables that * have one or more local secondary indexes.

*/ -export interface ItemCollectionSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ItemCollectionSizeLimitExceededException"; - $fault: "client"; +export class ItemCollectionSizeLimitExceededException extends __BaseException { + readonly name: "ItemCollectionSizeLimitExceededException" = "ItemCollectionSizeLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The total size of an item collection has exceeded the maximum limit of 10 - * gigabytes.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ItemCollectionSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ItemCollectionSizeLimitExceededException.prototype); + } } /** @@ -1295,13 +1367,20 @@ export type ComparisonOperator = /** *

A condition specified in the operation could not be evaluated.

*/ -export interface ConditionalCheckFailedException extends __SmithyException, $MetadataBearer { - name: "ConditionalCheckFailedException"; - $fault: "client"; +export class ConditionalCheckFailedException extends __BaseException { + readonly name: "ConditionalCheckFailedException" = "ConditionalCheckFailedException"; + readonly $fault: "client" = "client"; /** - *

The conditional request failed.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConditionalCheckFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConditionalCheckFailedException.prototype); + } } export type ConditionalOperator = "AND" | "OR"; @@ -1384,10 +1463,20 @@ export namespace ContinuousBackupsDescription { /** *

Backups have not yet been enabled for this table.

*/ -export interface ContinuousBackupsUnavailableException extends __SmithyException, $MetadataBearer { - name: "ContinuousBackupsUnavailableException"; - $fault: "client"; - message?: string; +export class ContinuousBackupsUnavailableException extends __BaseException { + readonly name: "ContinuousBackupsUnavailableException" = "ContinuousBackupsUnavailableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContinuousBackupsUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContinuousBackupsUnavailableException.prototype); + } } export type ContributorInsightsAction = "DISABLE" | "ENABLE"; @@ -1473,33 +1562,60 @@ export namespace CreateBackupOutput { * of concurrent operations.

*

There is a soft account quota of 256 tables.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

Too many operations for a given subscriber.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

A target table with the specified name is either being created or deleted. *

*/ -export interface TableInUseException extends __SmithyException, $MetadataBearer { - name: "TableInUseException"; - $fault: "client"; - message?: string; +export class TableInUseException extends __BaseException { + readonly name: "TableInUseException" = "TableInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TableInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TableInUseException.prototype); + } } /** *

A source table with the name TableName does not currently exist within * the subscriber's account.

*/ -export interface TableNotFoundException extends __SmithyException, $MetadataBearer { - name: "TableNotFoundException"; - $fault: "client"; - message?: string; +export class TableNotFoundException extends __BaseException { + readonly name: "TableNotFoundException" = "TableNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TableNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TableNotFoundException.prototype); + } } /** @@ -1846,10 +1962,20 @@ export namespace CreateGlobalTableOutput { /** *

The specified global table already exists.

*/ -export interface GlobalTableAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "GlobalTableAlreadyExistsException"; - $fault: "client"; - message?: string; +export class GlobalTableAlreadyExistsException extends __BaseException { + readonly name: "GlobalTableAlreadyExistsException" = "GlobalTableAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalTableAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalTableAlreadyExistsException.prototype); + } } /** @@ -3136,13 +3262,20 @@ export namespace CreateTableOutput { * attempted to recreate an existing table, or tried to delete a table currently in the * CREATING state.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** - *

The resource which is being attempted to be changed is in use.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export interface DeleteBackupInput { @@ -3202,10 +3335,20 @@ export type ReturnValue = "ALL_NEW" | "ALL_OLD" | "NONE" | "UPDATED_NEW" | "UPDA *

Operation was rejected because there is an ongoing transaction for the * item.

*/ -export interface TransactionConflictException extends __SmithyException, $MetadataBearer { - name: "TransactionConflictException"; - $fault: "client"; - message?: string; +export class TransactionConflictException extends __BaseException { + readonly name: "TransactionConflictException" = "TransactionConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransactionConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransactionConflictException.prototype); + } } /** @@ -3684,10 +3827,20 @@ export namespace DescribeExportOutput { /** *

The specified export was not found.

*/ -export interface ExportNotFoundException extends __SmithyException, $MetadataBearer { - name: "ExportNotFoundException"; - $fault: "client"; - message?: string; +export class ExportNotFoundException extends __BaseException { + readonly name: "ExportNotFoundException" = "ExportNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExportNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExportNotFoundException.prototype); + } } export interface DescribeGlobalTableInput { @@ -3725,10 +3878,20 @@ export namespace DescribeGlobalTableOutput { /** *

The specified global table does not exist.

*/ -export interface GlobalTableNotFoundException extends __SmithyException, $MetadataBearer { - name: "GlobalTableNotFoundException"; - $fault: "client"; - message?: string; +export class GlobalTableNotFoundException extends __BaseException { + readonly name: "GlobalTableNotFoundException" = "GlobalTableNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalTableNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalTableNotFoundException.prototype); + } } export interface DescribeGlobalTableSettingsInput { @@ -4352,38 +4515,82 @@ export namespace KinesisStreamingDestinationOutput { *

There was an attempt to insert an item with the same primary key as an item that * already exists in the DynamoDB table.

*/ -export interface DuplicateItemException extends __SmithyException, $MetadataBearer { - name: "DuplicateItemException"; - $fault: "client"; - message?: string; +export class DuplicateItemException extends __BaseException { + readonly name: "DuplicateItemException" = "DuplicateItemException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateItemException.prototype); + } } /** *

DynamoDB rejected the request because you retried a request with a * different payload but with an idempotent token that was already used.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + this.Message = opts.Message; + } } /** *

The transaction with the given request token is already in progress.

*/ -export interface TransactionInProgressException extends __SmithyException, $MetadataBearer { - name: "TransactionInProgressException"; - $fault: "client"; +export class TransactionInProgressException extends __BaseException { + readonly name: "TransactionInProgressException" = "TransactionInProgressException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransactionInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransactionInProgressException.prototype); + this.Message = opts.Message; + } } /** *

There was a conflict when writing to the specified S3 bucket.

*/ -export interface ExportConflictException extends __SmithyException, $MetadataBearer { - name: "ExportConflictException"; - $fault: "client"; - message?: string; +export class ExportConflictException extends __BaseException { + readonly name: "ExportConflictException" = "ExportConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExportConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExportConflictException.prototype); + } } export interface ExportTableToPointInTimeInput { @@ -4489,19 +4696,39 @@ export namespace ExportTableToPointInTimeOutput { *

The specified ExportTime is outside of the point in time recovery * window.

*/ -export interface InvalidExportTimeException extends __SmithyException, $MetadataBearer { - name: "InvalidExportTimeException"; - $fault: "client"; - message?: string; +export class InvalidExportTimeException extends __BaseException { + readonly name: "InvalidExportTimeException" = "InvalidExportTimeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExportTimeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExportTimeException.prototype); + } } /** *

Point in time recovery has not yet been enabled for this source table.

*/ -export interface PointInTimeRecoveryUnavailableException extends __SmithyException, $MetadataBearer { - name: "PointInTimeRecoveryUnavailableException"; - $fault: "client"; - message?: string; +export class PointInTimeRecoveryUnavailableException extends __BaseException { + readonly name: "PointInTimeRecoveryUnavailableException" = "PointInTimeRecoveryUnavailableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PointInTimeRecoveryUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PointInTimeRecoveryUnavailableException.prototype); + } } export interface ListBackupsInput { @@ -4971,20 +5198,40 @@ export namespace RestoreTableFromBackupOutput { /** *

A target table with the specified name already exists.

*/ -export interface TableAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "TableAlreadyExistsException"; - $fault: "client"; - message?: string; +export class TableAlreadyExistsException extends __BaseException { + readonly name: "TableAlreadyExistsException" = "TableAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TableAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TableAlreadyExistsException.prototype); + } } /** *

An invalid restore time was specified. RestoreDateTime must be between * EarliestRestorableDateTime and LatestRestorableDateTime.

*/ -export interface InvalidRestoreTimeException extends __SmithyException, $MetadataBearer { - name: "InvalidRestoreTimeException"; - $fault: "client"; - message?: string; +export class InvalidRestoreTimeException extends __BaseException { + readonly name: "InvalidRestoreTimeException" = "InvalidRestoreTimeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRestoreTimeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRestoreTimeException.prototype); + } } export interface RestoreTableToPointInTimeInput { @@ -5228,19 +5475,39 @@ export namespace UpdateContributorInsightsOutput { /** *

The specified replica is already part of the global table.

*/ -export interface ReplicaAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ReplicaAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ReplicaAlreadyExistsException extends __BaseException { + readonly name: "ReplicaAlreadyExistsException" = "ReplicaAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicaAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicaAlreadyExistsException.prototype); + } } /** *

The specified replica is no longer part of the global table.

*/ -export interface ReplicaNotFoundException extends __SmithyException, $MetadataBearer { - name: "ReplicaNotFoundException"; - $fault: "client"; - message?: string; +export class ReplicaNotFoundException extends __BaseException { + readonly name: "ReplicaNotFoundException" = "ReplicaNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicaNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicaNotFoundException.prototype); + } } /** @@ -5318,10 +5585,20 @@ export namespace UpdateGlobalTableOutput { /** *

The operation tried to access a nonexistent index.

*/ -export interface IndexNotFoundException extends __SmithyException, $MetadataBearer { - name: "IndexNotFoundException"; - $fault: "client"; - message?: string; +export class IndexNotFoundException extends __BaseException { + readonly name: "IndexNotFoundException" = "IndexNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IndexNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IndexNotFoundException.prototype); + } } /** @@ -7845,14 +8122,27 @@ export namespace TransactGetItemsOutput { * * */ -export interface TransactionCanceledException extends __SmithyException, $MetadataBearer { - name: "TransactionCanceledException"; - $fault: "client"; +export class TransactionCanceledException extends __BaseException { + readonly name: "TransactionCanceledException" = "TransactionCanceledException"; + readonly $fault: "client" = "client"; Message?: string; /** *

A list of cancellation reasons.

*/ CancellationReasons?: CancellationReason[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransactionCanceledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransactionCanceledException.prototype); + this.Message = opts.Message; + this.CancellationReasons = opts.CancellationReasons; + } } /** diff --git a/clients/client-dynamodb/src/protocols/Aws_json1_0.ts b/clients/client-dynamodb/src/protocols/Aws_json1_0.ts index 0ccbf610a334a..5c5e4ed3caf22 100644 --- a/clients/client-dynamodb/src/protocols/Aws_json1_0.ts +++ b/clients/client-dynamodb/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -122,6 +121,7 @@ import { UpdateTableReplicaAutoScalingCommandOutput, } from "../commands/UpdateTableReplicaAutoScalingCommand"; import { UpdateTimeToLiveCommandInput, UpdateTimeToLiveCommandOutput } from "../commands/UpdateTimeToLiveCommand"; +import { DynamoDBServiceException as __BaseException } from "../models/DynamoDBServiceException"; import { ArchivalSummary, AttributeDefinition, @@ -1021,41 +1021,25 @@ const deserializeAws_json1_0BatchExecuteStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0BatchGetItemCommand = async ( @@ -1083,65 +1067,34 @@ const deserializeAws_json1_0BatchGetItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0BatchWriteItemCommand = async ( @@ -1169,73 +1122,37 @@ const deserializeAws_json1_0BatchWriteItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ItemCollectionSizeLimitExceededException": case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateBackupCommand = async ( @@ -1263,81 +1180,40 @@ const deserializeAws_json1_0CreateBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupInUseException": case "com.amazonaws.dynamodb#BackupInUseException": - response = { - ...(await deserializeAws_json1_0BackupInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BackupInUseExceptionResponse(parsedOutput, context); case "ContinuousBackupsUnavailableException": case "com.amazonaws.dynamodb#ContinuousBackupsUnavailableException": - response = { - ...(await deserializeAws_json1_0ContinuousBackupsUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ContinuousBackupsUnavailableExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "TableInUseException": case "com.amazonaws.dynamodb#TableInUseException": - response = { - ...(await deserializeAws_json1_0TableInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableInUseExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateGlobalTableCommand = async ( @@ -1365,65 +1241,34 @@ const deserializeAws_json1_0CreateGlobalTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalTableAlreadyExistsException": case "com.amazonaws.dynamodb#GlobalTableAlreadyExistsException": - response = { - ...(await deserializeAws_json1_0GlobalTableAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GlobalTableAlreadyExistsExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateTableCommand = async ( @@ -1451,57 +1296,31 @@ const deserializeAws_json1_0CreateTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteBackupCommand = async ( @@ -1529,65 +1348,34 @@ const deserializeAws_json1_0DeleteBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupInUseException": case "com.amazonaws.dynamodb#BackupInUseException": - response = { - ...(await deserializeAws_json1_0BackupInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BackupInUseExceptionResponse(parsedOutput, context); case "BackupNotFoundException": case "com.amazonaws.dynamodb#BackupNotFoundException": - response = { - ...(await deserializeAws_json1_0BackupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BackupNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteItemCommand = async ( @@ -1615,89 +1403,43 @@ const deserializeAws_json1_0DeleteItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConditionalCheckFailedException": case "com.amazonaws.dynamodb#ConditionalCheckFailedException": - response = { - ...(await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ItemCollectionSizeLimitExceededException": case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionConflictException": case "com.amazonaws.dynamodb#TransactionConflictException": - response = { - ...(await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteTableCommand = async ( @@ -1725,65 +1467,34 @@ const deserializeAws_json1_0DeleteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeBackupCommand = async ( @@ -1811,49 +1522,28 @@ const deserializeAws_json1_0DescribeBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupNotFoundException": case "com.amazonaws.dynamodb#BackupNotFoundException": - response = { - ...(await deserializeAws_json1_0BackupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BackupNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeContinuousBackupsCommand = async ( @@ -1881,49 +1571,28 @@ const deserializeAws_json1_0DescribeContinuousBackupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeContributorInsightsCommand = async ( @@ -1951,41 +1620,25 @@ const deserializeAws_json1_0DescribeContributorInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeEndpointsCommand = async ( @@ -2013,25 +1666,19 @@ const deserializeAws_json1_0DescribeEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeExportCommand = async ( @@ -2059,49 +1706,28 @@ const deserializeAws_json1_0DescribeExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExportNotFoundException": case "com.amazonaws.dynamodb#ExportNotFoundException": - response = { - ...(await deserializeAws_json1_0ExportNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExportNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeGlobalTableCommand = async ( @@ -2129,49 +1755,28 @@ const deserializeAws_json1_0DescribeGlobalTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalTableNotFoundException": case "com.amazonaws.dynamodb#GlobalTableNotFoundException": - response = { - ...(await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeGlobalTableSettingsCommand = async ( @@ -2199,49 +1804,28 @@ const deserializeAws_json1_0DescribeGlobalTableSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalTableNotFoundException": case "com.amazonaws.dynamodb#GlobalTableNotFoundException": - response = { - ...(await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeKinesisStreamingDestinationCommand = async ( @@ -2269,49 +1853,28 @@ const deserializeAws_json1_0DescribeKinesisStreamingDestinationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeLimitsCommand = async ( @@ -2339,41 +1902,25 @@ const deserializeAws_json1_0DescribeLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeTableCommand = async ( @@ -2401,49 +1948,28 @@ const deserializeAws_json1_0DescribeTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeTableReplicaAutoScalingCommand = async ( @@ -2471,41 +1997,25 @@ const deserializeAws_json1_0DescribeTableReplicaAutoScalingCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeTimeToLiveCommand = async ( @@ -2533,49 +2043,28 @@ const deserializeAws_json1_0DescribeTimeToLiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DisableKinesisStreamingDestinationCommand = async ( @@ -2603,65 +2092,34 @@ const deserializeAws_json1_0DisableKinesisStreamingDestinationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0EnableKinesisStreamingDestinationCommand = async ( @@ -2689,65 +2147,34 @@ const deserializeAws_json1_0EnableKinesisStreamingDestinationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExecuteStatementCommand = async ( @@ -2775,89 +2202,43 @@ const deserializeAws_json1_0ExecuteStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConditionalCheckFailedException": case "com.amazonaws.dynamodb#ConditionalCheckFailedException": - response = { - ...(await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context); case "DuplicateItemException": case "com.amazonaws.dynamodb#DuplicateItemException": - response = { - ...(await deserializeAws_json1_0DuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0DuplicateItemExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ItemCollectionSizeLimitExceededException": case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionConflictException": case "com.amazonaws.dynamodb#TransactionConflictException": - response = { - ...(await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExecuteTransactionCommand = async ( @@ -2885,81 +2266,40 @@ const deserializeAws_json1_0ExecuteTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.dynamodb#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_0IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.dynamodb#TransactionCanceledException": - response = { - ...(await deserializeAws_json1_0TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionCanceledExceptionResponse(parsedOutput, context); case "TransactionInProgressException": case "com.amazonaws.dynamodb#TransactionInProgressException": - response = { - ...(await deserializeAws_json1_0TransactionInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExportTableToPointInTimeCommand = async ( @@ -2987,73 +2327,37 @@ const deserializeAws_json1_0ExportTableToPointInTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExportConflictException": case "com.amazonaws.dynamodb#ExportConflictException": - response = { - ...(await deserializeAws_json1_0ExportConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExportConflictExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidExportTimeException": case "com.amazonaws.dynamodb#InvalidExportTimeException": - response = { - ...(await deserializeAws_json1_0InvalidExportTimeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidExportTimeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "PointInTimeRecoveryUnavailableException": case "com.amazonaws.dynamodb#PointInTimeRecoveryUnavailableException": - response = { - ...(await deserializeAws_json1_0PointInTimeRecoveryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PointInTimeRecoveryUnavailableExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetItemCommand = async ( @@ -3081,65 +2385,34 @@ const deserializeAws_json1_0GetItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListBackupsCommand = async ( @@ -3167,41 +2440,25 @@ const deserializeAws_json1_0ListBackupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListContributorInsightsCommand = async ( @@ -3229,41 +2486,25 @@ const deserializeAws_json1_0ListContributorInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListExportsCommand = async ( @@ -3291,41 +2532,25 @@ const deserializeAws_json1_0ListExportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListGlobalTablesCommand = async ( @@ -3353,41 +2578,25 @@ const deserializeAws_json1_0ListGlobalTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTablesCommand = async ( @@ -3415,41 +2624,25 @@ const deserializeAws_json1_0ListTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsOfResourceCommand = async ( @@ -3477,49 +2670,28 @@ const deserializeAws_json1_0ListTagsOfResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PutItemCommand = async ( @@ -3547,89 +2719,43 @@ const deserializeAws_json1_0PutItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConditionalCheckFailedException": case "com.amazonaws.dynamodb#ConditionalCheckFailedException": - response = { - ...(await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ItemCollectionSizeLimitExceededException": case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionConflictException": case "com.amazonaws.dynamodb#TransactionConflictException": - response = { - ...(await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0QueryCommand = async ( @@ -3657,65 +2783,34 @@ const deserializeAws_json1_0QueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RestoreTableFromBackupCommand = async ( @@ -3743,81 +2838,40 @@ const deserializeAws_json1_0RestoreTableFromBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupInUseException": case "com.amazonaws.dynamodb#BackupInUseException": - response = { - ...(await deserializeAws_json1_0BackupInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BackupInUseExceptionResponse(parsedOutput, context); case "BackupNotFoundException": case "com.amazonaws.dynamodb#BackupNotFoundException": - response = { - ...(await deserializeAws_json1_0BackupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BackupNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "TableAlreadyExistsException": case "com.amazonaws.dynamodb#TableAlreadyExistsException": - response = { - ...(await deserializeAws_json1_0TableAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableAlreadyExistsExceptionResponse(parsedOutput, context); case "TableInUseException": case "com.amazonaws.dynamodb#TableInUseException": - response = { - ...(await deserializeAws_json1_0TableInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RestoreTableToPointInTimeCommand = async ( @@ -3845,89 +2899,43 @@ const deserializeAws_json1_0RestoreTableToPointInTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "InvalidRestoreTimeException": case "com.amazonaws.dynamodb#InvalidRestoreTimeException": - response = { - ...(await deserializeAws_json1_0InvalidRestoreTimeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRestoreTimeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "PointInTimeRecoveryUnavailableException": case "com.amazonaws.dynamodb#PointInTimeRecoveryUnavailableException": - response = { - ...(await deserializeAws_json1_0PointInTimeRecoveryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0PointInTimeRecoveryUnavailableExceptionResponse(parsedOutput, context); case "TableAlreadyExistsException": case "com.amazonaws.dynamodb#TableAlreadyExistsException": - response = { - ...(await deserializeAws_json1_0TableAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableAlreadyExistsExceptionResponse(parsedOutput, context); case "TableInUseException": case "com.amazonaws.dynamodb#TableInUseException": - response = { - ...(await deserializeAws_json1_0TableInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableInUseExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ScanCommand = async ( @@ -3955,65 +2963,34 @@ const deserializeAws_json1_0ScanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -4038,65 +3015,34 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TransactGetItemsCommand = async ( @@ -4124,73 +3070,37 @@ const deserializeAws_json1_0TransactGetItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.dynamodb#TransactionCanceledException": - response = { - ...(await deserializeAws_json1_0TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionCanceledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TransactWriteItemsCommand = async ( @@ -4218,89 +3128,43 @@ const deserializeAws_json1_0TransactWriteItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.dynamodb#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_0IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.dynamodb#TransactionCanceledException": - response = { - ...(await deserializeAws_json1_0TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionCanceledExceptionResponse(parsedOutput, context); case "TransactionInProgressException": case "com.amazonaws.dynamodb#TransactionInProgressException": - response = { - ...(await deserializeAws_json1_0TransactionInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -4325,65 +3189,34 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateContinuousBackupsCommand = async ( @@ -4411,57 +3244,31 @@ const deserializeAws_json1_0UpdateContinuousBackupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContinuousBackupsUnavailableException": case "com.amazonaws.dynamodb#ContinuousBackupsUnavailableException": - response = { - ...(await deserializeAws_json1_0ContinuousBackupsUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ContinuousBackupsUnavailableExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateContributorInsightsCommand = async ( @@ -4489,41 +3296,25 @@ const deserializeAws_json1_0UpdateContributorInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateGlobalTableCommand = async ( @@ -4551,73 +3342,37 @@ const deserializeAws_json1_0UpdateGlobalTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalTableNotFoundException": case "com.amazonaws.dynamodb#GlobalTableNotFoundException": - response = { - ...(await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ReplicaAlreadyExistsException": case "com.amazonaws.dynamodb#ReplicaAlreadyExistsException": - response = { - ...(await deserializeAws_json1_0ReplicaAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ReplicaAlreadyExistsExceptionResponse(parsedOutput, context); case "ReplicaNotFoundException": case "com.amazonaws.dynamodb#ReplicaNotFoundException": - response = { - ...(await deserializeAws_json1_0ReplicaNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ReplicaNotFoundExceptionResponse(parsedOutput, context); case "TableNotFoundException": case "com.amazonaws.dynamodb#TableNotFoundException": - response = { - ...(await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TableNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateGlobalTableSettingsCommand = async ( @@ -4645,81 +3400,40 @@ const deserializeAws_json1_0UpdateGlobalTableSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalTableNotFoundException": case "com.amazonaws.dynamodb#GlobalTableNotFoundException": - response = { - ...(await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0GlobalTableNotFoundExceptionResponse(parsedOutput, context); case "IndexNotFoundException": case "com.amazonaws.dynamodb#IndexNotFoundException": - response = { - ...(await deserializeAws_json1_0IndexNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0IndexNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ReplicaNotFoundException": case "com.amazonaws.dynamodb#ReplicaNotFoundException": - response = { - ...(await deserializeAws_json1_0ReplicaNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ReplicaNotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateItemCommand = async ( @@ -4747,89 +3461,43 @@ const deserializeAws_json1_0UpdateItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConditionalCheckFailedException": case "com.amazonaws.dynamodb#ConditionalCheckFailedException": - response = { - ...(await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConditionalCheckFailedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ItemCollectionSizeLimitExceededException": case "com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.dynamodb#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.dynamodb#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RequestLimitExceededResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "TransactionConflictException": case "com.amazonaws.dynamodb#TransactionConflictException": - response = { - ...(await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TransactionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateTableCommand = async ( @@ -4857,65 +3525,34 @@ const deserializeAws_json1_0UpdateTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateTableReplicaAutoScalingCommand = async ( @@ -4943,57 +3580,31 @@ const deserializeAws_json1_0UpdateTableReplicaAutoScalingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateTimeToLiveCommand = async ( @@ -5021,65 +3632,34 @@ const deserializeAws_json1_0UpdateTimeToLiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.dynamodb#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.dynamodb#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.dynamodb#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.dynamodb#ResourceInUseException": - response = { - ...(await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.dynamodb#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0BackupInUseExceptionResponse = async ( @@ -5088,13 +3668,11 @@ const deserializeAws_json1_0BackupInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0BackupInUseException(body, context); - const contents: BackupInUseException = { - name: "BackupInUseException", - $fault: "client", + const exception = new BackupInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0BackupNotFoundExceptionResponse = async ( @@ -5103,13 +3681,11 @@ const deserializeAws_json1_0BackupNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0BackupNotFoundException(body, context); - const contents: BackupNotFoundException = { - name: "BackupNotFoundException", - $fault: "client", + const exception = new BackupNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConditionalCheckFailedExceptionResponse = async ( @@ -5118,13 +3694,11 @@ const deserializeAws_json1_0ConditionalCheckFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConditionalCheckFailedException(body, context); - const contents: ConditionalCheckFailedException = { - name: "ConditionalCheckFailedException", - $fault: "client", + const exception = new ConditionalCheckFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ContinuousBackupsUnavailableExceptionResponse = async ( @@ -5133,13 +3707,11 @@ const deserializeAws_json1_0ContinuousBackupsUnavailableExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ContinuousBackupsUnavailableException(body, context); - const contents: ContinuousBackupsUnavailableException = { - name: "ContinuousBackupsUnavailableException", - $fault: "client", + const exception = new ContinuousBackupsUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0DuplicateItemExceptionResponse = async ( @@ -5148,13 +3720,11 @@ const deserializeAws_json1_0DuplicateItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0DuplicateItemException(body, context); - const contents: DuplicateItemException = { - name: "DuplicateItemException", - $fault: "client", + const exception = new DuplicateItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ExportConflictExceptionResponse = async ( @@ -5163,13 +3733,11 @@ const deserializeAws_json1_0ExportConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ExportConflictException(body, context); - const contents: ExportConflictException = { - name: "ExportConflictException", - $fault: "client", + const exception = new ExportConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ExportNotFoundExceptionResponse = async ( @@ -5178,13 +3746,11 @@ const deserializeAws_json1_0ExportNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ExportNotFoundException(body, context); - const contents: ExportNotFoundException = { - name: "ExportNotFoundException", - $fault: "client", + const exception = new ExportNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0GlobalTableAlreadyExistsExceptionResponse = async ( @@ -5193,13 +3759,11 @@ const deserializeAws_json1_0GlobalTableAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0GlobalTableAlreadyExistsException(body, context); - const contents: GlobalTableAlreadyExistsException = { - name: "GlobalTableAlreadyExistsException", - $fault: "client", + const exception = new GlobalTableAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0GlobalTableNotFoundExceptionResponse = async ( @@ -5208,13 +3772,11 @@ const deserializeAws_json1_0GlobalTableNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0GlobalTableNotFoundException(body, context); - const contents: GlobalTableNotFoundException = { - name: "GlobalTableNotFoundException", - $fault: "client", + const exception = new GlobalTableNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0IdempotentParameterMismatchExceptionResponse = async ( @@ -5223,13 +3785,11 @@ const deserializeAws_json1_0IdempotentParameterMismatchExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0IdempotentParameterMismatchException(body, context); - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", + const exception = new IdempotentParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0IndexNotFoundExceptionResponse = async ( @@ -5238,13 +3798,11 @@ const deserializeAws_json1_0IndexNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0IndexNotFoundException(body, context); - const contents: IndexNotFoundException = { - name: "IndexNotFoundException", - $fault: "client", + const exception = new IndexNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerErrorResponse = async ( @@ -5253,13 +3811,11 @@ const deserializeAws_json1_0InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidEndpointExceptionResponse = async ( @@ -5268,13 +3824,11 @@ const deserializeAws_json1_0InvalidEndpointExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidEndpointException(body, context); - const contents: InvalidEndpointException = { - name: "InvalidEndpointException", - $fault: "client", + const exception = new InvalidEndpointException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidExportTimeExceptionResponse = async ( @@ -5283,13 +3837,11 @@ const deserializeAws_json1_0InvalidExportTimeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidExportTimeException(body, context); - const contents: InvalidExportTimeException = { - name: "InvalidExportTimeException", - $fault: "client", + const exception = new InvalidExportTimeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidRestoreTimeExceptionResponse = async ( @@ -5298,13 +3850,11 @@ const deserializeAws_json1_0InvalidRestoreTimeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidRestoreTimeException(body, context); - const contents: InvalidRestoreTimeException = { - name: "InvalidRestoreTimeException", - $fault: "client", + const exception = new InvalidRestoreTimeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse = async ( @@ -5313,13 +3863,11 @@ const deserializeAws_json1_0ItemCollectionSizeLimitExceededExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ItemCollectionSizeLimitExceededException(body, context); - const contents: ItemCollectionSizeLimitExceededException = { - name: "ItemCollectionSizeLimitExceededException", - $fault: "client", + const exception = new ItemCollectionSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededExceptionResponse = async ( @@ -5328,13 +3876,11 @@ const deserializeAws_json1_0LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0PointInTimeRecoveryUnavailableExceptionResponse = async ( @@ -5343,13 +3889,11 @@ const deserializeAws_json1_0PointInTimeRecoveryUnavailableExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0PointInTimeRecoveryUnavailableException(body, context); - const contents: PointInTimeRecoveryUnavailableException = { - name: "PointInTimeRecoveryUnavailableException", - $fault: "client", + const exception = new PointInTimeRecoveryUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse = async ( @@ -5358,13 +3902,11 @@ const deserializeAws_json1_0ProvisionedThroughputExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ProvisionedThroughputExceededException(body, context); - const contents: ProvisionedThroughputExceededException = { - name: "ProvisionedThroughputExceededException", - $fault: "client", + const exception = new ProvisionedThroughputExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ReplicaAlreadyExistsExceptionResponse = async ( @@ -5373,13 +3915,11 @@ const deserializeAws_json1_0ReplicaAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ReplicaAlreadyExistsException(body, context); - const contents: ReplicaAlreadyExistsException = { - name: "ReplicaAlreadyExistsException", - $fault: "client", + const exception = new ReplicaAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ReplicaNotFoundExceptionResponse = async ( @@ -5388,13 +3928,11 @@ const deserializeAws_json1_0ReplicaNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ReplicaNotFoundException(body, context); - const contents: ReplicaNotFoundException = { - name: "ReplicaNotFoundException", - $fault: "client", + const exception = new ReplicaNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0RequestLimitExceededResponse = async ( @@ -5403,13 +3941,11 @@ const deserializeAws_json1_0RequestLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0RequestLimitExceeded(body, context); - const contents: RequestLimitExceeded = { - name: "RequestLimitExceeded", - $fault: "client", + const exception = new RequestLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceInUseExceptionResponse = async ( @@ -5418,13 +3954,11 @@ const deserializeAws_json1_0ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -5433,13 +3967,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TableAlreadyExistsExceptionResponse = async ( @@ -5448,13 +3980,11 @@ const deserializeAws_json1_0TableAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TableAlreadyExistsException(body, context); - const contents: TableAlreadyExistsException = { - name: "TableAlreadyExistsException", - $fault: "client", + const exception = new TableAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TableInUseExceptionResponse = async ( @@ -5463,13 +3993,11 @@ const deserializeAws_json1_0TableInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TableInUseException(body, context); - const contents: TableInUseException = { - name: "TableInUseException", - $fault: "client", + const exception = new TableInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TableNotFoundExceptionResponse = async ( @@ -5478,13 +4006,11 @@ const deserializeAws_json1_0TableNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TableNotFoundException(body, context); - const contents: TableNotFoundException = { - name: "TableNotFoundException", - $fault: "client", + const exception = new TableNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TransactionCanceledExceptionResponse = async ( @@ -5493,13 +4019,11 @@ const deserializeAws_json1_0TransactionCanceledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TransactionCanceledException(body, context); - const contents: TransactionCanceledException = { - name: "TransactionCanceledException", - $fault: "client", + const exception = new TransactionCanceledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TransactionConflictExceptionResponse = async ( @@ -5508,13 +4032,11 @@ const deserializeAws_json1_0TransactionConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TransactionConflictException(body, context); - const contents: TransactionConflictException = { - name: "TransactionConflictException", - $fault: "client", + const exception = new TransactionConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TransactionInProgressExceptionResponse = async ( @@ -5523,13 +4045,11 @@ const deserializeAws_json1_0TransactionInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TransactionInProgressException(body, context); - const contents: TransactionInProgressException = { - name: "TransactionInProgressException", - $fault: "client", + const exception = new TransactionInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0AttributeDefinition = (input: AttributeDefinition, context: __SerdeContext): any => { diff --git a/clients/client-ebs/src/index.ts b/clients/client-ebs/src/index.ts index d8efcdc7b48a1..7da16a9677d29 100644 --- a/clients/client-ebs/src/index.ts +++ b/clients/client-ebs/src/index.ts @@ -3,3 +3,4 @@ export * from "./EBSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { EBSServiceException } from "./models/EBSServiceException"; diff --git a/clients/client-ebs/src/models/EBSServiceException.ts b/clients/client-ebs/src/models/EBSServiceException.ts new file mode 100644 index 0000000000000..14e2522ed695a --- /dev/null +++ b/clients/client-ebs/src/models/EBSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EBS service. + */ +export class EBSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EBSServiceException.prototype); + } +} diff --git a/clients/client-ebs/src/models/models_0.ts b/clients/client-ebs/src/models/models_0.ts index d35b7785c164d..9ceb041aa86d5 100644 --- a/clients/client-ebs/src/models/models_0.ts +++ b/clients/client-ebs/src/models/models_0.ts @@ -1,7 +1,9 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { EBSServiceException as __BaseException } from "./EBSServiceException"; + export enum AccessDeniedExceptionReason { DEPENDENCY_ACCESS_DENIED = "DEPENDENCY_ACCESS_DENIED", UNAUTHORIZED_ACCOUNT = "UNAUTHORIZED_ACCOUNT", @@ -10,14 +12,27 @@ export enum AccessDeniedExceptionReason { /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason: AccessDeniedExceptionReason | string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } /** @@ -153,10 +168,22 @@ export namespace CompleteSnapshotResponse { /** *

An internal error has occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } export enum RequestThrottledExceptionReason { @@ -168,14 +195,27 @@ export enum RequestThrottledExceptionReason { *

The number of API requests has exceed the maximum allowed API request throttling * limit.

*/ -export interface RequestThrottledException extends __SmithyException, $MetadataBearer { - name: "RequestThrottledException"; - $fault: "client"; +export class RequestThrottledException extends __BaseException { + readonly name: "RequestThrottledException" = "RequestThrottledException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason?: RequestThrottledExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestThrottledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestThrottledException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export enum ResourceNotFoundExceptionReason { @@ -186,14 +226,27 @@ export enum ResourceNotFoundExceptionReason { /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason?: ResourceNotFoundExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export enum ServiceQuotaExceededExceptionReason { @@ -203,14 +256,27 @@ export enum ServiceQuotaExceededExceptionReason { /** *

Your current service quotas do not allow you to perform this action.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason?: ServiceQuotaExceededExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export enum ValidationExceptionReason { @@ -230,14 +296,27 @@ export enum ValidationExceptionReason { /** *

The input fails to satisfy the constraints of the EBS direct APIs.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the validation exception.

*/ Reason?: ValidationExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } /** @@ -245,20 +324,44 @@ export interface ValidationException extends __SmithyException, $MetadataBearer * Optimizing performance of the EBS direct APIs in the Amazon Elastic Compute Cloud * User Guide.

*/ -export interface ConcurrentLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ConcurrentLimitExceededException"; - $fault: "client"; +export class ConcurrentLimitExceededException extends __BaseException { + readonly name: "ConcurrentLimitExceededException" = "ConcurrentLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The request uses the same client token as a previous, but non-identical * request.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "server"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export interface GetSnapshotBlockRequest { diff --git a/clients/client-ebs/src/protocols/Aws_restJson1.ts b/clients/client-ebs/src/protocols/Aws_restJson1.ts index c384de33a53c8..9452d7b6145f4 100644 --- a/clients/client-ebs/src/protocols/Aws_restJson1.ts +++ b/clients/client-ebs/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -25,6 +24,7 @@ import { ListChangedBlocksCommandInput, ListChangedBlocksCommandOutput } from ". import { ListSnapshotBlocksCommandInput, ListSnapshotBlocksCommandOutput } from "../commands/ListSnapshotBlocksCommand"; import { PutSnapshotBlockCommandInput, PutSnapshotBlockCommandOutput } from "../commands/PutSnapshotBlockCommand"; import { StartSnapshotCommandInput, StartSnapshotCommandOutput } from "../commands/StartSnapshotCommand"; +import { EBSServiceException as __BaseException } from "../models/EBSServiceException"; import { AccessDeniedException, Block, @@ -299,73 +299,37 @@ const deserializeAws_restJson1CompleteSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ebs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ebs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestThrottledException": case "com.amazonaws.ebs#RequestThrottledException": - response = { - ...(await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ebs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ebs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ebs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSnapshotBlockCommand = async ( @@ -404,73 +368,37 @@ const deserializeAws_restJson1GetSnapshotBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ebs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ebs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestThrottledException": case "com.amazonaws.ebs#RequestThrottledException": - response = { - ...(await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ebs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ebs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ebs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChangedBlocksCommand = async ( @@ -515,73 +443,37 @@ const deserializeAws_restJson1ListChangedBlocksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ebs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ebs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestThrottledException": case "com.amazonaws.ebs#RequestThrottledException": - response = { - ...(await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ebs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ebs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ebs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSnapshotBlocksCommand = async ( @@ -626,73 +518,37 @@ const deserializeAws_restJson1ListSnapshotBlocksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ebs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ebs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestThrottledException": case "com.amazonaws.ebs#RequestThrottledException": - response = { - ...(await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ebs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ebs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ebs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSnapshotBlockCommand = async ( @@ -725,73 +581,37 @@ const deserializeAws_restJson1PutSnapshotBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ebs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ebs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestThrottledException": case "com.amazonaws.ebs#RequestThrottledException": - response = { - ...(await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ebs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ebs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ebs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartSnapshotCommand = async ( @@ -856,102 +676,50 @@ const deserializeAws_restJson1StartSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ebs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentLimitExceededException": case "com.amazonaws.ebs#ConcurrentLimitExceededException": - response = { - ...(await deserializeAws_restJson1ConcurrentLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentLimitExceededExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ebs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ebs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestThrottledException": case "com.amazonaws.ebs#RequestThrottledException": - response = { - ...(await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestThrottledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ebs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ebs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ebs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -959,71 +727,66 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentLimitExceededException = { - name: "ConcurrentLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConcurrentLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestThrottledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestThrottledException = { - name: "RequestThrottledException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -1031,20 +794,18 @@ const deserializeAws_restJson1RequestThrottledExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new RequestThrottledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -1052,20 +813,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -1073,20 +832,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -1094,7 +851,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Tag = (input: Tag, context: __SerdeContext): any => { diff --git a/clients/client-ec2-instance-connect/src/index.ts b/clients/client-ec2-instance-connect/src/index.ts index c98c69485590b..8ab82af1dd9bc 100644 --- a/clients/client-ec2-instance-connect/src/index.ts +++ b/clients/client-ec2-instance-connect/src/index.ts @@ -2,3 +2,4 @@ export * from "./EC2InstanceConnect"; export * from "./EC2InstanceConnectClient"; export * from "./commands"; export * from "./models"; +export { EC2InstanceConnectServiceException } from "./models/EC2InstanceConnectServiceException"; diff --git a/clients/client-ec2-instance-connect/src/models/EC2InstanceConnectServiceException.ts b/clients/client-ec2-instance-connect/src/models/EC2InstanceConnectServiceException.ts new file mode 100644 index 0000000000000..9b4263ece21d8 --- /dev/null +++ b/clients/client-ec2-instance-connect/src/models/EC2InstanceConnectServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EC2InstanceConnect service. + */ +export class EC2InstanceConnectServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EC2InstanceConnectServiceException.prototype); + } +} diff --git a/clients/client-ec2-instance-connect/src/models/models_0.ts b/clients/client-ec2-instance-connect/src/models/models_0.ts index 4529713452f4d..85e0c6bb195c0 100644 --- a/clients/client-ec2-instance-connect/src/models/models_0.ts +++ b/clients/client-ec2-instance-connect/src/models/models_0.ts @@ -1,21 +1,48 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EC2InstanceConnectServiceException as __BaseException } from "./EC2InstanceConnectServiceException"; /** *

Either your AWS credentials are not valid or you do not have access to the EC2 instance.

*/ -export interface AuthException extends __SmithyException, $MetadataBearer { - name: "AuthException"; - $fault: "client"; +export class AuthException extends __BaseException { + readonly name: "AuthException" = "AuthException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthException.prototype); + this.Message = opts.Message; + } } /** *

The specified instance was not found.

*/ -export interface EC2InstanceNotFoundException extends __SmithyException, $MetadataBearer { - name: "EC2InstanceNotFoundException"; - $fault: "client"; +export class EC2InstanceNotFoundException extends __BaseException { + readonly name: "EC2InstanceNotFoundException" = "EC2InstanceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EC2InstanceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EC2InstanceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -23,29 +50,65 @@ export interface EC2InstanceNotFoundException extends __SmithyException, $Metada * Connecting to a stopped or terminated instance is not supported. If the instance is stopped, * start your instance, and try to connect again.

*/ -export interface EC2InstanceStateInvalidException extends __SmithyException, $MetadataBearer { - name: "EC2InstanceStateInvalidException"; - $fault: "client"; +export class EC2InstanceStateInvalidException extends __BaseException { + readonly name: "EC2InstanceStateInvalidException" = "EC2InstanceStateInvalidException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EC2InstanceStateInvalidException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EC2InstanceStateInvalidException.prototype); + this.Message = opts.Message; + } } /** *

The instance type is not supported for connecting via the serial console. Only Nitro * instance types are currently supported.

*/ -export interface EC2InstanceTypeInvalidException extends __SmithyException, $MetadataBearer { - name: "EC2InstanceTypeInvalidException"; - $fault: "client"; +export class EC2InstanceTypeInvalidException extends __BaseException { + readonly name: "EC2InstanceTypeInvalidException" = "EC2InstanceTypeInvalidException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EC2InstanceTypeInvalidException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EC2InstanceTypeInvalidException.prototype); + this.Message = opts.Message; + } } /** *

One of the parameters is not valid.

*/ -export interface InvalidArgsException extends __SmithyException, $MetadataBearer { - name: "InvalidArgsException"; - $fault: "client"; +export class InvalidArgsException extends __BaseException { + readonly name: "InvalidArgsException" = "InvalidArgsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgsException.prototype); + this.Message = opts.Message; + } } export interface SendSerialConsoleSSHPublicKeyRequest { @@ -103,47 +166,107 @@ export namespace SendSerialConsoleSSHPublicKeyResponse { * account, run the EnableSerialConsoleAccess API. For more information, see * EnableSerialConsoleAccess in the Amazon EC2 API Reference.

*/ -export interface SerialConsoleAccessDisabledException extends __SmithyException, $MetadataBearer { - name: "SerialConsoleAccessDisabledException"; - $fault: "client"; +export class SerialConsoleAccessDisabledException extends __BaseException { + readonly name: "SerialConsoleAccessDisabledException" = "SerialConsoleAccessDisabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SerialConsoleAccessDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SerialConsoleAccessDisabledException.prototype); + this.Message = opts.Message; + } } /** *

The instance currently has 1 active serial console session. Only 1 session is supported at a time.

*/ -export interface SerialConsoleSessionLimitExceededException extends __SmithyException, $MetadataBearer { - name: "SerialConsoleSessionLimitExceededException"; - $fault: "client"; +export class SerialConsoleSessionLimitExceededException extends __BaseException { + readonly name: "SerialConsoleSessionLimitExceededException" = "SerialConsoleSessionLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SerialConsoleSessionLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SerialConsoleSessionLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Unable to start a serial console session. Please try again.

*/ -export interface SerialConsoleSessionUnavailableException extends __SmithyException, $MetadataBearer { - name: "SerialConsoleSessionUnavailableException"; - $fault: "server"; +export class SerialConsoleSessionUnavailableException extends __BaseException { + readonly name: "SerialConsoleSessionUnavailableException" = "SerialConsoleSessionUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SerialConsoleSessionUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, SerialConsoleSessionUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The service encountered an error. Follow the instructions in the error message and try again.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + this.Message = opts.Message; + } } /** *

The requests were made too frequently and have been throttled. Wait a while and try again. * To increase the limit on your request frequency, contact AWS Support.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } export interface SendSSHPublicKeyRequest { diff --git a/clients/client-ec2-instance-connect/src/protocols/Aws_json1_1.ts b/clients/client-ec2-instance-connect/src/protocols/Aws_json1_1.ts index 29432b5579abe..e71da6780d8ec 100644 --- a/clients/client-ec2-instance-connect/src/protocols/Aws_json1_1.ts +++ b/clients/client-ec2-instance-connect/src/protocols/Aws_json1_1.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectBoolean as __expectBoolean, expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectBoolean as __expectBoolean, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -14,6 +16,7 @@ import { SendSerialConsoleSSHPublicKeyCommandOutput, } from "../commands/SendSerialConsoleSSHPublicKeyCommand"; import { SendSSHPublicKeyCommandInput, SendSSHPublicKeyCommandOutput } from "../commands/SendSSHPublicKeyCommand"; +import { EC2InstanceConnectServiceException as __BaseException } from "../models/EC2InstanceConnectServiceException"; import { AuthException, EC2InstanceNotFoundException, @@ -82,105 +85,49 @@ const deserializeAws_json1_1SendSerialConsoleSSHPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthException": case "com.amazonaws.ec2instanceconnect#AuthException": - response = { - ...(await deserializeAws_json1_1AuthExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthExceptionResponse(parsedOutput, context); case "EC2InstanceNotFoundException": case "com.amazonaws.ec2instanceconnect#EC2InstanceNotFoundException": - response = { - ...(await deserializeAws_json1_1EC2InstanceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EC2InstanceNotFoundExceptionResponse(parsedOutput, context); case "EC2InstanceStateInvalidException": case "com.amazonaws.ec2instanceconnect#EC2InstanceStateInvalidException": - response = { - ...(await deserializeAws_json1_1EC2InstanceStateInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EC2InstanceStateInvalidExceptionResponse(parsedOutput, context); case "EC2InstanceTypeInvalidException": case "com.amazonaws.ec2instanceconnect#EC2InstanceTypeInvalidException": - response = { - ...(await deserializeAws_json1_1EC2InstanceTypeInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EC2InstanceTypeInvalidExceptionResponse(parsedOutput, context); case "InvalidArgsException": case "com.amazonaws.ec2instanceconnect#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "SerialConsoleAccessDisabledException": case "com.amazonaws.ec2instanceconnect#SerialConsoleAccessDisabledException": - response = { - ...(await deserializeAws_json1_1SerialConsoleAccessDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SerialConsoleAccessDisabledExceptionResponse(parsedOutput, context); case "SerialConsoleSessionLimitExceededException": case "com.amazonaws.ec2instanceconnect#SerialConsoleSessionLimitExceededException": - response = { - ...(await deserializeAws_json1_1SerialConsoleSessionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SerialConsoleSessionLimitExceededExceptionResponse(parsedOutput, context); case "SerialConsoleSessionUnavailableException": case "com.amazonaws.ec2instanceconnect#SerialConsoleSessionUnavailableException": - response = { - ...(await deserializeAws_json1_1SerialConsoleSessionUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SerialConsoleSessionUnavailableExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.ec2instanceconnect#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ec2instanceconnect#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendSSHPublicKeyCommand = async ( @@ -208,73 +155,37 @@ const deserializeAws_json1_1SendSSHPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthException": case "com.amazonaws.ec2instanceconnect#AuthException": - response = { - ...(await deserializeAws_json1_1AuthExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthExceptionResponse(parsedOutput, context); case "EC2InstanceNotFoundException": case "com.amazonaws.ec2instanceconnect#EC2InstanceNotFoundException": - response = { - ...(await deserializeAws_json1_1EC2InstanceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EC2InstanceNotFoundExceptionResponse(parsedOutput, context); case "EC2InstanceStateInvalidException": case "com.amazonaws.ec2instanceconnect#EC2InstanceStateInvalidException": - response = { - ...(await deserializeAws_json1_1EC2InstanceStateInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EC2InstanceStateInvalidExceptionResponse(parsedOutput, context); case "InvalidArgsException": case "com.amazonaws.ec2instanceconnect#InvalidArgsException": - response = { - ...(await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgsExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.ec2instanceconnect#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ec2instanceconnect#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AuthExceptionResponse = async ( @@ -283,13 +194,11 @@ const deserializeAws_json1_1AuthExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AuthException(body, context); - const contents: AuthException = { - name: "AuthException", - $fault: "client", + const exception = new AuthException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EC2InstanceNotFoundExceptionResponse = async ( @@ -298,13 +207,11 @@ const deserializeAws_json1_1EC2InstanceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EC2InstanceNotFoundException(body, context); - const contents: EC2InstanceNotFoundException = { - name: "EC2InstanceNotFoundException", - $fault: "client", + const exception = new EC2InstanceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EC2InstanceStateInvalidExceptionResponse = async ( @@ -313,13 +220,11 @@ const deserializeAws_json1_1EC2InstanceStateInvalidExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EC2InstanceStateInvalidException(body, context); - const contents: EC2InstanceStateInvalidException = { - name: "EC2InstanceStateInvalidException", - $fault: "client", + const exception = new EC2InstanceStateInvalidException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EC2InstanceTypeInvalidExceptionResponse = async ( @@ -328,13 +233,11 @@ const deserializeAws_json1_1EC2InstanceTypeInvalidExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EC2InstanceTypeInvalidException(body, context); - const contents: EC2InstanceTypeInvalidException = { - name: "EC2InstanceTypeInvalidException", - $fault: "client", + const exception = new EC2InstanceTypeInvalidException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgsExceptionResponse = async ( @@ -343,13 +246,11 @@ const deserializeAws_json1_1InvalidArgsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgsException(body, context); - const contents: InvalidArgsException = { - name: "InvalidArgsException", - $fault: "client", + const exception = new InvalidArgsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SerialConsoleAccessDisabledExceptionResponse = async ( @@ -358,13 +259,11 @@ const deserializeAws_json1_1SerialConsoleAccessDisabledExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SerialConsoleAccessDisabledException(body, context); - const contents: SerialConsoleAccessDisabledException = { - name: "SerialConsoleAccessDisabledException", - $fault: "client", + const exception = new SerialConsoleAccessDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SerialConsoleSessionLimitExceededExceptionResponse = async ( @@ -373,13 +272,11 @@ const deserializeAws_json1_1SerialConsoleSessionLimitExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SerialConsoleSessionLimitExceededException(body, context); - const contents: SerialConsoleSessionLimitExceededException = { - name: "SerialConsoleSessionLimitExceededException", - $fault: "client", + const exception = new SerialConsoleSessionLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SerialConsoleSessionUnavailableExceptionResponse = async ( @@ -388,13 +285,11 @@ const deserializeAws_json1_1SerialConsoleSessionUnavailableExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SerialConsoleSessionUnavailableException(body, context); - const contents: SerialConsoleSessionUnavailableException = { - name: "SerialConsoleSessionUnavailableException", - $fault: "server", + const exception = new SerialConsoleSessionUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceExceptionResponse = async ( @@ -403,13 +298,11 @@ const deserializeAws_json1_1ServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceException(body, context); - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", + const exception = new ServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -418,13 +311,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1SendSerialConsoleSSHPublicKeyRequest = ( diff --git a/clients/client-ec2/src/index.ts b/clients/client-ec2/src/index.ts index ad025101d4eb2..a711b734fc19f 100644 --- a/clients/client-ec2/src/index.ts +++ b/clients/client-ec2/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { EC2ServiceException } from "./models/EC2ServiceException"; diff --git a/clients/client-ec2/src/models/EC2ServiceException.ts b/clients/client-ec2/src/models/EC2ServiceException.ts new file mode 100644 index 0000000000000..b126c13c19cf5 --- /dev/null +++ b/clients/client-ec2/src/models/EC2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EC2 service. + */ +export class EC2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EC2ServiceException.prototype); + } +} diff --git a/clients/client-ec2/src/protocols/Aws_ec2.ts b/clients/client-ec2/src/protocols/Aws_ec2.ts index 3bdba54be147b..87192b12dfa12 100644 --- a/clients/client-ec2/src/protocols/Aws_ec2.ts +++ b/clients/client-ec2/src/protocols/Aws_ec2.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -15,10 +16,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -1757,6 +1756,7 @@ import { UpdateSecurityGroupRuleDescriptionsIngressCommandOutput, } from "../commands/UpdateSecurityGroupRuleDescriptionsIngressCommand"; import { WithdrawByoipCidrCommandInput, WithdrawByoipCidrCommandOutput } from "../commands/WithdrawByoipCidrCommand"; +import { EC2ServiceException as __BaseException } from "../models/EC2ServiceException"; import { _InstanceType, AcceleratorCount, @@ -11760,25 +11760,19 @@ const deserializeAws_ec2AcceptReservedInstancesExchangeQuoteCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AcceptTransitGatewayMulticastDomainAssociationsCommand = async ( @@ -11806,25 +11800,19 @@ const deserializeAws_ec2AcceptTransitGatewayMulticastDomainAssociationsCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AcceptTransitGatewayPeeringAttachmentCommand = async ( @@ -11852,25 +11840,19 @@ const deserializeAws_ec2AcceptTransitGatewayPeeringAttachmentCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AcceptTransitGatewayVpcAttachmentCommand = async ( @@ -11898,25 +11880,19 @@ const deserializeAws_ec2AcceptTransitGatewayVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AcceptVpcEndpointConnectionsCommand = async ( @@ -11944,25 +11920,19 @@ const deserializeAws_ec2AcceptVpcEndpointConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AcceptVpcPeeringConnectionCommand = async ( @@ -11990,25 +11960,19 @@ const deserializeAws_ec2AcceptVpcPeeringConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AdvertiseByoipCidrCommand = async ( @@ -12036,25 +12000,19 @@ const deserializeAws_ec2AdvertiseByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AllocateAddressCommand = async ( @@ -12082,25 +12040,19 @@ const deserializeAws_ec2AllocateAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AllocateHostsCommand = async ( @@ -12128,25 +12080,19 @@ const deserializeAws_ec2AllocateHostsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AllocateIpamPoolCidrCommand = async ( @@ -12174,25 +12120,19 @@ const deserializeAws_ec2AllocateIpamPoolCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ApplySecurityGroupsToClientVpnTargetNetworkCommand = async ( @@ -12220,25 +12160,19 @@ const deserializeAws_ec2ApplySecurityGroupsToClientVpnTargetNetworkCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssignIpv6AddressesCommand = async ( @@ -12266,25 +12200,19 @@ const deserializeAws_ec2AssignIpv6AddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssignPrivateIpAddressesCommand = async ( @@ -12312,25 +12240,19 @@ const deserializeAws_ec2AssignPrivateIpAddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateAddressCommand = async ( @@ -12358,25 +12280,19 @@ const deserializeAws_ec2AssociateAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateClientVpnTargetNetworkCommand = async ( @@ -12404,25 +12320,19 @@ const deserializeAws_ec2AssociateClientVpnTargetNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateDhcpOptionsCommand = async ( @@ -12447,25 +12357,19 @@ const deserializeAws_ec2AssociateDhcpOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateEnclaveCertificateIamRoleCommand = async ( @@ -12493,25 +12397,19 @@ const deserializeAws_ec2AssociateEnclaveCertificateIamRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateIamInstanceProfileCommand = async ( @@ -12539,25 +12437,19 @@ const deserializeAws_ec2AssociateIamInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateInstanceEventWindowCommand = async ( @@ -12585,25 +12477,19 @@ const deserializeAws_ec2AssociateInstanceEventWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateRouteTableCommand = async ( @@ -12631,25 +12517,19 @@ const deserializeAws_ec2AssociateRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateSubnetCidrBlockCommand = async ( @@ -12677,25 +12557,19 @@ const deserializeAws_ec2AssociateSubnetCidrBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateTransitGatewayMulticastDomainCommand = async ( @@ -12723,25 +12597,19 @@ const deserializeAws_ec2AssociateTransitGatewayMulticastDomainCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateTransitGatewayRouteTableCommand = async ( @@ -12769,25 +12637,19 @@ const deserializeAws_ec2AssociateTransitGatewayRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateTrunkInterfaceCommand = async ( @@ -12815,25 +12677,19 @@ const deserializeAws_ec2AssociateTrunkInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AssociateVpcCidrBlockCommand = async ( @@ -12861,25 +12717,19 @@ const deserializeAws_ec2AssociateVpcCidrBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AttachClassicLinkVpcCommand = async ( @@ -12907,25 +12757,19 @@ const deserializeAws_ec2AttachClassicLinkVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AttachInternetGatewayCommand = async ( @@ -12950,25 +12794,19 @@ const deserializeAws_ec2AttachInternetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AttachNetworkInterfaceCommand = async ( @@ -12996,25 +12834,19 @@ const deserializeAws_ec2AttachNetworkInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AttachVolumeCommand = async ( @@ -13042,25 +12874,19 @@ const deserializeAws_ec2AttachVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AttachVpnGatewayCommand = async ( @@ -13088,25 +12914,19 @@ const deserializeAws_ec2AttachVpnGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AuthorizeClientVpnIngressCommand = async ( @@ -13134,25 +12954,19 @@ const deserializeAws_ec2AuthorizeClientVpnIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AuthorizeSecurityGroupEgressCommand = async ( @@ -13180,25 +12994,19 @@ const deserializeAws_ec2AuthorizeSecurityGroupEgressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2AuthorizeSecurityGroupIngressCommand = async ( @@ -13226,25 +13034,19 @@ const deserializeAws_ec2AuthorizeSecurityGroupIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2BundleInstanceCommand = async ( @@ -13272,25 +13074,19 @@ const deserializeAws_ec2BundleInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelBundleTaskCommand = async ( @@ -13318,25 +13114,19 @@ const deserializeAws_ec2CancelBundleTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelCapacityReservationCommand = async ( @@ -13364,25 +13154,19 @@ const deserializeAws_ec2CancelCapacityReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelCapacityReservationFleetsCommand = async ( @@ -13410,25 +13194,19 @@ const deserializeAws_ec2CancelCapacityReservationFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelConversionTaskCommand = async ( @@ -13453,25 +13231,19 @@ const deserializeAws_ec2CancelConversionTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelExportTaskCommand = async ( @@ -13496,25 +13268,19 @@ const deserializeAws_ec2CancelExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelImportTaskCommand = async ( @@ -13542,25 +13308,19 @@ const deserializeAws_ec2CancelImportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelReservedInstancesListingCommand = async ( @@ -13588,25 +13348,19 @@ const deserializeAws_ec2CancelReservedInstancesListingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelSpotFleetRequestsCommand = async ( @@ -13634,25 +13388,19 @@ const deserializeAws_ec2CancelSpotFleetRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CancelSpotInstanceRequestsCommand = async ( @@ -13680,25 +13428,19 @@ const deserializeAws_ec2CancelSpotInstanceRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ConfirmProductInstanceCommand = async ( @@ -13726,25 +13468,19 @@ const deserializeAws_ec2ConfirmProductInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CopyFpgaImageCommand = async ( @@ -13772,25 +13508,19 @@ const deserializeAws_ec2CopyFpgaImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CopyImageCommand = async ( @@ -13818,25 +13548,19 @@ const deserializeAws_ec2CopyImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CopySnapshotCommand = async ( @@ -13864,25 +13588,19 @@ const deserializeAws_ec2CopySnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateCapacityReservationCommand = async ( @@ -13910,25 +13628,19 @@ const deserializeAws_ec2CreateCapacityReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateCapacityReservationFleetCommand = async ( @@ -13956,25 +13668,19 @@ const deserializeAws_ec2CreateCapacityReservationFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateCarrierGatewayCommand = async ( @@ -14002,25 +13708,19 @@ const deserializeAws_ec2CreateCarrierGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateClientVpnEndpointCommand = async ( @@ -14048,25 +13748,19 @@ const deserializeAws_ec2CreateClientVpnEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateClientVpnRouteCommand = async ( @@ -14094,25 +13788,19 @@ const deserializeAws_ec2CreateClientVpnRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateCustomerGatewayCommand = async ( @@ -14140,25 +13828,19 @@ const deserializeAws_ec2CreateCustomerGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateDefaultSubnetCommand = async ( @@ -14186,25 +13868,19 @@ const deserializeAws_ec2CreateDefaultSubnetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateDefaultVpcCommand = async ( @@ -14232,25 +13908,19 @@ const deserializeAws_ec2CreateDefaultVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateDhcpOptionsCommand = async ( @@ -14278,25 +13948,19 @@ const deserializeAws_ec2CreateDhcpOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateEgressOnlyInternetGatewayCommand = async ( @@ -14324,25 +13988,19 @@ const deserializeAws_ec2CreateEgressOnlyInternetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateFleetCommand = async ( @@ -14370,25 +14028,19 @@ const deserializeAws_ec2CreateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateFlowLogsCommand = async ( @@ -14416,25 +14068,19 @@ const deserializeAws_ec2CreateFlowLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateFpgaImageCommand = async ( @@ -14462,25 +14108,19 @@ const deserializeAws_ec2CreateFpgaImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateImageCommand = async ( @@ -14508,25 +14148,19 @@ const deserializeAws_ec2CreateImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateInstanceEventWindowCommand = async ( @@ -14554,25 +14188,19 @@ const deserializeAws_ec2CreateInstanceEventWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateInstanceExportTaskCommand = async ( @@ -14600,25 +14228,19 @@ const deserializeAws_ec2CreateInstanceExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateInternetGatewayCommand = async ( @@ -14646,25 +14268,19 @@ const deserializeAws_ec2CreateInternetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateIpamCommand = async ( @@ -14692,25 +14308,19 @@ const deserializeAws_ec2CreateIpamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateIpamPoolCommand = async ( @@ -14738,25 +14348,19 @@ const deserializeAws_ec2CreateIpamPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateIpamScopeCommand = async ( @@ -14784,25 +14388,19 @@ const deserializeAws_ec2CreateIpamScopeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateKeyPairCommand = async ( @@ -14830,25 +14428,19 @@ const deserializeAws_ec2CreateKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateLaunchTemplateCommand = async ( @@ -14876,25 +14468,19 @@ const deserializeAws_ec2CreateLaunchTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateLaunchTemplateVersionCommand = async ( @@ -14922,25 +14508,19 @@ const deserializeAws_ec2CreateLaunchTemplateVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateLocalGatewayRouteCommand = async ( @@ -14968,25 +14548,19 @@ const deserializeAws_ec2CreateLocalGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateLocalGatewayRouteTableVpcAssociationCommand = async ( @@ -15014,25 +14588,19 @@ const deserializeAws_ec2CreateLocalGatewayRouteTableVpcAssociationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateManagedPrefixListCommand = async ( @@ -15060,25 +14628,19 @@ const deserializeAws_ec2CreateManagedPrefixListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNatGatewayCommand = async ( @@ -15106,25 +14668,19 @@ const deserializeAws_ec2CreateNatGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNetworkAclCommand = async ( @@ -15152,25 +14708,19 @@ const deserializeAws_ec2CreateNetworkAclCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNetworkAclEntryCommand = async ( @@ -15195,25 +14745,19 @@ const deserializeAws_ec2CreateNetworkAclEntryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNetworkInsightsAccessScopeCommand = async ( @@ -15241,25 +14785,19 @@ const deserializeAws_ec2CreateNetworkInsightsAccessScopeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNetworkInsightsPathCommand = async ( @@ -15287,25 +14825,19 @@ const deserializeAws_ec2CreateNetworkInsightsPathCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNetworkInterfaceCommand = async ( @@ -15333,25 +14865,19 @@ const deserializeAws_ec2CreateNetworkInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateNetworkInterfacePermissionCommand = async ( @@ -15379,25 +14905,19 @@ const deserializeAws_ec2CreateNetworkInterfacePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreatePlacementGroupCommand = async ( @@ -15425,25 +14945,19 @@ const deserializeAws_ec2CreatePlacementGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreatePublicIpv4PoolCommand = async ( @@ -15471,25 +14985,19 @@ const deserializeAws_ec2CreatePublicIpv4PoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateReplaceRootVolumeTaskCommand = async ( @@ -15517,25 +15025,19 @@ const deserializeAws_ec2CreateReplaceRootVolumeTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateReservedInstancesListingCommand = async ( @@ -15563,25 +15065,19 @@ const deserializeAws_ec2CreateReservedInstancesListingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateRestoreImageTaskCommand = async ( @@ -15609,25 +15105,19 @@ const deserializeAws_ec2CreateRestoreImageTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateRouteCommand = async ( @@ -15655,25 +15145,19 @@ const deserializeAws_ec2CreateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateRouteTableCommand = async ( @@ -15701,25 +15185,19 @@ const deserializeAws_ec2CreateRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateSecurityGroupCommand = async ( @@ -15747,25 +15225,19 @@ const deserializeAws_ec2CreateSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateSnapshotCommand = async ( @@ -15793,25 +15265,19 @@ const deserializeAws_ec2CreateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateSnapshotsCommand = async ( @@ -15839,25 +15305,19 @@ const deserializeAws_ec2CreateSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateSpotDatafeedSubscriptionCommand = async ( @@ -15885,25 +15345,19 @@ const deserializeAws_ec2CreateSpotDatafeedSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateStoreImageTaskCommand = async ( @@ -15931,25 +15385,19 @@ const deserializeAws_ec2CreateStoreImageTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateSubnetCommand = async ( @@ -15977,25 +15425,19 @@ const deserializeAws_ec2CreateSubnetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateSubnetCidrReservationCommand = async ( @@ -16023,25 +15465,19 @@ const deserializeAws_ec2CreateSubnetCidrReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTagsCommand = async ( @@ -16066,25 +15502,19 @@ const deserializeAws_ec2CreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTrafficMirrorFilterCommand = async ( @@ -16112,25 +15542,19 @@ const deserializeAws_ec2CreateTrafficMirrorFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTrafficMirrorFilterRuleCommand = async ( @@ -16158,25 +15582,19 @@ const deserializeAws_ec2CreateTrafficMirrorFilterRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTrafficMirrorSessionCommand = async ( @@ -16204,25 +15622,19 @@ const deserializeAws_ec2CreateTrafficMirrorSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTrafficMirrorTargetCommand = async ( @@ -16250,25 +15662,19 @@ const deserializeAws_ec2CreateTrafficMirrorTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayCommand = async ( @@ -16296,25 +15702,19 @@ const deserializeAws_ec2CreateTransitGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayConnectCommand = async ( @@ -16342,25 +15742,19 @@ const deserializeAws_ec2CreateTransitGatewayConnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayConnectPeerCommand = async ( @@ -16388,25 +15782,19 @@ const deserializeAws_ec2CreateTransitGatewayConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayMulticastDomainCommand = async ( @@ -16434,25 +15822,19 @@ const deserializeAws_ec2CreateTransitGatewayMulticastDomainCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayPeeringAttachmentCommand = async ( @@ -16480,25 +15862,19 @@ const deserializeAws_ec2CreateTransitGatewayPeeringAttachmentCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayPrefixListReferenceCommand = async ( @@ -16526,25 +15902,19 @@ const deserializeAws_ec2CreateTransitGatewayPrefixListReferenceCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayRouteCommand = async ( @@ -16572,25 +15942,19 @@ const deserializeAws_ec2CreateTransitGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayRouteTableCommand = async ( @@ -16618,25 +15982,19 @@ const deserializeAws_ec2CreateTransitGatewayRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateTransitGatewayVpcAttachmentCommand = async ( @@ -16664,25 +16022,19 @@ const deserializeAws_ec2CreateTransitGatewayVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVolumeCommand = async ( @@ -16710,25 +16062,19 @@ const deserializeAws_ec2CreateVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpcCommand = async ( @@ -16756,25 +16102,19 @@ const deserializeAws_ec2CreateVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpcEndpointCommand = async ( @@ -16802,25 +16142,19 @@ const deserializeAws_ec2CreateVpcEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpcEndpointConnectionNotificationCommand = async ( @@ -16848,25 +16182,19 @@ const deserializeAws_ec2CreateVpcEndpointConnectionNotificationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpcEndpointServiceConfigurationCommand = async ( @@ -16894,25 +16222,19 @@ const deserializeAws_ec2CreateVpcEndpointServiceConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpcPeeringConnectionCommand = async ( @@ -16940,25 +16262,19 @@ const deserializeAws_ec2CreateVpcPeeringConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpnConnectionCommand = async ( @@ -16986,25 +16302,19 @@ const deserializeAws_ec2CreateVpnConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpnConnectionRouteCommand = async ( @@ -17029,25 +16339,19 @@ const deserializeAws_ec2CreateVpnConnectionRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2CreateVpnGatewayCommand = async ( @@ -17075,25 +16379,19 @@ const deserializeAws_ec2CreateVpnGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteCarrierGatewayCommand = async ( @@ -17121,25 +16419,19 @@ const deserializeAws_ec2DeleteCarrierGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteClientVpnEndpointCommand = async ( @@ -17167,25 +16459,19 @@ const deserializeAws_ec2DeleteClientVpnEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteClientVpnRouteCommand = async ( @@ -17213,25 +16499,19 @@ const deserializeAws_ec2DeleteClientVpnRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteCustomerGatewayCommand = async ( @@ -17256,25 +16536,19 @@ const deserializeAws_ec2DeleteCustomerGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteDhcpOptionsCommand = async ( @@ -17299,25 +16573,19 @@ const deserializeAws_ec2DeleteDhcpOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteEgressOnlyInternetGatewayCommand = async ( @@ -17345,25 +16613,19 @@ const deserializeAws_ec2DeleteEgressOnlyInternetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteFleetsCommand = async ( @@ -17391,25 +16653,19 @@ const deserializeAws_ec2DeleteFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteFlowLogsCommand = async ( @@ -17437,25 +16693,19 @@ const deserializeAws_ec2DeleteFlowLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteFpgaImageCommand = async ( @@ -17483,25 +16733,19 @@ const deserializeAws_ec2DeleteFpgaImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteInstanceEventWindowCommand = async ( @@ -17529,25 +16773,19 @@ const deserializeAws_ec2DeleteInstanceEventWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteInternetGatewayCommand = async ( @@ -17572,25 +16810,19 @@ const deserializeAws_ec2DeleteInternetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteIpamCommand = async ( @@ -17618,25 +16850,19 @@ const deserializeAws_ec2DeleteIpamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteIpamPoolCommand = async ( @@ -17664,25 +16890,19 @@ const deserializeAws_ec2DeleteIpamPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteIpamScopeCommand = async ( @@ -17710,25 +16930,19 @@ const deserializeAws_ec2DeleteIpamScopeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteKeyPairCommand = async ( @@ -17753,25 +16967,19 @@ const deserializeAws_ec2DeleteKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteLaunchTemplateCommand = async ( @@ -17799,25 +17007,19 @@ const deserializeAws_ec2DeleteLaunchTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteLaunchTemplateVersionsCommand = async ( @@ -17845,25 +17047,19 @@ const deserializeAws_ec2DeleteLaunchTemplateVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteLocalGatewayRouteCommand = async ( @@ -17891,25 +17087,19 @@ const deserializeAws_ec2DeleteLocalGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteLocalGatewayRouteTableVpcAssociationCommand = async ( @@ -17937,25 +17127,19 @@ const deserializeAws_ec2DeleteLocalGatewayRouteTableVpcAssociationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteManagedPrefixListCommand = async ( @@ -17983,25 +17167,19 @@ const deserializeAws_ec2DeleteManagedPrefixListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNatGatewayCommand = async ( @@ -18029,25 +17207,19 @@ const deserializeAws_ec2DeleteNatGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkAclCommand = async ( @@ -18072,25 +17244,19 @@ const deserializeAws_ec2DeleteNetworkAclCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkAclEntryCommand = async ( @@ -18115,25 +17281,19 @@ const deserializeAws_ec2DeleteNetworkAclEntryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkInsightsAccessScopeCommand = async ( @@ -18161,25 +17321,19 @@ const deserializeAws_ec2DeleteNetworkInsightsAccessScopeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkInsightsAccessScopeAnalysisCommand = async ( @@ -18207,25 +17361,19 @@ const deserializeAws_ec2DeleteNetworkInsightsAccessScopeAnalysisCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkInsightsAnalysisCommand = async ( @@ -18253,25 +17401,19 @@ const deserializeAws_ec2DeleteNetworkInsightsAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkInsightsPathCommand = async ( @@ -18299,25 +17441,19 @@ const deserializeAws_ec2DeleteNetworkInsightsPathCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkInterfaceCommand = async ( @@ -18342,25 +17478,19 @@ const deserializeAws_ec2DeleteNetworkInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteNetworkInterfacePermissionCommand = async ( @@ -18388,25 +17518,19 @@ const deserializeAws_ec2DeleteNetworkInterfacePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeletePlacementGroupCommand = async ( @@ -18431,25 +17555,19 @@ const deserializeAws_ec2DeletePlacementGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeletePublicIpv4PoolCommand = async ( @@ -18477,25 +17595,19 @@ const deserializeAws_ec2DeletePublicIpv4PoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteQueuedReservedInstancesCommand = async ( @@ -18523,25 +17635,19 @@ const deserializeAws_ec2DeleteQueuedReservedInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteRouteCommand = async ( @@ -18566,25 +17672,19 @@ const deserializeAws_ec2DeleteRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteRouteTableCommand = async ( @@ -18609,25 +17709,19 @@ const deserializeAws_ec2DeleteRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteSecurityGroupCommand = async ( @@ -18652,25 +17746,19 @@ const deserializeAws_ec2DeleteSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteSnapshotCommand = async ( @@ -18695,25 +17783,19 @@ const deserializeAws_ec2DeleteSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteSpotDatafeedSubscriptionCommand = async ( @@ -18738,25 +17820,19 @@ const deserializeAws_ec2DeleteSpotDatafeedSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteSubnetCommand = async ( @@ -18781,25 +17857,19 @@ const deserializeAws_ec2DeleteSubnetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteSubnetCidrReservationCommand = async ( @@ -18827,25 +17897,19 @@ const deserializeAws_ec2DeleteSubnetCidrReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTagsCommand = async ( @@ -18870,25 +17934,19 @@ const deserializeAws_ec2DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTrafficMirrorFilterCommand = async ( @@ -18916,25 +17974,19 @@ const deserializeAws_ec2DeleteTrafficMirrorFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTrafficMirrorFilterRuleCommand = async ( @@ -18962,25 +18014,19 @@ const deserializeAws_ec2DeleteTrafficMirrorFilterRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTrafficMirrorSessionCommand = async ( @@ -19008,25 +18054,19 @@ const deserializeAws_ec2DeleteTrafficMirrorSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTrafficMirrorTargetCommand = async ( @@ -19054,25 +18094,19 @@ const deserializeAws_ec2DeleteTrafficMirrorTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayCommand = async ( @@ -19100,25 +18134,19 @@ const deserializeAws_ec2DeleteTransitGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayConnectCommand = async ( @@ -19146,25 +18174,19 @@ const deserializeAws_ec2DeleteTransitGatewayConnectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayConnectPeerCommand = async ( @@ -19192,25 +18214,19 @@ const deserializeAws_ec2DeleteTransitGatewayConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayMulticastDomainCommand = async ( @@ -19238,25 +18254,19 @@ const deserializeAws_ec2DeleteTransitGatewayMulticastDomainCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayPeeringAttachmentCommand = async ( @@ -19284,25 +18294,19 @@ const deserializeAws_ec2DeleteTransitGatewayPeeringAttachmentCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayPrefixListReferenceCommand = async ( @@ -19330,25 +18334,19 @@ const deserializeAws_ec2DeleteTransitGatewayPrefixListReferenceCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayRouteCommand = async ( @@ -19376,25 +18374,19 @@ const deserializeAws_ec2DeleteTransitGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayRouteTableCommand = async ( @@ -19422,25 +18414,19 @@ const deserializeAws_ec2DeleteTransitGatewayRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteTransitGatewayVpcAttachmentCommand = async ( @@ -19468,25 +18454,19 @@ const deserializeAws_ec2DeleteTransitGatewayVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVolumeCommand = async ( @@ -19511,25 +18491,19 @@ const deserializeAws_ec2DeleteVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpcCommand = async ( @@ -19554,25 +18528,19 @@ const deserializeAws_ec2DeleteVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpcEndpointConnectionNotificationsCommand = async ( @@ -19600,25 +18568,19 @@ const deserializeAws_ec2DeleteVpcEndpointConnectionNotificationsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpcEndpointsCommand = async ( @@ -19646,25 +18608,19 @@ const deserializeAws_ec2DeleteVpcEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpcEndpointServiceConfigurationsCommand = async ( @@ -19692,25 +18648,19 @@ const deserializeAws_ec2DeleteVpcEndpointServiceConfigurationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpcPeeringConnectionCommand = async ( @@ -19738,25 +18688,19 @@ const deserializeAws_ec2DeleteVpcPeeringConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpnConnectionCommand = async ( @@ -19781,25 +18725,19 @@ const deserializeAws_ec2DeleteVpnConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpnConnectionRouteCommand = async ( @@ -19824,25 +18762,19 @@ const deserializeAws_ec2DeleteVpnConnectionRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeleteVpnGatewayCommand = async ( @@ -19867,25 +18799,19 @@ const deserializeAws_ec2DeleteVpnGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeprovisionByoipCidrCommand = async ( @@ -19913,25 +18839,19 @@ const deserializeAws_ec2DeprovisionByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeprovisionIpamPoolCidrCommand = async ( @@ -19959,25 +18879,19 @@ const deserializeAws_ec2DeprovisionIpamPoolCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeprovisionPublicIpv4PoolCidrCommand = async ( @@ -20005,25 +18919,19 @@ const deserializeAws_ec2DeprovisionPublicIpv4PoolCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeregisterImageCommand = async ( @@ -20048,25 +18956,19 @@ const deserializeAws_ec2DeregisterImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeregisterInstanceEventNotificationAttributesCommand = async ( @@ -20094,25 +18996,19 @@ const deserializeAws_ec2DeregisterInstanceEventNotificationAttributesCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeregisterTransitGatewayMulticastGroupMembersCommand = async ( @@ -20140,25 +19036,19 @@ const deserializeAws_ec2DeregisterTransitGatewayMulticastGroupMembersCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DeregisterTransitGatewayMulticastGroupSourcesCommand = async ( @@ -20186,25 +19076,19 @@ const deserializeAws_ec2DeregisterTransitGatewayMulticastGroupSourcesCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeAccountAttributesCommand = async ( @@ -20232,25 +19116,19 @@ const deserializeAws_ec2DescribeAccountAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeAddressesCommand = async ( @@ -20278,25 +19156,19 @@ const deserializeAws_ec2DescribeAddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeAddressesAttributeCommand = async ( @@ -20324,25 +19196,19 @@ const deserializeAws_ec2DescribeAddressesAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeAggregateIdFormatCommand = async ( @@ -20370,25 +19236,19 @@ const deserializeAws_ec2DescribeAggregateIdFormatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeAvailabilityZonesCommand = async ( @@ -20416,25 +19276,19 @@ const deserializeAws_ec2DescribeAvailabilityZonesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeBundleTasksCommand = async ( @@ -20462,25 +19316,19 @@ const deserializeAws_ec2DescribeBundleTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeByoipCidrsCommand = async ( @@ -20508,25 +19356,19 @@ const deserializeAws_ec2DescribeByoipCidrsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeCapacityReservationFleetsCommand = async ( @@ -20554,25 +19396,19 @@ const deserializeAws_ec2DescribeCapacityReservationFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeCapacityReservationsCommand = async ( @@ -20600,25 +19436,19 @@ const deserializeAws_ec2DescribeCapacityReservationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeCarrierGatewaysCommand = async ( @@ -20646,25 +19476,19 @@ const deserializeAws_ec2DescribeCarrierGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeClassicLinkInstancesCommand = async ( @@ -20692,25 +19516,19 @@ const deserializeAws_ec2DescribeClassicLinkInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeClientVpnAuthorizationRulesCommand = async ( @@ -20738,25 +19556,19 @@ const deserializeAws_ec2DescribeClientVpnAuthorizationRulesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeClientVpnConnectionsCommand = async ( @@ -20784,25 +19596,19 @@ const deserializeAws_ec2DescribeClientVpnConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeClientVpnEndpointsCommand = async ( @@ -20830,25 +19636,19 @@ const deserializeAws_ec2DescribeClientVpnEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeClientVpnRoutesCommand = async ( @@ -20876,25 +19676,19 @@ const deserializeAws_ec2DescribeClientVpnRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeClientVpnTargetNetworksCommand = async ( @@ -20922,25 +19716,19 @@ const deserializeAws_ec2DescribeClientVpnTargetNetworksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeCoipPoolsCommand = async ( @@ -20968,25 +19756,19 @@ const deserializeAws_ec2DescribeCoipPoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeConversionTasksCommand = async ( @@ -21014,25 +19796,19 @@ const deserializeAws_ec2DescribeConversionTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeCustomerGatewaysCommand = async ( @@ -21060,25 +19836,19 @@ const deserializeAws_ec2DescribeCustomerGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeDhcpOptionsCommand = async ( @@ -21106,25 +19876,19 @@ const deserializeAws_ec2DescribeDhcpOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeEgressOnlyInternetGatewaysCommand = async ( @@ -21152,25 +19916,19 @@ const deserializeAws_ec2DescribeEgressOnlyInternetGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeElasticGpusCommand = async ( @@ -21198,25 +19956,19 @@ const deserializeAws_ec2DescribeElasticGpusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeExportImageTasksCommand = async ( @@ -21244,25 +19996,19 @@ const deserializeAws_ec2DescribeExportImageTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeExportTasksCommand = async ( @@ -21290,25 +20036,19 @@ const deserializeAws_ec2DescribeExportTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFastLaunchImagesCommand = async ( @@ -21336,25 +20076,19 @@ const deserializeAws_ec2DescribeFastLaunchImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFastSnapshotRestoresCommand = async ( @@ -21382,25 +20116,19 @@ const deserializeAws_ec2DescribeFastSnapshotRestoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFleetHistoryCommand = async ( @@ -21428,25 +20156,19 @@ const deserializeAws_ec2DescribeFleetHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFleetInstancesCommand = async ( @@ -21474,25 +20196,19 @@ const deserializeAws_ec2DescribeFleetInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFleetsCommand = async ( @@ -21520,25 +20236,19 @@ const deserializeAws_ec2DescribeFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFlowLogsCommand = async ( @@ -21566,25 +20276,19 @@ const deserializeAws_ec2DescribeFlowLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFpgaImageAttributeCommand = async ( @@ -21612,25 +20316,19 @@ const deserializeAws_ec2DescribeFpgaImageAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeFpgaImagesCommand = async ( @@ -21658,25 +20356,19 @@ const deserializeAws_ec2DescribeFpgaImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeHostReservationOfferingsCommand = async ( @@ -21704,25 +20396,19 @@ const deserializeAws_ec2DescribeHostReservationOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeHostReservationsCommand = async ( @@ -21750,25 +20436,19 @@ const deserializeAws_ec2DescribeHostReservationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeHostsCommand = async ( @@ -21796,25 +20476,19 @@ const deserializeAws_ec2DescribeHostsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIamInstanceProfileAssociationsCommand = async ( @@ -21842,25 +20516,19 @@ const deserializeAws_ec2DescribeIamInstanceProfileAssociationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIdentityIdFormatCommand = async ( @@ -21888,25 +20556,19 @@ const deserializeAws_ec2DescribeIdentityIdFormatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIdFormatCommand = async ( @@ -21934,25 +20596,19 @@ const deserializeAws_ec2DescribeIdFormatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeImageAttributeCommand = async ( @@ -21980,25 +20636,19 @@ const deserializeAws_ec2DescribeImageAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeImagesCommand = async ( @@ -22026,25 +20676,19 @@ const deserializeAws_ec2DescribeImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeImportImageTasksCommand = async ( @@ -22072,25 +20716,19 @@ const deserializeAws_ec2DescribeImportImageTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeImportSnapshotTasksCommand = async ( @@ -22118,25 +20756,19 @@ const deserializeAws_ec2DescribeImportSnapshotTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceAttributeCommand = async ( @@ -22164,25 +20796,19 @@ const deserializeAws_ec2DescribeInstanceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceCreditSpecificationsCommand = async ( @@ -22210,25 +20836,19 @@ const deserializeAws_ec2DescribeInstanceCreditSpecificationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceEventNotificationAttributesCommand = async ( @@ -22256,25 +20876,19 @@ const deserializeAws_ec2DescribeInstanceEventNotificationAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceEventWindowsCommand = async ( @@ -22302,25 +20916,19 @@ const deserializeAws_ec2DescribeInstanceEventWindowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstancesCommand = async ( @@ -22348,25 +20956,19 @@ const deserializeAws_ec2DescribeInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceStatusCommand = async ( @@ -22394,25 +20996,19 @@ const deserializeAws_ec2DescribeInstanceStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceTypeOfferingsCommand = async ( @@ -22440,25 +21036,19 @@ const deserializeAws_ec2DescribeInstanceTypeOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInstanceTypesCommand = async ( @@ -22486,25 +21076,19 @@ const deserializeAws_ec2DescribeInstanceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeInternetGatewaysCommand = async ( @@ -22532,25 +21116,19 @@ const deserializeAws_ec2DescribeInternetGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIpamPoolsCommand = async ( @@ -22578,25 +21156,19 @@ const deserializeAws_ec2DescribeIpamPoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIpamsCommand = async ( @@ -22624,25 +21196,19 @@ const deserializeAws_ec2DescribeIpamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIpamScopesCommand = async ( @@ -22670,25 +21236,19 @@ const deserializeAws_ec2DescribeIpamScopesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeIpv6PoolsCommand = async ( @@ -22716,25 +21276,19 @@ const deserializeAws_ec2DescribeIpv6PoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeKeyPairsCommand = async ( @@ -22762,25 +21316,19 @@ const deserializeAws_ec2DescribeKeyPairsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLaunchTemplatesCommand = async ( @@ -22808,25 +21356,19 @@ const deserializeAws_ec2DescribeLaunchTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLaunchTemplateVersionsCommand = async ( @@ -22854,25 +21396,19 @@ const deserializeAws_ec2DescribeLaunchTemplateVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLocalGatewayRouteTablesCommand = async ( @@ -22900,25 +21436,19 @@ const deserializeAws_ec2DescribeLocalGatewayRouteTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsCommand = async ( @@ -22949,25 +21479,19 @@ const deserializeAws_ec2DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssoc ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLocalGatewayRouteTableVpcAssociationsCommand = async ( @@ -22995,25 +21519,19 @@ const deserializeAws_ec2DescribeLocalGatewayRouteTableVpcAssociationsCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLocalGatewaysCommand = async ( @@ -23041,25 +21559,19 @@ const deserializeAws_ec2DescribeLocalGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLocalGatewayVirtualInterfaceGroupsCommand = async ( @@ -23087,25 +21599,19 @@ const deserializeAws_ec2DescribeLocalGatewayVirtualInterfaceGroupsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeLocalGatewayVirtualInterfacesCommand = async ( @@ -23133,25 +21639,19 @@ const deserializeAws_ec2DescribeLocalGatewayVirtualInterfacesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeManagedPrefixListsCommand = async ( @@ -23179,25 +21679,19 @@ const deserializeAws_ec2DescribeManagedPrefixListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeMovingAddressesCommand = async ( @@ -23225,25 +21719,19 @@ const deserializeAws_ec2DescribeMovingAddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNatGatewaysCommand = async ( @@ -23271,25 +21759,19 @@ const deserializeAws_ec2DescribeNatGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkAclsCommand = async ( @@ -23317,25 +21799,19 @@ const deserializeAws_ec2DescribeNetworkAclsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInsightsAccessScopeAnalysesCommand = async ( @@ -23363,25 +21839,19 @@ const deserializeAws_ec2DescribeNetworkInsightsAccessScopeAnalysesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInsightsAccessScopesCommand = async ( @@ -23409,25 +21879,19 @@ const deserializeAws_ec2DescribeNetworkInsightsAccessScopesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInsightsAnalysesCommand = async ( @@ -23455,25 +21919,19 @@ const deserializeAws_ec2DescribeNetworkInsightsAnalysesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInsightsPathsCommand = async ( @@ -23501,25 +21959,19 @@ const deserializeAws_ec2DescribeNetworkInsightsPathsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInterfaceAttributeCommand = async ( @@ -23547,25 +21999,19 @@ const deserializeAws_ec2DescribeNetworkInterfaceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInterfacePermissionsCommand = async ( @@ -23593,25 +22039,19 @@ const deserializeAws_ec2DescribeNetworkInterfacePermissionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeNetworkInterfacesCommand = async ( @@ -23639,25 +22079,19 @@ const deserializeAws_ec2DescribeNetworkInterfacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribePlacementGroupsCommand = async ( @@ -23685,25 +22119,19 @@ const deserializeAws_ec2DescribePlacementGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribePrefixListsCommand = async ( @@ -23731,25 +22159,19 @@ const deserializeAws_ec2DescribePrefixListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribePrincipalIdFormatCommand = async ( @@ -23777,25 +22199,19 @@ const deserializeAws_ec2DescribePrincipalIdFormatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribePublicIpv4PoolsCommand = async ( @@ -23823,25 +22239,19 @@ const deserializeAws_ec2DescribePublicIpv4PoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeRegionsCommand = async ( @@ -23869,25 +22279,19 @@ const deserializeAws_ec2DescribeRegionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeReplaceRootVolumeTasksCommand = async ( @@ -23915,25 +22319,19 @@ const deserializeAws_ec2DescribeReplaceRootVolumeTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeReservedInstancesCommand = async ( @@ -23961,25 +22359,19 @@ const deserializeAws_ec2DescribeReservedInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeReservedInstancesListingsCommand = async ( @@ -24007,25 +22399,19 @@ const deserializeAws_ec2DescribeReservedInstancesListingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeReservedInstancesModificationsCommand = async ( @@ -24053,25 +22439,19 @@ const deserializeAws_ec2DescribeReservedInstancesModificationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeReservedInstancesOfferingsCommand = async ( @@ -24099,25 +22479,19 @@ const deserializeAws_ec2DescribeReservedInstancesOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeRouteTablesCommand = async ( @@ -24145,25 +22519,19 @@ const deserializeAws_ec2DescribeRouteTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeScheduledInstanceAvailabilityCommand = async ( @@ -24191,25 +22559,19 @@ const deserializeAws_ec2DescribeScheduledInstanceAvailabilityCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeScheduledInstancesCommand = async ( @@ -24237,25 +22599,19 @@ const deserializeAws_ec2DescribeScheduledInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSecurityGroupReferencesCommand = async ( @@ -24283,25 +22639,19 @@ const deserializeAws_ec2DescribeSecurityGroupReferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSecurityGroupRulesCommand = async ( @@ -24329,25 +22679,19 @@ const deserializeAws_ec2DescribeSecurityGroupRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSecurityGroupsCommand = async ( @@ -24375,25 +22719,19 @@ const deserializeAws_ec2DescribeSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSnapshotAttributeCommand = async ( @@ -24421,25 +22759,19 @@ const deserializeAws_ec2DescribeSnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSnapshotsCommand = async ( @@ -24467,25 +22799,19 @@ const deserializeAws_ec2DescribeSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSnapshotTierStatusCommand = async ( @@ -24513,25 +22839,19 @@ const deserializeAws_ec2DescribeSnapshotTierStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSpotDatafeedSubscriptionCommand = async ( @@ -24559,25 +22879,19 @@ const deserializeAws_ec2DescribeSpotDatafeedSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSpotFleetInstancesCommand = async ( @@ -24605,25 +22919,19 @@ const deserializeAws_ec2DescribeSpotFleetInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSpotFleetRequestHistoryCommand = async ( @@ -24651,25 +22959,19 @@ const deserializeAws_ec2DescribeSpotFleetRequestHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSpotFleetRequestsCommand = async ( @@ -24697,25 +22999,19 @@ const deserializeAws_ec2DescribeSpotFleetRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSpotInstanceRequestsCommand = async ( @@ -24743,25 +23039,19 @@ const deserializeAws_ec2DescribeSpotInstanceRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSpotPriceHistoryCommand = async ( @@ -24789,25 +23079,19 @@ const deserializeAws_ec2DescribeSpotPriceHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeStaleSecurityGroupsCommand = async ( @@ -24835,25 +23119,19 @@ const deserializeAws_ec2DescribeStaleSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeStoreImageTasksCommand = async ( @@ -24881,25 +23159,19 @@ const deserializeAws_ec2DescribeStoreImageTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeSubnetsCommand = async ( @@ -24927,25 +23199,19 @@ const deserializeAws_ec2DescribeSubnetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTagsCommand = async ( @@ -24973,25 +23239,19 @@ const deserializeAws_ec2DescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTrafficMirrorFiltersCommand = async ( @@ -25019,25 +23279,19 @@ const deserializeAws_ec2DescribeTrafficMirrorFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTrafficMirrorSessionsCommand = async ( @@ -25065,25 +23319,19 @@ const deserializeAws_ec2DescribeTrafficMirrorSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTrafficMirrorTargetsCommand = async ( @@ -25111,25 +23359,19 @@ const deserializeAws_ec2DescribeTrafficMirrorTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayAttachmentsCommand = async ( @@ -25157,25 +23399,19 @@ const deserializeAws_ec2DescribeTransitGatewayAttachmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayConnectPeersCommand = async ( @@ -25203,25 +23439,19 @@ const deserializeAws_ec2DescribeTransitGatewayConnectPeersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayConnectsCommand = async ( @@ -25249,25 +23479,19 @@ const deserializeAws_ec2DescribeTransitGatewayConnectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayMulticastDomainsCommand = async ( @@ -25295,25 +23519,19 @@ const deserializeAws_ec2DescribeTransitGatewayMulticastDomainsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayPeeringAttachmentsCommand = async ( @@ -25341,25 +23559,19 @@ const deserializeAws_ec2DescribeTransitGatewayPeeringAttachmentsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayRouteTablesCommand = async ( @@ -25387,25 +23599,19 @@ const deserializeAws_ec2DescribeTransitGatewayRouteTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewaysCommand = async ( @@ -25433,25 +23639,19 @@ const deserializeAws_ec2DescribeTransitGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTransitGatewayVpcAttachmentsCommand = async ( @@ -25479,25 +23679,19 @@ const deserializeAws_ec2DescribeTransitGatewayVpcAttachmentsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeTrunkInterfaceAssociationsCommand = async ( @@ -25525,25 +23719,19 @@ const deserializeAws_ec2DescribeTrunkInterfaceAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVolumeAttributeCommand = async ( @@ -25571,25 +23759,19 @@ const deserializeAws_ec2DescribeVolumeAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVolumesCommand = async ( @@ -25617,25 +23799,19 @@ const deserializeAws_ec2DescribeVolumesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVolumesModificationsCommand = async ( @@ -25663,25 +23839,19 @@ const deserializeAws_ec2DescribeVolumesModificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVolumeStatusCommand = async ( @@ -25709,25 +23879,19 @@ const deserializeAws_ec2DescribeVolumeStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcAttributeCommand = async ( @@ -25755,25 +23919,19 @@ const deserializeAws_ec2DescribeVpcAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcClassicLinkCommand = async ( @@ -25801,25 +23959,19 @@ const deserializeAws_ec2DescribeVpcClassicLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcClassicLinkDnsSupportCommand = async ( @@ -25847,25 +23999,19 @@ const deserializeAws_ec2DescribeVpcClassicLinkDnsSupportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcEndpointConnectionNotificationsCommand = async ( @@ -25893,25 +24039,19 @@ const deserializeAws_ec2DescribeVpcEndpointConnectionNotificationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcEndpointConnectionsCommand = async ( @@ -25939,25 +24079,19 @@ const deserializeAws_ec2DescribeVpcEndpointConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcEndpointsCommand = async ( @@ -25985,25 +24119,19 @@ const deserializeAws_ec2DescribeVpcEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcEndpointServiceConfigurationsCommand = async ( @@ -26031,25 +24159,19 @@ const deserializeAws_ec2DescribeVpcEndpointServiceConfigurationsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcEndpointServicePermissionsCommand = async ( @@ -26077,25 +24199,19 @@ const deserializeAws_ec2DescribeVpcEndpointServicePermissionsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcEndpointServicesCommand = async ( @@ -26123,25 +24239,19 @@ const deserializeAws_ec2DescribeVpcEndpointServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcPeeringConnectionsCommand = async ( @@ -26169,25 +24279,19 @@ const deserializeAws_ec2DescribeVpcPeeringConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpcsCommand = async ( @@ -26215,25 +24319,19 @@ const deserializeAws_ec2DescribeVpcsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpnConnectionsCommand = async ( @@ -26261,25 +24359,19 @@ const deserializeAws_ec2DescribeVpnConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DescribeVpnGatewaysCommand = async ( @@ -26307,25 +24399,19 @@ const deserializeAws_ec2DescribeVpnGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DetachClassicLinkVpcCommand = async ( @@ -26353,25 +24439,19 @@ const deserializeAws_ec2DetachClassicLinkVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DetachInternetGatewayCommand = async ( @@ -26396,25 +24476,19 @@ const deserializeAws_ec2DetachInternetGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DetachNetworkInterfaceCommand = async ( @@ -26439,25 +24513,19 @@ const deserializeAws_ec2DetachNetworkInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DetachVolumeCommand = async ( @@ -26485,25 +24553,19 @@ const deserializeAws_ec2DetachVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DetachVpnGatewayCommand = async ( @@ -26528,25 +24590,19 @@ const deserializeAws_ec2DetachVpnGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableEbsEncryptionByDefaultCommand = async ( @@ -26574,25 +24630,19 @@ const deserializeAws_ec2DisableEbsEncryptionByDefaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableFastLaunchCommand = async ( @@ -26620,25 +24670,19 @@ const deserializeAws_ec2DisableFastLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableFastSnapshotRestoresCommand = async ( @@ -26666,25 +24710,19 @@ const deserializeAws_ec2DisableFastSnapshotRestoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableImageDeprecationCommand = async ( @@ -26712,25 +24750,19 @@ const deserializeAws_ec2DisableImageDeprecationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableIpamOrganizationAdminAccountCommand = async ( @@ -26758,25 +24790,19 @@ const deserializeAws_ec2DisableIpamOrganizationAdminAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableSerialConsoleAccessCommand = async ( @@ -26804,25 +24830,19 @@ const deserializeAws_ec2DisableSerialConsoleAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableTransitGatewayRouteTablePropagationCommand = async ( @@ -26850,25 +24870,19 @@ const deserializeAws_ec2DisableTransitGatewayRouteTablePropagationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableVgwRoutePropagationCommand = async ( @@ -26893,25 +24907,19 @@ const deserializeAws_ec2DisableVgwRoutePropagationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableVpcClassicLinkCommand = async ( @@ -26939,25 +24947,19 @@ const deserializeAws_ec2DisableVpcClassicLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisableVpcClassicLinkDnsSupportCommand = async ( @@ -26985,25 +24987,19 @@ const deserializeAws_ec2DisableVpcClassicLinkDnsSupportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateAddressCommand = async ( @@ -27028,25 +25024,19 @@ const deserializeAws_ec2DisassociateAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateClientVpnTargetNetworkCommand = async ( @@ -27074,25 +25064,19 @@ const deserializeAws_ec2DisassociateClientVpnTargetNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateEnclaveCertificateIamRoleCommand = async ( @@ -27120,25 +25104,19 @@ const deserializeAws_ec2DisassociateEnclaveCertificateIamRoleCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateIamInstanceProfileCommand = async ( @@ -27166,25 +25144,19 @@ const deserializeAws_ec2DisassociateIamInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateInstanceEventWindowCommand = async ( @@ -27212,25 +25184,19 @@ const deserializeAws_ec2DisassociateInstanceEventWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateRouteTableCommand = async ( @@ -27255,25 +25221,19 @@ const deserializeAws_ec2DisassociateRouteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateSubnetCidrBlockCommand = async ( @@ -27301,25 +25261,19 @@ const deserializeAws_ec2DisassociateSubnetCidrBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateTransitGatewayMulticastDomainCommand = async ( @@ -27347,25 +25301,19 @@ const deserializeAws_ec2DisassociateTransitGatewayMulticastDomainCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateTransitGatewayRouteTableCommand = async ( @@ -27393,25 +25341,19 @@ const deserializeAws_ec2DisassociateTransitGatewayRouteTableCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateTrunkInterfaceCommand = async ( @@ -27439,25 +25381,19 @@ const deserializeAws_ec2DisassociateTrunkInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2DisassociateVpcCidrBlockCommand = async ( @@ -27485,25 +25421,19 @@ const deserializeAws_ec2DisassociateVpcCidrBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableEbsEncryptionByDefaultCommand = async ( @@ -27531,25 +25461,19 @@ const deserializeAws_ec2EnableEbsEncryptionByDefaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableFastLaunchCommand = async ( @@ -27577,25 +25501,19 @@ const deserializeAws_ec2EnableFastLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableFastSnapshotRestoresCommand = async ( @@ -27623,25 +25541,19 @@ const deserializeAws_ec2EnableFastSnapshotRestoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableImageDeprecationCommand = async ( @@ -27669,25 +25581,19 @@ const deserializeAws_ec2EnableImageDeprecationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableIpamOrganizationAdminAccountCommand = async ( @@ -27715,25 +25621,19 @@ const deserializeAws_ec2EnableIpamOrganizationAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableSerialConsoleAccessCommand = async ( @@ -27761,25 +25661,19 @@ const deserializeAws_ec2EnableSerialConsoleAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableTransitGatewayRouteTablePropagationCommand = async ( @@ -27807,25 +25701,19 @@ const deserializeAws_ec2EnableTransitGatewayRouteTablePropagationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableVgwRoutePropagationCommand = async ( @@ -27850,25 +25738,19 @@ const deserializeAws_ec2EnableVgwRoutePropagationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableVolumeIOCommand = async ( @@ -27893,25 +25775,19 @@ const deserializeAws_ec2EnableVolumeIOCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableVpcClassicLinkCommand = async ( @@ -27939,25 +25815,19 @@ const deserializeAws_ec2EnableVpcClassicLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EnableVpcClassicLinkDnsSupportCommand = async ( @@ -27985,25 +25855,19 @@ const deserializeAws_ec2EnableVpcClassicLinkDnsSupportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ExportClientVpnClientCertificateRevocationListCommand = async ( @@ -28031,25 +25895,19 @@ const deserializeAws_ec2ExportClientVpnClientCertificateRevocationListCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ExportClientVpnClientConfigurationCommand = async ( @@ -28077,25 +25935,19 @@ const deserializeAws_ec2ExportClientVpnClientConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ExportImageCommand = async ( @@ -28123,25 +25975,19 @@ const deserializeAws_ec2ExportImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ExportTransitGatewayRoutesCommand = async ( @@ -28169,25 +26015,19 @@ const deserializeAws_ec2ExportTransitGatewayRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetAssociatedEnclaveCertificateIamRolesCommand = async ( @@ -28215,25 +26055,19 @@ const deserializeAws_ec2GetAssociatedEnclaveCertificateIamRolesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetAssociatedIpv6PoolCidrsCommand = async ( @@ -28261,25 +26095,19 @@ const deserializeAws_ec2GetAssociatedIpv6PoolCidrsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetCapacityReservationUsageCommand = async ( @@ -28307,25 +26135,19 @@ const deserializeAws_ec2GetCapacityReservationUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetCoipPoolUsageCommand = async ( @@ -28353,25 +26175,19 @@ const deserializeAws_ec2GetCoipPoolUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetConsoleOutputCommand = async ( @@ -28399,25 +26215,19 @@ const deserializeAws_ec2GetConsoleOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetConsoleScreenshotCommand = async ( @@ -28445,25 +26255,19 @@ const deserializeAws_ec2GetConsoleScreenshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetDefaultCreditSpecificationCommand = async ( @@ -28491,25 +26295,19 @@ const deserializeAws_ec2GetDefaultCreditSpecificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetEbsDefaultKmsKeyIdCommand = async ( @@ -28537,25 +26335,19 @@ const deserializeAws_ec2GetEbsDefaultKmsKeyIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetEbsEncryptionByDefaultCommand = async ( @@ -28583,25 +26375,19 @@ const deserializeAws_ec2GetEbsEncryptionByDefaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetFlowLogsIntegrationTemplateCommand = async ( @@ -28629,25 +26415,19 @@ const deserializeAws_ec2GetFlowLogsIntegrationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetGroupsForCapacityReservationCommand = async ( @@ -28675,25 +26455,19 @@ const deserializeAws_ec2GetGroupsForCapacityReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetHostReservationPurchasePreviewCommand = async ( @@ -28721,25 +26495,19 @@ const deserializeAws_ec2GetHostReservationPurchasePreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetInstanceTypesFromInstanceRequirementsCommand = async ( @@ -28767,25 +26535,19 @@ const deserializeAws_ec2GetInstanceTypesFromInstanceRequirementsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetIpamAddressHistoryCommand = async ( @@ -28813,25 +26575,19 @@ const deserializeAws_ec2GetIpamAddressHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetIpamPoolAllocationsCommand = async ( @@ -28859,25 +26615,19 @@ const deserializeAws_ec2GetIpamPoolAllocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetIpamPoolCidrsCommand = async ( @@ -28905,25 +26655,19 @@ const deserializeAws_ec2GetIpamPoolCidrsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetIpamResourceCidrsCommand = async ( @@ -28951,25 +26695,19 @@ const deserializeAws_ec2GetIpamResourceCidrsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetLaunchTemplateDataCommand = async ( @@ -28997,25 +26735,19 @@ const deserializeAws_ec2GetLaunchTemplateDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetManagedPrefixListAssociationsCommand = async ( @@ -29043,25 +26775,19 @@ const deserializeAws_ec2GetManagedPrefixListAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetManagedPrefixListEntriesCommand = async ( @@ -29089,25 +26815,19 @@ const deserializeAws_ec2GetManagedPrefixListEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetNetworkInsightsAccessScopeAnalysisFindingsCommand = async ( @@ -29135,25 +26855,19 @@ const deserializeAws_ec2GetNetworkInsightsAccessScopeAnalysisFindingsCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetNetworkInsightsAccessScopeContentCommand = async ( @@ -29181,25 +26895,19 @@ const deserializeAws_ec2GetNetworkInsightsAccessScopeContentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetPasswordDataCommand = async ( @@ -29227,25 +26935,19 @@ const deserializeAws_ec2GetPasswordDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetReservedInstancesExchangeQuoteCommand = async ( @@ -29273,25 +26975,19 @@ const deserializeAws_ec2GetReservedInstancesExchangeQuoteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetSerialConsoleAccessStatusCommand = async ( @@ -29319,25 +27015,19 @@ const deserializeAws_ec2GetSerialConsoleAccessStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetSpotPlacementScoresCommand = async ( @@ -29365,25 +27055,19 @@ const deserializeAws_ec2GetSpotPlacementScoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetSubnetCidrReservationsCommand = async ( @@ -29411,25 +27095,19 @@ const deserializeAws_ec2GetSubnetCidrReservationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetTransitGatewayAttachmentPropagationsCommand = async ( @@ -29457,25 +27135,19 @@ const deserializeAws_ec2GetTransitGatewayAttachmentPropagationsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetTransitGatewayMulticastDomainAssociationsCommand = async ( @@ -29503,25 +27175,19 @@ const deserializeAws_ec2GetTransitGatewayMulticastDomainAssociationsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetTransitGatewayPrefixListReferencesCommand = async ( @@ -29549,25 +27215,19 @@ const deserializeAws_ec2GetTransitGatewayPrefixListReferencesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetTransitGatewayRouteTableAssociationsCommand = async ( @@ -29595,25 +27255,19 @@ const deserializeAws_ec2GetTransitGatewayRouteTableAssociationsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetTransitGatewayRouteTablePropagationsCommand = async ( @@ -29641,25 +27295,19 @@ const deserializeAws_ec2GetTransitGatewayRouteTablePropagationsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetVpnConnectionDeviceSampleConfigurationCommand = async ( @@ -29687,25 +27335,19 @@ const deserializeAws_ec2GetVpnConnectionDeviceSampleConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GetVpnConnectionDeviceTypesCommand = async ( @@ -29733,25 +27375,19 @@ const deserializeAws_ec2GetVpnConnectionDeviceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ImportClientVpnClientCertificateRevocationListCommand = async ( @@ -29779,25 +27415,19 @@ const deserializeAws_ec2ImportClientVpnClientCertificateRevocationListCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ImportImageCommand = async ( @@ -29825,25 +27455,19 @@ const deserializeAws_ec2ImportImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ImportInstanceCommand = async ( @@ -29871,25 +27495,19 @@ const deserializeAws_ec2ImportInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ImportKeyPairCommand = async ( @@ -29917,25 +27535,19 @@ const deserializeAws_ec2ImportKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ImportSnapshotCommand = async ( @@ -29963,25 +27575,19 @@ const deserializeAws_ec2ImportSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ImportVolumeCommand = async ( @@ -30009,25 +27615,19 @@ const deserializeAws_ec2ImportVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ListImagesInRecycleBinCommand = async ( @@ -30055,25 +27655,19 @@ const deserializeAws_ec2ListImagesInRecycleBinCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ListSnapshotsInRecycleBinCommand = async ( @@ -30101,25 +27695,19 @@ const deserializeAws_ec2ListSnapshotsInRecycleBinCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyAddressAttributeCommand = async ( @@ -30147,25 +27735,19 @@ const deserializeAws_ec2ModifyAddressAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyAvailabilityZoneGroupCommand = async ( @@ -30193,25 +27775,19 @@ const deserializeAws_ec2ModifyAvailabilityZoneGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyCapacityReservationCommand = async ( @@ -30239,25 +27815,19 @@ const deserializeAws_ec2ModifyCapacityReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyCapacityReservationFleetCommand = async ( @@ -30285,25 +27855,19 @@ const deserializeAws_ec2ModifyCapacityReservationFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyClientVpnEndpointCommand = async ( @@ -30331,25 +27895,19 @@ const deserializeAws_ec2ModifyClientVpnEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyDefaultCreditSpecificationCommand = async ( @@ -30377,25 +27935,19 @@ const deserializeAws_ec2ModifyDefaultCreditSpecificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyEbsDefaultKmsKeyIdCommand = async ( @@ -30423,25 +27975,19 @@ const deserializeAws_ec2ModifyEbsDefaultKmsKeyIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyFleetCommand = async ( @@ -30469,25 +28015,19 @@ const deserializeAws_ec2ModifyFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyFpgaImageAttributeCommand = async ( @@ -30515,25 +28055,19 @@ const deserializeAws_ec2ModifyFpgaImageAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyHostsCommand = async ( @@ -30561,25 +28095,19 @@ const deserializeAws_ec2ModifyHostsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyIdentityIdFormatCommand = async ( @@ -30604,25 +28132,19 @@ const deserializeAws_ec2ModifyIdentityIdFormatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyIdFormatCommand = async ( @@ -30647,25 +28169,19 @@ const deserializeAws_ec2ModifyIdFormatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyImageAttributeCommand = async ( @@ -30690,25 +28206,19 @@ const deserializeAws_ec2ModifyImageAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstanceAttributeCommand = async ( @@ -30733,25 +28243,19 @@ const deserializeAws_ec2ModifyInstanceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstanceCapacityReservationAttributesCommand = async ( @@ -30779,25 +28283,19 @@ const deserializeAws_ec2ModifyInstanceCapacityReservationAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstanceCreditSpecificationCommand = async ( @@ -30825,25 +28323,19 @@ const deserializeAws_ec2ModifyInstanceCreditSpecificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstanceEventStartTimeCommand = async ( @@ -30871,25 +28363,19 @@ const deserializeAws_ec2ModifyInstanceEventStartTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstanceEventWindowCommand = async ( @@ -30917,25 +28403,19 @@ const deserializeAws_ec2ModifyInstanceEventWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstanceMetadataOptionsCommand = async ( @@ -30963,25 +28443,19 @@ const deserializeAws_ec2ModifyInstanceMetadataOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyInstancePlacementCommand = async ( @@ -31009,25 +28483,19 @@ const deserializeAws_ec2ModifyInstancePlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyIpamCommand = async ( @@ -31055,25 +28523,19 @@ const deserializeAws_ec2ModifyIpamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyIpamPoolCommand = async ( @@ -31101,25 +28563,19 @@ const deserializeAws_ec2ModifyIpamPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyIpamResourceCidrCommand = async ( @@ -31147,25 +28603,19 @@ const deserializeAws_ec2ModifyIpamResourceCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyIpamScopeCommand = async ( @@ -31193,25 +28643,19 @@ const deserializeAws_ec2ModifyIpamScopeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyLaunchTemplateCommand = async ( @@ -31239,25 +28683,19 @@ const deserializeAws_ec2ModifyLaunchTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyManagedPrefixListCommand = async ( @@ -31285,25 +28723,19 @@ const deserializeAws_ec2ModifyManagedPrefixListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyNetworkInterfaceAttributeCommand = async ( @@ -31328,25 +28760,19 @@ const deserializeAws_ec2ModifyNetworkInterfaceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyPrivateDnsNameOptionsCommand = async ( @@ -31374,25 +28800,19 @@ const deserializeAws_ec2ModifyPrivateDnsNameOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyReservedInstancesCommand = async ( @@ -31420,25 +28840,19 @@ const deserializeAws_ec2ModifyReservedInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifySecurityGroupRulesCommand = async ( @@ -31466,25 +28880,19 @@ const deserializeAws_ec2ModifySecurityGroupRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifySnapshotAttributeCommand = async ( @@ -31509,25 +28917,19 @@ const deserializeAws_ec2ModifySnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifySnapshotTierCommand = async ( @@ -31555,25 +28957,19 @@ const deserializeAws_ec2ModifySnapshotTierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifySpotFleetRequestCommand = async ( @@ -31601,25 +28997,19 @@ const deserializeAws_ec2ModifySpotFleetRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifySubnetAttributeCommand = async ( @@ -31644,25 +29034,19 @@ const deserializeAws_ec2ModifySubnetAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyTrafficMirrorFilterNetworkServicesCommand = async ( @@ -31690,25 +29074,19 @@ const deserializeAws_ec2ModifyTrafficMirrorFilterNetworkServicesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyTrafficMirrorFilterRuleCommand = async ( @@ -31736,25 +29114,19 @@ const deserializeAws_ec2ModifyTrafficMirrorFilterRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyTrafficMirrorSessionCommand = async ( @@ -31782,25 +29154,19 @@ const deserializeAws_ec2ModifyTrafficMirrorSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyTransitGatewayCommand = async ( @@ -31828,25 +29194,19 @@ const deserializeAws_ec2ModifyTransitGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyTransitGatewayPrefixListReferenceCommand = async ( @@ -31874,25 +29234,19 @@ const deserializeAws_ec2ModifyTransitGatewayPrefixListReferenceCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyTransitGatewayVpcAttachmentCommand = async ( @@ -31920,25 +29274,19 @@ const deserializeAws_ec2ModifyTransitGatewayVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVolumeCommand = async ( @@ -31966,25 +29314,19 @@ const deserializeAws_ec2ModifyVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVolumeAttributeCommand = async ( @@ -32009,25 +29351,19 @@ const deserializeAws_ec2ModifyVolumeAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcAttributeCommand = async ( @@ -32052,25 +29388,19 @@ const deserializeAws_ec2ModifyVpcAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcEndpointCommand = async ( @@ -32098,25 +29428,19 @@ const deserializeAws_ec2ModifyVpcEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcEndpointConnectionNotificationCommand = async ( @@ -32144,25 +29468,19 @@ const deserializeAws_ec2ModifyVpcEndpointConnectionNotificationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcEndpointServiceConfigurationCommand = async ( @@ -32190,25 +29508,19 @@ const deserializeAws_ec2ModifyVpcEndpointServiceConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcEndpointServicePayerResponsibilityCommand = async ( @@ -32236,25 +29548,19 @@ const deserializeAws_ec2ModifyVpcEndpointServicePayerResponsibilityCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcEndpointServicePermissionsCommand = async ( @@ -32282,25 +29588,19 @@ const deserializeAws_ec2ModifyVpcEndpointServicePermissionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcPeeringConnectionOptionsCommand = async ( @@ -32328,25 +29628,19 @@ const deserializeAws_ec2ModifyVpcPeeringConnectionOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpcTenancyCommand = async ( @@ -32374,25 +29668,19 @@ const deserializeAws_ec2ModifyVpcTenancyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpnConnectionCommand = async ( @@ -32420,25 +29708,19 @@ const deserializeAws_ec2ModifyVpnConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpnConnectionOptionsCommand = async ( @@ -32466,25 +29748,19 @@ const deserializeAws_ec2ModifyVpnConnectionOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpnTunnelCertificateCommand = async ( @@ -32512,25 +29788,19 @@ const deserializeAws_ec2ModifyVpnTunnelCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ModifyVpnTunnelOptionsCommand = async ( @@ -32558,25 +29828,19 @@ const deserializeAws_ec2ModifyVpnTunnelOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2MonitorInstancesCommand = async ( @@ -32604,25 +29868,19 @@ const deserializeAws_ec2MonitorInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2MoveAddressToVpcCommand = async ( @@ -32650,25 +29908,19 @@ const deserializeAws_ec2MoveAddressToVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2MoveByoipCidrToIpamCommand = async ( @@ -32696,25 +29948,19 @@ const deserializeAws_ec2MoveByoipCidrToIpamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ProvisionByoipCidrCommand = async ( @@ -32742,25 +29988,19 @@ const deserializeAws_ec2ProvisionByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ProvisionIpamPoolCidrCommand = async ( @@ -32788,25 +30028,19 @@ const deserializeAws_ec2ProvisionIpamPoolCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ProvisionPublicIpv4PoolCidrCommand = async ( @@ -32834,25 +30068,19 @@ const deserializeAws_ec2ProvisionPublicIpv4PoolCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2PurchaseHostReservationCommand = async ( @@ -32880,25 +30108,19 @@ const deserializeAws_ec2PurchaseHostReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2PurchaseReservedInstancesOfferingCommand = async ( @@ -32926,25 +30148,19 @@ const deserializeAws_ec2PurchaseReservedInstancesOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2PurchaseScheduledInstancesCommand = async ( @@ -32972,25 +30188,19 @@ const deserializeAws_ec2PurchaseScheduledInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RebootInstancesCommand = async ( @@ -33015,25 +30225,19 @@ const deserializeAws_ec2RebootInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RegisterImageCommand = async ( @@ -33061,25 +30265,19 @@ const deserializeAws_ec2RegisterImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RegisterInstanceEventNotificationAttributesCommand = async ( @@ -33107,25 +30305,19 @@ const deserializeAws_ec2RegisterInstanceEventNotificationAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RegisterTransitGatewayMulticastGroupMembersCommand = async ( @@ -33153,25 +30345,19 @@ const deserializeAws_ec2RegisterTransitGatewayMulticastGroupMembersCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RegisterTransitGatewayMulticastGroupSourcesCommand = async ( @@ -33199,25 +30385,19 @@ const deserializeAws_ec2RegisterTransitGatewayMulticastGroupSourcesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RejectTransitGatewayMulticastDomainAssociationsCommand = async ( @@ -33245,25 +30425,19 @@ const deserializeAws_ec2RejectTransitGatewayMulticastDomainAssociationsCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RejectTransitGatewayPeeringAttachmentCommand = async ( @@ -33291,25 +30465,19 @@ const deserializeAws_ec2RejectTransitGatewayPeeringAttachmentCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RejectTransitGatewayVpcAttachmentCommand = async ( @@ -33337,25 +30505,19 @@ const deserializeAws_ec2RejectTransitGatewayVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RejectVpcEndpointConnectionsCommand = async ( @@ -33383,25 +30545,19 @@ const deserializeAws_ec2RejectVpcEndpointConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RejectVpcPeeringConnectionCommand = async ( @@ -33429,25 +30585,19 @@ const deserializeAws_ec2RejectVpcPeeringConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReleaseAddressCommand = async ( @@ -33472,25 +30622,19 @@ const deserializeAws_ec2ReleaseAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReleaseHostsCommand = async ( @@ -33518,25 +30662,19 @@ const deserializeAws_ec2ReleaseHostsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReleaseIpamPoolAllocationCommand = async ( @@ -33564,25 +30702,19 @@ const deserializeAws_ec2ReleaseIpamPoolAllocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReplaceIamInstanceProfileAssociationCommand = async ( @@ -33610,25 +30742,19 @@ const deserializeAws_ec2ReplaceIamInstanceProfileAssociationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReplaceNetworkAclAssociationCommand = async ( @@ -33656,25 +30782,19 @@ const deserializeAws_ec2ReplaceNetworkAclAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReplaceNetworkAclEntryCommand = async ( @@ -33699,25 +30819,19 @@ const deserializeAws_ec2ReplaceNetworkAclEntryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReplaceRouteCommand = async ( @@ -33742,25 +30856,19 @@ const deserializeAws_ec2ReplaceRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReplaceRouteTableAssociationCommand = async ( @@ -33788,25 +30896,19 @@ const deserializeAws_ec2ReplaceRouteTableAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReplaceTransitGatewayRouteCommand = async ( @@ -33834,25 +30936,19 @@ const deserializeAws_ec2ReplaceTransitGatewayRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ReportInstanceStatusCommand = async ( @@ -33877,25 +30973,19 @@ const deserializeAws_ec2ReportInstanceStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RequestSpotFleetCommand = async ( @@ -33923,25 +31013,19 @@ const deserializeAws_ec2RequestSpotFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RequestSpotInstancesCommand = async ( @@ -33969,25 +31053,19 @@ const deserializeAws_ec2RequestSpotInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetAddressAttributeCommand = async ( @@ -34015,25 +31093,19 @@ const deserializeAws_ec2ResetAddressAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetEbsDefaultKmsKeyIdCommand = async ( @@ -34061,25 +31133,19 @@ const deserializeAws_ec2ResetEbsDefaultKmsKeyIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetFpgaImageAttributeCommand = async ( @@ -34107,25 +31173,19 @@ const deserializeAws_ec2ResetFpgaImageAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetImageAttributeCommand = async ( @@ -34150,25 +31210,19 @@ const deserializeAws_ec2ResetImageAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetInstanceAttributeCommand = async ( @@ -34193,25 +31247,19 @@ const deserializeAws_ec2ResetInstanceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetNetworkInterfaceAttributeCommand = async ( @@ -34236,25 +31284,19 @@ const deserializeAws_ec2ResetNetworkInterfaceAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2ResetSnapshotAttributeCommand = async ( @@ -34279,25 +31321,19 @@ const deserializeAws_ec2ResetSnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RestoreAddressToClassicCommand = async ( @@ -34325,25 +31361,19 @@ const deserializeAws_ec2RestoreAddressToClassicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RestoreImageFromRecycleBinCommand = async ( @@ -34371,25 +31401,19 @@ const deserializeAws_ec2RestoreImageFromRecycleBinCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RestoreManagedPrefixListVersionCommand = async ( @@ -34417,25 +31441,19 @@ const deserializeAws_ec2RestoreManagedPrefixListVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RestoreSnapshotFromRecycleBinCommand = async ( @@ -34463,25 +31481,19 @@ const deserializeAws_ec2RestoreSnapshotFromRecycleBinCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RestoreSnapshotTierCommand = async ( @@ -34509,25 +31521,19 @@ const deserializeAws_ec2RestoreSnapshotTierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RevokeClientVpnIngressCommand = async ( @@ -34555,25 +31561,19 @@ const deserializeAws_ec2RevokeClientVpnIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RevokeSecurityGroupEgressCommand = async ( @@ -34601,25 +31601,19 @@ const deserializeAws_ec2RevokeSecurityGroupEgressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RevokeSecurityGroupIngressCommand = async ( @@ -34647,25 +31641,19 @@ const deserializeAws_ec2RevokeSecurityGroupIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RunInstancesCommand = async ( @@ -34693,25 +31681,19 @@ const deserializeAws_ec2RunInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RunScheduledInstancesCommand = async ( @@ -34739,25 +31721,19 @@ const deserializeAws_ec2RunScheduledInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2SearchLocalGatewayRoutesCommand = async ( @@ -34785,25 +31761,19 @@ const deserializeAws_ec2SearchLocalGatewayRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2SearchTransitGatewayMulticastGroupsCommand = async ( @@ -34831,25 +31801,19 @@ const deserializeAws_ec2SearchTransitGatewayMulticastGroupsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2SearchTransitGatewayRoutesCommand = async ( @@ -34877,25 +31841,19 @@ const deserializeAws_ec2SearchTransitGatewayRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2SendDiagnosticInterruptCommand = async ( @@ -34920,25 +31878,19 @@ const deserializeAws_ec2SendDiagnosticInterruptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2StartInstancesCommand = async ( @@ -34966,25 +31918,19 @@ const deserializeAws_ec2StartInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2StartNetworkInsightsAccessScopeAnalysisCommand = async ( @@ -35012,25 +31958,19 @@ const deserializeAws_ec2StartNetworkInsightsAccessScopeAnalysisCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2StartNetworkInsightsAnalysisCommand = async ( @@ -35058,25 +31998,19 @@ const deserializeAws_ec2StartNetworkInsightsAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2StartVpcEndpointServicePrivateDnsVerificationCommand = async ( @@ -35104,25 +32038,19 @@ const deserializeAws_ec2StartVpcEndpointServicePrivateDnsVerificationCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2StopInstancesCommand = async ( @@ -35150,25 +32078,19 @@ const deserializeAws_ec2StopInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2TerminateClientVpnConnectionsCommand = async ( @@ -35196,25 +32118,19 @@ const deserializeAws_ec2TerminateClientVpnConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2TerminateInstancesCommand = async ( @@ -35242,25 +32158,19 @@ const deserializeAws_ec2TerminateInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2UnassignIpv6AddressesCommand = async ( @@ -35288,25 +32198,19 @@ const deserializeAws_ec2UnassignIpv6AddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2UnassignPrivateIpAddressesCommand = async ( @@ -35331,25 +32235,19 @@ const deserializeAws_ec2UnassignPrivateIpAddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2UnmonitorInstancesCommand = async ( @@ -35377,25 +32275,19 @@ const deserializeAws_ec2UnmonitorInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2UpdateSecurityGroupRuleDescriptionsEgressCommand = async ( @@ -35423,25 +32315,19 @@ const deserializeAws_ec2UpdateSecurityGroupRuleDescriptionsEgressCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2UpdateSecurityGroupRuleDescriptionsIngressCommand = async ( @@ -35469,25 +32355,19 @@ const deserializeAws_ec2UpdateSecurityGroupRuleDescriptionsIngressCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2WithdrawByoipCidrCommand = async ( @@ -35515,25 +32395,19 @@ const deserializeAws_ec2WithdrawByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const serializeAws_ec2AcceleratorCount = (input: AcceleratorCount, context: __SerdeContext): any => { diff --git a/clients/client-ecr-public/src/index.ts b/clients/client-ecr-public/src/index.ts index efb6bb5a50c6b..bac69e3369594 100644 --- a/clients/client-ecr-public/src/index.ts +++ b/clients/client-ecr-public/src/index.ts @@ -3,3 +3,4 @@ export * from "./ECRPUBLICClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ECRPUBLICServiceException } from "./models/ECRPUBLICServiceException"; diff --git a/clients/client-ecr-public/src/models/ECRPUBLICServiceException.ts b/clients/client-ecr-public/src/models/ECRPUBLICServiceException.ts new file mode 100644 index 0000000000000..bef0e609be60f --- /dev/null +++ b/clients/client-ecr-public/src/models/ECRPUBLICServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ECRPUBLIC service. + */ +export class ECRPUBLICServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ECRPUBLICServiceException.prototype); + } +} diff --git a/clients/client-ecr-public/src/models/models_0.ts b/clients/client-ecr-public/src/models/models_0.ts index 0dcf29c2deaf5..db5f84ece4e56 100644 --- a/clients/client-ecr-public/src/models/models_0.ts +++ b/clients/client-ecr-public/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ECRPUBLICServiceException as __BaseException } from "./ECRPUBLICServiceException"; /** *

An authorization token data object that corresponds to a public registry.

@@ -155,38 +158,78 @@ export namespace BatchCheckLayerAvailabilityResponse { *

The specified parameter is invalid. Review the available parameters for the API * request.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The registry does not exist.

*/ -export interface RegistryNotFoundException extends __SmithyException, $MetadataBearer { - name: "RegistryNotFoundException"; - $fault: "client"; - message?: string; +export class RegistryNotFoundException extends __BaseException { + readonly name: "RegistryNotFoundException" = "RegistryNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RegistryNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RegistryNotFoundException.prototype); + } } /** *

The specified repository could not be found. Check the spelling of the specified * repository and ensure that you are performing operations on the correct registry.

*/ -export interface RepositoryNotFoundException extends __SmithyException, $MetadataBearer { - name: "RepositoryNotFoundException"; - $fault: "client"; - message?: string; +export class RepositoryNotFoundException extends __BaseException { + readonly name: "RepositoryNotFoundException" = "RepositoryNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNotFoundException.prototype); + } } /** *

These errors are usually caused by a server-side issue.

*/ -export interface ServerException extends __SmithyException, $MetadataBearer { - name: "ServerException"; - $fault: "server"; - message?: string; +export class ServerException extends __BaseException { + readonly name: "ServerException" = "ServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerException.prototype); + } } /** @@ -370,57 +413,117 @@ export namespace CompleteLayerUploadResponse { /** *

The specified layer upload does not contain any layer parts.

*/ -export interface EmptyUploadException extends __SmithyException, $MetadataBearer { - name: "EmptyUploadException"; - $fault: "client"; - message?: string; +export class EmptyUploadException extends __BaseException { + readonly name: "EmptyUploadException" = "EmptyUploadException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EmptyUploadException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EmptyUploadException.prototype); + } } /** *

The layer digest calculation performed by Amazon ECR upon receipt of the image layer does not * match the digest specified.

*/ -export interface InvalidLayerException extends __SmithyException, $MetadataBearer { - name: "InvalidLayerException"; - $fault: "client"; - message?: string; +export class InvalidLayerException extends __BaseException { + readonly name: "InvalidLayerException" = "InvalidLayerException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLayerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLayerException.prototype); + } } /** *

The image layer already exists in the associated repository.

*/ -export interface LayerAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "LayerAlreadyExistsException"; - $fault: "client"; - message?: string; +export class LayerAlreadyExistsException extends __BaseException { + readonly name: "LayerAlreadyExistsException" = "LayerAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayerAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayerAlreadyExistsException.prototype); + } } /** *

Layer parts must be at least 5 MiB in size.

*/ -export interface LayerPartTooSmallException extends __SmithyException, $MetadataBearer { - name: "LayerPartTooSmallException"; - $fault: "client"; - message?: string; +export class LayerPartTooSmallException extends __BaseException { + readonly name: "LayerPartTooSmallException" = "LayerPartTooSmallException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayerPartTooSmallException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayerPartTooSmallException.prototype); + } } /** *

The action is not supported in this Region.

*/ -export interface UnsupportedCommandException extends __SmithyException, $MetadataBearer { - name: "UnsupportedCommandException"; - $fault: "client"; - message?: string; +export class UnsupportedCommandException extends __BaseException { + readonly name: "UnsupportedCommandException" = "UnsupportedCommandException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedCommandException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedCommandException.prototype); + } } /** *

The upload could not be found, or the specified upload ID is not valid for this * repository.

*/ -export interface UploadNotFoundException extends __SmithyException, $MetadataBearer { - name: "UploadNotFoundException"; - $fault: "client"; - message?: string; +export class UploadNotFoundException extends __BaseException { + readonly name: "UploadNotFoundException" = "UploadNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UploadNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UploadNotFoundException.prototype); + } } /** @@ -710,10 +813,20 @@ export namespace CreateRepositoryResponse { /** *

An invalid parameter has been specified. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.

*/ -export interface InvalidTagParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidTagParameterException"; - $fault: "client"; - message?: string; +export class InvalidTagParameterException extends __BaseException { + readonly name: "InvalidTagParameterException" = "InvalidTagParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagParameterException.prototype); + } } /** @@ -721,29 +834,59 @@ export interface InvalidTagParameterException extends __SmithyException, $Metada * account. For more information, see Amazon ECR Service Quotas in the * Amazon Elastic Container Registry User Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The specified repository already exists in the specified registry.

*/ -export interface RepositoryAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "RepositoryAlreadyExistsException"; - $fault: "client"; - message?: string; +export class RepositoryAlreadyExistsException extends __BaseException { + readonly name: "RepositoryAlreadyExistsException" = "RepositoryAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryAlreadyExistsException.prototype); + } } /** *

The list of tags on the repository is over the limit. The maximum number of tags that * can be applied to a repository is 50.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } export interface DeleteRepositoryRequest { @@ -793,10 +936,20 @@ export namespace DeleteRepositoryResponse { *

The specified repository contains images. To delete a repository that contains images, * you must force the deletion with the force parameter.

*/ -export interface RepositoryNotEmptyException extends __SmithyException, $MetadataBearer { - name: "RepositoryNotEmptyException"; - $fault: "client"; - message?: string; +export class RepositoryNotEmptyException extends __BaseException { + readonly name: "RepositoryNotEmptyException" = "RepositoryNotEmptyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNotEmptyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNotEmptyException.prototype); + } } export interface DeleteRepositoryPolicyRequest { @@ -852,10 +1005,20 @@ export namespace DeleteRepositoryPolicyResponse { *

The specified repository and registry combination does not have an associated repository * policy.

*/ -export interface RepositoryPolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "RepositoryPolicyNotFoundException"; - $fault: "client"; - message?: string; +export class RepositoryPolicyNotFoundException extends __BaseException { + readonly name: "RepositoryPolicyNotFoundException" = "RepositoryPolicyNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryPolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryPolicyNotFoundException.prototype); + } } export interface DescribeImagesRequest { @@ -1001,10 +1164,20 @@ export namespace DescribeImagesResponse { /** *

The image requested does not exist in the specified repository.

*/ -export interface ImageNotFoundException extends __SmithyException, $MetadataBearer { - name: "ImageNotFoundException"; - $fault: "client"; - message?: string; +export class ImageNotFoundException extends __BaseException { + readonly name: "ImageNotFoundException" = "ImageNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageNotFoundException.prototype); + } } export interface DescribeImageTagsRequest { @@ -1588,30 +1761,60 @@ export namespace Image { *

The specified image has already been pushed, and there were no changes to the manifest * or image tag after the last push.

*/ -export interface ImageAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ImageAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ImageAlreadyExistsException extends __BaseException { + readonly name: "ImageAlreadyExistsException" = "ImageAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageAlreadyExistsException.prototype); + } } /** *

The specified image digest does not match the digest that Amazon ECR calculated for the * image.

*/ -export interface ImageDigestDoesNotMatchException extends __SmithyException, $MetadataBearer { - name: "ImageDigestDoesNotMatchException"; - $fault: "client"; - message?: string; +export class ImageDigestDoesNotMatchException extends __BaseException { + readonly name: "ImageDigestDoesNotMatchException" = "ImageDigestDoesNotMatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageDigestDoesNotMatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageDigestDoesNotMatchException.prototype); + } } /** *

The specified image is tagged with a tag that already exists. The repository is * configured for tag immutability.

*/ -export interface ImageTagAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ImageTagAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ImageTagAlreadyExistsException extends __BaseException { + readonly name: "ImageTagAlreadyExistsException" = "ImageTagAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageTagAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageTagAlreadyExistsException.prototype); + } } export interface InitiateLayerUploadRequest { @@ -1661,9 +1864,9 @@ export namespace InitiateLayerUploadResponse { *

The layer part size is not valid, or the first byte specified is not consecutive to the * last byte of a previous layer part upload.

*/ -export interface InvalidLayerPartException extends __SmithyException, $MetadataBearer { - name: "InvalidLayerPartException"; - $fault: "client"; +export class InvalidLayerPartException extends __BaseException { + readonly name: "InvalidLayerPartException" = "InvalidLayerPartException"; + readonly $fault: "client" = "client"; /** *

The AWS account ID associated with the layer part.

*/ @@ -1684,17 +1887,41 @@ export interface InvalidLayerPartException extends __SmithyException, $MetadataB */ lastValidByteReceived?: number; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLayerPartException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLayerPartException.prototype); + this.registryId = opts.registryId; + this.repositoryName = opts.repositoryName; + this.uploadId = opts.uploadId; + this.lastValidByteReceived = opts.lastValidByteReceived; + } } /** *

The specified layers could not be found, or the specified layer is not valid for this * repository.

*/ -export interface LayersNotFoundException extends __SmithyException, $MetadataBearer { - name: "LayersNotFoundException"; - $fault: "client"; - message?: string; +export class LayersNotFoundException extends __BaseException { + readonly name: "LayersNotFoundException" = "LayersNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayersNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayersNotFoundException.prototype); + } } export interface ListTagsForResourceRequest { @@ -1794,10 +2021,20 @@ export namespace PutImageResponse { /** *

The manifest list is referencing an image that does not exist.

*/ -export interface ReferencedImagesNotFoundException extends __SmithyException, $MetadataBearer { - name: "ReferencedImagesNotFoundException"; - $fault: "client"; - message?: string; +export class ReferencedImagesNotFoundException extends __BaseException { + readonly name: "ReferencedImagesNotFoundException" = "ReferencedImagesNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReferencedImagesNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReferencedImagesNotFoundException.prototype); + } } export interface PutRegistryCatalogDataRequest { diff --git a/clients/client-ecr-public/src/protocols/Aws_json1_1.ts b/clients/client-ecr-public/src/protocols/Aws_json1_1.ts index 2b7ef044d7cd6..efd1db8191184 100644 --- a/clients/client-ecr-public/src/protocols/Aws_json1_1.ts +++ b/clients/client-ecr-public/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -78,6 +77,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UploadLayerPartCommandInput, UploadLayerPartCommandOutput } from "../commands/UploadLayerPartCommand"; +import { ECRPUBLICServiceException as __BaseException } from "../models/ECRPUBLICServiceException"; import { AuthorizationData, BatchCheckLayerAvailabilityRequest, @@ -490,57 +490,31 @@ const deserializeAws_json1_1BatchCheckLayerAvailabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RegistryNotFoundException": case "com.amazonaws.ecrpublic#RegistryNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteImageCommand = async ( @@ -568,49 +542,28 @@ const deserializeAws_json1_1BatchDeleteImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CompleteLayerUploadCommand = async ( @@ -638,105 +591,49 @@ const deserializeAws_json1_1CompleteLayerUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EmptyUploadException": case "com.amazonaws.ecrpublic#EmptyUploadException": - response = { - ...(await deserializeAws_json1_1EmptyUploadExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EmptyUploadExceptionResponse(parsedOutput, context); case "InvalidLayerException": case "com.amazonaws.ecrpublic#InvalidLayerException": - response = { - ...(await deserializeAws_json1_1InvalidLayerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLayerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LayerAlreadyExistsException": case "com.amazonaws.ecrpublic#LayerAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1LayerAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayerAlreadyExistsExceptionResponse(parsedOutput, context); case "LayerPartTooSmallException": case "com.amazonaws.ecrpublic#LayerPartTooSmallException": - response = { - ...(await deserializeAws_json1_1LayerPartTooSmallExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayerPartTooSmallExceptionResponse(parsedOutput, context); case "RegistryNotFoundException": case "com.amazonaws.ecrpublic#RegistryNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); case "UploadNotFoundException": case "com.amazonaws.ecrpublic#UploadNotFoundException": - response = { - ...(await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRepositoryCommand = async ( @@ -764,73 +661,37 @@ const deserializeAws_json1_1CreateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.ecrpublic#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecrpublic#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RepositoryAlreadyExistsException": case "com.amazonaws.ecrpublic#RepositoryAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.ecrpublic#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRepositoryCommand = async ( @@ -858,57 +719,31 @@ const deserializeAws_json1_1DeleteRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotEmptyException": case "com.amazonaws.ecrpublic#RepositoryNotEmptyException": - response = { - ...(await deserializeAws_json1_1RepositoryNotEmptyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotEmptyExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRepositoryPolicyCommand = async ( @@ -936,57 +771,31 @@ const deserializeAws_json1_1DeleteRepositoryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryPolicyNotFoundException": case "com.amazonaws.ecrpublic#RepositoryPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImagesCommand = async ( @@ -1014,57 +823,31 @@ const deserializeAws_json1_1DescribeImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageNotFoundException": case "com.amazonaws.ecrpublic#ImageNotFoundException": - response = { - ...(await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImageTagsCommand = async ( @@ -1092,49 +875,28 @@ const deserializeAws_json1_1DescribeImageTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRegistriesCommand = async ( @@ -1162,49 +924,28 @@ const deserializeAws_json1_1DescribeRegistriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRepositoriesCommand = async ( @@ -1232,49 +973,28 @@ const deserializeAws_json1_1DescribeRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAuthorizationTokenCommand = async ( @@ -1302,41 +1022,25 @@ const deserializeAws_json1_1GetAuthorizationTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegistryCatalogDataCommand = async ( @@ -1364,41 +1068,25 @@ const deserializeAws_json1_1GetRegistryCatalogDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRepositoryCatalogDataCommand = async ( @@ -1426,49 +1114,28 @@ const deserializeAws_json1_1GetRepositoryCatalogDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRepositoryPolicyCommand = async ( @@ -1496,57 +1163,31 @@ const deserializeAws_json1_1GetRepositoryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryPolicyNotFoundException": case "com.amazonaws.ecrpublic#RepositoryPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InitiateLayerUploadCommand = async ( @@ -1574,65 +1215,34 @@ const deserializeAws_json1_1InitiateLayerUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RegistryNotFoundException": case "com.amazonaws.ecrpublic#RegistryNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1660,49 +1270,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutImageCommand = async ( @@ -1730,113 +1319,52 @@ const deserializeAws_json1_1PutImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageAlreadyExistsException": case "com.amazonaws.ecrpublic#ImageAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ImageAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageAlreadyExistsExceptionResponse(parsedOutput, context); case "ImageDigestDoesNotMatchException": case "com.amazonaws.ecrpublic#ImageDigestDoesNotMatchException": - response = { - ...(await deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse(parsedOutput, context); case "ImageTagAlreadyExistsException": case "com.amazonaws.ecrpublic#ImageTagAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LayersNotFoundException": case "com.amazonaws.ecrpublic#LayersNotFoundException": - response = { - ...(await deserializeAws_json1_1LayersNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayersNotFoundExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecrpublic#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ReferencedImagesNotFoundException": case "com.amazonaws.ecrpublic#ReferencedImagesNotFoundException": - response = { - ...(await deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse(parsedOutput, context); case "RegistryNotFoundException": case "com.amazonaws.ecrpublic#RegistryNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRegistryCatalogDataCommand = async ( @@ -1864,49 +1392,28 @@ const deserializeAws_json1_1PutRegistryCatalogDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRepositoryCatalogDataCommand = async ( @@ -1934,49 +1441,28 @@ const deserializeAws_json1_1PutRepositoryCatalogDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetRepositoryPolicyCommand = async ( @@ -2004,49 +1490,28 @@ const deserializeAws_json1_1SetRepositoryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2074,65 +1539,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.ecrpublic#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.ecrpublic#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2160,65 +1594,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.ecrpublic#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.ecrpublic#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UploadLayerPartCommand = async ( @@ -2246,89 +1649,43 @@ const deserializeAws_json1_1UploadLayerPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLayerPartException": case "com.amazonaws.ecrpublic#InvalidLayerPartException": - response = { - ...(await deserializeAws_json1_1InvalidLayerPartExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLayerPartExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecrpublic#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecrpublic#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RegistryNotFoundException": case "com.amazonaws.ecrpublic#RegistryNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecrpublic#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecrpublic#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedCommandException": case "com.amazonaws.ecrpublic#UnsupportedCommandException": - response = { - ...(await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCommandExceptionResponse(parsedOutput, context); case "UploadNotFoundException": case "com.amazonaws.ecrpublic#UploadNotFoundException": - response = { - ...(await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1EmptyUploadExceptionResponse = async ( @@ -2337,13 +1694,11 @@ const deserializeAws_json1_1EmptyUploadExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EmptyUploadException(body, context); - const contents: EmptyUploadException = { - name: "EmptyUploadException", - $fault: "client", + const exception = new EmptyUploadException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageAlreadyExistsExceptionResponse = async ( @@ -2352,13 +1707,11 @@ const deserializeAws_json1_1ImageAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageAlreadyExistsException(body, context); - const contents: ImageAlreadyExistsException = { - name: "ImageAlreadyExistsException", - $fault: "client", + const exception = new ImageAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse = async ( @@ -2367,13 +1720,11 @@ const deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageDigestDoesNotMatchException(body, context); - const contents: ImageDigestDoesNotMatchException = { - name: "ImageDigestDoesNotMatchException", - $fault: "client", + const exception = new ImageDigestDoesNotMatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageNotFoundExceptionResponse = async ( @@ -2382,13 +1733,11 @@ const deserializeAws_json1_1ImageNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageNotFoundException(body, context); - const contents: ImageNotFoundException = { - name: "ImageNotFoundException", - $fault: "client", + const exception = new ImageNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse = async ( @@ -2397,13 +1746,11 @@ const deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageTagAlreadyExistsException(body, context); - const contents: ImageTagAlreadyExistsException = { - name: "ImageTagAlreadyExistsException", - $fault: "client", + const exception = new ImageTagAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLayerExceptionResponse = async ( @@ -2412,13 +1759,11 @@ const deserializeAws_json1_1InvalidLayerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLayerException(body, context); - const contents: InvalidLayerException = { - name: "InvalidLayerException", - $fault: "client", + const exception = new InvalidLayerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLayerPartExceptionResponse = async ( @@ -2427,13 +1772,11 @@ const deserializeAws_json1_1InvalidLayerPartExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLayerPartException(body, context); - const contents: InvalidLayerPartException = { - name: "InvalidLayerPartException", - $fault: "client", + const exception = new InvalidLayerPartException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -2442,13 +1785,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagParameterExceptionResponse = async ( @@ -2457,13 +1798,11 @@ const deserializeAws_json1_1InvalidTagParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagParameterException(body, context); - const contents: InvalidTagParameterException = { - name: "InvalidTagParameterException", - $fault: "client", + const exception = new InvalidTagParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayerAlreadyExistsExceptionResponse = async ( @@ -2472,13 +1811,11 @@ const deserializeAws_json1_1LayerAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayerAlreadyExistsException(body, context); - const contents: LayerAlreadyExistsException = { - name: "LayerAlreadyExistsException", - $fault: "client", + const exception = new LayerAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayerPartTooSmallExceptionResponse = async ( @@ -2487,13 +1824,11 @@ const deserializeAws_json1_1LayerPartTooSmallExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayerPartTooSmallException(body, context); - const contents: LayerPartTooSmallException = { - name: "LayerPartTooSmallException", - $fault: "client", + const exception = new LayerPartTooSmallException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayersNotFoundExceptionResponse = async ( @@ -2502,13 +1837,11 @@ const deserializeAws_json1_1LayersNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayersNotFoundException(body, context); - const contents: LayersNotFoundException = { - name: "LayersNotFoundException", - $fault: "client", + const exception = new LayersNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2517,13 +1850,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse = async ( @@ -2532,13 +1863,11 @@ const deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReferencedImagesNotFoundException(body, context); - const contents: ReferencedImagesNotFoundException = { - name: "ReferencedImagesNotFoundException", - $fault: "client", + const exception = new ReferencedImagesNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RegistryNotFoundExceptionResponse = async ( @@ -2547,13 +1876,11 @@ const deserializeAws_json1_1RegistryNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RegistryNotFoundException(body, context); - const contents: RegistryNotFoundException = { - name: "RegistryNotFoundException", - $fault: "client", + const exception = new RegistryNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse = async ( @@ -2562,13 +1889,11 @@ const deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryAlreadyExistsException(body, context); - const contents: RepositoryAlreadyExistsException = { - name: "RepositoryAlreadyExistsException", - $fault: "client", + const exception = new RepositoryAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNotEmptyExceptionResponse = async ( @@ -2577,13 +1902,11 @@ const deserializeAws_json1_1RepositoryNotEmptyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNotEmptyException(body, context); - const contents: RepositoryNotEmptyException = { - name: "RepositoryNotEmptyException", - $fault: "client", + const exception = new RepositoryNotEmptyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNotFoundExceptionResponse = async ( @@ -2592,13 +1915,11 @@ const deserializeAws_json1_1RepositoryNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNotFoundException(body, context); - const contents: RepositoryNotFoundException = { - name: "RepositoryNotFoundException", - $fault: "client", + const exception = new RepositoryNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse = async ( @@ -2607,13 +1928,11 @@ const deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryPolicyNotFoundException(body, context); - const contents: RepositoryPolicyNotFoundException = { - name: "RepositoryPolicyNotFoundException", - $fault: "client", + const exception = new RepositoryPolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServerExceptionResponse = async ( @@ -2622,13 +1941,11 @@ const deserializeAws_json1_1ServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServerException(body, context); - const contents: ServerException = { - name: "ServerException", - $fault: "server", + const exception = new ServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -2637,13 +1954,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedCommandExceptionResponse = async ( @@ -2652,13 +1967,11 @@ const deserializeAws_json1_1UnsupportedCommandExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedCommandException(body, context); - const contents: UnsupportedCommandException = { - name: "UnsupportedCommandException", - $fault: "client", + const exception = new UnsupportedCommandException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UploadNotFoundExceptionResponse = async ( @@ -2667,13 +1980,11 @@ const deserializeAws_json1_1UploadNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UploadNotFoundException(body, context); - const contents: UploadNotFoundException = { - name: "UploadNotFoundException", - $fault: "client", + const exception = new UploadNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ArchitectureList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-ecr/src/index.ts b/clients/client-ecr/src/index.ts index 76db0a21a679b..4bb450b8c4b20 100644 --- a/clients/client-ecr/src/index.ts +++ b/clients/client-ecr/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ECRServiceException } from "./models/ECRServiceException"; diff --git a/clients/client-ecr/src/models/ECRServiceException.ts b/clients/client-ecr/src/models/ECRServiceException.ts new file mode 100644 index 0000000000000..6568259cf8ac8 --- /dev/null +++ b/clients/client-ecr/src/models/ECRServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ECR service. + */ +export class ECRServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ECRServiceException.prototype); + } +} diff --git a/clients/client-ecr/src/models/models_0.ts b/clients/client-ecr/src/models/models_0.ts index 64b1eb18f7732..80f2e34b6aa1e 100644 --- a/clients/client-ecr/src/models/models_0.ts +++ b/clients/client-ecr/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ECRServiceException as __BaseException } from "./ECRServiceException"; export interface BatchCheckLayerAvailabilityRequest { /** @@ -128,38 +131,59 @@ export namespace BatchCheckLayerAvailabilityResponse { *

The specified parameter is invalid. Review the available parameters for the API * request.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The specified repository could not be found. Check the spelling of the specified * repository and ensure that you are performing operations on the correct registry.

*/ -export interface RepositoryNotFoundException extends __SmithyException, $MetadataBearer { - name: "RepositoryNotFoundException"; - $fault: "client"; +export class RepositoryNotFoundException extends __BaseException { + readonly name: "RepositoryNotFoundException" = "RepositoryNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNotFoundException.prototype); + } } /** *

These errors are usually caused by a server-side issue.

*/ -export interface ServerException extends __SmithyException, $MetadataBearer { - name: "ServerException"; - $fault: "server"; +export class ServerException extends __BaseException { + readonly name: "ServerException" = "ServerException"; + readonly $fault: "server" = "server"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerException.prototype); + } } /** @@ -524,10 +548,20 @@ export namespace BatchGetRepositoryScanningConfigurationResponse { /** *

There was an exception validating this request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface CompleteLayerUploadRequest { @@ -597,76 +631,123 @@ export namespace CompleteLayerUploadResponse { /** *

The specified layer upload does not contain any layer parts.

*/ -export interface EmptyUploadException extends __SmithyException, $MetadataBearer { - name: "EmptyUploadException"; - $fault: "client"; +export class EmptyUploadException extends __BaseException { + readonly name: "EmptyUploadException" = "EmptyUploadException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EmptyUploadException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EmptyUploadException.prototype); + } } /** *

The layer digest calculation performed by Amazon ECR upon receipt of the image layer does * not match the digest specified.

*/ -export interface InvalidLayerException extends __SmithyException, $MetadataBearer { - name: "InvalidLayerException"; - $fault: "client"; +export class InvalidLayerException extends __BaseException { + readonly name: "InvalidLayerException" = "InvalidLayerException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLayerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLayerException.prototype); + } } /** *

The operation failed due to a KMS exception.

*/ -export interface KmsException extends __SmithyException, $MetadataBearer { - name: "KmsException"; - $fault: "client"; - message?: string; +export class KmsException extends __BaseException { + readonly name: "KmsException" = "KmsException"; + readonly $fault: "client" = "client"; /** *

The error code returned by KMS.

*/ kmsError?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KmsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KmsException.prototype); + this.kmsError = opts.kmsError; + } } /** *

The image layer already exists in the associated repository.

*/ -export interface LayerAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "LayerAlreadyExistsException"; - $fault: "client"; +export class LayerAlreadyExistsException extends __BaseException { + readonly name: "LayerAlreadyExistsException" = "LayerAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayerAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayerAlreadyExistsException.prototype); + } } /** *

Layer parts must be at least 5 MiB in size.

*/ -export interface LayerPartTooSmallException extends __SmithyException, $MetadataBearer { - name: "LayerPartTooSmallException"; - $fault: "client"; +export class LayerPartTooSmallException extends __BaseException { + readonly name: "LayerPartTooSmallException" = "LayerPartTooSmallException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayerPartTooSmallException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayerPartTooSmallException.prototype); + } } /** *

The upload could not be found, or the specified upload ID is not valid for this * repository.

*/ -export interface UploadNotFoundException extends __SmithyException, $MetadataBearer { - name: "UploadNotFoundException"; - $fault: "client"; +export class UploadNotFoundException extends __BaseException { + readonly name: "UploadNotFoundException" = "UploadNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UploadNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UploadNotFoundException.prototype); + } } export interface CreatePullThroughCacheRuleRequest { @@ -734,32 +815,59 @@ export namespace CreatePullThroughCacheRuleResponse { * account. For more information, see Amazon ECR service quotas in * the Amazon Elastic Container Registry User Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

A pull through cache rule with these settings already exists for the private * registry.

*/ -export interface PullThroughCacheRuleAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "PullThroughCacheRuleAlreadyExistsException"; - $fault: "client"; - message?: string; +export class PullThroughCacheRuleAlreadyExistsException extends __BaseException { + readonly name: "PullThroughCacheRuleAlreadyExistsException" = "PullThroughCacheRuleAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullThroughCacheRuleAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullThroughCacheRuleAlreadyExistsException.prototype); + } } /** *

The specified upstream registry isn't supported.

*/ -export interface UnsupportedUpstreamRegistryException extends __SmithyException, $MetadataBearer { - name: "UnsupportedUpstreamRegistryException"; - $fault: "client"; - message?: string; +export class UnsupportedUpstreamRegistryException extends __BaseException { + readonly name: "UnsupportedUpstreamRegistryException" = "UnsupportedUpstreamRegistryException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedUpstreamRegistryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedUpstreamRegistryException.prototype); + } } export enum EncryptionType { @@ -1001,32 +1109,59 @@ export namespace CreateRepositoryResponse { *

An invalid parameter has been specified. Tag keys can have a maximum character length of 128 characters, and tag values can have * a maximum length of 256 characters.

*/ -export interface InvalidTagParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidTagParameterException"; - $fault: "client"; - message?: string; +export class InvalidTagParameterException extends __BaseException { + readonly name: "InvalidTagParameterException" = "InvalidTagParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagParameterException.prototype); + } } /** *

The specified repository already exists in the specified registry.

*/ -export interface RepositoryAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "RepositoryAlreadyExistsException"; - $fault: "client"; +export class RepositoryAlreadyExistsException extends __BaseException { + readonly name: "RepositoryAlreadyExistsException" = "RepositoryAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryAlreadyExistsException.prototype); + } } /** *

The list of tags on the repository is over the limit. The maximum number of tags that * can be applied to a repository is 50.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } export interface DeleteLifecyclePolicyRequest { @@ -1086,10 +1221,20 @@ export namespace DeleteLifecyclePolicyResponse { *

The lifecycle policy could not be found, and no policy is set to the * repository.

*/ -export interface LifecyclePolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "LifecyclePolicyNotFoundException"; - $fault: "client"; - message?: string; +export class LifecyclePolicyNotFoundException extends __BaseException { + readonly name: "LifecyclePolicyNotFoundException" = "LifecyclePolicyNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LifecyclePolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LifecyclePolicyNotFoundException.prototype); + } } export interface DeletePullThroughCacheRuleRequest { @@ -1150,10 +1295,20 @@ export namespace DeletePullThroughCacheRuleResponse { *

The pull through cache rule was not found. Specify a valid pull through cache rule and * try again.

*/ -export interface PullThroughCacheRuleNotFoundException extends __SmithyException, $MetadataBearer { - name: "PullThroughCacheRuleNotFoundException"; - $fault: "client"; - message?: string; +export class PullThroughCacheRuleNotFoundException extends __BaseException { + readonly name: "PullThroughCacheRuleNotFoundException" = "PullThroughCacheRuleNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PullThroughCacheRuleNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PullThroughCacheRuleNotFoundException.prototype); + } } export interface DeleteRegistryPolicyRequest {} @@ -1191,10 +1346,20 @@ export namespace DeleteRegistryPolicyResponse { /** *

The registry doesn't have an associated registry policy.

*/ -export interface RegistryPolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "RegistryPolicyNotFoundException"; - $fault: "client"; - message?: string; +export class RegistryPolicyNotFoundException extends __BaseException { + readonly name: "RegistryPolicyNotFoundException" = "RegistryPolicyNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RegistryPolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RegistryPolicyNotFoundException.prototype); + } } export interface DeleteRepositoryRequest { @@ -1244,13 +1409,20 @@ export namespace DeleteRepositoryResponse { *

The specified repository contains images. To delete a repository that contains images, * you must force the deletion with the force parameter.

*/ -export interface RepositoryNotEmptyException extends __SmithyException, $MetadataBearer { - name: "RepositoryNotEmptyException"; - $fault: "client"; +export class RepositoryNotEmptyException extends __BaseException { + readonly name: "RepositoryNotEmptyException" = "RepositoryNotEmptyException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryNotEmptyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryNotEmptyException.prototype); + } } export interface DeleteRepositoryPolicyRequest { @@ -1306,13 +1478,20 @@ export namespace DeleteRepositoryPolicyResponse { *

The specified repository and registry combination does not have an associated * repository policy.

*/ -export interface RepositoryPolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "RepositoryPolicyNotFoundException"; - $fault: "client"; +export class RepositoryPolicyNotFoundException extends __BaseException { + readonly name: "RepositoryPolicyNotFoundException" = "RepositoryPolicyNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RepositoryPolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RepositoryPolicyNotFoundException.prototype); + } } export interface DescribeImageReplicationStatusRequest { @@ -1410,10 +1589,20 @@ export namespace DescribeImageReplicationStatusResponse { /** *

The image requested does not exist in the specified repository.

*/ -export interface ImageNotFoundException extends __SmithyException, $MetadataBearer { - name: "ImageNotFoundException"; - $fault: "client"; - message?: string; +export class ImageNotFoundException extends __BaseException { + readonly name: "ImageNotFoundException" = "ImageNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageNotFoundException.prototype); + } } export enum TagStatus { @@ -2350,10 +2539,20 @@ export namespace DescribeImageScanFindingsResponse { *

The specified image scan could not be found. Ensure that image scanning is enabled on * the repository and try again.

*/ -export interface ScanNotFoundException extends __SmithyException, $MetadataBearer { - name: "ScanNotFoundException"; - $fault: "client"; - message?: string; +export class ScanNotFoundException extends __BaseException { + readonly name: "ScanNotFoundException" = "ScanNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScanNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScanNotFoundException.prototype); + } } export interface DescribePullThroughCacheRulesRequest { @@ -2802,26 +3001,40 @@ export namespace GetDownloadUrlForLayerResponse { *

The specified layer is not available because it is not associated with an image. * Unassociated image layers may be cleaned up at any time.

*/ -export interface LayerInaccessibleException extends __SmithyException, $MetadataBearer { - name: "LayerInaccessibleException"; - $fault: "client"; +export class LayerInaccessibleException extends __BaseException { + readonly name: "LayerInaccessibleException" = "LayerInaccessibleException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayerInaccessibleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayerInaccessibleException.prototype); + } } /** *

The specified layers could not be found, or the specified layer is not valid for this * repository.

*/ -export interface LayersNotFoundException extends __SmithyException, $MetadataBearer { - name: "LayersNotFoundException"; - $fault: "client"; +export class LayersNotFoundException extends __BaseException { + readonly name: "LayersNotFoundException" = "LayersNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LayersNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LayersNotFoundException.prototype); + } } export interface GetLifecyclePolicyRequest { @@ -3096,10 +3309,20 @@ export namespace GetLifecyclePolicyPreviewResponse { /** *

There is no dry run for this repository.

*/ -export interface LifecyclePolicyPreviewNotFoundException extends __SmithyException, $MetadataBearer { - name: "LifecyclePolicyPreviewNotFoundException"; - $fault: "client"; - message?: string; +export class LifecyclePolicyPreviewNotFoundException extends __BaseException { + readonly name: "LifecyclePolicyPreviewNotFoundException" = "LifecyclePolicyPreviewNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LifecyclePolicyPreviewNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LifecyclePolicyPreviewNotFoundException.prototype); + } } export interface GetRegistryPolicyRequest {} @@ -3448,33 +3671,60 @@ export namespace ListTagsForResourceResponse { *

The specified image has already been pushed, and there were no changes to the manifest * or image tag after the last push.

*/ -export interface ImageAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ImageAlreadyExistsException"; - $fault: "client"; +export class ImageAlreadyExistsException extends __BaseException { + readonly name: "ImageAlreadyExistsException" = "ImageAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageAlreadyExistsException.prototype); + } } /** *

The specified image digest does not match the digest that Amazon ECR calculated for the * image.

*/ -export interface ImageDigestDoesNotMatchException extends __SmithyException, $MetadataBearer { - name: "ImageDigestDoesNotMatchException"; - $fault: "client"; - message?: string; +export class ImageDigestDoesNotMatchException extends __BaseException { + readonly name: "ImageDigestDoesNotMatchException" = "ImageDigestDoesNotMatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageDigestDoesNotMatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageDigestDoesNotMatchException.prototype); + } } /** *

The specified image is tagged with a tag that already exists. The repository is * configured for tag immutability.

*/ -export interface ImageTagAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ImageTagAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ImageTagAlreadyExistsException extends __BaseException { + readonly name: "ImageTagAlreadyExistsException" = "ImageTagAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageTagAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageTagAlreadyExistsException.prototype); + } } export interface PutImageRequest { @@ -3541,10 +3791,20 @@ export namespace PutImageResponse { /** *

The manifest list is referencing an image that does not exist.

*/ -export interface ReferencedImagesNotFoundException extends __SmithyException, $MetadataBearer { - name: "ReferencedImagesNotFoundException"; - $fault: "client"; - message?: string; +export class ReferencedImagesNotFoundException extends __BaseException { + readonly name: "ReferencedImagesNotFoundException" = "ReferencedImagesNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReferencedImagesNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReferencedImagesNotFoundException.prototype); + } } export interface PutImageScanningConfigurationRequest { @@ -3952,20 +4212,40 @@ export namespace StartImageScanResponse { /** *

The image is of a type that cannot be scanned.

*/ -export interface UnsupportedImageTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedImageTypeException"; - $fault: "client"; - message?: string; +export class UnsupportedImageTypeException extends __BaseException { + readonly name: "UnsupportedImageTypeException" = "UnsupportedImageTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedImageTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedImageTypeException.prototype); + } } /** *

The previous lifecycle policy preview request has not completed. Wait and try * again.

*/ -export interface LifecyclePolicyPreviewInProgressException extends __SmithyException, $MetadataBearer { - name: "LifecyclePolicyPreviewInProgressException"; - $fault: "client"; - message?: string; +export class LifecyclePolicyPreviewInProgressException extends __BaseException { + readonly name: "LifecyclePolicyPreviewInProgressException" = "LifecyclePolicyPreviewInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LifecyclePolicyPreviewInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LifecyclePolicyPreviewInProgressException.prototype); + } } export interface StartLifecyclePolicyPreviewRequest { @@ -4099,9 +4379,9 @@ export namespace UntagResourceResponse { *

The layer part size is not valid, or the first byte specified is not consecutive to * the last byte of a previous layer part upload.

*/ -export interface InvalidLayerPartException extends __SmithyException, $MetadataBearer { - name: "InvalidLayerPartException"; - $fault: "client"; +export class InvalidLayerPartException extends __BaseException { + readonly name: "InvalidLayerPartException" = "InvalidLayerPartException"; + readonly $fault: "client" = "client"; /** *

The registry ID associated with the exception.

*/ @@ -4124,9 +4404,20 @@ export interface InvalidLayerPartException extends __SmithyException, $MetadataB lastValidByteReceived?: number; /** - *

The error message associated with the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLayerPartException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLayerPartException.prototype); + this.registryId = opts.registryId; + this.repositoryName = opts.repositoryName; + this.uploadId = opts.uploadId; + this.lastValidByteReceived = opts.lastValidByteReceived; + } } export interface UploadLayerPartRequest { diff --git a/clients/client-ecr/src/protocols/Aws_json1_1.ts b/clients/client-ecr/src/protocols/Aws_json1_1.ts index d9bbee34986b3..970727edd6155 100644 --- a/clients/client-ecr/src/protocols/Aws_json1_1.ts +++ b/clients/client-ecr/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -134,6 +133,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UploadLayerPartCommandInput, UploadLayerPartCommandOutput } from "../commands/UploadLayerPartCommand"; +import { ECRServiceException as __BaseException } from "../models/ECRServiceException"; import { Attribute, AuthorizationData, @@ -856,49 +856,28 @@ const deserializeAws_json1_1BatchCheckLayerAvailabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteImageCommand = async ( @@ -926,49 +905,28 @@ const deserializeAws_json1_1BatchDeleteImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetImageCommand = async ( @@ -996,49 +954,28 @@ const deserializeAws_json1_1BatchGetImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetRepositoryScanningConfigurationCommand = async ( @@ -1066,57 +1003,31 @@ const deserializeAws_json1_1BatchGetRepositoryScanningConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CompleteLayerUploadCommand = async ( @@ -1144,97 +1055,46 @@ const deserializeAws_json1_1CompleteLayerUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EmptyUploadException": case "com.amazonaws.ecr#EmptyUploadException": - response = { - ...(await deserializeAws_json1_1EmptyUploadExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EmptyUploadExceptionResponse(parsedOutput, context); case "InvalidLayerException": case "com.amazonaws.ecr#InvalidLayerException": - response = { - ...(await deserializeAws_json1_1InvalidLayerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLayerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.ecr#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "LayerAlreadyExistsException": case "com.amazonaws.ecr#LayerAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1LayerAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayerAlreadyExistsExceptionResponse(parsedOutput, context); case "LayerPartTooSmallException": case "com.amazonaws.ecr#LayerPartTooSmallException": - response = { - ...(await deserializeAws_json1_1LayerPartTooSmallExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayerPartTooSmallExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UploadNotFoundException": case "com.amazonaws.ecr#UploadNotFoundException": - response = { - ...(await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePullThroughCacheRuleCommand = async ( @@ -1262,73 +1122,37 @@ const deserializeAws_json1_1CreatePullThroughCacheRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecr#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "PullThroughCacheRuleAlreadyExistsException": case "com.amazonaws.ecr#PullThroughCacheRuleAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1PullThroughCacheRuleAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullThroughCacheRuleAlreadyExistsExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedUpstreamRegistryException": case "com.amazonaws.ecr#UnsupportedUpstreamRegistryException": - response = { - ...(await deserializeAws_json1_1UnsupportedUpstreamRegistryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedUpstreamRegistryExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRepositoryCommand = async ( @@ -1356,81 +1180,40 @@ const deserializeAws_json1_1CreateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.ecr#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.ecr#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecr#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RepositoryAlreadyExistsException": case "com.amazonaws.ecr#RepositoryAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.ecr#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLifecyclePolicyCommand = async ( @@ -1458,57 +1241,31 @@ const deserializeAws_json1_1DeleteLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LifecyclePolicyNotFoundException": case "com.amazonaws.ecr#LifecyclePolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePullThroughCacheRuleCommand = async ( @@ -1536,57 +1293,31 @@ const deserializeAws_json1_1DeletePullThroughCacheRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PullThroughCacheRuleNotFoundException": case "com.amazonaws.ecr#PullThroughCacheRuleNotFoundException": - response = { - ...(await deserializeAws_json1_1PullThroughCacheRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullThroughCacheRuleNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegistryPolicyCommand = async ( @@ -1614,57 +1345,31 @@ const deserializeAws_json1_1DeleteRegistryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RegistryPolicyNotFoundException": case "com.amazonaws.ecr#RegistryPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryPolicyNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRepositoryCommand = async ( @@ -1692,65 +1397,34 @@ const deserializeAws_json1_1DeleteRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.ecr#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "RepositoryNotEmptyException": case "com.amazonaws.ecr#RepositoryNotEmptyException": - response = { - ...(await deserializeAws_json1_1RepositoryNotEmptyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotEmptyExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRepositoryPolicyCommand = async ( @@ -1778,57 +1452,31 @@ const deserializeAws_json1_1DeleteRepositoryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryPolicyNotFoundException": case "com.amazonaws.ecr#RepositoryPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImageReplicationStatusCommand = async ( @@ -1856,65 +1504,34 @@ const deserializeAws_json1_1DescribeImageReplicationStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageNotFoundException": case "com.amazonaws.ecr#ImageNotFoundException": - response = { - ...(await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImagesCommand = async ( @@ -1942,57 +1559,31 @@ const deserializeAws_json1_1DescribeImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageNotFoundException": case "com.amazonaws.ecr#ImageNotFoundException": - response = { - ...(await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImageScanFindingsCommand = async ( @@ -2020,73 +1611,37 @@ const deserializeAws_json1_1DescribeImageScanFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageNotFoundException": case "com.amazonaws.ecr#ImageNotFoundException": - response = { - ...(await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ScanNotFoundException": case "com.amazonaws.ecr#ScanNotFoundException": - response = { - ...(await deserializeAws_json1_1ScanNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ScanNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePullThroughCacheRulesCommand = async ( @@ -2114,57 +1669,31 @@ const deserializeAws_json1_1DescribePullThroughCacheRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PullThroughCacheRuleNotFoundException": case "com.amazonaws.ecr#PullThroughCacheRuleNotFoundException": - response = { - ...(await deserializeAws_json1_1PullThroughCacheRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PullThroughCacheRuleNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRegistryCommand = async ( @@ -2192,49 +1721,28 @@ const deserializeAws_json1_1DescribeRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRepositoriesCommand = async ( @@ -2262,49 +1770,28 @@ const deserializeAws_json1_1DescribeRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAuthorizationTokenCommand = async ( @@ -2332,41 +1819,25 @@ const deserializeAws_json1_1GetAuthorizationTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDownloadUrlForLayerCommand = async ( @@ -2394,65 +1865,34 @@ const deserializeAws_json1_1GetDownloadUrlForLayerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LayerInaccessibleException": case "com.amazonaws.ecr#LayerInaccessibleException": - response = { - ...(await deserializeAws_json1_1LayerInaccessibleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayerInaccessibleExceptionResponse(parsedOutput, context); case "LayersNotFoundException": case "com.amazonaws.ecr#LayersNotFoundException": - response = { - ...(await deserializeAws_json1_1LayersNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayersNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLifecyclePolicyCommand = async ( @@ -2480,57 +1920,31 @@ const deserializeAws_json1_1GetLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LifecyclePolicyNotFoundException": case "com.amazonaws.ecr#LifecyclePolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLifecyclePolicyPreviewCommand = async ( @@ -2558,57 +1972,31 @@ const deserializeAws_json1_1GetLifecyclePolicyPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LifecyclePolicyPreviewNotFoundException": case "com.amazonaws.ecr#LifecyclePolicyPreviewNotFoundException": - response = { - ...(await deserializeAws_json1_1LifecyclePolicyPreviewNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecyclePolicyPreviewNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegistryPolicyCommand = async ( @@ -2636,57 +2024,31 @@ const deserializeAws_json1_1GetRegistryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RegistryPolicyNotFoundException": case "com.amazonaws.ecr#RegistryPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1RegistryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RegistryPolicyNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegistryScanningConfigurationCommand = async ( @@ -2714,49 +2076,28 @@ const deserializeAws_json1_1GetRegistryScanningConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRepositoryPolicyCommand = async ( @@ -2784,57 +2125,31 @@ const deserializeAws_json1_1GetRepositoryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "RepositoryPolicyNotFoundException": case "com.amazonaws.ecr#RepositoryPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InitiateLayerUploadCommand = async ( @@ -2862,57 +2177,31 @@ const deserializeAws_json1_1InitiateLayerUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.ecr#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListImagesCommand = async ( @@ -2940,49 +2229,28 @@ const deserializeAws_json1_1ListImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3010,49 +2278,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutImageCommand = async ( @@ -3080,105 +2327,49 @@ const deserializeAws_json1_1PutImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageAlreadyExistsException": case "com.amazonaws.ecr#ImageAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ImageAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageAlreadyExistsExceptionResponse(parsedOutput, context); case "ImageDigestDoesNotMatchException": case "com.amazonaws.ecr#ImageDigestDoesNotMatchException": - response = { - ...(await deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse(parsedOutput, context); case "ImageTagAlreadyExistsException": case "com.amazonaws.ecr#ImageTagAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.ecr#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "LayersNotFoundException": case "com.amazonaws.ecr#LayersNotFoundException": - response = { - ...(await deserializeAws_json1_1LayersNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LayersNotFoundExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecr#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ReferencedImagesNotFoundException": case "com.amazonaws.ecr#ReferencedImagesNotFoundException": - response = { - ...(await deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutImageScanningConfigurationCommand = async ( @@ -3206,57 +2397,31 @@ const deserializeAws_json1_1PutImageScanningConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutImageTagMutabilityCommand = async ( @@ -3284,49 +2449,28 @@ const deserializeAws_json1_1PutImageTagMutabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLifecyclePolicyCommand = async ( @@ -3354,49 +2498,28 @@ const deserializeAws_json1_1PutLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRegistryPolicyCommand = async ( @@ -3424,49 +2547,28 @@ const deserializeAws_json1_1PutRegistryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRegistryScanningConfigurationCommand = async ( @@ -3494,49 +2596,28 @@ const deserializeAws_json1_1PutRegistryScanningConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutReplicationConfigurationCommand = async ( @@ -3564,49 +2645,28 @@ const deserializeAws_json1_1PutReplicationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetRepositoryPolicyCommand = async ( @@ -3634,49 +2694,28 @@ const deserializeAws_json1_1SetRepositoryPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartImageScanCommand = async ( @@ -3704,81 +2743,40 @@ const deserializeAws_json1_1StartImageScanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ImageNotFoundException": case "com.amazonaws.ecr#ImageNotFoundException": - response = { - ...(await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecr#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedImageTypeException": case "com.amazonaws.ecr#UnsupportedImageTypeException": - response = { - ...(await deserializeAws_json1_1UnsupportedImageTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedImageTypeExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ecr#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartLifecyclePolicyPreviewCommand = async ( @@ -3806,65 +2804,34 @@ const deserializeAws_json1_1StartLifecyclePolicyPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LifecyclePolicyNotFoundException": case "com.amazonaws.ecr#LifecyclePolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse(parsedOutput, context); case "LifecyclePolicyPreviewInProgressException": case "com.amazonaws.ecr#LifecyclePolicyPreviewInProgressException": - response = { - ...(await deserializeAws_json1_1LifecyclePolicyPreviewInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LifecyclePolicyPreviewInProgressExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3892,65 +2859,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.ecr#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.ecr#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3978,65 +2914,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidTagParameterException": case "com.amazonaws.ecr#InvalidTagParameterException": - response = { - ...(await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagParameterExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.ecr#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UploadLayerPartCommand = async ( @@ -4064,81 +2969,40 @@ const deserializeAws_json1_1UploadLayerPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLayerPartException": case "com.amazonaws.ecr#InvalidLayerPartException": - response = { - ...(await deserializeAws_json1_1InvalidLayerPartExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidLayerPartExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecr#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "KmsException": case "com.amazonaws.ecr#KmsException": - response = { - ...(await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KmsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecr#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "RepositoryNotFoundException": case "com.amazonaws.ecr#RepositoryNotFoundException": - response = { - ...(await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RepositoryNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecr#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UploadNotFoundException": case "com.amazonaws.ecr#UploadNotFoundException": - response = { - ...(await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UploadNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1EmptyUploadExceptionResponse = async ( @@ -4147,13 +3011,11 @@ const deserializeAws_json1_1EmptyUploadExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EmptyUploadException(body, context); - const contents: EmptyUploadException = { - name: "EmptyUploadException", - $fault: "client", + const exception = new EmptyUploadException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageAlreadyExistsExceptionResponse = async ( @@ -4162,13 +3024,11 @@ const deserializeAws_json1_1ImageAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageAlreadyExistsException(body, context); - const contents: ImageAlreadyExistsException = { - name: "ImageAlreadyExistsException", - $fault: "client", + const exception = new ImageAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse = async ( @@ -4177,13 +3037,11 @@ const deserializeAws_json1_1ImageDigestDoesNotMatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageDigestDoesNotMatchException(body, context); - const contents: ImageDigestDoesNotMatchException = { - name: "ImageDigestDoesNotMatchException", - $fault: "client", + const exception = new ImageDigestDoesNotMatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageNotFoundExceptionResponse = async ( @@ -4192,13 +3050,11 @@ const deserializeAws_json1_1ImageNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageNotFoundException(body, context); - const contents: ImageNotFoundException = { - name: "ImageNotFoundException", - $fault: "client", + const exception = new ImageNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse = async ( @@ -4207,13 +3063,11 @@ const deserializeAws_json1_1ImageTagAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageTagAlreadyExistsException(body, context); - const contents: ImageTagAlreadyExistsException = { - name: "ImageTagAlreadyExistsException", - $fault: "client", + const exception = new ImageTagAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLayerExceptionResponse = async ( @@ -4222,13 +3076,11 @@ const deserializeAws_json1_1InvalidLayerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLayerException(body, context); - const contents: InvalidLayerException = { - name: "InvalidLayerException", - $fault: "client", + const exception = new InvalidLayerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidLayerPartExceptionResponse = async ( @@ -4237,13 +3089,11 @@ const deserializeAws_json1_1InvalidLayerPartExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidLayerPartException(body, context); - const contents: InvalidLayerPartException = { - name: "InvalidLayerPartException", - $fault: "client", + const exception = new InvalidLayerPartException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -4252,13 +3102,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagParameterExceptionResponse = async ( @@ -4267,13 +3115,11 @@ const deserializeAws_json1_1InvalidTagParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagParameterException(body, context); - const contents: InvalidTagParameterException = { - name: "InvalidTagParameterException", - $fault: "client", + const exception = new InvalidTagParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KmsExceptionResponse = async ( @@ -4282,13 +3128,11 @@ const deserializeAws_json1_1KmsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KmsException(body, context); - const contents: KmsException = { - name: "KmsException", - $fault: "client", + const exception = new KmsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayerAlreadyExistsExceptionResponse = async ( @@ -4297,13 +3141,11 @@ const deserializeAws_json1_1LayerAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayerAlreadyExistsException(body, context); - const contents: LayerAlreadyExistsException = { - name: "LayerAlreadyExistsException", - $fault: "client", + const exception = new LayerAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayerInaccessibleExceptionResponse = async ( @@ -4312,13 +3154,11 @@ const deserializeAws_json1_1LayerInaccessibleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayerInaccessibleException(body, context); - const contents: LayerInaccessibleException = { - name: "LayerInaccessibleException", - $fault: "client", + const exception = new LayerInaccessibleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayerPartTooSmallExceptionResponse = async ( @@ -4327,13 +3167,11 @@ const deserializeAws_json1_1LayerPartTooSmallExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayerPartTooSmallException(body, context); - const contents: LayerPartTooSmallException = { - name: "LayerPartTooSmallException", - $fault: "client", + const exception = new LayerPartTooSmallException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LayersNotFoundExceptionResponse = async ( @@ -4342,13 +3180,11 @@ const deserializeAws_json1_1LayersNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LayersNotFoundException(body, context); - const contents: LayersNotFoundException = { - name: "LayersNotFoundException", - $fault: "client", + const exception = new LayersNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse = async ( @@ -4357,13 +3193,11 @@ const deserializeAws_json1_1LifecyclePolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LifecyclePolicyNotFoundException(body, context); - const contents: LifecyclePolicyNotFoundException = { - name: "LifecyclePolicyNotFoundException", - $fault: "client", + const exception = new LifecyclePolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LifecyclePolicyPreviewInProgressExceptionResponse = async ( @@ -4372,13 +3206,11 @@ const deserializeAws_json1_1LifecyclePolicyPreviewInProgressExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LifecyclePolicyPreviewInProgressException(body, context); - const contents: LifecyclePolicyPreviewInProgressException = { - name: "LifecyclePolicyPreviewInProgressException", - $fault: "client", + const exception = new LifecyclePolicyPreviewInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LifecyclePolicyPreviewNotFoundExceptionResponse = async ( @@ -4387,13 +3219,11 @@ const deserializeAws_json1_1LifecyclePolicyPreviewNotFoundExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LifecyclePolicyPreviewNotFoundException(body, context); - const contents: LifecyclePolicyPreviewNotFoundException = { - name: "LifecyclePolicyPreviewNotFoundException", - $fault: "client", + const exception = new LifecyclePolicyPreviewNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -4402,13 +3232,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullThroughCacheRuleAlreadyExistsExceptionResponse = async ( @@ -4417,13 +3245,11 @@ const deserializeAws_json1_1PullThroughCacheRuleAlreadyExistsExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullThroughCacheRuleAlreadyExistsException(body, context); - const contents: PullThroughCacheRuleAlreadyExistsException = { - name: "PullThroughCacheRuleAlreadyExistsException", - $fault: "client", + const exception = new PullThroughCacheRuleAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PullThroughCacheRuleNotFoundExceptionResponse = async ( @@ -4432,13 +3258,11 @@ const deserializeAws_json1_1PullThroughCacheRuleNotFoundExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PullThroughCacheRuleNotFoundException(body, context); - const contents: PullThroughCacheRuleNotFoundException = { - name: "PullThroughCacheRuleNotFoundException", - $fault: "client", + const exception = new PullThroughCacheRuleNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse = async ( @@ -4447,13 +3271,11 @@ const deserializeAws_json1_1ReferencedImagesNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReferencedImagesNotFoundException(body, context); - const contents: ReferencedImagesNotFoundException = { - name: "ReferencedImagesNotFoundException", - $fault: "client", + const exception = new ReferencedImagesNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RegistryPolicyNotFoundExceptionResponse = async ( @@ -4462,13 +3284,11 @@ const deserializeAws_json1_1RegistryPolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RegistryPolicyNotFoundException(body, context); - const contents: RegistryPolicyNotFoundException = { - name: "RegistryPolicyNotFoundException", - $fault: "client", + const exception = new RegistryPolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse = async ( @@ -4477,13 +3297,11 @@ const deserializeAws_json1_1RepositoryAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryAlreadyExistsException(body, context); - const contents: RepositoryAlreadyExistsException = { - name: "RepositoryAlreadyExistsException", - $fault: "client", + const exception = new RepositoryAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNotEmptyExceptionResponse = async ( @@ -4492,13 +3310,11 @@ const deserializeAws_json1_1RepositoryNotEmptyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNotEmptyException(body, context); - const contents: RepositoryNotEmptyException = { - name: "RepositoryNotEmptyException", - $fault: "client", + const exception = new RepositoryNotEmptyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryNotFoundExceptionResponse = async ( @@ -4507,13 +3323,11 @@ const deserializeAws_json1_1RepositoryNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryNotFoundException(body, context); - const contents: RepositoryNotFoundException = { - name: "RepositoryNotFoundException", - $fault: "client", + const exception = new RepositoryNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse = async ( @@ -4522,13 +3336,11 @@ const deserializeAws_json1_1RepositoryPolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RepositoryPolicyNotFoundException(body, context); - const contents: RepositoryPolicyNotFoundException = { - name: "RepositoryPolicyNotFoundException", - $fault: "client", + const exception = new RepositoryPolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ScanNotFoundExceptionResponse = async ( @@ -4537,13 +3349,11 @@ const deserializeAws_json1_1ScanNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ScanNotFoundException(body, context); - const contents: ScanNotFoundException = { - name: "ScanNotFoundException", - $fault: "client", + const exception = new ScanNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServerExceptionResponse = async ( @@ -4552,13 +3362,11 @@ const deserializeAws_json1_1ServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServerException(body, context); - const contents: ServerException = { - name: "ServerException", - $fault: "server", + const exception = new ServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -4567,13 +3375,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedImageTypeExceptionResponse = async ( @@ -4582,13 +3388,11 @@ const deserializeAws_json1_1UnsupportedImageTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedImageTypeException(body, context); - const contents: UnsupportedImageTypeException = { - name: "UnsupportedImageTypeException", - $fault: "client", + const exception = new UnsupportedImageTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedUpstreamRegistryExceptionResponse = async ( @@ -4597,13 +3401,11 @@ const deserializeAws_json1_1UnsupportedUpstreamRegistryExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedUpstreamRegistryException(body, context); - const contents: UnsupportedUpstreamRegistryException = { - name: "UnsupportedUpstreamRegistryException", - $fault: "client", + const exception = new UnsupportedUpstreamRegistryException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UploadNotFoundExceptionResponse = async ( @@ -4612,13 +3414,11 @@ const deserializeAws_json1_1UploadNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UploadNotFoundException(body, context); - const contents: UploadNotFoundException = { - name: "UploadNotFoundException", - $fault: "client", + const exception = new UploadNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -4627,13 +3427,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BatchCheckLayerAvailabilityRequest = ( diff --git a/clients/client-ecs/src/index.ts b/clients/client-ecs/src/index.ts index 440ecb66c91ad..c3ef9f37449d3 100644 --- a/clients/client-ecs/src/index.ts +++ b/clients/client-ecs/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ECSServiceException } from "./models/ECSServiceException"; diff --git a/clients/client-ecs/src/models/ECSServiceException.ts b/clients/client-ecs/src/models/ECSServiceException.ts new file mode 100644 index 0000000000000..5a535e2a6ef1c --- /dev/null +++ b/clients/client-ecs/src/models/ECSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ECS service. + */ +export class ECSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ECSServiceException.prototype); + } +} diff --git a/clients/client-ecs/src/models/models_0.ts b/clients/client-ecs/src/models/models_0.ts index 063567f51063d..3134a5cccce02 100644 --- a/clients/client-ecs/src/models/models_0.ts +++ b/clients/client-ecs/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ECSServiceException as __BaseException } from "./ECSServiceException"; /** *

You don't have authorization to perform the requested action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AgentUpdateStatus { @@ -24,10 +36,20 @@ export enum AgentUpdateStatus { * an action or resource on behalf of a user that doesn't have permissions to use the * action or resource,. Or, it might be specifying an identifier that isn't valid.

*/ -export interface ClientException extends __SmithyException, $MetadataBearer { - name: "ClientException"; - $fault: "client"; - message?: string; +export class ClientException extends __BaseException { + readonly name: "ClientException" = "ClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientException.prototype); + } } export enum ManagedScalingStatus { @@ -389,28 +411,58 @@ export namespace CreateCapacityProviderResponse { *

The specified parameter isn't valid. Review the available parameters for the API * request.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The limit for the resource was exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

These errors are usually caused by a server issue.

*/ -export interface ServerException extends __SmithyException, $MetadataBearer { - name: "ServerException"; - $fault: "server"; - message?: string; +export class ServerException extends __BaseException { + readonly name: "ServerException" = "ServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerException.prototype); + } } /** @@ -420,10 +472,20 @@ export interface ServerException extends __SmithyException, $MetadataBearer { * process can get stuck in that state. However, when the agent reconnects, it resumes * where it stopped previously.

*/ -export interface UpdateInProgressException extends __SmithyException, $MetadataBearer { - name: "UpdateInProgressException"; - $fault: "client"; - message?: string; +export class UpdateInProgressException extends __BaseException { + readonly name: "UpdateInProgressException" = "UpdateInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UpdateInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UpdateInProgressException.prototype); + } } /** @@ -1034,10 +1096,20 @@ export namespace CreateClusterResponse { /** *

The specified cluster wasn't found. You can view your available clusters with ListClusters. Amazon ECS clusters are Region specific.

*/ -export interface ClusterNotFoundException extends __SmithyException, $MetadataBearer { - name: "ClusterNotFoundException"; - $fault: "client"; - message?: string; +export class ClusterNotFoundException extends __BaseException { + readonly name: "ClusterNotFoundException" = "ClusterNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterNotFoundException.prototype); + } } /** @@ -2518,28 +2590,58 @@ export namespace CreateServiceResponse { *

The specified platform version doesn't satisfy the required capabilities of the task * definition.

*/ -export interface PlatformTaskDefinitionIncompatibilityException extends __SmithyException, $MetadataBearer { - name: "PlatformTaskDefinitionIncompatibilityException"; - $fault: "client"; - message?: string; +export class PlatformTaskDefinitionIncompatibilityException extends __BaseException { + readonly name: "PlatformTaskDefinitionIncompatibilityException" = "PlatformTaskDefinitionIncompatibilityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PlatformTaskDefinitionIncompatibilityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PlatformTaskDefinitionIncompatibilityException.prototype); + } } /** *

The specified platform version doesn't exist.

*/ -export interface PlatformUnknownException extends __SmithyException, $MetadataBearer { - name: "PlatformUnknownException"; - $fault: "client"; - message?: string; +export class PlatformUnknownException extends __BaseException { + readonly name: "PlatformUnknownException" = "PlatformUnknownException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PlatformUnknownException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PlatformUnknownException.prototype); + } } /** *

The specified task isn't supported in this Region.

*/ -export interface UnsupportedFeatureException extends __SmithyException, $MetadataBearer { - name: "UnsupportedFeatureException"; - $fault: "client"; - message?: string; +export class UnsupportedFeatureException extends __BaseException { + readonly name: "UnsupportedFeatureException" = "UnsupportedFeatureException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedFeatureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedFeatureException.prototype); + } } export interface CreateTaskSetRequest { @@ -2706,20 +2808,40 @@ export namespace CreateTaskSetResponse { *

The specified service isn't active. You can't update a service that's inactive. If you * have previously deleted a service, you can re-create it with CreateService.

*/ -export interface ServiceNotActiveException extends __SmithyException, $MetadataBearer { - name: "ServiceNotActiveException"; - $fault: "client"; - message?: string; +export class ServiceNotActiveException extends __BaseException { + readonly name: "ServiceNotActiveException" = "ServiceNotActiveException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceNotActiveException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceNotActiveException.prototype); + } } /** *

The specified service wasn't found. You can view your available services with ListServices. Amazon ECS services are cluster specific and Region * specific.

*/ -export interface ServiceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ServiceNotFoundException"; - $fault: "client"; - message?: string; +export class ServiceNotFoundException extends __BaseException { + readonly name: "ServiceNotFoundException" = "ServiceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceNotFoundException.prototype); + } } export enum SettingName { @@ -2901,10 +3023,20 @@ export namespace DeleteAttributesResponse { * with ListContainerInstances. Amazon ECS container instances are * cluster-specific and Region-specific.

*/ -export interface TargetNotFoundException extends __SmithyException, $MetadataBearer { - name: "TargetNotFoundException"; - $fault: "client"; - message?: string; +export class TargetNotFoundException extends __BaseException { + readonly name: "TargetNotFoundException" = "TargetNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetNotFoundException.prototype); + } } export interface DeleteCapacityProviderRequest { @@ -2944,10 +3076,20 @@ export namespace DeleteCapacityProviderResponse { * the container instances before you can delete the cluster. For more information, see * DeregisterContainerInstance.

*/ -export interface ClusterContainsContainerInstancesException extends __SmithyException, $MetadataBearer { - name: "ClusterContainsContainerInstancesException"; - $fault: "client"; - message?: string; +export class ClusterContainsContainerInstancesException extends __BaseException { + readonly name: "ClusterContainsContainerInstancesException" = "ClusterContainsContainerInstancesException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterContainsContainerInstancesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterContainsContainerInstancesException.prototype); + } } /** @@ -2955,19 +3097,39 @@ export interface ClusterContainsContainerInstancesException extends __SmithyExce * its desired task count to 0, and then delete the service. For more information, see * UpdateService and DeleteService.

*/ -export interface ClusterContainsServicesException extends __SmithyException, $MetadataBearer { - name: "ClusterContainsServicesException"; - $fault: "client"; - message?: string; +export class ClusterContainsServicesException extends __BaseException { + readonly name: "ClusterContainsServicesException" = "ClusterContainsServicesException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterContainsServicesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterContainsServicesException.prototype); + } } /** *

You can't delete a cluster that has active tasks.

*/ -export interface ClusterContainsTasksException extends __SmithyException, $MetadataBearer { - name: "ClusterContainsTasksException"; - $fault: "client"; - message?: string; +export class ClusterContainsTasksException extends __BaseException { + readonly name: "ClusterContainsTasksException" = "ClusterContainsTasksException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterContainsTasksException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterContainsTasksException.prototype); + } } export interface DeleteClusterRequest { @@ -3101,10 +3263,20 @@ export namespace DeleteTaskSetResponse { *

The specified task set wasn't found. You can view your available task sets with DescribeTaskSets. Task sets are specific to each cluster, service and * Region.

*/ -export interface TaskSetNotFoundException extends __SmithyException, $MetadataBearer { - name: "TaskSetNotFoundException"; - $fault: "client"; - message?: string; +export class TaskSetNotFoundException extends __BaseException { + readonly name: "TaskSetNotFoundException" = "TaskSetNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TaskSetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TaskSetNotFoundException.prototype); + } } export interface DeregisterContainerInstanceRequest { @@ -7478,10 +7650,20 @@ export namespace ExecuteCommandResponse { *

The target container isn't properly configured with the execute command agent or the * container is no longer active or running.

*/ -export interface TargetNotConnectedException extends __SmithyException, $MetadataBearer { - name: "TargetNotConnectedException"; - $fault: "client"; - message?: string; +export class TargetNotConnectedException extends __BaseException { + readonly name: "TargetNotConnectedException" = "TargetNotConnectedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetNotConnectedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetNotConnectedException.prototype); + } } export interface ListAccountSettingsRequest { @@ -8341,10 +8523,20 @@ export namespace PutAccountSettingDefaultResponse { * attributes of a resource with ListAttributes. You can remove existing * attributes on a resource with DeleteAttributes.

*/ -export interface AttributeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "AttributeLimitExceededException"; - $fault: "client"; - message?: string; +export class AttributeLimitExceededException extends __BaseException { + readonly name: "AttributeLimitExceededException" = "AttributeLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AttributeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AttributeLimitExceededException.prototype); + } } export interface PutAttributesRequest { @@ -8453,10 +8645,20 @@ export namespace PutClusterCapacityProvidersResponse { /** *

The specified resource is in-use and can't be removed.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export enum PlatformDeviceType { @@ -8934,10 +9136,20 @@ export namespace RegisterTaskDefinitionResponse { *

Your Amazon Web Services account was blocked. For more information, contact * Amazon Web Services Support.

*/ -export interface BlockedException extends __SmithyException, $MetadataBearer { - name: "BlockedException"; - $fault: "client"; - message?: string; +export class BlockedException extends __BaseException { + readonly name: "BlockedException" = "BlockedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BlockedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BlockedException.prototype); + } } export interface RunTaskRequest { @@ -9651,10 +9863,20 @@ export namespace SubmitTaskStateChangeResponse { /** *

The specified resource wasn't found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface TagResourceRequest { @@ -9918,10 +10140,20 @@ export namespace UpdateClusterSettingsResponse { * could be because the agent running on the container instance is a previous or custom * version that doesn't use our version information.

*/ -export interface MissingVersionException extends __SmithyException, $MetadataBearer { - name: "MissingVersionException"; - $fault: "client"; - message?: string; +export class MissingVersionException extends __BaseException { + readonly name: "MissingVersionException" = "MissingVersionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingVersionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingVersionException.prototype); + } } /** @@ -9929,10 +10161,20 @@ export interface MissingVersionException extends __SmithyException, $MetadataBea * agent is already running the latest version or because it's so old that there's no * update path to the current version.

*/ -export interface NoUpdateAvailableException extends __SmithyException, $MetadataBearer { - name: "NoUpdateAvailableException"; - $fault: "client"; - message?: string; +export class NoUpdateAvailableException extends __BaseException { + readonly name: "NoUpdateAvailableException" = "NoUpdateAvailableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoUpdateAvailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoUpdateAvailableException.prototype); + } } export interface UpdateContainerAgentRequest { diff --git a/clients/client-ecs/src/protocols/Aws_json1_1.ts b/clients/client-ecs/src/protocols/Aws_json1_1.ts index efcf899959245..f08d21bec7f2d 100644 --- a/clients/client-ecs/src/protocols/Aws_json1_1.ts +++ b/clients/client-ecs/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -149,6 +148,7 @@ import { UpdateServicePrimaryTaskSetCommandOutput, } from "../commands/UpdateServicePrimaryTaskSetCommand"; import { UpdateTaskSetCommandInput, UpdateTaskSetCommandOutput } from "../commands/UpdateTaskSetCommand"; +import { ECSServiceException as __BaseException } from "../models/ECSServiceException"; import { AccessDeniedException, Attachment, @@ -1070,65 +1070,34 @@ const deserializeAws_json1_1CreateCapacityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ecs#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UpdateInProgressException": case "com.amazonaws.ecs#UpdateInProgressException": - response = { - ...(await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateClusterCommand = async ( @@ -1156,49 +1125,28 @@ const deserializeAws_json1_1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateServiceCommand = async ( @@ -1226,89 +1174,43 @@ const deserializeAws_json1_1CreateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PlatformTaskDefinitionIncompatibilityException": case "com.amazonaws.ecs#PlatformTaskDefinitionIncompatibilityException": - response = { - ...(await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context); case "PlatformUnknownException": case "com.amazonaws.ecs#PlatformUnknownException": - response = { - ...(await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTaskSetCommand = async ( @@ -1336,105 +1238,49 @@ const deserializeAws_json1_1CreateTaskSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PlatformTaskDefinitionIncompatibilityException": case "com.amazonaws.ecs#PlatformTaskDefinitionIncompatibilityException": - response = { - ...(await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context); case "PlatformUnknownException": case "com.amazonaws.ecs#PlatformUnknownException": - response = { - ...(await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotActiveException": case "com.amazonaws.ecs#ServiceNotActiveException": - response = { - ...(await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAccountSettingCommand = async ( @@ -1462,49 +1308,28 @@ const deserializeAws_json1_1DeleteAccountSettingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAttributesCommand = async ( @@ -1532,49 +1357,28 @@ const deserializeAws_json1_1DeleteAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.ecs#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCapacityProviderCommand = async ( @@ -1602,49 +1406,28 @@ const deserializeAws_json1_1DeleteCapacityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteClusterCommand = async ( @@ -1672,89 +1455,43 @@ const deserializeAws_json1_1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterContainsContainerInstancesException": case "com.amazonaws.ecs#ClusterContainsContainerInstancesException": - response = { - ...(await deserializeAws_json1_1ClusterContainsContainerInstancesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterContainsContainerInstancesExceptionResponse(parsedOutput, context); case "ClusterContainsServicesException": case "com.amazonaws.ecs#ClusterContainsServicesException": - response = { - ...(await deserializeAws_json1_1ClusterContainsServicesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterContainsServicesExceptionResponse(parsedOutput, context); case "ClusterContainsTasksException": case "com.amazonaws.ecs#ClusterContainsTasksException": - response = { - ...(await deserializeAws_json1_1ClusterContainsTasksExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterContainsTasksExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UpdateInProgressException": case "com.amazonaws.ecs#UpdateInProgressException": - response = { - ...(await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServiceCommand = async ( @@ -1782,65 +1519,34 @@ const deserializeAws_json1_1DeleteServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTaskSetCommand = async ( @@ -1868,97 +1574,46 @@ const deserializeAws_json1_1DeleteTaskSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotActiveException": case "com.amazonaws.ecs#ServiceNotActiveException": - response = { - ...(await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); case "TaskSetNotFoundException": case "com.amazonaws.ecs#TaskSetNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskSetNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterContainerInstanceCommand = async ( @@ -1986,57 +1641,31 @@ const deserializeAws_json1_1DeregisterContainerInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterTaskDefinitionCommand = async ( @@ -2064,49 +1693,28 @@ const deserializeAws_json1_1DeregisterTaskDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCapacityProvidersCommand = async ( @@ -2134,49 +1742,28 @@ const deserializeAws_json1_1DescribeCapacityProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClustersCommand = async ( @@ -2204,49 +1791,28 @@ const deserializeAws_json1_1DescribeClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeContainerInstancesCommand = async ( @@ -2274,57 +1840,31 @@ const deserializeAws_json1_1DescribeContainerInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServicesCommand = async ( @@ -2352,57 +1892,31 @@ const deserializeAws_json1_1DescribeServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTaskDefinitionCommand = async ( @@ -2430,49 +1944,28 @@ const deserializeAws_json1_1DescribeTaskDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTasksCommand = async ( @@ -2500,57 +1993,31 @@ const deserializeAws_json1_1DescribeTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTaskSetsCommand = async ( @@ -2578,89 +2045,43 @@ const deserializeAws_json1_1DescribeTaskSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotActiveException": case "com.amazonaws.ecs#ServiceNotActiveException": - response = { - ...(await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DiscoverPollEndpointCommand = async ( @@ -2688,41 +2109,25 @@ const deserializeAws_json1_1DiscoverPollEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExecuteCommandCommand = async ( @@ -2750,73 +2155,37 @@ const deserializeAws_json1_1ExecuteCommandCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "TargetNotConnectedException": case "com.amazonaws.ecs#TargetNotConnectedException": - response = { - ...(await deserializeAws_json1_1TargetNotConnectedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotConnectedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountSettingsCommand = async ( @@ -2844,49 +2213,28 @@ const deserializeAws_json1_1ListAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAttributesCommand = async ( @@ -2914,41 +2262,25 @@ const deserializeAws_json1_1ListAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListClustersCommand = async ( @@ -2976,49 +2308,28 @@ const deserializeAws_json1_1ListClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListContainerInstancesCommand = async ( @@ -3046,57 +2357,31 @@ const deserializeAws_json1_1ListContainerInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServicesCommand = async ( @@ -3124,57 +2409,31 @@ const deserializeAws_json1_1ListServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3202,57 +2461,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTaskDefinitionFamiliesCommand = async ( @@ -3280,49 +2513,28 @@ const deserializeAws_json1_1ListTaskDefinitionFamiliesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTaskDefinitionsCommand = async ( @@ -3350,49 +2562,28 @@ const deserializeAws_json1_1ListTaskDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTasksCommand = async ( @@ -3420,65 +2611,34 @@ const deserializeAws_json1_1ListTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAccountSettingCommand = async ( @@ -3506,49 +2666,28 @@ const deserializeAws_json1_1PutAccountSettingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAccountSettingDefaultCommand = async ( @@ -3576,49 +2715,28 @@ const deserializeAws_json1_1PutAccountSettingDefaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAttributesCommand = async ( @@ -3646,57 +2764,31 @@ const deserializeAws_json1_1PutAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AttributeLimitExceededException": case "com.amazonaws.ecs#AttributeLimitExceededException": - response = { - ...(await deserializeAws_json1_1AttributeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttributeLimitExceededExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.ecs#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutClusterCapacityProvidersCommand = async ( @@ -3724,73 +2816,37 @@ const deserializeAws_json1_1PutClusterCapacityProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.ecs#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UpdateInProgressException": case "com.amazonaws.ecs#UpdateInProgressException": - response = { - ...(await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterContainerInstanceCommand = async ( @@ -3818,49 +2874,28 @@ const deserializeAws_json1_1RegisterContainerInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterTaskDefinitionCommand = async ( @@ -3888,49 +2923,28 @@ const deserializeAws_json1_1RegisterTaskDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RunTaskCommand = async ( @@ -3958,97 +2972,46 @@ const deserializeAws_json1_1RunTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BlockedException": case "com.amazonaws.ecs#BlockedException": - response = { - ...(await deserializeAws_json1_1BlockedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BlockedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PlatformTaskDefinitionIncompatibilityException": case "com.amazonaws.ecs#PlatformTaskDefinitionIncompatibilityException": - response = { - ...(await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context); case "PlatformUnknownException": case "com.amazonaws.ecs#PlatformUnknownException": - response = { - ...(await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTaskCommand = async ( @@ -4076,57 +3039,31 @@ const deserializeAws_json1_1StartTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTaskCommand = async ( @@ -4154,57 +3091,31 @@ const deserializeAws_json1_1StopTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SubmitAttachmentStateChangesCommand = async ( @@ -4232,57 +3143,31 @@ const deserializeAws_json1_1SubmitAttachmentStateChangesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SubmitContainerStateChangeCommand = async ( @@ -4310,49 +3195,28 @@ const deserializeAws_json1_1SubmitContainerStateChangeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SubmitTaskStateChangeCommand = async ( @@ -4380,57 +3244,31 @@ const deserializeAws_json1_1SubmitTaskStateChangeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4458,65 +3296,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ecs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -4544,65 +3351,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ecs#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCapacityProviderCommand = async ( @@ -4630,49 +3406,28 @@ const deserializeAws_json1_1UpdateCapacityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateClusterCommand = async ( @@ -4700,57 +3455,31 @@ const deserializeAws_json1_1UpdateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateClusterSettingsCommand = async ( @@ -4778,57 +3507,31 @@ const deserializeAws_json1_1UpdateClusterSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContainerAgentCommand = async ( @@ -4856,81 +3559,40 @@ const deserializeAws_json1_1UpdateContainerAgentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingVersionException": case "com.amazonaws.ecs#MissingVersionException": - response = { - ...(await deserializeAws_json1_1MissingVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingVersionExceptionResponse(parsedOutput, context); case "NoUpdateAvailableException": case "com.amazonaws.ecs#NoUpdateAvailableException": - response = { - ...(await deserializeAws_json1_1NoUpdateAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoUpdateAvailableExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "UpdateInProgressException": case "com.amazonaws.ecs#UpdateInProgressException": - response = { - ...(await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UpdateInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContainerInstancesStateCommand = async ( @@ -4958,57 +3620,31 @@ const deserializeAws_json1_1UpdateContainerInstancesStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServiceCommand = async ( @@ -5036,97 +3672,46 @@ const deserializeAws_json1_1UpdateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PlatformTaskDefinitionIncompatibilityException": case "com.amazonaws.ecs#PlatformTaskDefinitionIncompatibilityException": - response = { - ...(await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse(parsedOutput, context); case "PlatformUnknownException": case "com.amazonaws.ecs#PlatformUnknownException": - response = { - ...(await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformUnknownExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotActiveException": case "com.amazonaws.ecs#ServiceNotActiveException": - response = { - ...(await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServicePrimaryTaskSetCommand = async ( @@ -5154,97 +3739,46 @@ const deserializeAws_json1_1UpdateServicePrimaryTaskSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotActiveException": case "com.amazonaws.ecs#ServiceNotActiveException": - response = { - ...(await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); case "TaskSetNotFoundException": case "com.amazonaws.ecs#TaskSetNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskSetNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTaskSetCommand = async ( @@ -5272,97 +3806,46 @@ const deserializeAws_json1_1UpdateTaskSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ecs#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.ecs#ClientException": - response = { - ...(await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClientExceptionResponse(parsedOutput, context); case "ClusterNotFoundException": case "com.amazonaws.ecs#ClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ecs#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.ecs#ServerException": - response = { - ...(await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerExceptionResponse(parsedOutput, context); case "ServiceNotActiveException": case "com.amazonaws.ecs#ServiceNotActiveException": - response = { - ...(await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotActiveExceptionResponse(parsedOutput, context); case "ServiceNotFoundException": case "com.amazonaws.ecs#ServiceNotFoundException": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundExceptionResponse(parsedOutput, context); case "TaskSetNotFoundException": case "com.amazonaws.ecs#TaskSetNotFoundException": - response = { - ...(await deserializeAws_json1_1TaskSetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaskSetNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.ecs#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -5371,13 +3854,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AttributeLimitExceededExceptionResponse = async ( @@ -5386,13 +3867,11 @@ const deserializeAws_json1_1AttributeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AttributeLimitExceededException(body, context); - const contents: AttributeLimitExceededException = { - name: "AttributeLimitExceededException", - $fault: "client", + const exception = new AttributeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BlockedExceptionResponse = async ( @@ -5401,13 +3880,11 @@ const deserializeAws_json1_1BlockedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BlockedException(body, context); - const contents: BlockedException = { - name: "BlockedException", - $fault: "client", + const exception = new BlockedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClientExceptionResponse = async ( @@ -5416,13 +3893,11 @@ const deserializeAws_json1_1ClientExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClientException(body, context); - const contents: ClientException = { - name: "ClientException", - $fault: "client", + const exception = new ClientException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterContainsContainerInstancesExceptionResponse = async ( @@ -5431,13 +3906,11 @@ const deserializeAws_json1_1ClusterContainsContainerInstancesExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterContainsContainerInstancesException(body, context); - const contents: ClusterContainsContainerInstancesException = { - name: "ClusterContainsContainerInstancesException", - $fault: "client", + const exception = new ClusterContainsContainerInstancesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterContainsServicesExceptionResponse = async ( @@ -5446,13 +3919,11 @@ const deserializeAws_json1_1ClusterContainsServicesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterContainsServicesException(body, context); - const contents: ClusterContainsServicesException = { - name: "ClusterContainsServicesException", - $fault: "client", + const exception = new ClusterContainsServicesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterContainsTasksExceptionResponse = async ( @@ -5461,13 +3932,11 @@ const deserializeAws_json1_1ClusterContainsTasksExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterContainsTasksException(body, context); - const contents: ClusterContainsTasksException = { - name: "ClusterContainsTasksException", - $fault: "client", + const exception = new ClusterContainsTasksException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterNotFoundExceptionResponse = async ( @@ -5476,13 +3945,11 @@ const deserializeAws_json1_1ClusterNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterNotFoundException(body, context); - const contents: ClusterNotFoundException = { - name: "ClusterNotFoundException", - $fault: "client", + const exception = new ClusterNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -5491,13 +3958,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -5506,13 +3971,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MissingVersionExceptionResponse = async ( @@ -5521,13 +3984,11 @@ const deserializeAws_json1_1MissingVersionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MissingVersionException(body, context); - const contents: MissingVersionException = { - name: "MissingVersionException", - $fault: "client", + const exception = new MissingVersionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoUpdateAvailableExceptionResponse = async ( @@ -5536,13 +3997,11 @@ const deserializeAws_json1_1NoUpdateAvailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoUpdateAvailableException(body, context); - const contents: NoUpdateAvailableException = { - name: "NoUpdateAvailableException", - $fault: "client", + const exception = new NoUpdateAvailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionResponse = async ( @@ -5551,13 +4010,11 @@ const deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PlatformTaskDefinitionIncompatibilityException(body, context); - const contents: PlatformTaskDefinitionIncompatibilityException = { - name: "PlatformTaskDefinitionIncompatibilityException", - $fault: "client", + const exception = new PlatformTaskDefinitionIncompatibilityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PlatformUnknownExceptionResponse = async ( @@ -5566,13 +4023,11 @@ const deserializeAws_json1_1PlatformUnknownExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PlatformUnknownException(body, context); - const contents: PlatformUnknownException = { - name: "PlatformUnknownException", - $fault: "client", + const exception = new PlatformUnknownException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -5581,13 +4036,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -5596,13 +4049,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServerExceptionResponse = async ( @@ -5611,13 +4062,11 @@ const deserializeAws_json1_1ServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServerException(body, context); - const contents: ServerException = { - name: "ServerException", - $fault: "server", + const exception = new ServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceNotActiveExceptionResponse = async ( @@ -5626,13 +4075,11 @@ const deserializeAws_json1_1ServiceNotActiveExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceNotActiveException(body, context); - const contents: ServiceNotActiveException = { - name: "ServiceNotActiveException", - $fault: "client", + const exception = new ServiceNotActiveException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceNotFoundExceptionResponse = async ( @@ -5641,13 +4088,11 @@ const deserializeAws_json1_1ServiceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceNotFoundException(body, context); - const contents: ServiceNotFoundException = { - name: "ServiceNotFoundException", - $fault: "client", + const exception = new ServiceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetNotConnectedExceptionResponse = async ( @@ -5656,13 +4101,11 @@ const deserializeAws_json1_1TargetNotConnectedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetNotConnectedException(body, context); - const contents: TargetNotConnectedException = { - name: "TargetNotConnectedException", - $fault: "client", + const exception = new TargetNotConnectedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetNotFoundExceptionResponse = async ( @@ -5671,13 +4114,11 @@ const deserializeAws_json1_1TargetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetNotFoundException(body, context); - const contents: TargetNotFoundException = { - name: "TargetNotFoundException", - $fault: "client", + const exception = new TargetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TaskSetNotFoundExceptionResponse = async ( @@ -5686,13 +4127,11 @@ const deserializeAws_json1_1TaskSetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TaskSetNotFoundException(body, context); - const contents: TaskSetNotFoundException = { - name: "TaskSetNotFoundException", - $fault: "client", + const exception = new TaskSetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedFeatureExceptionResponse = async ( @@ -5701,13 +4140,11 @@ const deserializeAws_json1_1UnsupportedFeatureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedFeatureException(body, context); - const contents: UnsupportedFeatureException = { - name: "UnsupportedFeatureException", - $fault: "client", + const exception = new UnsupportedFeatureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UpdateInProgressExceptionResponse = async ( @@ -5716,13 +4153,11 @@ const deserializeAws_json1_1UpdateInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UpdateInProgressException(body, context); - const contents: UpdateInProgressException = { - name: "UpdateInProgressException", - $fault: "client", + const exception = new UpdateInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AttachmentStateChange = (input: AttachmentStateChange, context: __SerdeContext): any => { diff --git a/clients/client-efs/src/index.ts b/clients/client-efs/src/index.ts index 80307a1b41eab..0ad1e9bff4b4b 100644 --- a/clients/client-efs/src/index.ts +++ b/clients/client-efs/src/index.ts @@ -3,3 +3,4 @@ export * from "./EFSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { EFSServiceException } from "./models/EFSServiceException"; diff --git a/clients/client-efs/src/models/EFSServiceException.ts b/clients/client-efs/src/models/EFSServiceException.ts new file mode 100644 index 0000000000000..7ff806b5f45f5 --- /dev/null +++ b/clients/client-efs/src/models/EFSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EFS service. + */ +export class EFSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EFSServiceException.prototype); + } +} diff --git a/clients/client-efs/src/models/models_0.ts b/clients/client-efs/src/models/models_0.ts index 4a64d57f6c28d..fca7f4c659a12 100644 --- a/clients/client-efs/src/models/models_0.ts +++ b/clients/client-efs/src/models/models_0.ts @@ -1,12 +1,15 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EFSServiceException as __BaseException } from "./EFSServiceException"; /** *

Returned if the access point you are trying to create already exists, with the * creation token you provided in the request.

*/ -export interface AccessPointAlreadyExists extends __SmithyException, $MetadataBearer { - name: "AccessPointAlreadyExists"; - $fault: "client"; +export class AccessPointAlreadyExists extends __BaseException { + readonly name: "AccessPointAlreadyExists" = "AccessPointAlreadyExists"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -23,6 +26,20 @@ export interface AccessPointAlreadyExists extends __SmithyException, $MetadataBe Message?: string; AccessPointId: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessPointAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessPointAlreadyExists.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + this.AccessPointId = opts.AccessPointId; + } } export enum LifeCycleState { @@ -235,9 +252,9 @@ export namespace AccessPointDescription { *

Returned if the Amazon Web Services account has already created the maximum number of access points * allowed per file system.

*/ -export interface AccessPointLimitExceeded extends __SmithyException, $MetadataBearer { - name: "AccessPointLimitExceeded"; - $fault: "client"; +export class AccessPointLimitExceeded extends __BaseException { + readonly name: "AccessPointLimitExceeded" = "AccessPointLimitExceeded"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -252,15 +269,28 @@ export interface AccessPointLimitExceeded extends __SmithyException, $MetadataBe * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessPointLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessPointLimitExceeded.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the specified AccessPointId value doesn't exist in the * requester's Amazon Web Services account.

*/ -export interface AccessPointNotFound extends __SmithyException, $MetadataBearer { - name: "AccessPointNotFound"; - $fault: "client"; +export class AccessPointNotFound extends __BaseException { + readonly name: "AccessPointNotFound" = "AccessPointNotFound"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -275,15 +305,28 @@ export interface AccessPointNotFound extends __SmithyException, $MetadataBearer * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessPointNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessPointNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the Availability Zone that was specified for a mount target is different from the Availability Zone that was specified for One Zone storage classes. * For more information, see Regional and One Zone storage redundancy.

*/ -export interface AvailabilityZonesMismatch extends __SmithyException, $MetadataBearer { - name: "AvailabilityZonesMismatch"; - $fault: "client"; +export class AvailabilityZonesMismatch extends __BaseException { + readonly name: "AvailabilityZonesMismatch" = "AvailabilityZonesMismatch"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -298,6 +341,19 @@ export interface AvailabilityZonesMismatch extends __SmithyException, $MetadataB * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AvailabilityZonesMismatch", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AvailabilityZonesMismatch.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export enum Status { @@ -373,9 +429,9 @@ export namespace BackupPolicyDescription { *

Returned if the request is malformed or contains an error such as an invalid * parameter value or a missing required parameter.

*/ -export interface BadRequest extends __SmithyException, $MetadataBearer { - name: "BadRequest"; - $fault: "client"; +export class BadRequest extends __BaseException { + readonly name: "BadRequest" = "BadRequest"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -390,6 +446,19 @@ export interface BadRequest extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequest", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequest.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface CreateAccessPointRequest { @@ -444,9 +513,9 @@ export namespace CreateAccessPointRequest { *

Returned if the specified FileSystemId value doesn't exist in the * requester's Amazon Web Services account.

*/ -export interface FileSystemNotFound extends __SmithyException, $MetadataBearer { - name: "FileSystemNotFound"; - $fault: "client"; +export class FileSystemNotFound extends __BaseException { + readonly name: "FileSystemNotFound" = "FileSystemNotFound"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -461,14 +530,27 @@ export interface FileSystemNotFound extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileSystemNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileSystemNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the file system's lifecycle state is not "available".

*/ -export interface IncorrectFileSystemLifeCycleState extends __SmithyException, $MetadataBearer { - name: "IncorrectFileSystemLifeCycleState"; - $fault: "client"; +export class IncorrectFileSystemLifeCycleState extends __BaseException { + readonly name: "IncorrectFileSystemLifeCycleState" = "IncorrectFileSystemLifeCycleState"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -483,14 +565,27 @@ export interface IncorrectFileSystemLifeCycleState extends __SmithyException, $M * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncorrectFileSystemLifeCycleState", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncorrectFileSystemLifeCycleState.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if an error occurred on the server side.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -505,6 +600,19 @@ export interface InternalServerError extends __SmithyException, $MetadataBearer * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export enum PerformanceMode { @@ -648,9 +756,9 @@ export namespace CreateFileSystemRequest { *

Returned if the file system you are trying to create already exists, with the * creation token you provided.

*/ -export interface FileSystemAlreadyExists extends __SmithyException, $MetadataBearer { - name: "FileSystemAlreadyExists"; - $fault: "client"; +export class FileSystemAlreadyExists extends __BaseException { + readonly name: "FileSystemAlreadyExists" = "FileSystemAlreadyExists"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -667,6 +775,20 @@ export interface FileSystemAlreadyExists extends __SmithyException, $MetadataBea Message?: string; FileSystemId: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileSystemAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileSystemAlreadyExists.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + this.FileSystemId = opts.FileSystemId; + } } /** @@ -840,9 +962,9 @@ export namespace FileSystemDescription { *

Returned if the Amazon Web Services account has already created the maximum number of file systems * allowed per account.

*/ -export interface FileSystemLimitExceeded extends __SmithyException, $MetadataBearer { - name: "FileSystemLimitExceeded"; - $fault: "client"; +export class FileSystemLimitExceeded extends __BaseException { + readonly name: "FileSystemLimitExceeded" = "FileSystemLimitExceeded"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -857,6 +979,19 @@ export interface FileSystemLimitExceeded extends __SmithyException, $MetadataBea * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileSystemLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileSystemLimitExceeded.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** @@ -866,9 +1001,9 @@ export interface FileSystemLimitExceeded extends __SmithyException, $MetadataBea * when you attempt to change an existing file system from bursting to provisioned * throughput mode. Try again later.

*/ -export interface InsufficientThroughputCapacity extends __SmithyException, $MetadataBearer { - name: "InsufficientThroughputCapacity"; - $fault: "server"; +export class InsufficientThroughputCapacity extends __BaseException { + readonly name: "InsufficientThroughputCapacity" = "InsufficientThroughputCapacity"; + readonly $fault: "server" = "server"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -883,15 +1018,28 @@ export interface InsufficientThroughputCapacity extends __SmithyException, $Meta * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientThroughputCapacity", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientThroughputCapacity.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the throughput mode or amount of provisioned throughput can't be changed * because the throughput limit of 1024 MiB/s has been reached.

*/ -export interface ThroughputLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ThroughputLimitExceeded"; - $fault: "client"; +export class ThroughputLimitExceeded extends __BaseException { + readonly name: "ThroughputLimitExceeded" = "ThroughputLimitExceeded"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -906,14 +1054,27 @@ export interface ThroughputLimitExceeded extends __SmithyException, $MetadataBea * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThroughputLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThroughputLimitExceeded.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the requested Amazon EFS functionality is not available in the specified Availability Zone.

*/ -export interface UnsupportedAvailabilityZone extends __SmithyException, $MetadataBearer { - name: "UnsupportedAvailabilityZone"; - $fault: "client"; +export class UnsupportedAvailabilityZone extends __BaseException { + readonly name: "UnsupportedAvailabilityZone" = "UnsupportedAvailabilityZone"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -928,6 +1089,19 @@ export interface UnsupportedAvailabilityZone extends __SmithyException, $Metadat * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedAvailabilityZone", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedAvailabilityZone.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** @@ -970,9 +1144,9 @@ export namespace CreateMountTargetRequest { *

Returned if the request specified an IpAddress that is already in use * in the subnet.

*/ -export interface IpAddressInUse extends __SmithyException, $MetadataBearer { - name: "IpAddressInUse"; - $fault: "client"; +export class IpAddressInUse extends __BaseException { + readonly name: "IpAddressInUse" = "IpAddressInUse"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -987,15 +1161,28 @@ export interface IpAddressInUse extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IpAddressInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IpAddressInUse.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the mount target would violate one of the specified restrictions based * on the file system's existing mount targets.

*/ -export interface MountTargetConflict extends __SmithyException, $MetadataBearer { - name: "MountTargetConflict"; - $fault: "client"; +export class MountTargetConflict extends __BaseException { + readonly name: "MountTargetConflict" = "MountTargetConflict"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1010,6 +1197,19 @@ export interface MountTargetConflict extends __SmithyException, $MetadataBearer * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MountTargetConflict", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MountTargetConflict.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** @@ -1087,9 +1287,9 @@ export namespace MountTargetDescription { * in the Amazon VPC User Guide (see the Network interfaces per VPC * entry in the table).

*/ -export interface NetworkInterfaceLimitExceeded extends __SmithyException, $MetadataBearer { - name: "NetworkInterfaceLimitExceeded"; - $fault: "client"; +export class NetworkInterfaceLimitExceeded extends __BaseException { + readonly name: "NetworkInterfaceLimitExceeded" = "NetworkInterfaceLimitExceeded"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1104,15 +1304,28 @@ export interface NetworkInterfaceLimitExceeded extends __SmithyException, $Metad * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NetworkInterfaceLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NetworkInterfaceLimitExceeded.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if IpAddress was not specified in the request and there are * no free IP addresses in the subnet.

*/ -export interface NoFreeAddressesInSubnet extends __SmithyException, $MetadataBearer { - name: "NoFreeAddressesInSubnet"; - $fault: "client"; +export class NoFreeAddressesInSubnet extends __BaseException { + readonly name: "NoFreeAddressesInSubnet" = "NoFreeAddressesInSubnet"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1127,15 +1340,28 @@ export interface NoFreeAddressesInSubnet extends __SmithyException, $MetadataBea * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoFreeAddressesInSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoFreeAddressesInSubnet.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the size of SecurityGroups specified in the request is * greater than five.

*/ -export interface SecurityGroupLimitExceeded extends __SmithyException, $MetadataBearer { - name: "SecurityGroupLimitExceeded"; - $fault: "client"; +export class SecurityGroupLimitExceeded extends __BaseException { + readonly name: "SecurityGroupLimitExceeded" = "SecurityGroupLimitExceeded"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1150,15 +1376,28 @@ export interface SecurityGroupLimitExceeded extends __SmithyException, $Metadata * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SecurityGroupLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SecurityGroupLimitExceeded.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if one of the specified security groups doesn't exist in the subnet's * VPC.

*/ -export interface SecurityGroupNotFound extends __SmithyException, $MetadataBearer { - name: "SecurityGroupNotFound"; - $fault: "client"; +export class SecurityGroupNotFound extends __BaseException { + readonly name: "SecurityGroupNotFound" = "SecurityGroupNotFound"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1173,15 +1412,28 @@ export interface SecurityGroupNotFound extends __SmithyException, $MetadataBeare * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SecurityGroupNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SecurityGroupNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if there is no subnet with ID SubnetId provided in the * request.

*/ -export interface SubnetNotFound extends __SmithyException, $MetadataBearer { - name: "SubnetNotFound"; - $fault: "client"; +export class SubnetNotFound extends __BaseException { + readonly name: "SubnetNotFound" = "SubnetNotFound"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1196,6 +1448,19 @@ export interface SubnetNotFound extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** @@ -1360,9 +1625,9 @@ export namespace ReplicationConfigurationDescription { /** *

Returned if the specified file system did not have a replication configuration.

*/ -export interface ReplicationNotFound extends __SmithyException, $MetadataBearer { - name: "ReplicationNotFound"; - $fault: "client"; +export class ReplicationNotFound extends __BaseException { + readonly name: "ReplicationNotFound" = "ReplicationNotFound"; + readonly $fault: "client" = "client"; /** *

ReplicationNotFound

*/ @@ -1376,14 +1641,27 @@ export interface ReplicationNotFound extends __SmithyException, $MetadataBearer * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if the Backup service is not available in the Amazon Web Services Region in which the request was made.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1398,6 +1676,19 @@ export interface ValidationException extends __SmithyException, $MetadataBearer * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** @@ -1464,9 +1755,9 @@ export namespace DeleteFileSystemRequest { /** *

Returned if a file system has mount targets.

*/ -export interface FileSystemInUse extends __SmithyException, $MetadataBearer { - name: "FileSystemInUse"; - $fault: "client"; +export class FileSystemInUse extends __BaseException { + readonly name: "FileSystemInUse" = "FileSystemInUse"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1481,6 +1772,19 @@ export interface FileSystemInUse extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileSystemInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileSystemInUse.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface DeleteFileSystemPolicyRequest { @@ -1522,9 +1826,9 @@ export namespace DeleteMountTargetRequest { *

The service timed out trying to fulfill the request, and the client should try the * call again.

*/ -export interface DependencyTimeout extends __SmithyException, $MetadataBearer { - name: "DependencyTimeout"; - $fault: "server"; +export class DependencyTimeout extends __BaseException { + readonly name: "DependencyTimeout" = "DependencyTimeout"; + readonly $fault: "server" = "server"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1539,15 +1843,28 @@ export interface DependencyTimeout extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyTimeout", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DependencyTimeout.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

Returned if there is no mount target with the specified ID found in the * caller's Amazon Web Services account.

*/ -export interface MountTargetNotFound extends __SmithyException, $MetadataBearer { - name: "MountTargetNotFound"; - $fault: "client"; +export class MountTargetNotFound extends __BaseException { + readonly name: "MountTargetNotFound" = "MountTargetNotFound"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1562,6 +1879,19 @@ export interface MountTargetNotFound extends __SmithyException, $MetadataBearer * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MountTargetNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MountTargetNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface DeleteReplicationConfigurationRequest { @@ -1760,9 +2090,9 @@ export namespace DescribeBackupPolicyRequest { /** *

Returned if the default file system policy is in effect for the EFS file system specified.

*/ -export interface PolicyNotFound extends __SmithyException, $MetadataBearer { - name: "PolicyNotFound"; - $fault: "client"; +export class PolicyNotFound extends __BaseException { + readonly name: "PolicyNotFound" = "PolicyNotFound"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -1777,6 +2107,19 @@ export interface PolicyNotFound extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyNotFound.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface DescribeFileSystemPolicyRequest { @@ -2085,9 +2428,9 @@ export namespace DescribeMountTargetSecurityGroupsResponse { *

Returned if the mount target is not in the correct state for the * operation.

*/ -export interface IncorrectMountTargetState extends __SmithyException, $MetadataBearer { - name: "IncorrectMountTargetState"; - $fault: "client"; +export class IncorrectMountTargetState extends __BaseException { + readonly name: "IncorrectMountTargetState" = "IncorrectMountTargetState"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -2102,6 +2445,19 @@ export interface IncorrectMountTargetState extends __SmithyException, $MetadataB * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncorrectMountTargetState", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncorrectMountTargetState.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface DescribeReplicationConfigurationsRequest { @@ -2225,9 +2581,9 @@ export namespace DescribeTagsResponse { *

Returned if the FileSystemPolicy is is malformed or contains an error such as an invalid * parameter value or a missing required parameter. Returned in the case of a policy lockout safety check error.

*/ -export interface InvalidPolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidPolicyException"; - $fault: "client"; +export class InvalidPolicyException extends __BaseException { + readonly name: "InvalidPolicyException" = "InvalidPolicyException"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -2242,6 +2598,19 @@ export interface InvalidPolicyException extends __SmithyException, $MetadataBear * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPolicyException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface ListTagsForResourceRequest { @@ -2498,9 +2867,9 @@ export namespace UntagResourceRequest { *

Returned if you don’t wait at least 24 hours before changing the throughput mode, or * decreasing the Provisioned Throughput value.

*/ -export interface TooManyRequests extends __SmithyException, $MetadataBearer { - name: "TooManyRequests"; - $fault: "client"; +export class TooManyRequests extends __BaseException { + readonly name: "TooManyRequests" = "TooManyRequests"; + readonly $fault: "client" = "client"; /** *

The error code is a string that uniquely identifies an error condition. * It is meant to be read and understood by programs that detect and handle errors by type.

@@ -2515,6 +2884,19 @@ export interface TooManyRequests extends __SmithyException, $MetadataBearer { * more likely to ignore the error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequests", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequests.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface UpdateFileSystemRequest { diff --git a/clients/client-efs/src/protocols/Aws_restJson1.ts b/clients/client-efs/src/protocols/Aws_restJson1.ts index 550c4d22b9124..329be0f7da5e7 100644 --- a/clients/client-efs/src/protocols/Aws_restJson1.ts +++ b/clients/client-efs/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -102,6 +101,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateFileSystemCommandInput, UpdateFileSystemCommandOutput } from "../commands/UpdateFileSystemCommand"; +import { EFSServiceException as __BaseException } from "../models/EFSServiceException"; import { AccessPointAlreadyExists, AccessPointDescription, @@ -1174,73 +1174,37 @@ const deserializeAws_restJson1CreateAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointAlreadyExists": case "com.amazonaws.efs#AccessPointAlreadyExists": - response = { - ...(await deserializeAws_restJson1AccessPointAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointAlreadyExistsResponse(parsedOutput, context); case "AccessPointLimitExceeded": case "com.amazonaws.efs#AccessPointLimitExceeded": - response = { - ...(await deserializeAws_restJson1AccessPointLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointLimitExceededResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFileSystemCommand = async ( @@ -1333,81 +1297,40 @@ const deserializeAws_restJson1CreateFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemAlreadyExists": case "com.amazonaws.efs#FileSystemAlreadyExists": - response = { - ...(await deserializeAws_restJson1FileSystemAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemAlreadyExistsResponse(parsedOutput, context); case "FileSystemLimitExceeded": case "com.amazonaws.efs#FileSystemLimitExceeded": - response = { - ...(await deserializeAws_restJson1FileSystemLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemLimitExceededResponse(parsedOutput, context); case "InsufficientThroughputCapacity": case "com.amazonaws.efs#InsufficientThroughputCapacity": - response = { - ...(await deserializeAws_restJson1InsufficientThroughputCapacityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InsufficientThroughputCapacityResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ThroughputLimitExceeded": case "com.amazonaws.efs#ThroughputLimitExceeded": - response = { - ...(await deserializeAws_restJson1ThroughputLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThroughputLimitExceededResponse(parsedOutput, context); case "UnsupportedAvailabilityZone": case "com.amazonaws.efs#UnsupportedAvailabilityZone": - response = { - ...(await deserializeAws_restJson1UnsupportedAvailabilityZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedAvailabilityZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMountTargetCommand = async ( @@ -1472,129 +1395,58 @@ const deserializeAws_restJson1CreateMountTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AvailabilityZonesMismatch": case "com.amazonaws.efs#AvailabilityZonesMismatch": - response = { - ...(await deserializeAws_restJson1AvailabilityZonesMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AvailabilityZonesMismatchResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "IpAddressInUse": case "com.amazonaws.efs#IpAddressInUse": - response = { - ...(await deserializeAws_restJson1IpAddressInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IpAddressInUseResponse(parsedOutput, context); case "MountTargetConflict": case "com.amazonaws.efs#MountTargetConflict": - response = { - ...(await deserializeAws_restJson1MountTargetConflictResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MountTargetConflictResponse(parsedOutput, context); case "NetworkInterfaceLimitExceeded": case "com.amazonaws.efs#NetworkInterfaceLimitExceeded": - response = { - ...(await deserializeAws_restJson1NetworkInterfaceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NetworkInterfaceLimitExceededResponse(parsedOutput, context); case "NoFreeAddressesInSubnet": case "com.amazonaws.efs#NoFreeAddressesInSubnet": - response = { - ...(await deserializeAws_restJson1NoFreeAddressesInSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NoFreeAddressesInSubnetResponse(parsedOutput, context); case "SecurityGroupLimitExceeded": case "com.amazonaws.efs#SecurityGroupLimitExceeded": - response = { - ...(await deserializeAws_restJson1SecurityGroupLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SecurityGroupLimitExceededResponse(parsedOutput, context); case "SecurityGroupNotFound": case "com.amazonaws.efs#SecurityGroupNotFound": - response = { - ...(await deserializeAws_restJson1SecurityGroupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SecurityGroupNotFoundResponse(parsedOutput, context); case "SubnetNotFound": case "com.amazonaws.efs#SubnetNotFound": - response = { - ...(await deserializeAws_restJson1SubnetNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SubnetNotFoundResponse(parsedOutput, context); case "UnsupportedAvailabilityZone": case "com.amazonaws.efs#UnsupportedAvailabilityZone": - response = { - ...(await deserializeAws_restJson1UnsupportedAvailabilityZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedAvailabilityZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateReplicationConfigurationCommand = async ( @@ -1643,105 +1495,49 @@ const deserializeAws_restJson1CreateReplicationConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemLimitExceeded": case "com.amazonaws.efs#FileSystemLimitExceeded": - response = { - ...(await deserializeAws_restJson1FileSystemLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemLimitExceededResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InsufficientThroughputCapacity": case "com.amazonaws.efs#InsufficientThroughputCapacity": - response = { - ...(await deserializeAws_restJson1InsufficientThroughputCapacityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InsufficientThroughputCapacityResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ReplicationNotFound": case "com.amazonaws.efs#ReplicationNotFound": - response = { - ...(await deserializeAws_restJson1ReplicationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ReplicationNotFoundResponse(parsedOutput, context); case "ThroughputLimitExceeded": case "com.amazonaws.efs#ThroughputLimitExceeded": - response = { - ...(await deserializeAws_restJson1ThroughputLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThroughputLimitExceededResponse(parsedOutput, context); case "UnsupportedAvailabilityZone": case "com.amazonaws.efs#UnsupportedAvailabilityZone": - response = { - ...(await deserializeAws_restJson1UnsupportedAvailabilityZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedAvailabilityZoneResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.efs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTagsCommand = async ( @@ -1766,49 +1562,28 @@ const deserializeAws_restJson1CreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAccessPointCommand = async ( @@ -1833,49 +1608,28 @@ const deserializeAws_restJson1DeleteAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFound": case "com.amazonaws.efs#AccessPointNotFound": - response = { - ...(await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFileSystemCommand = async ( @@ -1900,57 +1654,31 @@ const deserializeAws_restJson1DeleteFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemInUse": case "com.amazonaws.efs#FileSystemInUse": - response = { - ...(await deserializeAws_restJson1FileSystemInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemInUseResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFileSystemPolicyCommand = async ( @@ -1975,57 +1703,31 @@ const deserializeAws_restJson1DeleteFileSystemPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMountTargetCommand = async ( @@ -2050,57 +1752,31 @@ const deserializeAws_restJson1DeleteMountTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "DependencyTimeout": case "com.amazonaws.efs#DependencyTimeout": - response = { - ...(await deserializeAws_restJson1DependencyTimeoutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyTimeoutResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "MountTargetNotFound": case "com.amazonaws.efs#MountTargetNotFound": - response = { - ...(await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReplicationConfigurationCommand = async ( @@ -2125,57 +1801,31 @@ const deserializeAws_restJson1DeleteReplicationConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ReplicationNotFound": case "com.amazonaws.efs#ReplicationNotFound": - response = { - ...(await deserializeAws_restJson1ReplicationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ReplicationNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTagsCommand = async ( @@ -2200,49 +1850,28 @@ const deserializeAws_restJson1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccessPointsCommand = async ( @@ -2275,57 +1904,31 @@ const deserializeAws_restJson1DescribeAccessPointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFound": case "com.amazonaws.efs#AccessPointNotFound": - response = { - ...(await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccountPreferencesCommand = async ( @@ -2358,33 +1961,22 @@ const deserializeAws_restJson1DescribeAccountPreferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBackupPolicyCommand = async ( @@ -2413,65 +2005,34 @@ const deserializeAws_restJson1DescribeBackupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFound": case "com.amazonaws.efs#PolicyNotFound": - response = { - ...(await deserializeAws_restJson1PolicyNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PolicyNotFoundResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.efs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFileSystemPolicyCommand = async ( @@ -2504,57 +2065,31 @@ const deserializeAws_restJson1DescribeFileSystemPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFound": case "com.amazonaws.efs#PolicyNotFound": - response = { - ...(await deserializeAws_restJson1PolicyNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PolicyNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFileSystemsCommand = async ( @@ -2591,49 +2126,28 @@ const deserializeAws_restJson1DescribeFileSystemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeLifecycleConfigurationCommand = async ( @@ -2662,49 +2176,28 @@ const deserializeAws_restJson1DescribeLifecycleConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMountTargetsCommand = async ( @@ -2741,65 +2234,34 @@ const deserializeAws_restJson1DescribeMountTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFound": case "com.amazonaws.efs#AccessPointNotFound": - response = { - ...(await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "MountTargetNotFound": case "com.amazonaws.efs#MountTargetNotFound": - response = { - ...(await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMountTargetSecurityGroupsCommand = async ( @@ -2828,57 +2290,31 @@ const deserializeAws_restJson1DescribeMountTargetSecurityGroupsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "IncorrectMountTargetState": case "com.amazonaws.efs#IncorrectMountTargetState": - response = { - ...(await deserializeAws_restJson1IncorrectMountTargetStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectMountTargetStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "MountTargetNotFound": case "com.amazonaws.efs#MountTargetNotFound": - response = { - ...(await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReplicationConfigurationsCommand = async ( @@ -2911,65 +2347,34 @@ const deserializeAws_restJson1DescribeReplicationConfigurationsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ReplicationNotFound": case "com.amazonaws.efs#ReplicationNotFound": - response = { - ...(await deserializeAws_restJson1ReplicationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ReplicationNotFoundResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.efs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTagsCommand = async ( @@ -3006,49 +2411,28 @@ const deserializeAws_restJson1DescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3081,57 +2465,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFound": case "com.amazonaws.efs#AccessPointNotFound": - response = { - ...(await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ModifyMountTargetSecurityGroupsCommand = async ( @@ -3156,73 +2514,37 @@ const deserializeAws_restJson1ModifyMountTargetSecurityGroupsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "IncorrectMountTargetState": case "com.amazonaws.efs#IncorrectMountTargetState": - response = { - ...(await deserializeAws_restJson1IncorrectMountTargetStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectMountTargetStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "MountTargetNotFound": case "com.amazonaws.efs#MountTargetNotFound": - response = { - ...(await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MountTargetNotFoundResponse(parsedOutput, context); case "SecurityGroupLimitExceeded": case "com.amazonaws.efs#SecurityGroupLimitExceeded": - response = { - ...(await deserializeAws_restJson1SecurityGroupLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SecurityGroupLimitExceededResponse(parsedOutput, context); case "SecurityGroupNotFound": case "com.amazonaws.efs#SecurityGroupNotFound": - response = { - ...(await deserializeAws_restJson1SecurityGroupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SecurityGroupNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountPreferencesCommand = async ( @@ -3251,41 +2573,25 @@ const deserializeAws_restJson1PutAccountPreferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutBackupPolicyCommand = async ( @@ -3314,65 +2620,34 @@ const deserializeAws_restJson1PutBackupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.efs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFileSystemPolicyCommand = async ( @@ -3405,65 +2680,34 @@ const deserializeAws_restJson1PutFileSystemPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "InvalidPolicyException": case "com.amazonaws.efs#InvalidPolicyException": - response = { - ...(await deserializeAws_restJson1InvalidPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPolicyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutLifecycleConfigurationCommand = async ( @@ -3492,57 +2736,31 @@ const deserializeAws_restJson1PutLifecycleConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3567,57 +2785,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFound": case "com.amazonaws.efs#AccessPointNotFound": - response = { - ...(await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3642,57 +2834,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFound": case "com.amazonaws.efs#AccessPointNotFound": - response = { - ...(await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessPointNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFileSystemCommand = async ( @@ -3785,95 +2951,47 @@ const deserializeAws_restJson1UpdateFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.efs#BadRequest": - response = { - ...(await deserializeAws_restJson1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.efs#FileSystemNotFound": - response = { - ...(await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FileSystemNotFoundResponse(parsedOutput, context); case "IncorrectFileSystemLifeCycleState": case "com.amazonaws.efs#IncorrectFileSystemLifeCycleState": - response = { - ...(await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse(parsedOutput, context); case "InsufficientThroughputCapacity": case "com.amazonaws.efs#InsufficientThroughputCapacity": - response = { - ...(await deserializeAws_restJson1InsufficientThroughputCapacityResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InsufficientThroughputCapacityResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.efs#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ThroughputLimitExceeded": case "com.amazonaws.efs#ThroughputLimitExceeded": - response = { - ...(await deserializeAws_restJson1ThroughputLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThroughputLimitExceededResponse(parsedOutput, context); case "TooManyRequests": case "com.amazonaws.efs#TooManyRequests": - response = { - ...(await deserializeAws_restJson1TooManyRequestsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessPointAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessPointAlreadyExists = { - name: "AccessPointAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - AccessPointId: undefined, - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.AccessPointId !== undefined && data.AccessPointId !== null) { contents.AccessPointId = __expectString(data.AccessPointId); @@ -3884,20 +3002,18 @@ const deserializeAws_restJson1AccessPointAlreadyExistsResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessPointAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AccessPointLimitExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessPointLimitExceeded = { - name: "AccessPointLimitExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -3905,20 +3021,18 @@ const deserializeAws_restJson1AccessPointLimitExceededResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessPointLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AccessPointNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessPointNotFound = { - name: "AccessPointNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -3926,20 +3040,18 @@ const deserializeAws_restJson1AccessPointNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessPointNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AvailabilityZonesMismatchResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AvailabilityZonesMismatch = { - name: "AvailabilityZonesMismatch", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -3947,20 +3059,18 @@ const deserializeAws_restJson1AvailabilityZonesMismatchResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AvailabilityZonesMismatch({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequest = { - name: "BadRequest", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -3968,20 +3078,18 @@ const deserializeAws_restJson1BadRequestResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequest({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DependencyTimeoutResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DependencyTimeout = { - name: "DependencyTimeout", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -3989,21 +3097,18 @@ const deserializeAws_restJson1DependencyTimeoutResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DependencyTimeout({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FileSystemAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FileSystemAlreadyExists = { - name: "FileSystemAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - FileSystemId: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4014,20 +3119,18 @@ const deserializeAws_restJson1FileSystemAlreadyExistsResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FileSystemAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FileSystemInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FileSystemInUse = { - name: "FileSystemInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4035,20 +3138,18 @@ const deserializeAws_restJson1FileSystemInUseResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FileSystemInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FileSystemLimitExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FileSystemLimitExceeded = { - name: "FileSystemLimitExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4056,20 +3157,18 @@ const deserializeAws_restJson1FileSystemLimitExceededResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FileSystemLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FileSystemNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FileSystemNotFound = { - name: "FileSystemNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4077,20 +3176,18 @@ const deserializeAws_restJson1FileSystemNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FileSystemNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IncorrectFileSystemLifeCycleState = { - name: "IncorrectFileSystemLifeCycleState", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4098,20 +3195,18 @@ const deserializeAws_restJson1IncorrectFileSystemLifeCycleStateResponse = async if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IncorrectFileSystemLifeCycleState({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IncorrectMountTargetStateResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IncorrectMountTargetState = { - name: "IncorrectMountTargetState", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4119,20 +3214,18 @@ const deserializeAws_restJson1IncorrectMountTargetStateResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IncorrectMountTargetState({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InsufficientThroughputCapacityResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InsufficientThroughputCapacity = { - name: "InsufficientThroughputCapacity", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4140,20 +3233,18 @@ const deserializeAws_restJson1InsufficientThroughputCapacityResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InsufficientThroughputCapacity({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4161,20 +3252,18 @@ const deserializeAws_restJson1InternalServerErrorResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidPolicyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidPolicyException = { - name: "InvalidPolicyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4182,20 +3271,18 @@ const deserializeAws_restJson1InvalidPolicyExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidPolicyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IpAddressInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IpAddressInUse = { - name: "IpAddressInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4203,20 +3290,18 @@ const deserializeAws_restJson1IpAddressInUseResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IpAddressInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MountTargetConflictResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MountTargetConflict = { - name: "MountTargetConflict", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4224,20 +3309,18 @@ const deserializeAws_restJson1MountTargetConflictResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new MountTargetConflict({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MountTargetNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MountTargetNotFound = { - name: "MountTargetNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4245,20 +3328,18 @@ const deserializeAws_restJson1MountTargetNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new MountTargetNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NetworkInterfaceLimitExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NetworkInterfaceLimitExceeded = { - name: "NetworkInterfaceLimitExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4266,20 +3347,18 @@ const deserializeAws_restJson1NetworkInterfaceLimitExceededResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NetworkInterfaceLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NoFreeAddressesInSubnetResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoFreeAddressesInSubnet = { - name: "NoFreeAddressesInSubnet", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4287,20 +3366,18 @@ const deserializeAws_restJson1NoFreeAddressesInSubnetResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NoFreeAddressesInSubnet({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PolicyNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PolicyNotFound = { - name: "PolicyNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4308,20 +3385,18 @@ const deserializeAws_restJson1PolicyNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new PolicyNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ReplicationNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ReplicationNotFound = { - name: "ReplicationNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4329,20 +3404,18 @@ const deserializeAws_restJson1ReplicationNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ReplicationNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SecurityGroupLimitExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SecurityGroupLimitExceeded = { - name: "SecurityGroupLimitExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4350,20 +3423,18 @@ const deserializeAws_restJson1SecurityGroupLimitExceededResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new SecurityGroupLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SecurityGroupNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SecurityGroupNotFound = { - name: "SecurityGroupNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4371,20 +3442,18 @@ const deserializeAws_restJson1SecurityGroupNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new SecurityGroupNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SubnetNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SubnetNotFound = { - name: "SubnetNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4392,20 +3461,18 @@ const deserializeAws_restJson1SubnetNotFoundResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new SubnetNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThroughputLimitExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThroughputLimitExceeded = { - name: "ThroughputLimitExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4413,20 +3480,18 @@ const deserializeAws_restJson1ThroughputLimitExceededResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThroughputLimitExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequests = { - name: "TooManyRequests", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4434,20 +3499,18 @@ const deserializeAws_restJson1TooManyRequestsResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequests({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedAvailabilityZoneResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedAvailabilityZone = { - name: "UnsupportedAvailabilityZone", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4455,20 +3518,18 @@ const deserializeAws_restJson1UnsupportedAvailabilityZoneResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnsupportedAvailabilityZone({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorCode !== undefined && data.ErrorCode !== null) { contents.ErrorCode = __expectString(data.ErrorCode); @@ -4476,7 +3537,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1BackupPolicy = (input: BackupPolicy, context: __SerdeContext): any => { diff --git a/clients/client-eks/src/index.ts b/clients/client-eks/src/index.ts index 4a92779f032be..b1f4d3df78f62 100644 --- a/clients/client-eks/src/index.ts +++ b/clients/client-eks/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { EKSServiceException } from "./models/EKSServiceException"; diff --git a/clients/client-eks/src/models/EKSServiceException.ts b/clients/client-eks/src/models/EKSServiceException.ts new file mode 100644 index 0000000000000..e73e1df8497c4 --- /dev/null +++ b/clients/client-eks/src/models/EKSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EKS service. + */ +export class EKSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EKSServiceException.prototype); + } +} diff --git a/clients/client-eks/src/models/models_0.ts b/clients/client-eks/src/models/models_0.ts index 98c24ce71af57..a53cddc24e9ac 100644 --- a/clients/client-eks/src/models/models_0.ts +++ b/clients/client-eks/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EKSServiceException as __BaseException } from "./EKSServiceException"; /** *

You don't have permissions to perform the requested operation. The user or role that @@ -6,10 +9,20 @@ import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException * attached that grants the required permissions. For more information, see Access * Management in the IAM User Guide.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AddonIssueCode { @@ -539,9 +552,9 @@ export namespace AssociateEncryptionConfigResponse { * action or resource on behalf of a user that doesn't have permissions to use the action * or resource or specifying an identifier that is not valid.

*/ -export interface ClientException extends __SmithyException, $MetadataBearer { - name: "ClientException"; - $fault: "client"; +export class ClientException extends __BaseException { + readonly name: "ClientException" = "ClientException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -553,16 +566,29 @@ export interface ClientException extends __SmithyException, $MetadataBearer { nodegroupName?: string; addonName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.addonName = opts.addonName; + } } /** *

The specified parameter is invalid. Review the available parameters for the API * request.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -579,16 +605,30 @@ export interface InvalidParameterException extends __SmithyException, $MetadataB fargateProfileName?: string; addonName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.fargateProfileName = opts.fargateProfileName; + this.addonName = opts.addonName; + } } /** *

The request is invalid given the state of the cluster. Check the state of the cluster * and the associated operations.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -600,15 +640,28 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea nodegroupName?: string; addonName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.addonName = opts.addonName; + } } /** *

The specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -620,7 +673,20 @@ export interface ResourceInUseException extends __SmithyException, $MetadataBear nodegroupName?: string; addonName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.addonName = opts.addonName; + } } /** @@ -629,9 +695,9 @@ export interface ResourceInUseException extends __SmithyException, $MetadataBear * ListNodegroups. Amazon EKS clusters and node groups are * Region-specific.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -648,15 +714,29 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB fargateProfileName?: string; addonName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.fargateProfileName = opts.fargateProfileName; + this.addonName = opts.addonName; + } } /** *

These errors are usually caused by a server-side issue.

*/ -export interface ServerException extends __SmithyException, $MetadataBearer { - name: "ServerException"; - $fault: "server"; +export class ServerException extends __BaseException { + readonly name: "ServerException" = "ServerException"; + readonly $fault: "server" = "server"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -668,7 +748,20 @@ export interface ServerException extends __SmithyException, $MetadataBearer { nodegroupName?: string; addonName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.addonName = opts.addonName; + } } /** @@ -1530,9 +1623,9 @@ export namespace CreateClusterResponse { /** *

You have encountered a service limit on the specified resource.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -1543,16 +1636,38 @@ export interface ResourceLimitExceededException extends __SmithyException, $Meta */ nodegroupName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + } } /** *

The service is unavailable. Back off and retry the operation.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** @@ -1561,10 +1676,9 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat * Availability Zones for your account, from which you can choose subnets for your * cluster.

*/ -export interface UnsupportedAvailabilityZoneException extends __SmithyException, $MetadataBearer { - name: "UnsupportedAvailabilityZoneException"; - $fault: "client"; - message?: string; +export class UnsupportedAvailabilityZoneException extends __BaseException { + readonly name: "UnsupportedAvailabilityZoneException" = "UnsupportedAvailabilityZoneException"; + readonly $fault: "client" = "client"; /** *

The Amazon EKS cluster associated with the exception.

*/ @@ -1580,6 +1694,21 @@ export interface UnsupportedAvailabilityZoneException extends __SmithyException, * Availability Zones for your cluster.

*/ validZones?: string[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedAvailabilityZoneException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedAvailabilityZoneException.prototype); + this.clusterName = opts.clusterName; + this.nodegroupName = opts.nodegroupName; + this.validZones = opts.validZones; + } } /** @@ -3464,10 +3593,20 @@ export namespace ListNodegroupsResponse { *

This exception is thrown if the request contains a semantic error. The precise meaning * will depend on the API, and will be documented in the error message.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } export interface ListTagsForResourceRequest { @@ -3507,10 +3646,20 @@ export namespace ListTagsForResourceResponse { *

A service resource associated with the request could not be found. Clients should not * retry such requests.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } export interface ListUpdatesRequest { @@ -3675,10 +3824,20 @@ export namespace RegisterClusterResponse { /** *

Required resources (such as Service Linked Roles) were created and are still propagating. Retry later.

*/ -export interface ResourcePropagationDelayException extends __SmithyException, $MetadataBearer { - name: "ResourcePropagationDelayException"; - $fault: "client"; - message?: string; +export class ResourcePropagationDelayException extends __BaseException { + readonly name: "ResourcePropagationDelayException" = "ResourcePropagationDelayException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourcePropagationDelayException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourcePropagationDelayException.prototype); + } } export interface TagResourceRequest { diff --git a/clients/client-eks/src/protocols/Aws_restJson1.ts b/clients/client-eks/src/protocols/Aws_restJson1.ts index 10e255fb81081..284b63cd48d68 100644 --- a/clients/client-eks/src/protocols/Aws_restJson1.ts +++ b/clients/client-eks/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -97,6 +96,7 @@ import { UpdateNodegroupVersionCommandInput, UpdateNodegroupVersionCommandOutput, } from "../commands/UpdateNodegroupVersionCommand"; +import { EKSServiceException as __BaseException } from "../models/EKSServiceException"; import { AccessDeniedException, Addon, @@ -1479,73 +1479,37 @@ const deserializeAws_restJson1AssociateEncryptionConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateIdentityProviderConfigCommand = async ( @@ -1578,73 +1542,37 @@ const deserializeAws_restJson1AssociateIdentityProviderConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAddonCommand = async ( @@ -1673,73 +1601,37 @@ const deserializeAws_restJson1CreateAddonCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateClusterCommand = async ( @@ -1768,81 +1660,40 @@ const deserializeAws_restJson1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.eks#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnsupportedAvailabilityZoneException": case "com.amazonaws.eks#UnsupportedAvailabilityZoneException": - response = { - ...(await deserializeAws_restJson1UnsupportedAvailabilityZoneExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedAvailabilityZoneExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFargateProfileCommand = async ( @@ -1871,73 +1722,37 @@ const deserializeAws_restJson1CreateFargateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.eks#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "UnsupportedAvailabilityZoneException": case "com.amazonaws.eks#UnsupportedAvailabilityZoneException": - response = { - ...(await deserializeAws_restJson1UnsupportedAvailabilityZoneExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedAvailabilityZoneExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNodegroupCommand = async ( @@ -1966,81 +1781,40 @@ const deserializeAws_restJson1CreateNodegroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.eks#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAddonCommand = async ( @@ -2069,65 +1843,34 @@ const deserializeAws_restJson1DeleteAddonCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteClusterCommand = async ( @@ -2156,65 +1899,34 @@ const deserializeAws_restJson1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFargateProfileCommand = async ( @@ -2243,57 +1955,31 @@ const deserializeAws_restJson1DeleteFargateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteNodegroupCommand = async ( @@ -2322,73 +2008,37 @@ const deserializeAws_restJson1DeleteNodegroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterClusterCommand = async ( @@ -2417,73 +2067,37 @@ const deserializeAws_restJson1DeregisterClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.eks#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAddonCommand = async ( @@ -2512,65 +2126,34 @@ const deserializeAws_restJson1DescribeAddonCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAddonVersionsCommand = async ( @@ -2603,49 +2186,28 @@ const deserializeAws_restJson1DescribeAddonVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeClusterCommand = async ( @@ -2674,57 +2236,31 @@ const deserializeAws_restJson1DescribeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFargateProfileCommand = async ( @@ -2753,57 +2289,31 @@ const deserializeAws_restJson1DescribeFargateProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIdentityProviderConfigCommand = async ( @@ -2835,65 +2345,34 @@ const deserializeAws_restJson1DescribeIdentityProviderConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeNodegroupCommand = async ( @@ -2922,65 +2401,34 @@ const deserializeAws_restJson1DescribeNodegroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUpdateCommand = async ( @@ -3009,57 +2457,31 @@ const deserializeAws_restJson1DescribeUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateIdentityProviderConfigCommand = async ( @@ -3088,73 +2510,37 @@ const deserializeAws_restJson1DisassociateIdentityProviderConfigCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAddonsCommand = async ( @@ -3187,65 +2573,34 @@ const deserializeAws_restJson1ListAddonsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClustersCommand = async ( @@ -3278,57 +2633,31 @@ const deserializeAws_restJson1ListClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFargateProfilesCommand = async ( @@ -3361,57 +2690,31 @@ const deserializeAws_restJson1ListFargateProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIdentityProviderConfigsCommand = async ( @@ -3447,65 +2750,34 @@ const deserializeAws_restJson1ListIdentityProviderConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNodegroupsCommand = async ( @@ -3538,65 +2810,34 @@ const deserializeAws_restJson1ListNodegroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3625,41 +2866,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.eks#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.eks#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUpdatesCommand = async ( @@ -3692,57 +2917,31 @@ const deserializeAws_restJson1ListUpdatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterClusterCommand = async ( @@ -3771,89 +2970,43 @@ const deserializeAws_restJson1RegisterClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.eks#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.eks#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourcePropagationDelayException": case "com.amazonaws.eks#ResourcePropagationDelayException": - response = { - ...(await deserializeAws_restJson1ResourcePropagationDelayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePropagationDelayExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.eks#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3878,41 +3031,25 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.eks#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.eks#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3937,41 +3074,25 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.eks#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.eks#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAddonCommand = async ( @@ -4000,73 +3121,37 @@ const deserializeAws_restJson1UpdateAddonCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateClusterConfigCommand = async ( @@ -4095,73 +3180,37 @@ const deserializeAws_restJson1UpdateClusterConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateClusterVersionCommand = async ( @@ -4190,73 +3239,37 @@ const deserializeAws_restJson1UpdateClusterVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNodegroupConfigCommand = async ( @@ -4285,73 +3298,37 @@ const deserializeAws_restJson1UpdateNodegroupConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNodegroupVersionCommand = async ( @@ -4380,122 +3357,76 @@ const deserializeAws_restJson1UpdateNodegroupVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.eks#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.eks#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.eks#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.eks#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eks#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerException": case "com.amazonaws.eks#ServerException": - response = { - ...(await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientException = { - name: "ClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - addonName: undefined, - clusterName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.addonName !== undefined && data.addonName !== null) { contents.addonName = __expectString(data.addonName); @@ -4509,23 +3440,18 @@ const deserializeAws_restJson1ClientExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new ClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - addonName: undefined, - clusterName: undefined, - fargateProfileName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.addonName !== undefined && data.addonName !== null) { contents.addonName = __expectString(data.addonName); @@ -4542,22 +3468,18 @@ const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - addonName: undefined, - clusterName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.addonName !== undefined && data.addonName !== null) { contents.addonName = __expectString(data.addonName); @@ -4571,39 +3493,34 @@ const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - addonName: undefined, - clusterName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.addonName !== undefined && data.addonName !== null) { contents.addonName = __expectString(data.addonName); @@ -4617,21 +3534,18 @@ const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - clusterName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.clusterName !== undefined && data.clusterName !== null) { contents.clusterName = __expectString(data.clusterName); @@ -4642,23 +3556,18 @@ const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new ResourceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - addonName: undefined, - clusterName: undefined, - fargateProfileName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.addonName !== undefined && data.addonName !== null) { contents.addonName = __expectString(data.addonName); @@ -4675,39 +3584,34 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourcePropagationDelayExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourcePropagationDelayException = { - name: "ResourcePropagationDelayException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourcePropagationDelayException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServerException = { - name: "ServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - addonName: undefined, - clusterName: undefined, - message: undefined, - nodegroupName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.addonName !== undefined && data.addonName !== null) { contents.addonName = __expectString(data.addonName); @@ -4721,39 +3625,34 @@ const deserializeAws_restJson1ServerExceptionResponse = async ( if (data.nodegroupName !== undefined && data.nodegroupName !== null) { contents.nodegroupName = __expectString(data.nodegroupName); } - return contents; + const exception = new ServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedAvailabilityZoneExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedAvailabilityZoneException = { - name: "UnsupportedAvailabilityZoneException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - clusterName: undefined, - message: undefined, - nodegroupName: undefined, - validZones: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.clusterName !== undefined && data.clusterName !== null) { contents.clusterName = __expectString(data.clusterName); @@ -4767,7 +3666,11 @@ const deserializeAws_restJson1UnsupportedAvailabilityZoneExceptionResponse = asy if (data.validZones !== undefined && data.validZones !== null) { contents.validZones = deserializeAws_restJson1StringList(data.validZones, context); } - return contents; + const exception = new UnsupportedAvailabilityZoneException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ConnectorConfigRequest = (input: ConnectorConfigRequest, context: __SerdeContext): any => { diff --git a/clients/client-elastic-beanstalk/src/index.ts b/clients/client-elastic-beanstalk/src/index.ts index 86113c5d1ee2d..e9eb7f184704f 100644 --- a/clients/client-elastic-beanstalk/src/index.ts +++ b/clients/client-elastic-beanstalk/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ElasticBeanstalkServiceException } from "./models/ElasticBeanstalkServiceException"; diff --git a/clients/client-elastic-beanstalk/src/models/ElasticBeanstalkServiceException.ts b/clients/client-elastic-beanstalk/src/models/ElasticBeanstalkServiceException.ts new file mode 100644 index 0000000000000..326957da346dc --- /dev/null +++ b/clients/client-elastic-beanstalk/src/models/ElasticBeanstalkServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElasticBeanstalk service. + */ +export class ElasticBeanstalkServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElasticBeanstalkServiceException.prototype); + } +} diff --git a/clients/client-elastic-beanstalk/src/models/models_0.ts b/clients/client-elastic-beanstalk/src/models/models_0.ts index 3e0853f35ca6c..e22c5d193f01c 100644 --- a/clients/client-elastic-beanstalk/src/models/models_0.ts +++ b/clients/client-elastic-beanstalk/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElasticBeanstalkServiceException as __BaseException } from "./ElasticBeanstalkServiceException"; /** *

@@ -30,13 +33,20 @@ export namespace AbortEnvironmentUpdateMessage { *

The specified account does not have sufficient privileges for one or more AWS * services.

*/ -export interface InsufficientPrivilegesException extends __SmithyException, $MetadataBearer { - name: "InsufficientPrivilegesException"; - $fault: "client"; +export class InsufficientPrivilegesException extends __BaseException { + readonly name: "InsufficientPrivilegesException" = "InsufficientPrivilegesException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientPrivilegesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientPrivilegesException.prototype); + } } export type ActionHistoryStatus = "Completed" | "Failed" | "Unknown"; @@ -734,25 +744,39 @@ export namespace ApplyEnvironmentManagedActionResult { /** *

A generic service exception has occurred.

*/ -export interface ElasticBeanstalkServiceException extends __SmithyException, $MetadataBearer { - name: "ElasticBeanstalkServiceException"; - $fault: "client"; +export class ElasticBeanstalkServiceException extends __BaseException { + readonly name: "ElasticBeanstalkServiceException" = "ElasticBeanstalkServiceException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ElasticBeanstalkServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ElasticBeanstalkServiceException.prototype); + } } /** *

Cannot modify the managed action in its current state.

*/ -export interface ManagedActionInvalidStateException extends __SmithyException, $MetadataBearer { - name: "ManagedActionInvalidStateException"; - $fault: "client"; +export class ManagedActionInvalidStateException extends __BaseException { + readonly name: "ManagedActionInvalidStateException" = "ManagedActionInvalidStateException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ManagedActionInvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ManagedActionInvalidStateException.prototype); + } } /** @@ -1298,13 +1322,20 @@ export namespace EnvironmentDescriptionsMessage { /** *

The specified account has reached its limit of environments.

*/ -export interface TooManyEnvironmentsException extends __SmithyException, $MetadataBearer { - name: "TooManyEnvironmentsException"; - $fault: "client"; +export class TooManyEnvironmentsException extends __BaseException { + readonly name: "TooManyEnvironmentsException" = "TooManyEnvironmentsException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyEnvironmentsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyEnvironmentsException.prototype); + } } /** @@ -1371,25 +1402,39 @@ export namespace CreateApplicationMessage { /** *

The specified account has reached its limit of applications.

*/ -export interface TooManyApplicationsException extends __SmithyException, $MetadataBearer { - name: "TooManyApplicationsException"; - $fault: "client"; +export class TooManyApplicationsException extends __BaseException { + readonly name: "TooManyApplicationsException" = "TooManyApplicationsException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyApplicationsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyApplicationsException.prototype); + } } /** *

AWS CodeBuild is not available in the specified region.

*/ -export interface CodeBuildNotInServiceRegionException extends __SmithyException, $MetadataBearer { - name: "CodeBuildNotInServiceRegionException"; - $fault: "client"; +export class CodeBuildNotInServiceRegionException extends __BaseException { + readonly name: "CodeBuildNotInServiceRegionException" = "CodeBuildNotInServiceRegionException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeBuildNotInServiceRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeBuildNotInServiceRegionException.prototype); + } } export enum ComputeType { @@ -1562,25 +1607,39 @@ export namespace CreateApplicationVersionMessage { * * */ -export interface S3LocationNotInServiceRegionException extends __SmithyException, $MetadataBearer { - name: "S3LocationNotInServiceRegionException"; - $fault: "client"; +export class S3LocationNotInServiceRegionException extends __BaseException { + readonly name: "S3LocationNotInServiceRegionException" = "S3LocationNotInServiceRegionException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "S3LocationNotInServiceRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, S3LocationNotInServiceRegionException.prototype); + } } /** *

The specified account has reached its limit of application versions.

*/ -export interface TooManyApplicationVersionsException extends __SmithyException, $MetadataBearer { - name: "TooManyApplicationVersionsException"; - $fault: "client"; +export class TooManyApplicationVersionsException extends __BaseException { + readonly name: "TooManyApplicationVersionsException" = "TooManyApplicationVersionsException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyApplicationVersionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyApplicationVersionsException.prototype); + } } export type ConfigurationDeploymentStatus = "deployed" | "failed" | "pending"; @@ -1833,25 +1892,39 @@ export namespace CreateConfigurationTemplateMessage { /** *

The specified account has reached its limit of Amazon S3 buckets.

*/ -export interface TooManyBucketsException extends __SmithyException, $MetadataBearer { - name: "TooManyBucketsException"; - $fault: "client"; +export class TooManyBucketsException extends __BaseException { + readonly name: "TooManyBucketsException" = "TooManyBucketsException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyBucketsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyBucketsException.prototype); + } } /** *

The specified account has reached its limit of configuration templates.

*/ -export interface TooManyConfigurationTemplatesException extends __SmithyException, $MetadataBearer { - name: "TooManyConfigurationTemplatesException"; - $fault: "client"; +export class TooManyConfigurationTemplatesException extends __BaseException { + readonly name: "TooManyConfigurationTemplatesException" = "TooManyConfigurationTemplatesException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyConfigurationTemplatesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyConfigurationTemplatesException.prototype); + } } /** @@ -2179,13 +2252,20 @@ export namespace CreatePlatformVersionResult { /** *

You have exceeded the maximum number of allowed platforms associated with the account.

*/ -export interface TooManyPlatformsException extends __SmithyException, $MetadataBearer { - name: "TooManyPlatformsException"; - $fault: "client"; +export class TooManyPlatformsException extends __BaseException { + readonly name: "TooManyPlatformsException" = "TooManyPlatformsException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyPlatformsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyPlatformsException.prototype); + } } /** @@ -2210,13 +2290,20 @@ export namespace CreateStorageLocationResultMessage { /** *

The specified account does not have a subscription to Amazon S3.

*/ -export interface S3SubscriptionRequiredException extends __SmithyException, $MetadataBearer { - name: "S3SubscriptionRequiredException"; - $fault: "client"; +export class S3SubscriptionRequiredException extends __BaseException { + readonly name: "S3SubscriptionRequiredException" = "S3SubscriptionRequiredException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "S3SubscriptionRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, S3SubscriptionRequiredException.prototype); + } } /** @@ -2248,13 +2335,20 @@ export namespace DeleteApplicationMessage { *

Unable to perform the specified operation because another operation that effects an * element in this activity is already in progress.

*/ -export interface OperationInProgressException extends __SmithyException, $MetadataBearer { - name: "OperationInProgressException"; - $fault: "client"; +export class OperationInProgressException extends __BaseException { + readonly name: "OperationInProgressException" = "OperationInProgressException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationInProgressException.prototype); + } } /** @@ -2292,13 +2386,20 @@ export namespace DeleteApplicationVersionMessage { *

Unable to delete the Amazon S3 source bundle associated with the application version. * The application version was deleted successfully.

*/ -export interface SourceBundleDeletionException extends __SmithyException, $MetadataBearer { - name: "SourceBundleDeletionException"; - $fault: "client"; +export class SourceBundleDeletionException extends __BaseException { + readonly name: "SourceBundleDeletionException" = "SourceBundleDeletionException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceBundleDeletionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceBundleDeletionException.prototype); + } } /** @@ -2384,13 +2485,20 @@ export namespace DeletePlatformVersionResult { /** *

You cannot delete the platform version because there are still environments running on it.

*/ -export interface PlatformVersionStillReferencedException extends __SmithyException, $MetadataBearer { - name: "PlatformVersionStillReferencedException"; - $fault: "client"; +export class PlatformVersionStillReferencedException extends __BaseException { + readonly name: "PlatformVersionStillReferencedException" = "PlatformVersionStillReferencedException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PlatformVersionStillReferencedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PlatformVersionStillReferencedException.prototype); + } } /** @@ -3002,13 +3110,20 @@ export namespace DescribeEnvironmentHealthResult { *

One or more input parameters is not valid. Please correct the input parameters and try * the operation again.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** @@ -4608,13 +4723,20 @@ export namespace ListTagsForResourceMessage { /** *

A resource doesn't exist for the specified Amazon Resource Name (ARN).

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface ResourceTagsDescriptionMessage { @@ -4641,13 +4763,20 @@ export namespace ResourceTagsDescriptionMessage { /** *

The type of the specified Amazon Resource Name (ARN) isn't supported for this operation.

*/ -export interface ResourceTypeNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ResourceTypeNotSupportedException"; - $fault: "client"; +export class ResourceTypeNotSupportedException extends __BaseException { + readonly name: "ResourceTypeNotSupportedException" = "ResourceTypeNotSupportedException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceTypeNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceTypeNotSupportedException.prototype); + } } /** @@ -5188,13 +5317,20 @@ export namespace UpdateEnvironmentMessage { *

To calculate this, the operation considers both the number of tags the resource already has * and the tags this operation would add if it succeeded.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } export interface UpdateTagsForResourceMessage { diff --git a/clients/client-elastic-beanstalk/src/protocols/Aws_query.ts b/clients/client-elastic-beanstalk/src/protocols/Aws_query.ts index fc34533c67972..88e5ed17c96f2 100644 --- a/clients/client-elastic-beanstalk/src/protocols/Aws_query.ts +++ b/clients/client-elastic-beanstalk/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -186,6 +185,7 @@ import { ValidateConfigurationSettingsCommandInput, ValidateConfigurationSettingsCommandOutput, } from "../commands/ValidateConfigurationSettingsCommand"; +import { ElasticBeanstalkServiceException as __BaseException } from "../models/ElasticBeanstalkServiceException"; import { AbortEnvironmentUpdateMessage, ApplicationDescription, @@ -1104,33 +1104,22 @@ const deserializeAws_queryAbortEnvironmentUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryApplyEnvironmentManagedActionCommand = async ( @@ -1158,41 +1147,25 @@ const deserializeAws_queryApplyEnvironmentManagedActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "ManagedActionInvalidStateException": case "com.amazonaws.elasticbeanstalk#ManagedActionInvalidStateException": - response = { - ...(await deserializeAws_queryManagedActionInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryManagedActionInvalidStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAssociateEnvironmentOperationsRoleCommand = async ( @@ -1217,33 +1190,22 @@ const deserializeAws_queryAssociateEnvironmentOperationsRoleCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCheckDNSAvailabilityCommand = async ( @@ -1271,25 +1233,19 @@ const deserializeAws_queryCheckDNSAvailabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryComposeEnvironmentsCommand = async ( @@ -1317,41 +1273,25 @@ const deserializeAws_queryComposeEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyEnvironmentsException": case "com.amazonaws.elasticbeanstalk#TooManyEnvironmentsException": - response = { - ...(await deserializeAws_queryTooManyEnvironmentsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyEnvironmentsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateApplicationCommand = async ( @@ -1379,33 +1319,22 @@ const deserializeAws_queryCreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TooManyApplicationsException": case "com.amazonaws.elasticbeanstalk#TooManyApplicationsException": - response = { - ...(await deserializeAws_queryTooManyApplicationsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyApplicationsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateApplicationVersionCommand = async ( @@ -1433,65 +1362,34 @@ const deserializeAws_queryCreateApplicationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeBuildNotInServiceRegionException": case "com.amazonaws.elasticbeanstalk#CodeBuildNotInServiceRegionException": - response = { - ...(await deserializeAws_queryCodeBuildNotInServiceRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCodeBuildNotInServiceRegionExceptionResponse(parsedOutput, context); case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "S3LocationNotInServiceRegionException": case "com.amazonaws.elasticbeanstalk#S3LocationNotInServiceRegionException": - response = { - ...(await deserializeAws_queryS3LocationNotInServiceRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryS3LocationNotInServiceRegionExceptionResponse(parsedOutput, context); case "TooManyApplicationsException": case "com.amazonaws.elasticbeanstalk#TooManyApplicationsException": - response = { - ...(await deserializeAws_queryTooManyApplicationsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyApplicationsExceptionResponse(parsedOutput, context); case "TooManyApplicationVersionsException": case "com.amazonaws.elasticbeanstalk#TooManyApplicationVersionsException": - response = { - ...(await deserializeAws_queryTooManyApplicationVersionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyApplicationVersionsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateConfigurationTemplateCommand = async ( @@ -1519,49 +1417,28 @@ const deserializeAws_queryCreateConfigurationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); case "TooManyConfigurationTemplatesException": case "com.amazonaws.elasticbeanstalk#TooManyConfigurationTemplatesException": - response = { - ...(await deserializeAws_queryTooManyConfigurationTemplatesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyConfigurationTemplatesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateEnvironmentCommand = async ( @@ -1589,41 +1466,25 @@ const deserializeAws_queryCreateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyEnvironmentsException": case "com.amazonaws.elasticbeanstalk#TooManyEnvironmentsException": - response = { - ...(await deserializeAws_queryTooManyEnvironmentsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyEnvironmentsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreatePlatformVersionCommand = async ( @@ -1651,49 +1512,28 @@ const deserializeAws_queryCreatePlatformVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyPlatformsException": case "com.amazonaws.elasticbeanstalk#TooManyPlatformsException": - response = { - ...(await deserializeAws_queryTooManyPlatformsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyPlatformsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateStorageLocationCommand = async ( @@ -1721,49 +1561,28 @@ const deserializeAws_queryCreateStorageLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "S3SubscriptionRequiredException": case "com.amazonaws.elasticbeanstalk#S3SubscriptionRequiredException": - response = { - ...(await deserializeAws_queryS3SubscriptionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryS3SubscriptionRequiredExceptionResponse(parsedOutput, context); case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteApplicationCommand = async ( @@ -1788,33 +1607,22 @@ const deserializeAws_queryDeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationInProgressException": case "com.amazonaws.elasticbeanstalk#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteApplicationVersionCommand = async ( @@ -1839,57 +1647,31 @@ const deserializeAws_queryDeleteApplicationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.elasticbeanstalk#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "S3LocationNotInServiceRegionException": case "com.amazonaws.elasticbeanstalk#S3LocationNotInServiceRegionException": - response = { - ...(await deserializeAws_queryS3LocationNotInServiceRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryS3LocationNotInServiceRegionExceptionResponse(parsedOutput, context); case "SourceBundleDeletionException": case "com.amazonaws.elasticbeanstalk#SourceBundleDeletionException": - response = { - ...(await deserializeAws_querySourceBundleDeletionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceBundleDeletionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteConfigurationTemplateCommand = async ( @@ -1914,33 +1696,22 @@ const deserializeAws_queryDeleteConfigurationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationInProgressException": case "com.amazonaws.elasticbeanstalk#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEnvironmentConfigurationCommand = async ( @@ -1965,25 +1736,19 @@ const deserializeAws_queryDeleteEnvironmentConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeletePlatformVersionCommand = async ( @@ -2011,57 +1776,31 @@ const deserializeAws_queryDeletePlatformVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.elasticbeanstalk#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "PlatformVersionStillReferencedException": case "com.amazonaws.elasticbeanstalk#PlatformVersionStillReferencedException": - response = { - ...(await deserializeAws_queryPlatformVersionStillReferencedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPlatformVersionStillReferencedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountAttributesCommand = async ( @@ -2089,33 +1828,22 @@ const deserializeAws_queryDescribeAccountAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeApplicationsCommand = async ( @@ -2143,25 +1871,19 @@ const deserializeAws_queryDescribeApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeApplicationVersionsCommand = async ( @@ -2189,25 +1911,19 @@ const deserializeAws_queryDescribeApplicationVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeConfigurationOptionsCommand = async ( @@ -2235,33 +1951,22 @@ const deserializeAws_queryDescribeConfigurationOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeConfigurationSettingsCommand = async ( @@ -2289,33 +1994,22 @@ const deserializeAws_queryDescribeConfigurationSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEnvironmentHealthCommand = async ( @@ -2343,41 +2037,25 @@ const deserializeAws_queryDescribeEnvironmentHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.elasticbeanstalk#InvalidRequestException": - response = { - ...(await deserializeAws_queryInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEnvironmentManagedActionHistoryCommand = async ( @@ -2408,33 +2086,22 @@ const deserializeAws_queryDescribeEnvironmentManagedActionHistoryCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEnvironmentManagedActionsCommand = async ( @@ -2465,33 +2132,22 @@ const deserializeAws_queryDescribeEnvironmentManagedActionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEnvironmentResourcesCommand = async ( @@ -2522,33 +2178,22 @@ const deserializeAws_queryDescribeEnvironmentResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEnvironmentsCommand = async ( @@ -2576,25 +2221,19 @@ const deserializeAws_queryDescribeEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventsCommand = async ( @@ -2622,25 +2261,19 @@ const deserializeAws_queryDescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeInstancesHealthCommand = async ( @@ -2668,41 +2301,25 @@ const deserializeAws_queryDescribeInstancesHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.elasticbeanstalk#InvalidRequestException": - response = { - ...(await deserializeAws_queryInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePlatformVersionCommand = async ( @@ -2730,41 +2347,25 @@ const deserializeAws_queryDescribePlatformVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisassociateEnvironmentOperationsRoleCommand = async ( @@ -2789,33 +2390,22 @@ const deserializeAws_queryDisassociateEnvironmentOperationsRoleCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAvailableSolutionStacksCommand = async ( @@ -2846,25 +2436,19 @@ const deserializeAws_queryListAvailableSolutionStacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPlatformBranchesCommand = async ( @@ -2892,25 +2476,19 @@ const deserializeAws_queryListPlatformBranchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPlatformVersionsCommand = async ( @@ -2938,41 +2516,25 @@ const deserializeAws_queryListPlatformVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ElasticBeanstalkServiceException": case "com.amazonaws.elasticbeanstalk#ElasticBeanstalkServiceException": - response = { - ...(await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryElasticBeanstalkServiceExceptionResponse(parsedOutput, context); case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -3000,49 +2562,28 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticbeanstalk#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceTypeNotSupportedException": case "com.amazonaws.elasticbeanstalk#ResourceTypeNotSupportedException": - response = { - ...(await deserializeAws_queryResourceTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceTypeNotSupportedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebuildEnvironmentCommand = async ( @@ -3067,33 +2608,22 @@ const deserializeAws_queryRebuildEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRequestEnvironmentInfoCommand = async ( @@ -3118,25 +2648,19 @@ const deserializeAws_queryRequestEnvironmentInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestartAppServerCommand = async ( @@ -3161,25 +2685,19 @@ const deserializeAws_queryRestartAppServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRetrieveEnvironmentInfoCommand = async ( @@ -3207,25 +2725,19 @@ const deserializeAws_queryRetrieveEnvironmentInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySwapEnvironmentCNAMEsCommand = async ( @@ -3250,25 +2762,19 @@ const deserializeAws_querySwapEnvironmentCNAMEsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTerminateEnvironmentCommand = async ( @@ -3296,33 +2802,22 @@ const deserializeAws_queryTerminateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateApplicationCommand = async ( @@ -3350,25 +2845,19 @@ const deserializeAws_queryUpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateApplicationResourceLifecycleCommand = async ( @@ -3399,33 +2888,22 @@ const deserializeAws_queryUpdateApplicationResourceLifecycleCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateApplicationVersionCommand = async ( @@ -3453,25 +2931,19 @@ const deserializeAws_queryUpdateApplicationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateConfigurationTemplateCommand = async ( @@ -3499,41 +2971,25 @@ const deserializeAws_queryUpdateConfigurationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateEnvironmentCommand = async ( @@ -3561,41 +3017,25 @@ const deserializeAws_queryUpdateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateTagsForResourceCommand = async ( @@ -3620,65 +3060,34 @@ const deserializeAws_queryUpdateTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.elasticbeanstalk#OperationInProgressException": - response = { - ...(await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticbeanstalk#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceTypeNotSupportedException": case "com.amazonaws.elasticbeanstalk#ResourceTypeNotSupportedException": - response = { - ...(await deserializeAws_queryResourceTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceTypeNotSupportedExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticbeanstalk#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryValidateConfigurationSettingsCommand = async ( @@ -3709,41 +3118,25 @@ const deserializeAws_queryValidateConfigurationSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientPrivilegesException": case "com.amazonaws.elasticbeanstalk#InsufficientPrivilegesException": - response = { - ...(await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientPrivilegesExceptionResponse(parsedOutput, context); case "TooManyBucketsException": case "com.amazonaws.elasticbeanstalk#TooManyBucketsException": - response = { - ...(await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyBucketsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryCodeBuildNotInServiceRegionExceptionResponse = async ( @@ -3752,13 +3145,11 @@ const deserializeAws_queryCodeBuildNotInServiceRegionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCodeBuildNotInServiceRegionException(body.Error, context); - const contents: CodeBuildNotInServiceRegionException = { - name: "CodeBuildNotInServiceRegionException", - $fault: "client", + const exception = new CodeBuildNotInServiceRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryElasticBeanstalkServiceExceptionResponse = async ( @@ -3767,13 +3158,11 @@ const deserializeAws_queryElasticBeanstalkServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryElasticBeanstalkServiceException(body.Error, context); - const contents: ElasticBeanstalkServiceException = { - name: "ElasticBeanstalkServiceException", - $fault: "client", + const exception = new ElasticBeanstalkServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientPrivilegesExceptionResponse = async ( @@ -3782,13 +3171,11 @@ const deserializeAws_queryInsufficientPrivilegesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientPrivilegesException(body.Error, context); - const contents: InsufficientPrivilegesException = { - name: "InsufficientPrivilegesException", - $fault: "client", + const exception = new InsufficientPrivilegesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRequestExceptionResponse = async ( @@ -3797,13 +3184,11 @@ const deserializeAws_queryInvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRequestException(body.Error, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryManagedActionInvalidStateExceptionResponse = async ( @@ -3812,13 +3197,11 @@ const deserializeAws_queryManagedActionInvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryManagedActionInvalidStateException(body.Error, context); - const contents: ManagedActionInvalidStateException = { - name: "ManagedActionInvalidStateException", - $fault: "client", + const exception = new ManagedActionInvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationInProgressExceptionResponse = async ( @@ -3827,13 +3210,11 @@ const deserializeAws_queryOperationInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationInProgressException(body.Error, context); - const contents: OperationInProgressException = { - name: "OperationInProgressException", - $fault: "client", + const exception = new OperationInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPlatformVersionStillReferencedExceptionResponse = async ( @@ -3842,13 +3223,11 @@ const deserializeAws_queryPlatformVersionStillReferencedExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPlatformVersionStillReferencedException(body.Error, context); - const contents: PlatformVersionStillReferencedException = { - name: "PlatformVersionStillReferencedException", - $fault: "client", + const exception = new PlatformVersionStillReferencedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundExceptionResponse = async ( @@ -3857,13 +3236,11 @@ const deserializeAws_queryResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundException(body.Error, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceTypeNotSupportedExceptionResponse = async ( @@ -3872,13 +3249,11 @@ const deserializeAws_queryResourceTypeNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceTypeNotSupportedException(body.Error, context); - const contents: ResourceTypeNotSupportedException = { - name: "ResourceTypeNotSupportedException", - $fault: "client", + const exception = new ResourceTypeNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryS3LocationNotInServiceRegionExceptionResponse = async ( @@ -3887,13 +3262,11 @@ const deserializeAws_queryS3LocationNotInServiceRegionExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryS3LocationNotInServiceRegionException(body.Error, context); - const contents: S3LocationNotInServiceRegionException = { - name: "S3LocationNotInServiceRegionException", - $fault: "client", + const exception = new S3LocationNotInServiceRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryS3SubscriptionRequiredExceptionResponse = async ( @@ -3902,13 +3275,11 @@ const deserializeAws_queryS3SubscriptionRequiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryS3SubscriptionRequiredException(body.Error, context); - const contents: S3SubscriptionRequiredException = { - name: "S3SubscriptionRequiredException", - $fault: "client", + const exception = new S3SubscriptionRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySourceBundleDeletionExceptionResponse = async ( @@ -3917,13 +3288,11 @@ const deserializeAws_querySourceBundleDeletionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySourceBundleDeletionException(body.Error, context); - const contents: SourceBundleDeletionException = { - name: "SourceBundleDeletionException", - $fault: "client", + const exception = new SourceBundleDeletionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyApplicationsExceptionResponse = async ( @@ -3932,13 +3301,11 @@ const deserializeAws_queryTooManyApplicationsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyApplicationsException(body.Error, context); - const contents: TooManyApplicationsException = { - name: "TooManyApplicationsException", - $fault: "client", + const exception = new TooManyApplicationsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyApplicationVersionsExceptionResponse = async ( @@ -3947,13 +3314,11 @@ const deserializeAws_queryTooManyApplicationVersionsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyApplicationVersionsException(body.Error, context); - const contents: TooManyApplicationVersionsException = { - name: "TooManyApplicationVersionsException", - $fault: "client", + const exception = new TooManyApplicationVersionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyBucketsExceptionResponse = async ( @@ -3962,13 +3327,11 @@ const deserializeAws_queryTooManyBucketsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyBucketsException(body.Error, context); - const contents: TooManyBucketsException = { - name: "TooManyBucketsException", - $fault: "client", + const exception = new TooManyBucketsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyConfigurationTemplatesExceptionResponse = async ( @@ -3977,13 +3340,11 @@ const deserializeAws_queryTooManyConfigurationTemplatesExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyConfigurationTemplatesException(body.Error, context); - const contents: TooManyConfigurationTemplatesException = { - name: "TooManyConfigurationTemplatesException", - $fault: "client", + const exception = new TooManyConfigurationTemplatesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyEnvironmentsExceptionResponse = async ( @@ -3992,13 +3353,11 @@ const deserializeAws_queryTooManyEnvironmentsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyEnvironmentsException(body.Error, context); - const contents: TooManyEnvironmentsException = { - name: "TooManyEnvironmentsException", - $fault: "client", + const exception = new TooManyEnvironmentsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyPlatformsExceptionResponse = async ( @@ -4007,13 +3366,11 @@ const deserializeAws_queryTooManyPlatformsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyPlatformsException(body.Error, context); - const contents: TooManyPlatformsException = { - name: "TooManyPlatformsException", - $fault: "client", + const exception = new TooManyPlatformsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyTagsExceptionResponse = async ( @@ -4022,13 +3379,11 @@ const deserializeAws_queryTooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyTagsException(body.Error, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAbortEnvironmentUpdateMessage = ( diff --git a/clients/client-elastic-inference/src/index.ts b/clients/client-elastic-inference/src/index.ts index fdf1842317d2f..3edd0a3ea7f5c 100644 --- a/clients/client-elastic-inference/src/index.ts +++ b/clients/client-elastic-inference/src/index.ts @@ -3,3 +3,4 @@ export * from "./ElasticInferenceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ElasticInferenceServiceException } from "./models/ElasticInferenceServiceException"; diff --git a/clients/client-elastic-inference/src/models/ElasticInferenceServiceException.ts b/clients/client-elastic-inference/src/models/ElasticInferenceServiceException.ts new file mode 100644 index 0000000000000..11935f87be56e --- /dev/null +++ b/clients/client-elastic-inference/src/models/ElasticInferenceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElasticInference service. + */ +export class ElasticInferenceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElasticInferenceServiceException.prototype); + } +} diff --git a/clients/client-elastic-inference/src/models/models_0.ts b/clients/client-elastic-inference/src/models/models_0.ts index 44a3bbe64b498..422b611e7a02d 100644 --- a/clients/client-elastic-inference/src/models/models_0.ts +++ b/clients/client-elastic-inference/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElasticInferenceServiceException as __BaseException } from "./ElasticInferenceServiceException"; /** *

@@ -140,10 +143,20 @@ export namespace AcceleratorTypeOffering { * Raised when a malformed input has been provided to the API. *

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } export interface DescribeAcceleratorOfferingsRequest { @@ -197,10 +210,20 @@ export namespace DescribeAcceleratorOfferingsResponse { * Raised when an unexpected error occurred during request processing. *

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** @@ -208,10 +231,20 @@ export interface InternalServerException extends __SmithyException, $MetadataBea * Raised when the requested resource cannot be found. *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** diff --git a/clients/client-elastic-inference/src/protocols/Aws_restJson1.ts b/clients/client-elastic-inference/src/protocols/Aws_restJson1.ts index c03fef1cc8b81..ef0c9eba7bb3f 100644 --- a/clients/client-elastic-inference/src/protocols/Aws_restJson1.ts +++ b/clients/client-elastic-inference/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -32,6 +31,7 @@ import { } from "../commands/ListTagsForResourceCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { ElasticInferenceServiceException as __BaseException } from "../models/ElasticInferenceServiceException"; import { AcceleratorType, AcceleratorTypeOffering, @@ -250,49 +250,28 @@ const deserializeAws_restJson1DescribeAcceleratorOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.elasticinference#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.elasticinference#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticinference#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAcceleratorsCommand = async ( @@ -325,49 +304,28 @@ const deserializeAws_restJson1DescribeAcceleratorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.elasticinference#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.elasticinference#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticinference#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAcceleratorTypesCommand = async ( @@ -396,33 +354,22 @@ const deserializeAws_restJson1DescribeAcceleratorTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.elasticinference#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -451,49 +398,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.elasticinference#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.elasticinference#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticinference#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -518,49 +444,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.elasticinference#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.elasticinference#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticinference#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -585,100 +490,76 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.elasticinference#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.elasticinference#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticinference#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AcceleratorIdList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-elastic-load-balancing-v2/src/index.ts b/clients/client-elastic-load-balancing-v2/src/index.ts index 7ca7d43272c3a..68f1f5215c1af 100644 --- a/clients/client-elastic-load-balancing-v2/src/index.ts +++ b/clients/client-elastic-load-balancing-v2/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ElasticLoadBalancingV2ServiceException } from "./models/ElasticLoadBalancingV2ServiceException"; diff --git a/clients/client-elastic-load-balancing-v2/src/models/ElasticLoadBalancingV2ServiceException.ts b/clients/client-elastic-load-balancing-v2/src/models/ElasticLoadBalancingV2ServiceException.ts new file mode 100644 index 0000000000000..7211100ff854d --- /dev/null +++ b/clients/client-elastic-load-balancing-v2/src/models/ElasticLoadBalancingV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElasticLoadBalancingV2 service. + */ +export class ElasticLoadBalancingV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElasticLoadBalancingV2ServiceException.prototype); + } +} diff --git a/clients/client-elastic-load-balancing-v2/src/models/models_0.ts b/clients/client-elastic-load-balancing-v2/src/models/models_0.ts index ad694e7d50660..8c856f0ad30fe 100644 --- a/clients/client-elastic-load-balancing-v2/src/models/models_0.ts +++ b/clients/client-elastic-load-balancing-v2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElasticLoadBalancingV2ServiceException as __BaseException } from "./ElasticLoadBalancingV2ServiceException"; export enum AuthenticateCognitoActionConditionalBehaviorEnum { ALLOW = "allow", @@ -514,28 +517,64 @@ export namespace AddListenerCertificatesOutput { /** *

The specified certificate does not exist.

*/ -export interface CertificateNotFoundException extends __SmithyException, $MetadataBearer { - name: "CertificateNotFoundException"; - $fault: "client"; +export class CertificateNotFoundException extends __BaseException { + readonly name: "CertificateNotFoundException" = "CertificateNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The specified listener does not exist.

*/ -export interface ListenerNotFoundException extends __SmithyException, $MetadataBearer { - name: "ListenerNotFoundException"; - $fault: "client"; +export class ListenerNotFoundException extends __BaseException { + readonly name: "ListenerNotFoundException" = "ListenerNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ListenerNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ListenerNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of certificates per load balancer.

*/ -export interface TooManyCertificatesException extends __SmithyException, $MetadataBearer { - name: "TooManyCertificatesException"; - $fault: "client"; +export class TooManyCertificatesException extends __BaseException { + readonly name: "TooManyCertificatesException" = "TooManyCertificatesException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyCertificatesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyCertificatesException.prototype); + this.Message = opts.Message; + } } /** @@ -597,64 +636,148 @@ export namespace AddTagsOutput { /** *

A tag key was specified more than once.

*/ -export interface DuplicateTagKeysException extends __SmithyException, $MetadataBearer { - name: "DuplicateTagKeysException"; - $fault: "client"; +export class DuplicateTagKeysException extends __BaseException { + readonly name: "DuplicateTagKeysException" = "DuplicateTagKeysException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateTagKeysException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateTagKeysException.prototype); + this.Message = opts.Message; + } } /** *

The specified load balancer does not exist.

*/ -export interface LoadBalancerNotFoundException extends __SmithyException, $MetadataBearer { - name: "LoadBalancerNotFoundException"; - $fault: "client"; +export class LoadBalancerNotFoundException extends __BaseException { + readonly name: "LoadBalancerNotFoundException" = "LoadBalancerNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LoadBalancerNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LoadBalancerNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The specified rule does not exist.

*/ -export interface RuleNotFoundException extends __SmithyException, $MetadataBearer { - name: "RuleNotFoundException"; - $fault: "client"; +export class RuleNotFoundException extends __BaseException { + readonly name: "RuleNotFoundException" = "RuleNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RuleNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RuleNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The specified target group does not exist.

*/ -export interface TargetGroupNotFoundException extends __SmithyException, $MetadataBearer { - name: "TargetGroupNotFoundException"; - $fault: "client"; +export class TargetGroupNotFoundException extends __BaseException { + readonly name: "TargetGroupNotFoundException" = "TargetGroupNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetGroupNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetGroupNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of tags per load balancer.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + } } /** *

The specified allocation ID does not exist.

*/ -export interface AllocationIdNotFoundException extends __SmithyException, $MetadataBearer { - name: "AllocationIdNotFoundException"; - $fault: "client"; +export class AllocationIdNotFoundException extends __BaseException { + readonly name: "AllocationIdNotFoundException" = "AllocationIdNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AllocationIdNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AllocationIdNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The specified ALPN policy is not supported.

*/ -export interface ALPNPolicyNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ALPNPolicyNotSupportedException"; - $fault: "client"; +export class ALPNPolicyNotSupportedException extends __BaseException { + readonly name: "ALPNPolicyNotSupportedException" = "ALPNPolicyNotSupportedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ALPNPolicyNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ALPNPolicyNotSupportedException.prototype); + this.Message = opts.Message; + } } /** @@ -732,10 +855,22 @@ export namespace AvailabilityZone { /** *

The specified Availability Zone is not supported.

*/ -export interface AvailabilityZoneNotSupportedException extends __SmithyException, $MetadataBearer { - name: "AvailabilityZoneNotSupportedException"; - $fault: "client"; +export class AvailabilityZoneNotSupportedException extends __BaseException { + readonly name: "AvailabilityZoneNotSupportedException" = "AvailabilityZoneNotSupportedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AvailabilityZoneNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AvailabilityZoneNotSupportedException.prototype); + this.Message = opts.Message; + } } /** @@ -930,92 +1065,212 @@ export namespace CreateListenerOutput { /** *

A listener with the specified port already exists.

*/ -export interface DuplicateListenerException extends __SmithyException, $MetadataBearer { - name: "DuplicateListenerException"; - $fault: "client"; +export class DuplicateListenerException extends __BaseException { + readonly name: "DuplicateListenerException" = "DuplicateListenerException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateListenerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateListenerException.prototype); + this.Message = opts.Message; + } } /** *

The specified configuration is not valid with this protocol.

*/ -export interface IncompatibleProtocolsException extends __SmithyException, $MetadataBearer { - name: "IncompatibleProtocolsException"; - $fault: "client"; +export class IncompatibleProtocolsException extends __BaseException { + readonly name: "IncompatibleProtocolsException" = "IncompatibleProtocolsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleProtocolsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleProtocolsException.prototype); + this.Message = opts.Message; + } } /** *

The requested configuration is not valid.

*/ -export interface InvalidConfigurationRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidConfigurationRequestException"; - $fault: "client"; +export class InvalidConfigurationRequestException extends __BaseException { + readonly name: "InvalidConfigurationRequestException" = "InvalidConfigurationRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConfigurationRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConfigurationRequestException.prototype); + this.Message = opts.Message; + } } /** *

The requested action is not valid.

*/ -export interface InvalidLoadBalancerActionException extends __SmithyException, $MetadataBearer { - name: "InvalidLoadBalancerActionException"; - $fault: "client"; +export class InvalidLoadBalancerActionException extends __BaseException { + readonly name: "InvalidLoadBalancerActionException" = "InvalidLoadBalancerActionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLoadBalancerActionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLoadBalancerActionException.prototype); + this.Message = opts.Message; + } } /** *

The specified SSL policy does not exist.

*/ -export interface SSLPolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "SSLPolicyNotFoundException"; - $fault: "client"; +export class SSLPolicyNotFoundException extends __BaseException { + readonly name: "SSLPolicyNotFoundException" = "SSLPolicyNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SSLPolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SSLPolicyNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of load balancers per target group.

*/ -export interface TargetGroupAssociationLimitException extends __SmithyException, $MetadataBearer { - name: "TargetGroupAssociationLimitException"; - $fault: "client"; +export class TargetGroupAssociationLimitException extends __BaseException { + readonly name: "TargetGroupAssociationLimitException" = "TargetGroupAssociationLimitException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetGroupAssociationLimitException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetGroupAssociationLimitException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of actions per rule.

*/ -export interface TooManyActionsException extends __SmithyException, $MetadataBearer { - name: "TooManyActionsException"; - $fault: "client"; +export class TooManyActionsException extends __BaseException { + readonly name: "TooManyActionsException" = "TooManyActionsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyActionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyActionsException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of listeners per load balancer.

*/ -export interface TooManyListenersException extends __SmithyException, $MetadataBearer { - name: "TooManyListenersException"; - $fault: "client"; +export class TooManyListenersException extends __BaseException { + readonly name: "TooManyListenersException" = "TooManyListenersException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyListenersException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyListenersException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of times a target can be registered with a load * balancer.

*/ -export interface TooManyRegistrationsForTargetIdException extends __SmithyException, $MetadataBearer { - name: "TooManyRegistrationsForTargetIdException"; - $fault: "client"; +export class TooManyRegistrationsForTargetIdException extends __BaseException { + readonly name: "TooManyRegistrationsForTargetIdException" = "TooManyRegistrationsForTargetIdException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRegistrationsForTargetIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRegistrationsForTargetIdException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of targets.

*/ -export interface TooManyTargetsException extends __SmithyException, $MetadataBearer { - name: "TooManyTargetsException"; - $fault: "client"; +export class TooManyTargetsException extends __BaseException { + readonly name: "TooManyTargetsException" = "TooManyTargetsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTargetsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTargetsException.prototype); + this.Message = opts.Message; + } } /** @@ -1023,19 +1278,44 @@ export interface TooManyTargetsException extends __SmithyException, $MetadataBea * all listeners. If a target group is used by multiple actions for a load balancer, it is * counted as only one use.

*/ -export interface TooManyUniqueTargetGroupsPerLoadBalancerException extends __SmithyException, $MetadataBearer { - name: "TooManyUniqueTargetGroupsPerLoadBalancerException"; - $fault: "client"; +export class TooManyUniqueTargetGroupsPerLoadBalancerException extends __BaseException { + readonly name: "TooManyUniqueTargetGroupsPerLoadBalancerException" = + "TooManyUniqueTargetGroupsPerLoadBalancerException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyUniqueTargetGroupsPerLoadBalancerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyUniqueTargetGroupsPerLoadBalancerException.prototype); + this.Message = opts.Message; + } } /** *

The specified protocol is not supported.

*/ -export interface UnsupportedProtocolException extends __SmithyException, $MetadataBearer { - name: "UnsupportedProtocolException"; - $fault: "client"; +export class UnsupportedProtocolException extends __BaseException { + readonly name: "UnsupportedProtocolException" = "UnsupportedProtocolException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedProtocolException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedProtocolException.prototype); + this.Message = opts.Message; + } } export enum IpAddressType { @@ -1325,74 +1605,170 @@ export namespace CreateLoadBalancerOutput { /** *

A load balancer with the specified name already exists.

*/ -export interface DuplicateLoadBalancerNameException extends __SmithyException, $MetadataBearer { - name: "DuplicateLoadBalancerNameException"; - $fault: "client"; +export class DuplicateLoadBalancerNameException extends __BaseException { + readonly name: "DuplicateLoadBalancerNameException" = "DuplicateLoadBalancerNameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateLoadBalancerNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateLoadBalancerNameException.prototype); + this.Message = opts.Message; + } } /** *

The requested scheme is not valid.

*/ -export interface InvalidSchemeException extends __SmithyException, $MetadataBearer { - name: "InvalidSchemeException"; - $fault: "client"; +export class InvalidSchemeException extends __BaseException { + readonly name: "InvalidSchemeException" = "InvalidSchemeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSchemeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSchemeException.prototype); + this.Message = opts.Message; + } } /** *

The specified security group does not exist.

*/ -export interface InvalidSecurityGroupException extends __SmithyException, $MetadataBearer { - name: "InvalidSecurityGroupException"; - $fault: "client"; +export class InvalidSecurityGroupException extends __BaseException { + readonly name: "InvalidSecurityGroupException" = "InvalidSecurityGroupException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSecurityGroupException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSecurityGroupException.prototype); + this.Message = opts.Message; + } } /** *

The specified subnet is out of available addresses.

*/ -export interface InvalidSubnetException extends __SmithyException, $MetadataBearer { - name: "InvalidSubnetException"; - $fault: "client"; +export class InvalidSubnetException extends __BaseException { + readonly name: "InvalidSubnetException" = "InvalidSubnetException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnetException.prototype); + this.Message = opts.Message; + } } /** *

This operation is not allowed.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + this.Message = opts.Message; + } } /** *

A specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

The specified subnet does not exist.

*/ -export interface SubnetNotFoundException extends __SmithyException, $MetadataBearer { - name: "SubnetNotFoundException"; - $fault: "client"; +export class SubnetNotFoundException extends __BaseException { + readonly name: "SubnetNotFoundException" = "SubnetNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of load balancers for your Amazon Web Services * account.

*/ -export interface TooManyLoadBalancersException extends __SmithyException, $MetadataBearer { - name: "TooManyLoadBalancersException"; - $fault: "client"; +export class TooManyLoadBalancersException extends __BaseException { + readonly name: "TooManyLoadBalancersException" = "TooManyLoadBalancersException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyLoadBalancersException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyLoadBalancersException.prototype); + this.Message = opts.Message; + } } /** @@ -1822,29 +2198,65 @@ export namespace CreateRuleOutput { /** *

The specified priority is in use.

*/ -export interface PriorityInUseException extends __SmithyException, $MetadataBearer { - name: "PriorityInUseException"; - $fault: "client"; +export class PriorityInUseException extends __BaseException { + readonly name: "PriorityInUseException" = "PriorityInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PriorityInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PriorityInUseException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of rules per load balancer.

*/ -export interface TooManyRulesException extends __SmithyException, $MetadataBearer { - name: "TooManyRulesException"; - $fault: "client"; +export class TooManyRulesException extends __BaseException { + readonly name: "TooManyRulesException" = "TooManyRulesException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRulesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRulesException.prototype); + this.Message = opts.Message; + } } /** *

You've reached the limit on the number of target groups for your Amazon Web Services * account.

*/ -export interface TooManyTargetGroupsException extends __SmithyException, $MetadataBearer { - name: "TooManyTargetGroupsException"; - $fault: "client"; +export class TooManyTargetGroupsException extends __BaseException { + readonly name: "TooManyTargetGroupsException" = "TooManyTargetGroupsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTargetGroupsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTargetGroupsException.prototype); + this.Message = opts.Message; + } } export enum TargetGroupIpAddressTypeEnum { @@ -2190,10 +2602,22 @@ export namespace CreateTargetGroupOutput { /** *

A target group with the specified name already exists.

*/ -export interface DuplicateTargetGroupNameException extends __SmithyException, $MetadataBearer { - name: "DuplicateTargetGroupNameException"; - $fault: "client"; +export class DuplicateTargetGroupNameException extends __BaseException { + readonly name: "DuplicateTargetGroupNameException" = "DuplicateTargetGroupNameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateTargetGroupNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateTargetGroupNameException.prototype); + this.Message = opts.Message; + } } export interface DeleteListenerInput { @@ -2388,10 +2812,22 @@ export namespace DeregisterTargetsOutput { *

The specified target does not exist, is not in the same VPC as the target group, or has an * unsupported instance type.

*/ -export interface InvalidTargetException extends __SmithyException, $MetadataBearer { - name: "InvalidTargetException"; - $fault: "client"; +export class InvalidTargetException extends __BaseException { + readonly name: "InvalidTargetException" = "InvalidTargetException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTargetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTargetException.prototype); + this.Message = opts.Message; + } } export interface DescribeAccountLimitsInput { @@ -3478,10 +3914,22 @@ export namespace DescribeTargetHealthOutput { *

The health of the specified targets could not be retrieved due to an internal * error.

*/ -export interface HealthUnavailableException extends __SmithyException, $MetadataBearer { - name: "HealthUnavailableException"; - $fault: "server"; +export class HealthUnavailableException extends __BaseException { + readonly name: "HealthUnavailableException" = "HealthUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HealthUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, HealthUnavailableException.prototype); + this.Message = opts.Message; + } } export interface ModifyListenerInput { diff --git a/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts b/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts index 7c8ebcb2aa735..15b4066c98c32 100644 --- a/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts +++ b/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -91,6 +90,7 @@ import { SetIpAddressTypeCommandInput, SetIpAddressTypeCommandOutput } from "../ import { SetRulePrioritiesCommandInput, SetRulePrioritiesCommandOutput } from "../commands/SetRulePrioritiesCommand"; import { SetSecurityGroupsCommandInput, SetSecurityGroupsCommandOutput } from "../commands/SetSecurityGroupsCommand"; import { SetSubnetsCommandInput, SetSubnetsCommandOutput } from "../commands/SetSubnetsCommand"; +import { ElasticLoadBalancingV2ServiceException as __BaseException } from "../models/ElasticLoadBalancingV2ServiceException"; import { Action, AddListenerCertificatesInput, @@ -805,49 +805,28 @@ const deserializeAws_queryAddListenerCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateNotFoundException": case "com.amazonaws.elasticloadbalancingv2#CertificateNotFoundException": - response = { - ...(await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "TooManyCertificatesException": case "com.amazonaws.elasticloadbalancingv2#TooManyCertificatesException": - response = { - ...(await deserializeAws_queryTooManyCertificatesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyCertificatesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddTagsCommand = async ( @@ -875,73 +854,37 @@ const deserializeAws_queryAddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateTagKeysException": case "com.amazonaws.elasticloadbalancingv2#DuplicateTagKeysException": - response = { - ...(await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateListenerCommand = async ( @@ -969,169 +912,73 @@ const deserializeAws_queryCreateListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ALPNPolicyNotSupportedException": case "com.amazonaws.elasticloadbalancingv2#ALPNPolicyNotSupportedException": - response = { - ...(await deserializeAws_queryALPNPolicyNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryALPNPolicyNotSupportedExceptionResponse(parsedOutput, context); case "CertificateNotFoundException": case "com.amazonaws.elasticloadbalancingv2#CertificateNotFoundException": - response = { - ...(await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context); case "DuplicateListenerException": case "com.amazonaws.elasticloadbalancingv2#DuplicateListenerException": - response = { - ...(await deserializeAws_queryDuplicateListenerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateListenerExceptionResponse(parsedOutput, context); case "IncompatibleProtocolsException": case "com.amazonaws.elasticloadbalancingv2#IncompatibleProtocolsException": - response = { - ...(await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidLoadBalancerActionException": case "com.amazonaws.elasticloadbalancingv2#InvalidLoadBalancerActionException": - response = { - ...(await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "SSLPolicyNotFoundException": case "com.amazonaws.elasticloadbalancingv2#SSLPolicyNotFoundException": - response = { - ...(await deserializeAws_querySSLPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySSLPolicyNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupAssociationLimitException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupAssociationLimitException": - response = { - ...(await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyActionsException": case "com.amazonaws.elasticloadbalancingv2#TooManyActionsException": - response = { - ...(await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context); case "TooManyCertificatesException": case "com.amazonaws.elasticloadbalancingv2#TooManyCertificatesException": - response = { - ...(await deserializeAws_queryTooManyCertificatesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyCertificatesExceptionResponse(parsedOutput, context); case "TooManyListenersException": case "com.amazonaws.elasticloadbalancingv2#TooManyListenersException": - response = { - ...(await deserializeAws_queryTooManyListenersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyListenersExceptionResponse(parsedOutput, context); case "TooManyRegistrationsForTargetIdException": case "com.amazonaws.elasticloadbalancingv2#TooManyRegistrationsForTargetIdException": - response = { - ...(await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); case "TooManyTargetsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetsException": - response = { - ...(await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context); case "TooManyUniqueTargetGroupsPerLoadBalancerException": case "com.amazonaws.elasticloadbalancingv2#TooManyUniqueTargetGroupsPerLoadBalancerException": - response = { - ...(await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancingv2#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLoadBalancerCommand = async ( @@ -1159,129 +1006,58 @@ const deserializeAws_queryCreateLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AllocationIdNotFoundException": case "com.amazonaws.elasticloadbalancingv2#AllocationIdNotFoundException": - response = { - ...(await deserializeAws_queryAllocationIdNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAllocationIdNotFoundExceptionResponse(parsedOutput, context); case "AvailabilityZoneNotSupportedException": case "com.amazonaws.elasticloadbalancingv2#AvailabilityZoneNotSupportedException": - response = { - ...(await deserializeAws_queryAvailabilityZoneNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAvailabilityZoneNotSupportedExceptionResponse(parsedOutput, context); case "DuplicateLoadBalancerNameException": case "com.amazonaws.elasticloadbalancingv2#DuplicateLoadBalancerNameException": - response = { - ...(await deserializeAws_queryDuplicateLoadBalancerNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateLoadBalancerNameExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.elasticloadbalancingv2#DuplicateTagKeysException": - response = { - ...(await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSchemeException": case "com.amazonaws.elasticloadbalancingv2#InvalidSchemeException": - response = { - ...(await deserializeAws_queryInvalidSchemeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSchemeExceptionResponse(parsedOutput, context); case "InvalidSecurityGroupException": case "com.amazonaws.elasticloadbalancingv2#InvalidSecurityGroupException": - response = { - ...(await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context); case "InvalidSubnetException": case "com.amazonaws.elasticloadbalancingv2#InvalidSubnetException": - response = { - ...(await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancingv2#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elasticloadbalancingv2#ResourceInUseException": - response = { - ...(await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context); case "SubnetNotFoundException": case "com.amazonaws.elasticloadbalancingv2#SubnetNotFoundException": - response = { - ...(await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context); case "TooManyLoadBalancersException": case "com.amazonaws.elasticloadbalancingv2#TooManyLoadBalancersException": - response = { - ...(await deserializeAws_queryTooManyLoadBalancersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyLoadBalancersExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateRuleCommand = async ( @@ -1309,145 +1085,64 @@ const deserializeAws_queryCreateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "IncompatibleProtocolsException": case "com.amazonaws.elasticloadbalancingv2#IncompatibleProtocolsException": - response = { - ...(await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidLoadBalancerActionException": case "com.amazonaws.elasticloadbalancingv2#InvalidLoadBalancerActionException": - response = { - ...(await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "PriorityInUseException": case "com.amazonaws.elasticloadbalancingv2#PriorityInUseException": - response = { - ...(await deserializeAws_queryPriorityInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPriorityInUseExceptionResponse(parsedOutput, context); case "TargetGroupAssociationLimitException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupAssociationLimitException": - response = { - ...(await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyActionsException": case "com.amazonaws.elasticloadbalancingv2#TooManyActionsException": - response = { - ...(await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context); case "TooManyRegistrationsForTargetIdException": case "com.amazonaws.elasticloadbalancingv2#TooManyRegistrationsForTargetIdException": - response = { - ...(await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context); case "TooManyRulesException": case "com.amazonaws.elasticloadbalancingv2#TooManyRulesException": - response = { - ...(await deserializeAws_queryTooManyRulesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyRulesExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); case "TooManyTargetGroupsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetGroupsException": - response = { - ...(await deserializeAws_queryTooManyTargetGroupsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetGroupsExceptionResponse(parsedOutput, context); case "TooManyTargetsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetsException": - response = { - ...(await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context); case "TooManyUniqueTargetGroupsPerLoadBalancerException": case "com.amazonaws.elasticloadbalancingv2#TooManyUniqueTargetGroupsPerLoadBalancerException": - response = { - ...(await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancingv2#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateTargetGroupCommand = async ( @@ -1475,57 +1170,31 @@ const deserializeAws_queryCreateTargetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateTargetGroupNameException": case "com.amazonaws.elasticloadbalancingv2#DuplicateTargetGroupNameException": - response = { - ...(await deserializeAws_queryDuplicateTargetGroupNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateTargetGroupNameExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); case "TooManyTargetGroupsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetGroupsException": - response = { - ...(await deserializeAws_queryTooManyTargetGroupsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetGroupsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteListenerCommand = async ( @@ -1553,41 +1222,25 @@ const deserializeAws_queryDeleteListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elasticloadbalancingv2#ResourceInUseException": - response = { - ...(await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLoadBalancerCommand = async ( @@ -1615,49 +1268,28 @@ const deserializeAws_queryDeleteLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancingv2#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elasticloadbalancingv2#ResourceInUseException": - response = { - ...(await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteRuleCommand = async ( @@ -1685,41 +1317,25 @@ const deserializeAws_queryDeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancingv2#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteTargetGroupCommand = async ( @@ -1747,33 +1363,22 @@ const deserializeAws_queryDeleteTargetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUseException": case "com.amazonaws.elasticloadbalancingv2#ResourceInUseException": - response = { - ...(await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeregisterTargetsCommand = async ( @@ -1801,41 +1406,25 @@ const deserializeAws_queryDeregisterTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTargetException": case "com.amazonaws.elasticloadbalancingv2#InvalidTargetException": - response = { - ...(await deserializeAws_queryInvalidTargetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTargetExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountLimitsCommand = async ( @@ -1863,25 +1452,19 @@ const deserializeAws_queryDescribeAccountLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeListenerCertificatesCommand = async ( @@ -1909,33 +1492,22 @@ const deserializeAws_queryDescribeListenerCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeListenersCommand = async ( @@ -1963,49 +1535,28 @@ const deserializeAws_queryDescribeListenersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancingv2#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancerAttributesCommand = async ( @@ -2036,33 +1587,22 @@ const deserializeAws_queryDescribeLoadBalancerAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancersCommand = async ( @@ -2090,33 +1630,22 @@ const deserializeAws_queryDescribeLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeRulesCommand = async ( @@ -2144,49 +1673,28 @@ const deserializeAws_queryDescribeRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancingv2#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeSSLPoliciesCommand = async ( @@ -2214,33 +1722,22 @@ const deserializeAws_queryDescribeSSLPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SSLPolicyNotFoundException": case "com.amazonaws.elasticloadbalancingv2#SSLPolicyNotFoundException": - response = { - ...(await deserializeAws_querySSLPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySSLPolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTagsCommand = async ( @@ -2268,57 +1765,31 @@ const deserializeAws_queryDescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTargetGroupAttributesCommand = async ( @@ -2346,33 +1817,22 @@ const deserializeAws_queryDescribeTargetGroupAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTargetGroupsCommand = async ( @@ -2400,41 +1860,25 @@ const deserializeAws_queryDescribeTargetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTargetHealthCommand = async ( @@ -2462,49 +1906,28 @@ const deserializeAws_queryDescribeTargetHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HealthUnavailableException": case "com.amazonaws.elasticloadbalancingv2#HealthUnavailableException": - response = { - ...(await deserializeAws_queryHealthUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHealthUnavailableExceptionResponse(parsedOutput, context); case "InvalidTargetException": case "com.amazonaws.elasticloadbalancingv2#InvalidTargetException": - response = { - ...(await deserializeAws_queryInvalidTargetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTargetExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyListenerCommand = async ( @@ -2532,161 +1955,70 @@ const deserializeAws_queryModifyListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ALPNPolicyNotSupportedException": case "com.amazonaws.elasticloadbalancingv2#ALPNPolicyNotSupportedException": - response = { - ...(await deserializeAws_queryALPNPolicyNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryALPNPolicyNotSupportedExceptionResponse(parsedOutput, context); case "CertificateNotFoundException": case "com.amazonaws.elasticloadbalancingv2#CertificateNotFoundException": - response = { - ...(await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context); case "DuplicateListenerException": case "com.amazonaws.elasticloadbalancingv2#DuplicateListenerException": - response = { - ...(await deserializeAws_queryDuplicateListenerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateListenerExceptionResponse(parsedOutput, context); case "IncompatibleProtocolsException": case "com.amazonaws.elasticloadbalancingv2#IncompatibleProtocolsException": - response = { - ...(await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidLoadBalancerActionException": case "com.amazonaws.elasticloadbalancingv2#InvalidLoadBalancerActionException": - response = { - ...(await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "SSLPolicyNotFoundException": case "com.amazonaws.elasticloadbalancingv2#SSLPolicyNotFoundException": - response = { - ...(await deserializeAws_querySSLPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySSLPolicyNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupAssociationLimitException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupAssociationLimitException": - response = { - ...(await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyActionsException": case "com.amazonaws.elasticloadbalancingv2#TooManyActionsException": - response = { - ...(await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context); case "TooManyCertificatesException": case "com.amazonaws.elasticloadbalancingv2#TooManyCertificatesException": - response = { - ...(await deserializeAws_queryTooManyCertificatesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyCertificatesExceptionResponse(parsedOutput, context); case "TooManyListenersException": case "com.amazonaws.elasticloadbalancingv2#TooManyListenersException": - response = { - ...(await deserializeAws_queryTooManyListenersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyListenersExceptionResponse(parsedOutput, context); case "TooManyRegistrationsForTargetIdException": case "com.amazonaws.elasticloadbalancingv2#TooManyRegistrationsForTargetIdException": - response = { - ...(await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context); case "TooManyTargetsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetsException": - response = { - ...(await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context); case "TooManyUniqueTargetGroupsPerLoadBalancerException": case "com.amazonaws.elasticloadbalancingv2#TooManyUniqueTargetGroupsPerLoadBalancerException": - response = { - ...(await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancingv2#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyLoadBalancerAttributesCommand = async ( @@ -2714,41 +2046,25 @@ const deserializeAws_queryModifyLoadBalancerAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyRuleCommand = async ( @@ -2776,113 +2092,52 @@ const deserializeAws_queryModifyRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "IncompatibleProtocolsException": case "com.amazonaws.elasticloadbalancingv2#IncompatibleProtocolsException": - response = { - ...(await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIncompatibleProtocolsExceptionResponse(parsedOutput, context); case "InvalidLoadBalancerActionException": case "com.amazonaws.elasticloadbalancingv2#InvalidLoadBalancerActionException": - response = { - ...(await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidLoadBalancerActionExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancingv2#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupAssociationLimitException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupAssociationLimitException": - response = { - ...(await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupAssociationLimitExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyActionsException": case "com.amazonaws.elasticloadbalancingv2#TooManyActionsException": - response = { - ...(await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyActionsExceptionResponse(parsedOutput, context); case "TooManyRegistrationsForTargetIdException": case "com.amazonaws.elasticloadbalancingv2#TooManyRegistrationsForTargetIdException": - response = { - ...(await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context); case "TooManyTargetsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetsException": - response = { - ...(await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context); case "TooManyUniqueTargetGroupsPerLoadBalancerException": case "com.amazonaws.elasticloadbalancingv2#TooManyUniqueTargetGroupsPerLoadBalancerException": - response = { - ...(await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancingv2#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyTargetGroupCommand = async ( @@ -2910,41 +2165,25 @@ const deserializeAws_queryModifyTargetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyTargetGroupAttributesCommand = async ( @@ -2972,41 +2211,25 @@ const deserializeAws_queryModifyTargetGroupAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRegisterTargetsCommand = async ( @@ -3034,57 +2257,31 @@ const deserializeAws_queryRegisterTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTargetException": case "com.amazonaws.elasticloadbalancingv2#InvalidTargetException": - response = { - ...(await deserializeAws_queryInvalidTargetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTargetExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyRegistrationsForTargetIdException": case "com.amazonaws.elasticloadbalancingv2#TooManyRegistrationsForTargetIdException": - response = { - ...(await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse(parsedOutput, context); case "TooManyTargetsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTargetsException": - response = { - ...(await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTargetsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveListenerCertificatesCommand = async ( @@ -3112,41 +2309,25 @@ const deserializeAws_queryRemoveListenerCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancingv2#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveTagsCommand = async ( @@ -3174,65 +2355,34 @@ const deserializeAws_queryRemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); case "TargetGroupNotFoundException": case "com.amazonaws.elasticloadbalancingv2#TargetGroupNotFoundException": - response = { - ...(await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTargetGroupNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancingv2#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetIpAddressTypeCommand = async ( @@ -3260,49 +2410,28 @@ const deserializeAws_querySetIpAddressTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSubnetException": case "com.amazonaws.elasticloadbalancingv2#InvalidSubnetException": - response = { - ...(await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetRulePrioritiesCommand = async ( @@ -3330,49 +2459,28 @@ const deserializeAws_querySetRulePrioritiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancingv2#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); case "PriorityInUseException": case "com.amazonaws.elasticloadbalancingv2#PriorityInUseException": - response = { - ...(await deserializeAws_queryPriorityInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPriorityInUseExceptionResponse(parsedOutput, context); case "RuleNotFoundException": case "com.amazonaws.elasticloadbalancingv2#RuleNotFoundException": - response = { - ...(await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetSecurityGroupsCommand = async ( @@ -3400,49 +2508,28 @@ const deserializeAws_querySetSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSecurityGroupException": case "com.amazonaws.elasticloadbalancingv2#InvalidSecurityGroupException": - response = { - ...(await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetSubnetsCommand = async ( @@ -3470,73 +2557,37 @@ const deserializeAws_querySetSubnetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AllocationIdNotFoundException": case "com.amazonaws.elasticloadbalancingv2#AllocationIdNotFoundException": - response = { - ...(await deserializeAws_queryAllocationIdNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAllocationIdNotFoundExceptionResponse(parsedOutput, context); case "AvailabilityZoneNotSupportedException": case "com.amazonaws.elasticloadbalancingv2#AvailabilityZoneNotSupportedException": - response = { - ...(await deserializeAws_queryAvailabilityZoneNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAvailabilityZoneNotSupportedExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancingv2#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSubnetException": case "com.amazonaws.elasticloadbalancingv2#InvalidSubnetException": - response = { - ...(await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context); case "LoadBalancerNotFoundException": case "com.amazonaws.elasticloadbalancingv2#LoadBalancerNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerNotFoundExceptionResponse(parsedOutput, context); case "SubnetNotFoundException": case "com.amazonaws.elasticloadbalancingv2#SubnetNotFoundException": - response = { - ...(await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAllocationIdNotFoundExceptionResponse = async ( @@ -3545,13 +2596,11 @@ const deserializeAws_queryAllocationIdNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAllocationIdNotFoundException(body.Error, context); - const contents: AllocationIdNotFoundException = { - name: "AllocationIdNotFoundException", - $fault: "client", + const exception = new AllocationIdNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryALPNPolicyNotSupportedExceptionResponse = async ( @@ -3560,13 +2609,11 @@ const deserializeAws_queryALPNPolicyNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryALPNPolicyNotSupportedException(body.Error, context); - const contents: ALPNPolicyNotSupportedException = { - name: "ALPNPolicyNotSupportedException", - $fault: "client", + const exception = new ALPNPolicyNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAvailabilityZoneNotSupportedExceptionResponse = async ( @@ -3575,13 +2622,11 @@ const deserializeAws_queryAvailabilityZoneNotSupportedExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAvailabilityZoneNotSupportedException(body.Error, context); - const contents: AvailabilityZoneNotSupportedException = { - name: "AvailabilityZoneNotSupportedException", - $fault: "client", + const exception = new AvailabilityZoneNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCertificateNotFoundExceptionResponse = async ( @@ -3590,13 +2635,11 @@ const deserializeAws_queryCertificateNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCertificateNotFoundException(body.Error, context); - const contents: CertificateNotFoundException = { - name: "CertificateNotFoundException", - $fault: "client", + const exception = new CertificateNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateListenerExceptionResponse = async ( @@ -3605,13 +2648,11 @@ const deserializeAws_queryDuplicateListenerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateListenerException(body.Error, context); - const contents: DuplicateListenerException = { - name: "DuplicateListenerException", - $fault: "client", + const exception = new DuplicateListenerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateLoadBalancerNameExceptionResponse = async ( @@ -3620,13 +2661,11 @@ const deserializeAws_queryDuplicateLoadBalancerNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateLoadBalancerNameException(body.Error, context); - const contents: DuplicateLoadBalancerNameException = { - name: "DuplicateLoadBalancerNameException", - $fault: "client", + const exception = new DuplicateLoadBalancerNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateTagKeysExceptionResponse = async ( @@ -3635,13 +2674,11 @@ const deserializeAws_queryDuplicateTagKeysExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateTagKeysException(body.Error, context); - const contents: DuplicateTagKeysException = { - name: "DuplicateTagKeysException", - $fault: "client", + const exception = new DuplicateTagKeysException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateTargetGroupNameExceptionResponse = async ( @@ -3650,13 +2687,11 @@ const deserializeAws_queryDuplicateTargetGroupNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateTargetGroupNameException(body.Error, context); - const contents: DuplicateTargetGroupNameException = { - name: "DuplicateTargetGroupNameException", - $fault: "client", + const exception = new DuplicateTargetGroupNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHealthUnavailableExceptionResponse = async ( @@ -3665,13 +2700,11 @@ const deserializeAws_queryHealthUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHealthUnavailableException(body.Error, context); - const contents: HealthUnavailableException = { - name: "HealthUnavailableException", - $fault: "server", + const exception = new HealthUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryIncompatibleProtocolsExceptionResponse = async ( @@ -3680,13 +2713,11 @@ const deserializeAws_queryIncompatibleProtocolsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryIncompatibleProtocolsException(body.Error, context); - const contents: IncompatibleProtocolsException = { - name: "IncompatibleProtocolsException", - $fault: "client", + const exception = new IncompatibleProtocolsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidConfigurationRequestExceptionResponse = async ( @@ -3695,13 +2726,11 @@ const deserializeAws_queryInvalidConfigurationRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidConfigurationRequestException(body.Error, context); - const contents: InvalidConfigurationRequestException = { - name: "InvalidConfigurationRequestException", - $fault: "client", + const exception = new InvalidConfigurationRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidLoadBalancerActionExceptionResponse = async ( @@ -3710,13 +2739,11 @@ const deserializeAws_queryInvalidLoadBalancerActionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidLoadBalancerActionException(body.Error, context); - const contents: InvalidLoadBalancerActionException = { - name: "InvalidLoadBalancerActionException", - $fault: "client", + const exception = new InvalidLoadBalancerActionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSchemeExceptionResponse = async ( @@ -3725,13 +2752,11 @@ const deserializeAws_queryInvalidSchemeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSchemeException(body.Error, context); - const contents: InvalidSchemeException = { - name: "InvalidSchemeException", - $fault: "client", + const exception = new InvalidSchemeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSecurityGroupExceptionResponse = async ( @@ -3740,13 +2765,11 @@ const deserializeAws_queryInvalidSecurityGroupExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSecurityGroupException(body.Error, context); - const contents: InvalidSecurityGroupException = { - name: "InvalidSecurityGroupException", - $fault: "client", + const exception = new InvalidSecurityGroupException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetExceptionResponse = async ( @@ -3755,13 +2778,11 @@ const deserializeAws_queryInvalidSubnetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnetException(body.Error, context); - const contents: InvalidSubnetException = { - name: "InvalidSubnetException", - $fault: "client", + const exception = new InvalidSubnetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidTargetExceptionResponse = async ( @@ -3770,13 +2791,11 @@ const deserializeAws_queryInvalidTargetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidTargetException(body.Error, context); - const contents: InvalidTargetException = { - name: "InvalidTargetException", - $fault: "client", + const exception = new InvalidTargetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryListenerNotFoundExceptionResponse = async ( @@ -3785,13 +2804,11 @@ const deserializeAws_queryListenerNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryListenerNotFoundException(body.Error, context); - const contents: ListenerNotFoundException = { - name: "ListenerNotFoundException", - $fault: "client", + const exception = new ListenerNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLoadBalancerNotFoundExceptionResponse = async ( @@ -3800,13 +2817,11 @@ const deserializeAws_queryLoadBalancerNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLoadBalancerNotFoundException(body.Error, context); - const contents: LoadBalancerNotFoundException = { - name: "LoadBalancerNotFoundException", - $fault: "client", + const exception = new LoadBalancerNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationNotPermittedExceptionResponse = async ( @@ -3815,13 +2830,11 @@ const deserializeAws_queryOperationNotPermittedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationNotPermittedException(body.Error, context); - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", + const exception = new OperationNotPermittedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPriorityInUseExceptionResponse = async ( @@ -3830,13 +2843,11 @@ const deserializeAws_queryPriorityInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPriorityInUseException(body.Error, context); - const contents: PriorityInUseException = { - name: "PriorityInUseException", - $fault: "client", + const exception = new PriorityInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceInUseExceptionResponse = async ( @@ -3845,13 +2856,11 @@ const deserializeAws_queryResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceInUseException(body.Error, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryRuleNotFoundExceptionResponse = async ( @@ -3860,13 +2869,11 @@ const deserializeAws_queryRuleNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryRuleNotFoundException(body.Error, context); - const contents: RuleNotFoundException = { - name: "RuleNotFoundException", - $fault: "client", + const exception = new RuleNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySSLPolicyNotFoundExceptionResponse = async ( @@ -3875,13 +2882,11 @@ const deserializeAws_querySSLPolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySSLPolicyNotFoundException(body.Error, context); - const contents: SSLPolicyNotFoundException = { - name: "SSLPolicyNotFoundException", - $fault: "client", + const exception = new SSLPolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetNotFoundExceptionResponse = async ( @@ -3890,13 +2895,11 @@ const deserializeAws_querySubnetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetNotFoundException(body.Error, context); - const contents: SubnetNotFoundException = { - name: "SubnetNotFoundException", - $fault: "client", + const exception = new SubnetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTargetGroupAssociationLimitExceptionResponse = async ( @@ -3905,13 +2908,11 @@ const deserializeAws_queryTargetGroupAssociationLimitExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTargetGroupAssociationLimitException(body.Error, context); - const contents: TargetGroupAssociationLimitException = { - name: "TargetGroupAssociationLimitException", - $fault: "client", + const exception = new TargetGroupAssociationLimitException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTargetGroupNotFoundExceptionResponse = async ( @@ -3920,13 +2921,11 @@ const deserializeAws_queryTargetGroupNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTargetGroupNotFoundException(body.Error, context); - const contents: TargetGroupNotFoundException = { - name: "TargetGroupNotFoundException", - $fault: "client", + const exception = new TargetGroupNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyActionsExceptionResponse = async ( @@ -3935,13 +2934,11 @@ const deserializeAws_queryTooManyActionsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyActionsException(body.Error, context); - const contents: TooManyActionsException = { - name: "TooManyActionsException", - $fault: "client", + const exception = new TooManyActionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyCertificatesExceptionResponse = async ( @@ -3950,13 +2947,11 @@ const deserializeAws_queryTooManyCertificatesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyCertificatesException(body.Error, context); - const contents: TooManyCertificatesException = { - name: "TooManyCertificatesException", - $fault: "client", + const exception = new TooManyCertificatesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyListenersExceptionResponse = async ( @@ -3965,13 +2960,11 @@ const deserializeAws_queryTooManyListenersExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyListenersException(body.Error, context); - const contents: TooManyListenersException = { - name: "TooManyListenersException", - $fault: "client", + const exception = new TooManyListenersException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyLoadBalancersExceptionResponse = async ( @@ -3980,13 +2973,11 @@ const deserializeAws_queryTooManyLoadBalancersExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyLoadBalancersException(body.Error, context); - const contents: TooManyLoadBalancersException = { - name: "TooManyLoadBalancersException", - $fault: "client", + const exception = new TooManyLoadBalancersException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse = async ( @@ -3995,13 +2986,11 @@ const deserializeAws_queryTooManyRegistrationsForTargetIdExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyRegistrationsForTargetIdException(body.Error, context); - const contents: TooManyRegistrationsForTargetIdException = { - name: "TooManyRegistrationsForTargetIdException", - $fault: "client", + const exception = new TooManyRegistrationsForTargetIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyRulesExceptionResponse = async ( @@ -4010,13 +2999,11 @@ const deserializeAws_queryTooManyRulesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyRulesException(body.Error, context); - const contents: TooManyRulesException = { - name: "TooManyRulesException", - $fault: "client", + const exception = new TooManyRulesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyTagsExceptionResponse = async ( @@ -4025,13 +3012,11 @@ const deserializeAws_queryTooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyTagsException(body.Error, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyTargetGroupsExceptionResponse = async ( @@ -4040,13 +3025,11 @@ const deserializeAws_queryTooManyTargetGroupsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyTargetGroupsException(body.Error, context); - const contents: TooManyTargetGroupsException = { - name: "TooManyTargetGroupsException", - $fault: "client", + const exception = new TooManyTargetGroupsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyTargetsExceptionResponse = async ( @@ -4055,13 +3038,11 @@ const deserializeAws_queryTooManyTargetsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyTargetsException(body.Error, context); - const contents: TooManyTargetsException = { - name: "TooManyTargetsException", - $fault: "client", + const exception = new TooManyTargetsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionResponse = async ( @@ -4070,13 +3051,11 @@ const deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerExceptionRespo ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyUniqueTargetGroupsPerLoadBalancerException(body.Error, context); - const contents: TooManyUniqueTargetGroupsPerLoadBalancerException = { - name: "TooManyUniqueTargetGroupsPerLoadBalancerException", - $fault: "client", + const exception = new TooManyUniqueTargetGroupsPerLoadBalancerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnsupportedProtocolExceptionResponse = async ( @@ -4085,13 +3064,11 @@ const deserializeAws_queryUnsupportedProtocolExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnsupportedProtocolException(body.Error, context); - const contents: UnsupportedProtocolException = { - name: "UnsupportedProtocolException", - $fault: "client", + const exception = new UnsupportedProtocolException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAction = (input: Action, context: __SerdeContext): any => { diff --git a/clients/client-elastic-load-balancing/src/index.ts b/clients/client-elastic-load-balancing/src/index.ts index 2a576cee55892..4f24eab21b0f0 100644 --- a/clients/client-elastic-load-balancing/src/index.ts +++ b/clients/client-elastic-load-balancing/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ElasticLoadBalancingServiceException } from "./models/ElasticLoadBalancingServiceException"; diff --git a/clients/client-elastic-load-balancing/src/models/ElasticLoadBalancingServiceException.ts b/clients/client-elastic-load-balancing/src/models/ElasticLoadBalancingServiceException.ts new file mode 100644 index 0000000000000..78a30bc4471a0 --- /dev/null +++ b/clients/client-elastic-load-balancing/src/models/ElasticLoadBalancingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElasticLoadBalancing service. + */ +export class ElasticLoadBalancingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElasticLoadBalancingServiceException.prototype); + } +} diff --git a/clients/client-elastic-load-balancing/src/models/models_0.ts b/clients/client-elastic-load-balancing/src/models/models_0.ts index dc6a2aaeed40b..46e7aa9d17e32 100644 --- a/clients/client-elastic-load-balancing/src/models/models_0.ts +++ b/clients/client-elastic-load-balancing/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElasticLoadBalancingServiceException as __BaseException } from "./ElasticLoadBalancingServiceException"; /** *

Information about the AccessLog attribute.

@@ -39,10 +42,22 @@ export namespace AccessLog { /** *

The specified load balancer does not exist.

*/ -export interface AccessPointNotFoundException extends __SmithyException, $MetadataBearer { - name: "AccessPointNotFoundException"; - $fault: "client"; +export class AccessPointNotFoundException extends __BaseException { + readonly name: "AccessPointNotFoundException" = "AccessPointNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessPointNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessPointNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -186,19 +201,43 @@ export namespace AddTagsOutput { /** *

A tag key was specified more than once.

*/ -export interface DuplicateTagKeysException extends __SmithyException, $MetadataBearer { - name: "DuplicateTagKeysException"; - $fault: "client"; +export class DuplicateTagKeysException extends __BaseException { + readonly name: "DuplicateTagKeysException" = "DuplicateTagKeysException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateTagKeysException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateTagKeysException.prototype); + this.Message = opts.Message; + } } /** *

The quota for the number of tags that can be assigned to a load balancer has been reached.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + } } /** @@ -271,19 +310,43 @@ export namespace ApplySecurityGroupsToLoadBalancerOutput { /** *

The requested configuration change is not valid.

*/ -export interface InvalidConfigurationRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidConfigurationRequestException"; - $fault: "client"; +export class InvalidConfigurationRequestException extends __BaseException { + readonly name: "InvalidConfigurationRequestException" = "InvalidConfigurationRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConfigurationRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConfigurationRequestException.prototype); + this.Message = opts.Message; + } } /** *

One or more of the specified security groups do not exist.

*/ -export interface InvalidSecurityGroupException extends __SmithyException, $MetadataBearer { - name: "InvalidSecurityGroupException"; - $fault: "client"; +export class InvalidSecurityGroupException extends __BaseException { + readonly name: "InvalidSecurityGroupException" = "InvalidSecurityGroupException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSecurityGroupException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSecurityGroupException.prototype); + this.Message = opts.Message; + } } /** @@ -332,19 +395,43 @@ export namespace AttachLoadBalancerToSubnetsOutput { /** *

The specified VPC has no associated Internet gateway.

*/ -export interface InvalidSubnetException extends __SmithyException, $MetadataBearer { - name: "InvalidSubnetException"; - $fault: "client"; +export class InvalidSubnetException extends __BaseException { + readonly name: "InvalidSubnetException" = "InvalidSubnetException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnetException.prototype); + this.Message = opts.Message; + } } /** *

One or more of the specified subnets do not exist.

*/ -export interface SubnetNotFoundException extends __SmithyException, $MetadataBearer { - name: "SubnetNotFoundException"; - $fault: "client"; +export class SubnetNotFoundException extends __BaseException { + readonly name: "SubnetNotFoundException" = "SubnetNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -376,10 +463,22 @@ export namespace BackendServerDescription { * or AWS Certificate Manager (ACM). Note that if you recently uploaded the certificate to IAM, this error might * indicate that the certificate is not fully available yet.

*/ -export interface CertificateNotFoundException extends __SmithyException, $MetadataBearer { - name: "CertificateNotFoundException"; - $fault: "client"; +export class CertificateNotFoundException extends __BaseException { + readonly name: "CertificateNotFoundException" = "CertificateNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -686,19 +785,43 @@ export namespace CreateAppCookieStickinessPolicyOutput { /** *

A policy with the specified name already exists for this load balancer.

*/ -export interface DuplicatePolicyNameException extends __SmithyException, $MetadataBearer { - name: "DuplicatePolicyNameException"; - $fault: "client"; +export class DuplicatePolicyNameException extends __BaseException { + readonly name: "DuplicatePolicyNameException" = "DuplicatePolicyNameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicatePolicyNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicatePolicyNameException.prototype); + this.Message = opts.Message; + } } /** *

The quota for the number of policies for this load balancer has been reached.

*/ -export interface TooManyPoliciesException extends __SmithyException, $MetadataBearer { - name: "TooManyPoliciesException"; - $fault: "client"; +export class TooManyPoliciesException extends __BaseException { + readonly name: "TooManyPoliciesException" = "TooManyPoliciesException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyPoliciesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyPoliciesException.prototype); + this.Message = opts.Message; + } } /** @@ -747,46 +870,106 @@ export namespace CreateLBCookieStickinessPolicyOutput { /** *

The specified load balancer name already exists for this account.

*/ -export interface DuplicateAccessPointNameException extends __SmithyException, $MetadataBearer { - name: "DuplicateAccessPointNameException"; - $fault: "client"; +export class DuplicateAccessPointNameException extends __BaseException { + readonly name: "DuplicateAccessPointNameException" = "DuplicateAccessPointNameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateAccessPointNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateAccessPointNameException.prototype); + this.Message = opts.Message; + } } /** *

The specified value for the schema is not valid. You can only specify a scheme for load balancers in a VPC.

*/ -export interface InvalidSchemeException extends __SmithyException, $MetadataBearer { - name: "InvalidSchemeException"; - $fault: "client"; +export class InvalidSchemeException extends __BaseException { + readonly name: "InvalidSchemeException" = "InvalidSchemeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSchemeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSchemeException.prototype); + this.Message = opts.Message; + } } /** *

This operation is not allowed.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + this.Message = opts.Message; + } } /** *

The quota for the number of load balancers has been reached.

*/ -export interface TooManyAccessPointsException extends __SmithyException, $MetadataBearer { - name: "TooManyAccessPointsException"; - $fault: "client"; +export class TooManyAccessPointsException extends __BaseException { + readonly name: "TooManyAccessPointsException" = "TooManyAccessPointsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyAccessPointsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyAccessPointsException.prototype); + this.Message = opts.Message; + } } /** *

The specified protocol or signature version is not supported.

*/ -export interface UnsupportedProtocolException extends __SmithyException, $MetadataBearer { - name: "UnsupportedProtocolException"; - $fault: "client"; +export class UnsupportedProtocolException extends __BaseException { + readonly name: "UnsupportedProtocolException" = "UnsupportedProtocolException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedProtocolException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedProtocolException.prototype); + this.Message = opts.Message; + } } /** @@ -830,10 +1013,22 @@ export namespace CreateLoadBalancerListenerOutput { /** *

A listener already exists for the specified load balancer name and port, but with a different instance port, protocol, or SSL certificate.

*/ -export interface DuplicateListenerException extends __SmithyException, $MetadataBearer { - name: "DuplicateListenerException"; - $fault: "client"; +export class DuplicateListenerException extends __BaseException { + readonly name: "DuplicateListenerException" = "DuplicateListenerException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateListenerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateListenerException.prototype); + this.Message = opts.Message; + } } /** @@ -912,10 +1107,22 @@ export namespace CreateLoadBalancerPolicyOutput { /** *

One or more of the specified policy types do not exist.

*/ -export interface PolicyTypeNotFoundException extends __SmithyException, $MetadataBearer { - name: "PolicyTypeNotFoundException"; - $fault: "client"; +export class PolicyTypeNotFoundException extends __BaseException { + readonly name: "PolicyTypeNotFoundException" = "PolicyTypeNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyTypeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyTypeNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -1049,10 +1256,22 @@ export namespace DeleteLoadBalancerPolicyOutput { /** *

A request made by Elastic Load Balancing to another service exceeds the maximum request rate permitted for your account.

*/ -export interface DependencyThrottleException extends __SmithyException, $MetadataBearer { - name: "DependencyThrottleException"; - $fault: "client"; +export class DependencyThrottleException extends __BaseException { + readonly name: "DependencyThrottleException" = "DependencyThrottleException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyThrottleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DependencyThrottleException.prototype); + this.Message = opts.Message; + } } /** @@ -1120,10 +1339,22 @@ export namespace DeregisterEndPointsOutput { /** *

The specified endpoint is not valid.

*/ -export interface InvalidEndPointException extends __SmithyException, $MetadataBearer { - name: "InvalidEndPointException"; - $fault: "client"; +export class InvalidEndPointException extends __BaseException { + readonly name: "InvalidEndPointException" = "InvalidEndPointException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndPointException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndPointException.prototype); + this.Message = opts.Message; + } } /** @@ -1691,10 +1922,22 @@ export namespace DescribeLoadBalancerAttributesOutput { /** *

The specified load balancer attribute does not exist.

*/ -export interface LoadBalancerAttributeNotFoundException extends __SmithyException, $MetadataBearer { - name: "LoadBalancerAttributeNotFoundException"; - $fault: "client"; +export class LoadBalancerAttributeNotFoundException extends __BaseException { + readonly name: "LoadBalancerAttributeNotFoundException" = "LoadBalancerAttributeNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LoadBalancerAttributeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LoadBalancerAttributeNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -1796,10 +2039,22 @@ export namespace DescribeLoadBalancerPoliciesOutput { /** *

One or more of the specified policies do not exist.

*/ -export interface PolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "PolicyNotFoundException"; - $fault: "client"; +export class PolicyNotFoundException extends __BaseException { + readonly name: "PolicyNotFoundException" = "PolicyNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -2222,10 +2477,22 @@ export namespace RemoveTagsOutput { /** *

The load balancer does not have a listener configured at the specified port.

*/ -export interface ListenerNotFoundException extends __SmithyException, $MetadataBearer { - name: "ListenerNotFoundException"; - $fault: "client"; +export class ListenerNotFoundException extends __BaseException { + readonly name: "ListenerNotFoundException" = "ListenerNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ListenerNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ListenerNotFoundException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-elastic-load-balancing/src/protocols/Aws_query.ts b/clients/client-elastic-load-balancing/src/protocols/Aws_query.ts index 97058fbb19779..ddbf32a328df7 100644 --- a/clients/client-elastic-load-balancing/src/protocols/Aws_query.ts +++ b/clients/client-elastic-load-balancing/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -122,6 +121,7 @@ import { SetLoadBalancerPoliciesOfListenerCommandInput, SetLoadBalancerPoliciesOfListenerCommandOutput, } from "../commands/SetLoadBalancerPoliciesOfListenerCommand"; +import { ElasticLoadBalancingServiceException as __BaseException } from "../models/ElasticLoadBalancingServiceException"; import { AccessLog, AccessPointNotFoundException, @@ -720,49 +720,28 @@ const deserializeAws_queryAddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.elasticloadbalancing#DuplicateTagKeysException": - response = { - ...(await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancing#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryApplySecurityGroupsToLoadBalancerCommand = async ( @@ -793,49 +772,28 @@ const deserializeAws_queryApplySecurityGroupsToLoadBalancerCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSecurityGroupException": case "com.amazonaws.elasticloadbalancing#InvalidSecurityGroupException": - response = { - ...(await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAttachLoadBalancerToSubnetsCommand = async ( @@ -863,57 +821,31 @@ const deserializeAws_queryAttachLoadBalancerToSubnetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSubnetException": case "com.amazonaws.elasticloadbalancing#InvalidSubnetException": - response = { - ...(await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context); case "SubnetNotFoundException": case "com.amazonaws.elasticloadbalancing#SubnetNotFoundException": - response = { - ...(await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryConfigureHealthCheckCommand = async ( @@ -941,33 +873,22 @@ const deserializeAws_queryConfigureHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateAppCookieStickinessPolicyCommand = async ( @@ -998,57 +919,31 @@ const deserializeAws_queryCreateAppCookieStickinessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "DuplicatePolicyNameException": case "com.amazonaws.elasticloadbalancing#DuplicatePolicyNameException": - response = { - ...(await deserializeAws_queryDuplicatePolicyNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicatePolicyNameExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "TooManyPoliciesException": case "com.amazonaws.elasticloadbalancing#TooManyPoliciesException": - response = { - ...(await deserializeAws_queryTooManyPoliciesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyPoliciesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLBCookieStickinessPolicyCommand = async ( @@ -1079,57 +974,31 @@ const deserializeAws_queryCreateLBCookieStickinessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "DuplicatePolicyNameException": case "com.amazonaws.elasticloadbalancing#DuplicatePolicyNameException": - response = { - ...(await deserializeAws_queryDuplicatePolicyNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicatePolicyNameExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "TooManyPoliciesException": case "com.amazonaws.elasticloadbalancing#TooManyPoliciesException": - response = { - ...(await deserializeAws_queryTooManyPoliciesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyPoliciesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLoadBalancerCommand = async ( @@ -1157,121 +1026,55 @@ const deserializeAws_queryCreateLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateNotFoundException": case "com.amazonaws.elasticloadbalancing#CertificateNotFoundException": - response = { - ...(await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context); case "DuplicateAccessPointNameException": case "com.amazonaws.elasticloadbalancing#DuplicateAccessPointNameException": - response = { - ...(await deserializeAws_queryDuplicateAccessPointNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateAccessPointNameExceptionResponse(parsedOutput, context); case "DuplicateTagKeysException": case "com.amazonaws.elasticloadbalancing#DuplicateTagKeysException": - response = { - ...(await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateTagKeysExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "InvalidSchemeException": case "com.amazonaws.elasticloadbalancing#InvalidSchemeException": - response = { - ...(await deserializeAws_queryInvalidSchemeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSchemeExceptionResponse(parsedOutput, context); case "InvalidSecurityGroupException": case "com.amazonaws.elasticloadbalancing#InvalidSecurityGroupException": - response = { - ...(await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityGroupExceptionResponse(parsedOutput, context); case "InvalidSubnetException": case "com.amazonaws.elasticloadbalancing#InvalidSubnetException": - response = { - ...(await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.elasticloadbalancing#OperationNotPermittedException": - response = { - ...(await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOperationNotPermittedExceptionResponse(parsedOutput, context); case "SubnetNotFoundException": case "com.amazonaws.elasticloadbalancing#SubnetNotFoundException": - response = { - ...(await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetNotFoundExceptionResponse(parsedOutput, context); case "TooManyAccessPointsException": case "com.amazonaws.elasticloadbalancing#TooManyAccessPointsException": - response = { - ...(await deserializeAws_queryTooManyAccessPointsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyAccessPointsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.elasticloadbalancing#TooManyTagsException": - response = { - ...(await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyTagsExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancing#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLoadBalancerListenersCommand = async ( @@ -1299,65 +1102,34 @@ const deserializeAws_queryCreateLoadBalancerListenersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "CertificateNotFoundException": case "com.amazonaws.elasticloadbalancing#CertificateNotFoundException": - response = { - ...(await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context); case "DuplicateListenerException": case "com.amazonaws.elasticloadbalancing#DuplicateListenerException": - response = { - ...(await deserializeAws_queryDuplicateListenerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateListenerExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancing#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLoadBalancerPolicyCommand = async ( @@ -1385,65 +1157,34 @@ const deserializeAws_queryCreateLoadBalancerPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "DuplicatePolicyNameException": case "com.amazonaws.elasticloadbalancing#DuplicatePolicyNameException": - response = { - ...(await deserializeAws_queryDuplicatePolicyNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicatePolicyNameExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "PolicyTypeNotFoundException": case "com.amazonaws.elasticloadbalancing#PolicyTypeNotFoundException": - response = { - ...(await deserializeAws_queryPolicyTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyTypeNotFoundExceptionResponse(parsedOutput, context); case "TooManyPoliciesException": case "com.amazonaws.elasticloadbalancing#TooManyPoliciesException": - response = { - ...(await deserializeAws_queryTooManyPoliciesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyPoliciesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLoadBalancerCommand = async ( @@ -1471,25 +1212,19 @@ const deserializeAws_queryDeleteLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLoadBalancerListenersCommand = async ( @@ -1517,33 +1252,22 @@ const deserializeAws_queryDeleteLoadBalancerListenersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLoadBalancerPolicyCommand = async ( @@ -1571,41 +1295,25 @@ const deserializeAws_queryDeleteLoadBalancerPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeregisterInstancesFromLoadBalancerCommand = async ( @@ -1633,41 +1341,25 @@ const deserializeAws_queryDeregisterInstancesFromLoadBalancerCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidEndPointException": case "com.amazonaws.elasticloadbalancing#InvalidEndPointException": - response = { - ...(await deserializeAws_queryInvalidEndPointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEndPointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountLimitsCommand = async ( @@ -1695,25 +1387,19 @@ const deserializeAws_queryDescribeAccountLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeInstanceHealthCommand = async ( @@ -1741,41 +1427,25 @@ const deserializeAws_queryDescribeInstanceHealthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidEndPointException": case "com.amazonaws.elasticloadbalancing#InvalidEndPointException": - response = { - ...(await deserializeAws_queryInvalidEndPointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEndPointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancerAttributesCommand = async ( @@ -1806,41 +1476,25 @@ const deserializeAws_queryDescribeLoadBalancerAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "LoadBalancerAttributeNotFoundException": case "com.amazonaws.elasticloadbalancing#LoadBalancerAttributeNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerAttributeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerAttributeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancerPoliciesCommand = async ( @@ -1868,41 +1522,25 @@ const deserializeAws_queryDescribeLoadBalancerPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.elasticloadbalancing#PolicyNotFoundException": - response = { - ...(await deserializeAws_queryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancerPolicyTypesCommand = async ( @@ -1933,33 +1571,22 @@ const deserializeAws_queryDescribeLoadBalancerPolicyTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "PolicyTypeNotFoundException": case "com.amazonaws.elasticloadbalancing#PolicyTypeNotFoundException": - response = { - ...(await deserializeAws_queryPolicyTypeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyTypeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoadBalancersCommand = async ( @@ -1987,41 +1614,25 @@ const deserializeAws_queryDescribeLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "DependencyThrottleException": case "com.amazonaws.elasticloadbalancing#DependencyThrottleException": - response = { - ...(await deserializeAws_queryDependencyThrottleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependencyThrottleExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTagsCommand = async ( @@ -2049,33 +1660,22 @@ const deserializeAws_queryDescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachLoadBalancerFromSubnetsCommand = async ( @@ -2103,41 +1703,25 @@ const deserializeAws_queryDetachLoadBalancerFromSubnetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisableAvailabilityZonesForLoadBalancerCommand = async ( @@ -2168,41 +1752,25 @@ const deserializeAws_queryDisableAvailabilityZonesForLoadBalancerCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableAvailabilityZonesForLoadBalancerCommand = async ( @@ -2230,33 +1798,22 @@ const deserializeAws_queryEnableAvailabilityZonesForLoadBalancerCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyLoadBalancerAttributesCommand = async ( @@ -2284,49 +1841,28 @@ const deserializeAws_queryModifyLoadBalancerAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "LoadBalancerAttributeNotFoundException": case "com.amazonaws.elasticloadbalancing#LoadBalancerAttributeNotFoundException": - response = { - ...(await deserializeAws_queryLoadBalancerAttributeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLoadBalancerAttributeNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRegisterInstancesWithLoadBalancerCommand = async ( @@ -2354,41 +1890,25 @@ const deserializeAws_queryRegisterInstancesWithLoadBalancerCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidEndPointException": case "com.amazonaws.elasticloadbalancing#InvalidEndPointException": - response = { - ...(await deserializeAws_queryInvalidEndPointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEndPointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveTagsCommand = async ( @@ -2416,33 +1936,22 @@ const deserializeAws_queryRemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetLoadBalancerListenerSSLCertificateCommand = async ( @@ -2473,65 +1982,34 @@ const deserializeAws_querySetLoadBalancerListenerSSLCertificateCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "CertificateNotFoundException": case "com.amazonaws.elasticloadbalancing#CertificateNotFoundException": - response = { - ...(await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancing#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedProtocolException": case "com.amazonaws.elasticloadbalancing#UnsupportedProtocolException": - response = { - ...(await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedProtocolExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetLoadBalancerPoliciesForBackendServerCommand = async ( @@ -2562,49 +2040,28 @@ const deserializeAws_querySetLoadBalancerPoliciesForBackendServerCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.elasticloadbalancing#PolicyNotFoundException": - response = { - ...(await deserializeAws_queryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetLoadBalancerPoliciesOfListenerCommand = async ( @@ -2635,57 +2092,31 @@ const deserializeAws_querySetLoadBalancerPoliciesOfListenerCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessPointNotFoundException": case "com.amazonaws.elasticloadbalancing#AccessPointNotFoundException": - response = { - ...(await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessPointNotFoundExceptionResponse(parsedOutput, context); case "InvalidConfigurationRequestException": case "com.amazonaws.elasticloadbalancing#InvalidConfigurationRequestException": - response = { - ...(await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationRequestExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.elasticloadbalancing#ListenerNotFoundException": - response = { - ...(await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryListenerNotFoundExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.elasticloadbalancing#PolicyNotFoundException": - response = { - ...(await deserializeAws_queryPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAccessPointNotFoundExceptionResponse = async ( @@ -2694,13 +2125,11 @@ const deserializeAws_queryAccessPointNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAccessPointNotFoundException(body.Error, context); - const contents: AccessPointNotFoundException = { - name: "AccessPointNotFoundException", - $fault: "client", + const exception = new AccessPointNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCertificateNotFoundExceptionResponse = async ( @@ -2709,13 +2138,11 @@ const deserializeAws_queryCertificateNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCertificateNotFoundException(body.Error, context); - const contents: CertificateNotFoundException = { - name: "CertificateNotFoundException", - $fault: "client", + const exception = new CertificateNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDependencyThrottleExceptionResponse = async ( @@ -2724,13 +2151,11 @@ const deserializeAws_queryDependencyThrottleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDependencyThrottleException(body.Error, context); - const contents: DependencyThrottleException = { - name: "DependencyThrottleException", - $fault: "client", + const exception = new DependencyThrottleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateAccessPointNameExceptionResponse = async ( @@ -2739,13 +2164,11 @@ const deserializeAws_queryDuplicateAccessPointNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateAccessPointNameException(body.Error, context); - const contents: DuplicateAccessPointNameException = { - name: "DuplicateAccessPointNameException", - $fault: "client", + const exception = new DuplicateAccessPointNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateListenerExceptionResponse = async ( @@ -2754,13 +2177,11 @@ const deserializeAws_queryDuplicateListenerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateListenerException(body.Error, context); - const contents: DuplicateListenerException = { - name: "DuplicateListenerException", - $fault: "client", + const exception = new DuplicateListenerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicatePolicyNameExceptionResponse = async ( @@ -2769,13 +2190,11 @@ const deserializeAws_queryDuplicatePolicyNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicatePolicyNameException(body.Error, context); - const contents: DuplicatePolicyNameException = { - name: "DuplicatePolicyNameException", - $fault: "client", + const exception = new DuplicatePolicyNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateTagKeysExceptionResponse = async ( @@ -2784,13 +2203,11 @@ const deserializeAws_queryDuplicateTagKeysExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateTagKeysException(body.Error, context); - const contents: DuplicateTagKeysException = { - name: "DuplicateTagKeysException", - $fault: "client", + const exception = new DuplicateTagKeysException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidConfigurationRequestExceptionResponse = async ( @@ -2799,13 +2216,11 @@ const deserializeAws_queryInvalidConfigurationRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidConfigurationRequestException(body.Error, context); - const contents: InvalidConfigurationRequestException = { - name: "InvalidConfigurationRequestException", - $fault: "client", + const exception = new InvalidConfigurationRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidEndPointExceptionResponse = async ( @@ -2814,13 +2229,11 @@ const deserializeAws_queryInvalidEndPointExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidEndPointException(body.Error, context); - const contents: InvalidEndPointException = { - name: "InvalidEndPointException", - $fault: "client", + const exception = new InvalidEndPointException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSchemeExceptionResponse = async ( @@ -2829,13 +2242,11 @@ const deserializeAws_queryInvalidSchemeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSchemeException(body.Error, context); - const contents: InvalidSchemeException = { - name: "InvalidSchemeException", - $fault: "client", + const exception = new InvalidSchemeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSecurityGroupExceptionResponse = async ( @@ -2844,13 +2255,11 @@ const deserializeAws_queryInvalidSecurityGroupExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSecurityGroupException(body.Error, context); - const contents: InvalidSecurityGroupException = { - name: "InvalidSecurityGroupException", - $fault: "client", + const exception = new InvalidSecurityGroupException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetExceptionResponse = async ( @@ -2859,13 +2268,11 @@ const deserializeAws_queryInvalidSubnetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnetException(body.Error, context); - const contents: InvalidSubnetException = { - name: "InvalidSubnetException", - $fault: "client", + const exception = new InvalidSubnetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryListenerNotFoundExceptionResponse = async ( @@ -2874,13 +2281,11 @@ const deserializeAws_queryListenerNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryListenerNotFoundException(body.Error, context); - const contents: ListenerNotFoundException = { - name: "ListenerNotFoundException", - $fault: "client", + const exception = new ListenerNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLoadBalancerAttributeNotFoundExceptionResponse = async ( @@ -2889,13 +2294,11 @@ const deserializeAws_queryLoadBalancerAttributeNotFoundExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLoadBalancerAttributeNotFoundException(body.Error, context); - const contents: LoadBalancerAttributeNotFoundException = { - name: "LoadBalancerAttributeNotFoundException", - $fault: "client", + const exception = new LoadBalancerAttributeNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOperationNotPermittedExceptionResponse = async ( @@ -2904,13 +2307,11 @@ const deserializeAws_queryOperationNotPermittedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOperationNotPermittedException(body.Error, context); - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", + const exception = new OperationNotPermittedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPolicyNotFoundExceptionResponse = async ( @@ -2919,13 +2320,11 @@ const deserializeAws_queryPolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPolicyNotFoundException(body.Error, context); - const contents: PolicyNotFoundException = { - name: "PolicyNotFoundException", - $fault: "client", + const exception = new PolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPolicyTypeNotFoundExceptionResponse = async ( @@ -2934,13 +2333,11 @@ const deserializeAws_queryPolicyTypeNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPolicyTypeNotFoundException(body.Error, context); - const contents: PolicyTypeNotFoundException = { - name: "PolicyTypeNotFoundException", - $fault: "client", + const exception = new PolicyTypeNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetNotFoundExceptionResponse = async ( @@ -2949,13 +2346,11 @@ const deserializeAws_querySubnetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetNotFoundException(body.Error, context); - const contents: SubnetNotFoundException = { - name: "SubnetNotFoundException", - $fault: "client", + const exception = new SubnetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyAccessPointsExceptionResponse = async ( @@ -2964,13 +2359,11 @@ const deserializeAws_queryTooManyAccessPointsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyAccessPointsException(body.Error, context); - const contents: TooManyAccessPointsException = { - name: "TooManyAccessPointsException", - $fault: "client", + const exception = new TooManyAccessPointsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyPoliciesExceptionResponse = async ( @@ -2979,13 +2372,11 @@ const deserializeAws_queryTooManyPoliciesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyPoliciesException(body.Error, context); - const contents: TooManyPoliciesException = { - name: "TooManyPoliciesException", - $fault: "client", + const exception = new TooManyPoliciesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyTagsExceptionResponse = async ( @@ -2994,13 +2385,11 @@ const deserializeAws_queryTooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyTagsException(body.Error, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnsupportedProtocolExceptionResponse = async ( @@ -3009,13 +2398,11 @@ const deserializeAws_queryUnsupportedProtocolExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnsupportedProtocolException(body.Error, context); - const contents: UnsupportedProtocolException = { - name: "UnsupportedProtocolException", - $fault: "client", + const exception = new UnsupportedProtocolException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAccessLog = (input: AccessLog, context: __SerdeContext): any => { diff --git a/clients/client-elastic-transcoder/src/index.ts b/clients/client-elastic-transcoder/src/index.ts index b148d6e1f797a..1f233f94fc3be 100644 --- a/clients/client-elastic-transcoder/src/index.ts +++ b/clients/client-elastic-transcoder/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ElasticTranscoderServiceException } from "./models/ElasticTranscoderServiceException"; diff --git a/clients/client-elastic-transcoder/src/models/ElasticTranscoderServiceException.ts b/clients/client-elastic-transcoder/src/models/ElasticTranscoderServiceException.ts new file mode 100644 index 0000000000000..f94c3c0d4c6eb --- /dev/null +++ b/clients/client-elastic-transcoder/src/models/ElasticTranscoderServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElasticTranscoder service. + */ +export class ElasticTranscoderServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElasticTranscoderServiceException.prototype); + } +} diff --git a/clients/client-elastic-transcoder/src/models/models_0.ts b/clients/client-elastic-transcoder/src/models/models_0.ts index fa0ccb3d582fa..e83720ee72c62 100644 --- a/clients/client-elastic-transcoder/src/models/models_0.ts +++ b/clients/client-elastic-transcoder/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElasticTranscoderServiceException as __BaseException } from "./ElasticTranscoderServiceException"; /** *

General authentication failure. The request was not signed correctly.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -603,48 +616,98 @@ export namespace CancelJobResponse { }); } -export interface IncompatibleVersionException extends __SmithyException, $MetadataBearer { - name: "IncompatibleVersionException"; - $fault: "client"; - message: string | undefined; +export class IncompatibleVersionException extends __BaseException { + readonly name: "IncompatibleVersionException" = "IncompatibleVersionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleVersionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleVersionException.prototype); + } } /** *

Elastic Transcoder encountered an unexpected exception while trying to fulfill the request.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; - message: string | undefined; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + } } /** *

The resource you are attempting to change is in use. For example, you are attempting * to delete a pipeline that is currently in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message: string | undefined; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

The requested resource does not exist or is not available. For example, the pipeline * to which you're trying to add a job doesn't exist or is still being created.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

One or more required parameter values were not provided in the request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -2247,10 +2310,20 @@ export namespace CreateJobResponse { *

Too many operations for a given AWS account. For example, the number of pipelines * exceeds the maximum allowed.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message: string | undefined; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** diff --git a/clients/client-elastic-transcoder/src/protocols/Aws_restJson1.ts b/clients/client-elastic-transcoder/src/protocols/Aws_restJson1.ts index 689e5b151e1d5..0dee899d5e3aa 100644 --- a/clients/client-elastic-transcoder/src/protocols/Aws_restJson1.ts +++ b/clients/client-elastic-transcoder/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelJobCommandInput, CancelJobCommandOutput } from "../commands/CancelJobCommand"; @@ -38,6 +37,7 @@ import { UpdatePipelineStatusCommandInput, UpdatePipelineStatusCommandOutput, } from "../commands/UpdatePipelineStatusCommand"; +import { ElasticTranscoderServiceException as __BaseException } from "../models/ElasticTranscoderServiceException"; import { AccessDeniedException, Artwork, @@ -645,73 +645,37 @@ const deserializeAws_restJson1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elastictranscoder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobCommand = async ( @@ -740,73 +704,37 @@ const deserializeAws_restJson1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elastictranscoder#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePipelineCommand = async ( @@ -839,73 +767,37 @@ const deserializeAws_restJson1CreatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elastictranscoder#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePresetCommand = async ( @@ -938,65 +830,34 @@ const deserializeAws_restJson1CreatePresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elastictranscoder#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePipelineCommand = async ( @@ -1021,73 +882,37 @@ const deserializeAws_restJson1DeletePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elastictranscoder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePresetCommand = async ( @@ -1112,65 +937,34 @@ const deserializeAws_restJson1DeletePresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsByPipelineCommand = async ( @@ -1203,65 +997,34 @@ const deserializeAws_restJson1ListJobsByPipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsByStatusCommand = async ( @@ -1294,65 +1057,34 @@ const deserializeAws_restJson1ListJobsByStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPipelinesCommand = async ( @@ -1385,57 +1117,31 @@ const deserializeAws_restJson1ListPipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPresetsCommand = async ( @@ -1468,57 +1174,31 @@ const deserializeAws_restJson1ListPresetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ReadJobCommand = async ( @@ -1547,65 +1227,34 @@ const deserializeAws_restJson1ReadJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ReadPipelineCommand = async ( @@ -1638,65 +1287,34 @@ const deserializeAws_restJson1ReadPipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ReadPresetCommand = async ( @@ -1725,65 +1343,34 @@ const deserializeAws_restJson1ReadPresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestRoleCommand = async ( @@ -1816,65 +1403,34 @@ const deserializeAws_restJson1TestRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePipelineCommand = async ( @@ -1907,73 +1463,37 @@ const deserializeAws_restJson1UpdatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elastictranscoder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePipelineNotificationsCommand = async ( @@ -2002,73 +1522,37 @@ const deserializeAws_restJson1UpdatePipelineNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elastictranscoder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePipelineStatusCommand = async ( @@ -2097,192 +1581,149 @@ const deserializeAws_restJson1UpdatePipelineStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elastictranscoder#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IncompatibleVersionException": case "com.amazonaws.elastictranscoder#IncompatibleVersionException": - response = { - ...(await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IncompatibleVersionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.elastictranscoder#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.elastictranscoder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elastictranscoder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elastictranscoder#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IncompatibleVersionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IncompatibleVersionException = { - name: "IncompatibleVersionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new IncompatibleVersionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccessControls = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-elasticache/src/index.ts b/clients/client-elasticache/src/index.ts index 0658e8545701a..486f6e93826b2 100644 --- a/clients/client-elasticache/src/index.ts +++ b/clients/client-elasticache/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ElastiCacheServiceException } from "./models/ElastiCacheServiceException"; diff --git a/clients/client-elasticache/src/models/ElastiCacheServiceException.ts b/clients/client-elasticache/src/models/ElastiCacheServiceException.ts new file mode 100644 index 0000000000000..3435171bc0c51 --- /dev/null +++ b/clients/client-elasticache/src/models/ElastiCacheServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElastiCache service. + */ +export class ElastiCacheServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElastiCacheServiceException.prototype); + } +} diff --git a/clients/client-elasticache/src/models/models_0.ts b/clients/client-elasticache/src/models/models_0.ts index c8e68f92342d3..948e4ca0a4f0d 100644 --- a/clients/client-elasticache/src/models/models_0.ts +++ b/clients/client-elasticache/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElastiCacheServiceException as __BaseException } from "./ElastiCacheServiceException"; /** *

A tag that can be added to an ElastiCache cluster or replication group. @@ -57,82 +60,172 @@ export namespace AddTagsToResourceMessage { /** *

The requested cluster ID does not refer to an existing cluster.

*/ -export interface CacheClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CacheClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class CacheClusterNotFoundFault extends __BaseException { + readonly name: "CacheClusterNotFoundFault" = "CacheClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheClusterNotFoundFault.prototype); + } } /** *

The requested cache parameter group name does not refer to an existing cache parameter group.

*/ -export interface CacheParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CacheParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class CacheParameterGroupNotFoundFault extends __BaseException { + readonly name: "CacheParameterGroupNotFoundFault" = "CacheParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheParameterGroupNotFoundFault.prototype); + } } /** *

The requested cache security group name does not refer to an existing cache security group.

*/ -export interface CacheSecurityGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CacheSecurityGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class CacheSecurityGroupNotFoundFault extends __BaseException { + readonly name: "CacheSecurityGroupNotFoundFault" = "CacheSecurityGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSecurityGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSecurityGroupNotFoundFault.prototype); + } } /** *

The requested cache subnet group name does not refer to an existing cache subnet group.

*/ -export interface CacheSubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CacheSubnetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class CacheSubnetGroupNotFoundFault extends __BaseException { + readonly name: "CacheSubnetGroupNotFoundFault" = "CacheSubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSubnetGroupNotFoundFault.prototype); + } } /** *

The requested Amazon Resource Name (ARN) does not refer to an existing resource.

*/ -export interface InvalidARNFault extends __SmithyException, $MetadataBearer { - name: "InvalidARNFault"; - $fault: "client"; - message?: string; +export class InvalidARNFault extends __BaseException { + readonly name: "InvalidARNFault" = "InvalidARNFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidARNFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidARNFault.prototype); + } } /** *

The requested replication group is not in the available state.

*/ -export interface InvalidReplicationGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidReplicationGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidReplicationGroupStateFault extends __BaseException { + readonly name: "InvalidReplicationGroupStateFault" = "InvalidReplicationGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReplicationGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReplicationGroupStateFault.prototype); + } } /** *

The specified replication group does not exist.

*/ -export interface ReplicationGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReplicationGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class ReplicationGroupNotFoundFault extends __BaseException { + readonly name: "ReplicationGroupNotFoundFault" = "ReplicationGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationGroupNotFoundFault.prototype); + } } /** *

The requested reserved cache node was not found.

*/ -export interface ReservedCacheNodeNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedCacheNodeNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedCacheNodeNotFoundFault extends __BaseException { + readonly name: "ReservedCacheNodeNotFoundFault" = "ReservedCacheNodeNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedCacheNodeNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedCacheNodeNotFoundFault.prototype); + } } /** *

The requested snapshot name does not refer to an existing snapshot.

*/ -export interface SnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class SnapshotNotFoundFault extends __BaseException { + readonly name: "SnapshotNotFoundFault" = "SnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotNotFoundFault.prototype); + } } /** @@ -158,28 +251,58 @@ export namespace TagListMessage { /** *

The request cannot be processed because it would cause the resource to have more than the allowed number of tags. The maximum number of tags permitted on a resource is 50.

*/ -export interface TagQuotaPerResourceExceeded extends __SmithyException, $MetadataBearer { - name: "TagQuotaPerResourceExceeded"; - $fault: "client"; - message?: string; +export class TagQuotaPerResourceExceeded extends __BaseException { + readonly name: "TagQuotaPerResourceExceeded" = "TagQuotaPerResourceExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagQuotaPerResourceExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagQuotaPerResourceExceeded.prototype); + } } /** *

The user group was not found or does not exist

*/ -export interface UserGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "UserGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class UserGroupNotFoundFault extends __BaseException { + readonly name: "UserGroupNotFoundFault" = "UserGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserGroupNotFoundFault.prototype); + } } /** *

The user does not exist or could not be found.

*/ -export interface UserNotFoundFault extends __SmithyException, $MetadataBearer { - name: "UserNotFoundFault"; - $fault: "client"; - message?: string; +export class UserNotFoundFault extends __BaseException { + readonly name: "UserNotFoundFault" = "UserNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserNotFoundFault.prototype); + } } /** @@ -215,10 +338,20 @@ export namespace AllowedNodeTypeModificationsMessage { /** *

The specified Amazon EC2 security group is already authorized for the specified cache security group.

*/ -export interface AuthorizationAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class AuthorizationAlreadyExistsFault extends __BaseException { + readonly name: "AuthorizationAlreadyExistsFault" = "AuthorizationAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationAlreadyExistsFault.prototype); + } } /** @@ -373,34 +506,58 @@ export namespace AuthorizeCacheSecurityGroupIngressResult { /** *

The current state of the cache security group does not allow deletion.

*/ -export interface InvalidCacheSecurityGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidCacheSecurityGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidCacheSecurityGroupStateFault extends __BaseException { + readonly name: "InvalidCacheSecurityGroupStateFault" = "InvalidCacheSecurityGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCacheSecurityGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCacheSecurityGroupStateFault.prototype); + } } /** *

Two or more incompatible parameters were specified.

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; /** - *

Two or more parameters that must not be used together were used together.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + } } /** *

The value for a parameter is invalid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; /** - *

A parameter value is invalid.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } export interface BatchApplyUpdateActionMessage { @@ -432,10 +589,20 @@ export namespace BatchApplyUpdateActionMessage { /** *

The service update doesn't exist

*/ -export interface ServiceUpdateNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ServiceUpdateNotFoundFault"; - $fault: "client"; - message?: string; +export class ServiceUpdateNotFoundFault extends __BaseException { + readonly name: "ServiceUpdateNotFoundFault" = "ServiceUpdateNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUpdateNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUpdateNotFoundFault.prototype); + } } export enum UpdateActionStatus { @@ -1243,10 +1410,20 @@ export namespace CompleteMigrationResponse { /** *

The designated replication group is not available for data migration.

*/ -export interface ReplicationGroupNotUnderMigrationFault extends __SmithyException, $MetadataBearer { - name: "ReplicationGroupNotUnderMigrationFault"; - $fault: "client"; - message?: string; +export class ReplicationGroupNotUnderMigrationFault extends __BaseException { + readonly name: "ReplicationGroupNotUnderMigrationFault" = "ReplicationGroupNotUnderMigrationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationGroupNotUnderMigrationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationGroupNotUnderMigrationFault.prototype); + } } /** @@ -1910,46 +2087,96 @@ export namespace CopySnapshotResult { /** *

The current state of the snapshot does not allow the requested operation to occur.

*/ -export interface InvalidSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidSnapshotStateFault extends __BaseException { + readonly name: "InvalidSnapshotStateFault" = "InvalidSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSnapshotStateFault.prototype); + } } /** *

You already have a snapshot with the given name.

*/ -export interface SnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "SnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class SnapshotAlreadyExistsFault extends __BaseException { + readonly name: "SnapshotAlreadyExistsFault" = "SnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the maximum number of snapshots.

*/ -export interface SnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SnapshotQuotaExceededFault extends __BaseException { + readonly name: "SnapshotQuotaExceededFault" = "SnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotQuotaExceededFault.prototype); + } } /** *

You already have a cluster with the given identifier.

*/ -export interface CacheClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "CacheClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class CacheClusterAlreadyExistsFault extends __BaseException { + readonly name: "CacheClusterAlreadyExistsFault" = "CacheClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheClusterAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of clusters per customer.

*/ -export interface ClusterQuotaForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterQuotaForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class ClusterQuotaForCustomerExceededFault extends __BaseException { + readonly name: "ClusterQuotaForCustomerExceededFault" = "ClusterQuotaForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterQuotaForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterQuotaForCustomerExceededFault.prototype); + } } export enum AZMode { @@ -3517,55 +3744,115 @@ export namespace CreateCacheClusterResult { *

The requested cache node type is not available in the specified Availability Zone. * For more information, see InsufficientCacheClusterCapacity in the ElastiCache User Guide.

*/ -export interface InsufficientCacheClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientCacheClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientCacheClusterCapacityFault extends __BaseException { + readonly name: "InsufficientCacheClusterCapacityFault" = "InsufficientCacheClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientCacheClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientCacheClusterCapacityFault.prototype); + } } /** *

The VPC network is in an invalid state.

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; - message?: string; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of cache nodes in a single cluster.

*/ -export interface NodeQuotaForClusterExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeQuotaForClusterExceededFault"; - $fault: "client"; - message?: string; +export class NodeQuotaForClusterExceededFault extends __BaseException { + readonly name: "NodeQuotaForClusterExceededFault" = "NodeQuotaForClusterExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeQuotaForClusterExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeQuotaForClusterExceededFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of cache nodes per customer.

*/ -export interface NodeQuotaForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeQuotaForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class NodeQuotaForCustomerExceededFault extends __BaseException { + readonly name: "NodeQuotaForCustomerExceededFault" = "NodeQuotaForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeQuotaForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeQuotaForCustomerExceededFault.prototype); + } } /** *

A cache parameter group with the requested name already exists.

*/ -export interface CacheParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "CacheParameterGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class CacheParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "CacheParameterGroupAlreadyExistsFault" = "CacheParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheParameterGroupAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the maximum number of cache security groups.

*/ -export interface CacheParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "CacheParameterGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class CacheParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "CacheParameterGroupQuotaExceededFault" = "CacheParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheParameterGroupQuotaExceededFault.prototype); + } } /** @@ -3682,28 +3969,58 @@ export namespace CreateCacheParameterGroupResult { /** *

The current state of the cache parameter group does not allow the requested operation to occur.

*/ -export interface InvalidCacheParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidCacheParameterGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidCacheParameterGroupStateFault extends __BaseException { + readonly name: "InvalidCacheParameterGroupStateFault" = "InvalidCacheParameterGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCacheParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCacheParameterGroupStateFault.prototype); + } } /** *

A cache security group with the specified name already exists.

*/ -export interface CacheSecurityGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "CacheSecurityGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class CacheSecurityGroupAlreadyExistsFault extends __BaseException { + readonly name: "CacheSecurityGroupAlreadyExistsFault" = "CacheSecurityGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSecurityGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSecurityGroupAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of cache security groups.

*/ -export interface CacheSecurityGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "CacheSecurityGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class CacheSecurityGroupQuotaExceededFault extends __BaseException { + readonly name: "CacheSecurityGroupQuotaExceededFault" = "CacheSecurityGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSecurityGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSecurityGroupQuotaExceededFault.prototype); + } } /** @@ -3774,28 +4091,58 @@ export namespace CreateCacheSecurityGroupResult { /** *

The requested cache subnet group name is already in use by an existing cache subnet group.

*/ -export interface CacheSubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "CacheSubnetGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class CacheSubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "CacheSubnetGroupAlreadyExistsFault" = "CacheSubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSubnetGroupAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of cache subnet groups.

*/ -export interface CacheSubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "CacheSubnetGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class CacheSubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "CacheSubnetGroupQuotaExceededFault" = "CacheSubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSubnetGroupQuotaExceededFault.prototype); + } } /** *

The request cannot be processed because it would exceed the allowed number of subnets in a cache subnet group.

*/ -export interface CacheSubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "CacheSubnetQuotaExceededFault"; - $fault: "client"; - message?: string; +export class CacheSubnetQuotaExceededFault extends __BaseException { + readonly name: "CacheSubnetQuotaExceededFault" = "CacheSubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSubnetQuotaExceededFault.prototype); + } } /** @@ -3985,20 +4332,40 @@ export namespace CreateCacheSubnetGroupResult { /** *

An invalid subnet identifier was specified.

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; - message?: string; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

At least one subnet ID does not match the other subnet IDs. This mismatch typically occurs when a * user sets one subnet ID to a regional Availability Zone and a different one to an outpost. Or when a user sets the subnet ID to an Outpost when not subscribed on this service.

*/ -export interface SubnetNotAllowedFault extends __SmithyException, $MetadataBearer { - name: "SubnetNotAllowedFault"; - $fault: "client"; - message?: string; +export class SubnetNotAllowedFault extends __BaseException { + readonly name: "SubnetNotAllowedFault" = "SubnetNotAllowedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetNotAllowedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetNotAllowedFault.prototype); + } } export interface CreateGlobalReplicationGroupMessage { @@ -4223,19 +4590,39 @@ export namespace CreateGlobalReplicationGroupResult { /** *

The Global datastore name already exists.

*/ -export interface GlobalReplicationGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "GlobalReplicationGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class GlobalReplicationGroupAlreadyExistsFault extends __BaseException { + readonly name: "GlobalReplicationGroupAlreadyExistsFault" = "GlobalReplicationGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalReplicationGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalReplicationGroupAlreadyExistsFault.prototype); + } } /** *

The specified service linked role (SLR) was not found.

*/ -export interface ServiceLinkedRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ServiceLinkedRoleNotFoundFault"; - $fault: "client"; - message?: string; +export class ServiceLinkedRoleNotFoundFault extends __BaseException { + readonly name: "ServiceLinkedRoleNotFoundFault" = "ServiceLinkedRoleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLinkedRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLinkedRoleNotFoundFault.prototype); + } } /** @@ -4899,56 +5286,116 @@ export namespace CreateReplicationGroupResult { /** *

The Global datastore does not exist

*/ -export interface GlobalReplicationGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "GlobalReplicationGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class GlobalReplicationGroupNotFoundFault extends __BaseException { + readonly name: "GlobalReplicationGroupNotFoundFault" = "GlobalReplicationGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalReplicationGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalReplicationGroupNotFoundFault.prototype); + } } /** *

The requested cluster is not in the available state.

*/ -export interface InvalidCacheClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidCacheClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidCacheClusterStateFault extends __BaseException { + readonly name: "InvalidCacheClusterStateFault" = "InvalidCacheClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCacheClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCacheClusterStateFault.prototype); + } } /** *

The Global datastore is not available or in primary-only state.

*/ -export interface InvalidGlobalReplicationGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidGlobalReplicationGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidGlobalReplicationGroupStateFault extends __BaseException { + readonly name: "InvalidGlobalReplicationGroupStateFault" = "InvalidGlobalReplicationGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGlobalReplicationGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGlobalReplicationGroupStateFault.prototype); + } } /** *

The user group is not in an active state.

*/ -export interface InvalidUserGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidUserGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidUserGroupStateFault extends __BaseException { + readonly name: "InvalidUserGroupStateFault" = "InvalidUserGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUserGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUserGroupStateFault.prototype); + } } /** *

The request cannot be processed because it would exceed the maximum allowed number * of node groups (shards) in a single replication group. The default maximum is 90

*/ -export interface NodeGroupsPerReplicationGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeGroupsPerReplicationGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class NodeGroupsPerReplicationGroupQuotaExceededFault extends __BaseException { + readonly name: "NodeGroupsPerReplicationGroupQuotaExceededFault" = "NodeGroupsPerReplicationGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeGroupsPerReplicationGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeGroupsPerReplicationGroupQuotaExceededFault.prototype); + } } /** *

The specified replication group already exists.

*/ -export interface ReplicationGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ReplicationGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ReplicationGroupAlreadyExistsFault extends __BaseException { + readonly name: "ReplicationGroupAlreadyExistsFault" = "ReplicationGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationGroupAlreadyExistsFault.prototype); + } } /** @@ -5019,10 +5466,20 @@ export namespace CreateSnapshotResult { * *

Neither of these are supported by ElastiCache.

*/ -export interface SnapshotFeatureNotSupportedFault extends __SmithyException, $MetadataBearer { - name: "SnapshotFeatureNotSupportedFault"; - $fault: "client"; - message?: string; +export class SnapshotFeatureNotSupportedFault extends __BaseException { + readonly name: "SnapshotFeatureNotSupportedFault" = "SnapshotFeatureNotSupportedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotFeatureNotSupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotFeatureNotSupportedFault.prototype); + } } export interface CreateUserMessage { @@ -5074,10 +5531,20 @@ export namespace CreateUserMessage { /** *

A user with this username already exists.

*/ -export interface DuplicateUserNameFault extends __SmithyException, $MetadataBearer { - name: "DuplicateUserNameFault"; - $fault: "client"; - message?: string; +export class DuplicateUserNameFault extends __BaseException { + readonly name: "DuplicateUserNameFault" = "DuplicateUserNameFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateUserNameFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateUserNameFault.prototype); + } } export enum AuthenticationType { @@ -5168,19 +5635,39 @@ export namespace User { /** *

A user with this ID already exists.

*/ -export interface UserAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "UserAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class UserAlreadyExistsFault extends __BaseException { + readonly name: "UserAlreadyExistsFault" = "UserAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserAlreadyExistsFault.prototype); + } } /** *

The quota of users has been exceeded.

*/ -export interface UserQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "UserQuotaExceededFault"; - $fault: "client"; - message?: string; +export class UserQuotaExceededFault extends __BaseException { + readonly name: "UserQuotaExceededFault" = "UserQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserQuotaExceededFault.prototype); + } } export interface CreateUserGroupMessage { @@ -5217,10 +5704,20 @@ export namespace CreateUserGroupMessage { /** *

You must add default user to a user group.

*/ -export interface DefaultUserRequired extends __SmithyException, $MetadataBearer { - name: "DefaultUserRequired"; - $fault: "client"; - message?: string; +export class DefaultUserRequired extends __BaseException { + readonly name: "DefaultUserRequired" = "DefaultUserRequired"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DefaultUserRequired", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DefaultUserRequired.prototype); + } } /** @@ -5301,19 +5798,39 @@ export namespace UserGroup { /** *

The user group with this ID already exists.

*/ -export interface UserGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "UserGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class UserGroupAlreadyExistsFault extends __BaseException { + readonly name: "UserGroupAlreadyExistsFault" = "UserGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserGroupAlreadyExistsFault.prototype); + } } /** *

The number of users exceeds the user group limit.

*/ -export interface UserGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "UserGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class UserGroupQuotaExceededFault extends __BaseException { + readonly name: "UserGroupQuotaExceededFault" = "UserGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserGroupQuotaExceededFault.prototype); + } } export interface DecreaseNodeGroupsInGlobalReplicationGroupMessage { @@ -5521,10 +6038,20 @@ export namespace DecreaseReplicaCountResult { /** *

The operation was not performed because no changes were required.

*/ -export interface NoOperationFault extends __SmithyException, $MetadataBearer { - name: "NoOperationFault"; - $fault: "client"; - message?: string; +export class NoOperationFault extends __BaseException { + readonly name: "NoOperationFault" = "NoOperationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoOperationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoOperationFault.prototype); + } } /** @@ -5615,10 +6142,20 @@ export namespace DeleteCacheSecurityGroupMessage { /** *

The requested cache subnet group is currently in use.

*/ -export interface CacheSubnetGroupInUse extends __SmithyException, $MetadataBearer { - name: "CacheSubnetGroupInUse"; - $fault: "client"; - message?: string; +export class CacheSubnetGroupInUse extends __BaseException { + readonly name: "CacheSubnetGroupInUse" = "CacheSubnetGroupInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CacheSubnetGroupInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CacheSubnetGroupInUse.prototype); + } } /** @@ -5774,10 +6311,20 @@ export namespace DeleteSnapshotResult { /** *

The default user assigned to the user group.

*/ -export interface DefaultUserAssociatedToUserGroupFault extends __SmithyException, $MetadataBearer { - name: "DefaultUserAssociatedToUserGroupFault"; - $fault: "client"; - message?: string; +export class DefaultUserAssociatedToUserGroupFault extends __BaseException { + readonly name: "DefaultUserAssociatedToUserGroupFault" = "DefaultUserAssociatedToUserGroupFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DefaultUserAssociatedToUserGroupFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DefaultUserAssociatedToUserGroupFault.prototype); + } } export interface DeleteUserMessage { @@ -5799,10 +6346,20 @@ export namespace DeleteUserMessage { /** *

The user is not in active state.

*/ -export interface InvalidUserStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidUserStateFault"; - $fault: "client"; - message?: string; +export class InvalidUserStateFault extends __BaseException { + readonly name: "InvalidUserStateFault" = "InvalidUserStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUserStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUserStateFault.prototype); + } } export interface DeleteUserGroupMessage { @@ -8204,10 +8761,20 @@ export namespace ReservedCacheNodesOfferingMessage { /** *

The requested cache node offering does not exist.

*/ -export interface ReservedCacheNodesOfferingNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedCacheNodesOfferingNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedCacheNodesOfferingNotFoundFault extends __BaseException { + readonly name: "ReservedCacheNodesOfferingNotFoundFault" = "ReservedCacheNodesOfferingNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedCacheNodesOfferingNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedCacheNodesOfferingNotFoundFault.prototype); + } } export enum ServiceUpdateStatus { @@ -9214,10 +9781,20 @@ export namespace IncreaseReplicaCountResult { /** *

The KMS key supplied is not valid.

*/ -export interface InvalidKMSKeyFault extends __SmithyException, $MetadataBearer { - name: "InvalidKMSKeyFault"; - $fault: "client"; - message?: string; +export class InvalidKMSKeyFault extends __BaseException { + readonly name: "InvalidKMSKeyFault" = "InvalidKMSKeyFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKMSKeyFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKMSKeyFault.prototype); + } } /** @@ -9806,10 +10383,20 @@ export namespace ModifyCacheSubnetGroupResult { /** *

The requested subnet is being used by another cache subnet group.

*/ -export interface SubnetInUse extends __SmithyException, $MetadataBearer { - name: "SubnetInUse"; - $fault: "client"; - message?: string; +export class SubnetInUse extends __BaseException { + readonly name: "SubnetInUse" = "SubnetInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetInUse.prototype); + } } export interface ModifyGlobalReplicationGroupMessage { @@ -10360,19 +10947,39 @@ export namespace PurchaseReservedCacheNodesOfferingResult { /** *

You already have a reservation with the given identifier.

*/ -export interface ReservedCacheNodeAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ReservedCacheNodeAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ReservedCacheNodeAlreadyExistsFault extends __BaseException { + readonly name: "ReservedCacheNodeAlreadyExistsFault" = "ReservedCacheNodeAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedCacheNodeAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedCacheNodeAlreadyExistsFault.prototype); + } } /** *

The request cannot be processed because it would exceed the user's cache node quota.

*/ -export interface ReservedCacheNodeQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ReservedCacheNodeQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ReservedCacheNodeQuotaExceededFault extends __BaseException { + readonly name: "ReservedCacheNodeQuotaExceededFault" = "ReservedCacheNodeQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedCacheNodeQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedCacheNodeQuotaExceededFault.prototype); + } } export interface RebalanceSlotsInGlobalReplicationGroupMessage { @@ -10491,10 +11098,20 @@ export namespace RemoveTagsFromResourceMessage { /** *

The requested tag was not found on this resource.

*/ -export interface TagNotFoundFault extends __SmithyException, $MetadataBearer { - name: "TagNotFoundFault"; - $fault: "client"; - message?: string; +export class TagNotFoundFault extends __BaseException { + readonly name: "TagNotFoundFault" = "TagNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagNotFoundFault.prototype); + } } /** @@ -10538,10 +11155,20 @@ export namespace ResetCacheParameterGroupMessage { /** *

The specified Amazon EC2 security group is not authorized for the specified cache security group.

*/ -export interface AuthorizationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationNotFoundFault"; - $fault: "client"; - message?: string; +export class AuthorizationNotFoundFault extends __BaseException { + readonly name: "AuthorizationNotFoundFault" = "AuthorizationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationNotFoundFault.prototype); + } } /** @@ -10611,10 +11238,20 @@ export namespace RevokeCacheSecurityGroupIngressResult { /** *

The targeted replication group is not available.

*/ -export interface ReplicationGroupAlreadyUnderMigrationFault extends __SmithyException, $MetadataBearer { - name: "ReplicationGroupAlreadyUnderMigrationFault"; - $fault: "client"; - message?: string; +export class ReplicationGroupAlreadyUnderMigrationFault extends __BaseException { + readonly name: "ReplicationGroupAlreadyUnderMigrationFault" = "ReplicationGroupAlreadyUnderMigrationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationGroupAlreadyUnderMigrationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationGroupAlreadyUnderMigrationFault.prototype); + } } /** @@ -10681,20 +11318,40 @@ export namespace StartMigrationResponse { /** *

The customer has exceeded the allowed rate of API calls.

*/ -export interface APICallRateForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "APICallRateForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class APICallRateForCustomerExceededFault extends __BaseException { + readonly name: "APICallRateForCustomerExceededFault" = "APICallRateForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "APICallRateForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, APICallRateForCustomerExceededFault.prototype); + } } /** *

The node group specified by the NodeGroupId parameter could not be found. * Please verify that the node group exists and that you spelled the NodeGroupId value correctly.

*/ -export interface NodeGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "NodeGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class NodeGroupNotFoundFault extends __BaseException { + readonly name: "NodeGroupNotFoundFault" = "NodeGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeGroupNotFoundFault.prototype); + } } export interface TestFailoverMessage { @@ -10724,10 +11381,20 @@ export namespace TestFailoverMessage { /** *

The TestFailover action is not available.

*/ -export interface TestFailoverNotAvailableFault extends __SmithyException, $MetadataBearer { - name: "TestFailoverNotAvailableFault"; - $fault: "client"; - message?: string; +export class TestFailoverNotAvailableFault extends __BaseException { + readonly name: "TestFailoverNotAvailableFault" = "TestFailoverNotAvailableFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TestFailoverNotAvailableFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TestFailoverNotAvailableFault.prototype); + } } export interface TestFailoverResult { diff --git a/clients/client-elasticache/src/protocols/Aws_query.ts b/clients/client-elasticache/src/protocols/Aws_query.ts index 897bbcf238333..85871778008fc 100644 --- a/clients/client-elasticache/src/protocols/Aws_query.ts +++ b/clients/client-elasticache/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -218,6 +217,7 @@ import { } from "../commands/RevokeCacheSecurityGroupIngressCommand"; import { StartMigrationCommandInput, StartMigrationCommandOutput } from "../commands/StartMigrationCommand"; import { TestFailoverCommandInput, TestFailoverCommandOutput } from "../commands/TestFailoverCommand"; +import { ElastiCacheServiceException as __BaseException } from "../models/ElastiCacheServiceException"; import { AddTagsToResourceMessage, AllowedNodeTypeModificationsMessage, @@ -1535,121 +1535,55 @@ const deserializeAws_queryAddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.elasticache#InvalidARNFault": - response = { - ...(await deserializeAws_queryInvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidARNFaultResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "ReservedCacheNodeNotFoundFault": case "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.elasticache#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAuthorizeCacheSecurityGroupIngressCommand = async ( @@ -1680,65 +1614,34 @@ const deserializeAws_queryAuthorizeCacheSecurityGroupIngressCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationAlreadyExistsFault": case "com.amazonaws.elasticache#AuthorizationAlreadyExistsFault": - response = { - ...(await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheSecurityGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchApplyUpdateActionCommand = async ( @@ -1766,41 +1669,25 @@ const deserializeAws_queryBatchApplyUpdateActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUpdateNotFoundFault": case "com.amazonaws.elasticache#ServiceUpdateNotFoundFault": - response = { - ...(await deserializeAws_queryServiceUpdateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceUpdateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchStopUpdateActionCommand = async ( @@ -1828,41 +1715,25 @@ const deserializeAws_queryBatchStopUpdateActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUpdateNotFoundFault": case "com.amazonaws.elasticache#ServiceUpdateNotFoundFault": - response = { - ...(await deserializeAws_queryServiceUpdateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceUpdateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCompleteMigrationCommand = async ( @@ -1890,49 +1761,28 @@ const deserializeAws_queryCompleteMigrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "ReplicationGroupNotUnderMigrationFault": case "com.amazonaws.elasticache#ReplicationGroupNotUnderMigrationFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotUnderMigrationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotUnderMigrationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopySnapshotCommand = async ( @@ -1960,81 +1810,40 @@ const deserializeAws_queryCopySnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidSnapshotStateFault": case "com.amazonaws.elasticache#InvalidSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSnapshotStateFaultResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.elasticache#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.elasticache#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.elasticache#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCacheClusterCommand = async ( @@ -2062,137 +1871,61 @@ const deserializeAws_queryCreateCacheClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterAlreadyExistsFault": case "com.amazonaws.elasticache#CacheClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryCacheClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterAlreadyExistsFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.elasticache#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCacheParameterGroupCommand = async ( @@ -2220,73 +1953,37 @@ const deserializeAws_queryCreateCacheParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheParameterGroupAlreadyExistsFault": case "com.amazonaws.elasticache#CacheParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "CacheParameterGroupQuotaExceededFault": case "com.amazonaws.elasticache#CacheParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupQuotaExceededFaultResponse(parsedOutput, context); case "InvalidCacheParameterGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCacheSecurityGroupCommand = async ( @@ -2314,65 +2011,34 @@ const deserializeAws_queryCreateCacheSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSecurityGroupAlreadyExistsFault": case "com.amazonaws.elasticache#CacheSecurityGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupAlreadyExistsFaultResponse(parsedOutput, context); case "CacheSecurityGroupQuotaExceededFault": case "com.amazonaws.elasticache#CacheSecurityGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupQuotaExceededFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCacheSubnetGroupCommand = async ( @@ -2400,73 +2066,37 @@ const deserializeAws_queryCreateCacheSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSubnetGroupAlreadyExistsFault": case "com.amazonaws.elasticache#CacheSubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "CacheSubnetGroupQuotaExceededFault": case "com.amazonaws.elasticache#CacheSubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "CacheSubnetQuotaExceededFault": case "com.amazonaws.elasticache#CacheSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryCacheSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.elasticache#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "SubnetNotAllowedFault": case "com.amazonaws.elasticache#SubnetNotAllowedFault": - response = { - ...(await deserializeAws_querySubnetNotAllowedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetNotAllowedFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateGlobalReplicationGroupCommand = async ( @@ -2494,65 +2124,34 @@ const deserializeAws_queryCreateGlobalReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupAlreadyExistsFault": case "com.amazonaws.elasticache#GlobalReplicationGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateReplicationGroupCommand = async ( @@ -2580,177 +2179,76 @@ const deserializeAws_queryCreateReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserGroupStateFault": case "com.amazonaws.elasticache#InvalidUserGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeGroupsPerReplicationGroupQuotaExceededFault": case "com.amazonaws.elasticache#NodeGroupsPerReplicationGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.elasticache#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ReplicationGroupAlreadyExistsFault": case "com.amazonaws.elasticache#ReplicationGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReplicationGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupAlreadyExistsFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateSnapshotCommand = async ( @@ -2778,105 +2276,49 @@ const deserializeAws_queryCreateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.elasticache#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotFeatureNotSupportedFault": case "com.amazonaws.elasticache#SnapshotFeatureNotSupportedFault": - response = { - ...(await deserializeAws_querySnapshotFeatureNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotFeatureNotSupportedFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.elasticache#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateUserCommand = async ( @@ -2904,81 +2346,40 @@ const deserializeAws_queryCreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateUserNameFault": case "com.amazonaws.elasticache#DuplicateUserNameFault": - response = { - ...(await deserializeAws_queryDuplicateUserNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateUserNameFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserAlreadyExistsFault": case "com.amazonaws.elasticache#UserAlreadyExistsFault": - response = { - ...(await deserializeAws_queryUserAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserAlreadyExistsFaultResponse(parsedOutput, context); case "UserQuotaExceededFault": case "com.amazonaws.elasticache#UserQuotaExceededFault": - response = { - ...(await deserializeAws_queryUserQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateUserGroupCommand = async ( @@ -3006,89 +2407,43 @@ const deserializeAws_queryCreateUserGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DefaultUserRequired": case "com.amazonaws.elasticache#DefaultUserRequired": - response = { - ...(await deserializeAws_queryDefaultUserRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDefaultUserRequiredResponse(parsedOutput, context); case "DuplicateUserNameFault": case "com.amazonaws.elasticache#DuplicateUserNameFault": - response = { - ...(await deserializeAws_queryDuplicateUserNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateUserNameFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserGroupAlreadyExistsFault": case "com.amazonaws.elasticache#UserGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryUserGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupAlreadyExistsFaultResponse(parsedOutput, context); case "UserGroupQuotaExceededFault": case "com.amazonaws.elasticache#UserGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryUserGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupQuotaExceededFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDecreaseNodeGroupsInGlobalReplicationGroupCommand = async ( @@ -3119,57 +2474,31 @@ const deserializeAws_queryDecreaseNodeGroupsInGlobalReplicationGroupCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDecreaseReplicaCountCommand = async ( @@ -3197,121 +2526,55 @@ const deserializeAws_queryDecreaseReplicaCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeGroupsPerReplicationGroupQuotaExceededFault": case "com.amazonaws.elasticache#NodeGroupsPerReplicationGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "NoOperationFault": case "com.amazonaws.elasticache#NoOperationFault": - response = { - ...(await deserializeAws_queryNoOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoOperationFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCacheClusterCommand = async ( @@ -3339,81 +2602,40 @@ const deserializeAws_queryDeleteCacheClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.elasticache#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotFeatureNotSupportedFault": case "com.amazonaws.elasticache#SnapshotFeatureNotSupportedFault": - response = { - ...(await deserializeAws_querySnapshotFeatureNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotFeatureNotSupportedFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.elasticache#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCacheParameterGroupCommand = async ( @@ -3438,57 +2660,31 @@ const deserializeAws_queryDeleteCacheParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheParameterGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCacheSecurityGroupCommand = async ( @@ -3513,57 +2709,31 @@ const deserializeAws_queryDeleteCacheSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheSecurityGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCacheSubnetGroupCommand = async ( @@ -3588,41 +2758,25 @@ const deserializeAws_queryDeleteCacheSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSubnetGroupInUse": case "com.amazonaws.elasticache#CacheSubnetGroupInUse": - response = { - ...(await deserializeAws_queryCacheSubnetGroupInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupInUseResponse(parsedOutput, context); case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteGlobalReplicationGroupCommand = async ( @@ -3650,49 +2804,28 @@ const deserializeAws_queryDeleteGlobalReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteReplicationGroupCommand = async ( @@ -3720,81 +2853,40 @@ const deserializeAws_queryDeleteReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.elasticache#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotFeatureNotSupportedFault": case "com.amazonaws.elasticache#SnapshotFeatureNotSupportedFault": - response = { - ...(await deserializeAws_querySnapshotFeatureNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotFeatureNotSupportedFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.elasticache#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSnapshotCommand = async ( @@ -3822,57 +2914,31 @@ const deserializeAws_queryDeleteSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidSnapshotStateFault": case "com.amazonaws.elasticache#InvalidSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSnapshotStateFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.elasticache#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteUserCommand = async ( @@ -3900,65 +2966,34 @@ const deserializeAws_queryDeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DefaultUserAssociatedToUserGroupFault": case "com.amazonaws.elasticache#DefaultUserAssociatedToUserGroupFault": - response = { - ...(await deserializeAws_queryDefaultUserAssociatedToUserGroupFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDefaultUserAssociatedToUserGroupFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserStateFault": case "com.amazonaws.elasticache#InvalidUserStateFault": - response = { - ...(await deserializeAws_queryInvalidUserStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserStateFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteUserGroupCommand = async ( @@ -3986,57 +3021,31 @@ const deserializeAws_queryDeleteUserGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserGroupStateFault": case "com.amazonaws.elasticache#InvalidUserGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCacheClustersCommand = async ( @@ -4064,49 +3073,28 @@ const deserializeAws_queryDescribeCacheClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCacheEngineVersionsCommand = async ( @@ -4134,25 +3122,19 @@ const deserializeAws_queryDescribeCacheEngineVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCacheParameterGroupsCommand = async ( @@ -4180,49 +3162,28 @@ const deserializeAws_queryDescribeCacheParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCacheParametersCommand = async ( @@ -4250,49 +3211,28 @@ const deserializeAws_queryDescribeCacheParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCacheSecurityGroupsCommand = async ( @@ -4320,49 +3260,28 @@ const deserializeAws_queryDescribeCacheSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCacheSubnetGroupsCommand = async ( @@ -4390,33 +3309,22 @@ const deserializeAws_queryDescribeCacheSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEngineDefaultParametersCommand = async ( @@ -4447,41 +3355,25 @@ const deserializeAws_queryDescribeEngineDefaultParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventsCommand = async ( @@ -4509,41 +3401,25 @@ const deserializeAws_queryDescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeGlobalReplicationGroupsCommand = async ( @@ -4574,49 +3450,28 @@ const deserializeAws_queryDescribeGlobalReplicationGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReplicationGroupsCommand = async ( @@ -4644,49 +3499,28 @@ const deserializeAws_queryDescribeReplicationGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedCacheNodesCommand = async ( @@ -4714,49 +3548,28 @@ const deserializeAws_queryDescribeReservedCacheNodesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ReservedCacheNodeNotFoundFault": case "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedCacheNodesOfferingsCommand = async ( @@ -4787,49 +3600,28 @@ const deserializeAws_queryDescribeReservedCacheNodesOfferingsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ReservedCacheNodesOfferingNotFoundFault": case "com.amazonaws.elasticache#ReservedCacheNodesOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedCacheNodesOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodesOfferingNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeServiceUpdatesCommand = async ( @@ -4857,49 +3649,28 @@ const deserializeAws_queryDescribeServiceUpdatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUpdateNotFoundFault": case "com.amazonaws.elasticache#ServiceUpdateNotFoundFault": - response = { - ...(await deserializeAws_queryServiceUpdateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceUpdateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeSnapshotsCommand = async ( @@ -4927,57 +3698,31 @@ const deserializeAws_queryDescribeSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.elasticache#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeUpdateActionsCommand = async ( @@ -5005,41 +3750,25 @@ const deserializeAws_queryDescribeUpdateActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeUserGroupsCommand = async ( @@ -5067,49 +3796,28 @@ const deserializeAws_queryDescribeUserGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeUsersCommand = async ( @@ -5137,49 +3845,28 @@ const deserializeAws_queryDescribeUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisassociateGlobalReplicationGroupCommand = async ( @@ -5210,57 +3897,31 @@ const deserializeAws_queryDisassociateGlobalReplicationGroupCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFailoverGlobalReplicationGroupCommand = async ( @@ -5291,57 +3952,31 @@ const deserializeAws_queryFailoverGlobalReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryIncreaseNodeGroupsInGlobalReplicationGroupCommand = async ( @@ -5372,49 +4007,28 @@ const deserializeAws_queryIncreaseNodeGroupsInGlobalReplicationGroupCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryIncreaseReplicaCountCommand = async ( @@ -5442,121 +4056,55 @@ const deserializeAws_queryIncreaseReplicaCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidKMSKeyFault": case "com.amazonaws.elasticache#InvalidKMSKeyFault": - response = { - ...(await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeGroupsPerReplicationGroupQuotaExceededFault": case "com.amazonaws.elasticache#NodeGroupsPerReplicationGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "NoOperationFault": case "com.amazonaws.elasticache#NoOperationFault": - response = { - ...(await deserializeAws_queryNoOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoOperationFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAllowedNodeTypeModificationsCommand = async ( @@ -5587,57 +4135,31 @@ const deserializeAws_queryListAllowedNodeTypeModificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -5665,113 +4187,52 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.elasticache#InvalidARNFault": - response = { - ...(await deserializeAws_queryInvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidARNFaultResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "ReservedCacheNodeNotFoundFault": case "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.elasticache#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyCacheClusterCommand = async ( @@ -5799,113 +4260,52 @@ const deserializeAws_queryModifyCacheClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidCacheSecurityGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.elasticache#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyCacheParameterGroupCommand = async ( @@ -5933,65 +4333,34 @@ const deserializeAws_queryModifyCacheParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheParameterGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyCacheSubnetGroupCommand = async ( @@ -6019,65 +4388,34 @@ const deserializeAws_queryModifyCacheSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSubnetQuotaExceededFault": case "com.amazonaws.elasticache#CacheSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryCacheSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.elasticache#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "SubnetInUse": case "com.amazonaws.elasticache#SubnetInUse": - response = { - ...(await deserializeAws_querySubnetInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetInUseResponse(parsedOutput, context); case "SubnetNotAllowedFault": case "com.amazonaws.elasticache#SubnetNotAllowedFault": - response = { - ...(await deserializeAws_querySubnetNotAllowedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetNotAllowedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyGlobalReplicationGroupCommand = async ( @@ -6105,49 +4443,28 @@ const deserializeAws_queryModifyGlobalReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyReplicationGroupCommand = async ( @@ -6175,153 +4492,67 @@ const deserializeAws_queryModifyReplicationGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidCacheSecurityGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidKMSKeyFault": case "com.amazonaws.elasticache#InvalidKMSKeyFault": - response = { - ...(await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidUserGroupStateFault": case "com.amazonaws.elasticache#InvalidUserGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.elasticache#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyReplicationGroupShardConfigurationCommand = async ( @@ -6352,105 +4583,49 @@ const deserializeAws_queryModifyReplicationGroupShardConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCacheClusterCapacityFault": case "com.amazonaws.elasticache#InsufficientCacheClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidKMSKeyFault": case "com.amazonaws.elasticache#InvalidKMSKeyFault": - response = { - ...(await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.elasticache#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeGroupsPerReplicationGroupQuotaExceededFault": case "com.amazonaws.elasticache#NodeGroupsPerReplicationGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.elasticache#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyUserCommand = async ( @@ -6478,65 +4653,34 @@ const deserializeAws_queryModifyUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserStateFault": case "com.amazonaws.elasticache#InvalidUserStateFault": - response = { - ...(await deserializeAws_queryInvalidUserStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserStateFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyUserGroupCommand = async ( @@ -6564,89 +4708,43 @@ const deserializeAws_queryModifyUserGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DefaultUserRequired": case "com.amazonaws.elasticache#DefaultUserRequired": - response = { - ...(await deserializeAws_queryDefaultUserRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDefaultUserRequiredResponse(parsedOutput, context); case "DuplicateUserNameFault": case "com.amazonaws.elasticache#DuplicateUserNameFault": - response = { - ...(await deserializeAws_queryDuplicateUserNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateUserNameFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserGroupStateFault": case "com.amazonaws.elasticache#InvalidUserGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserGroupStateFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPurchaseReservedCacheNodesOfferingCommand = async ( @@ -6677,73 +4775,37 @@ const deserializeAws_queryPurchaseReservedCacheNodesOfferingCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "ReservedCacheNodeAlreadyExistsFault": case "com.amazonaws.elasticache#ReservedCacheNodeAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReservedCacheNodeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodeAlreadyExistsFaultResponse(parsedOutput, context); case "ReservedCacheNodeQuotaExceededFault": case "com.amazonaws.elasticache#ReservedCacheNodeQuotaExceededFault": - response = { - ...(await deserializeAws_queryReservedCacheNodeQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodeQuotaExceededFaultResponse(parsedOutput, context); case "ReservedCacheNodesOfferingNotFoundFault": case "com.amazonaws.elasticache#ReservedCacheNodesOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedCacheNodesOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodesOfferingNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.elasticache#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebalanceSlotsInGlobalReplicationGroupCommand = async ( @@ -6774,49 +4836,28 @@ const deserializeAws_queryRebalanceSlotsInGlobalReplicationGroupCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebootCacheClusterCommand = async ( @@ -6844,41 +4885,25 @@ const deserializeAws_queryRebootCacheClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveTagsFromResourceCommand = async ( @@ -6906,121 +4931,55 @@ const deserializeAws_queryRemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheClusterNotFoundFault": case "com.amazonaws.elasticache#CacheClusterNotFoundFault": - response = { - ...(await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheClusterNotFoundFaultResponse(parsedOutput, context); case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "CacheSubnetGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.elasticache#InvalidARNFault": - response = { - ...(await deserializeAws_queryInvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidARNFaultResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "ReservedCacheNodeNotFoundFault": case "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedCacheNodeNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.elasticache#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotNotFoundFaultResponse(parsedOutput, context); case "TagNotFoundFault": case "com.amazonaws.elasticache#TagNotFoundFault": - response = { - ...(await deserializeAws_queryTagNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagNotFoundFaultResponse(parsedOutput, context); case "UserGroupNotFoundFault": case "com.amazonaws.elasticache#UserGroupNotFoundFault": - response = { - ...(await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserGroupNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.elasticache#UserNotFoundFault": - response = { - ...(await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetCacheParameterGroupCommand = async ( @@ -7048,65 +5007,34 @@ const deserializeAws_queryResetCacheParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CacheParameterGroupNotFoundFault": case "com.amazonaws.elasticache#CacheParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheParameterGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidGlobalReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRevokeCacheSecurityGroupIngressCommand = async ( @@ -7137,65 +5065,34 @@ const deserializeAws_queryRevokeCacheSecurityGroupIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.elasticache#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "CacheSecurityGroupNotFoundFault": case "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidCacheSecurityGroupStateFault": case "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartMigrationCommand = async ( @@ -7223,57 +5120,31 @@ const deserializeAws_queryStartMigrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "ReplicationGroupAlreadyUnderMigrationFault": case "com.amazonaws.elasticache#ReplicationGroupAlreadyUnderMigrationFault": - response = { - ...(await deserializeAws_queryReplicationGroupAlreadyUnderMigrationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupAlreadyUnderMigrationFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTestFailoverCommand = async ( @@ -7301,97 +5172,46 @@ const deserializeAws_queryTestFailoverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "APICallRateForCustomerExceededFault": case "com.amazonaws.elasticache#APICallRateForCustomerExceededFault": - response = { - ...(await deserializeAws_queryAPICallRateForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAPICallRateForCustomerExceededFaultResponse(parsedOutput, context); case "InvalidCacheClusterStateFault": case "com.amazonaws.elasticache#InvalidCacheClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCacheClusterStateFaultResponse(parsedOutput, context); case "InvalidKMSKeyFault": case "com.amazonaws.elasticache#InvalidKMSKeyFault": - response = { - ...(await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidKMSKeyFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.elasticache#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.elasticache#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidReplicationGroupStateFault": case "com.amazonaws.elasticache#InvalidReplicationGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReplicationGroupStateFaultResponse(parsedOutput, context); case "NodeGroupNotFoundFault": case "com.amazonaws.elasticache#NodeGroupNotFoundFault": - response = { - ...(await deserializeAws_queryNodeGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNodeGroupNotFoundFaultResponse(parsedOutput, context); case "ReplicationGroupNotFoundFault": case "com.amazonaws.elasticache#ReplicationGroupNotFoundFault": - response = { - ...(await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReplicationGroupNotFoundFaultResponse(parsedOutput, context); case "TestFailoverNotAvailableFault": case "com.amazonaws.elasticache#TestFailoverNotAvailableFault": - response = { - ...(await deserializeAws_queryTestFailoverNotAvailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTestFailoverNotAvailableFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAPICallRateForCustomerExceededFaultResponse = async ( @@ -7400,13 +5220,11 @@ const deserializeAws_queryAPICallRateForCustomerExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAPICallRateForCustomerExceededFault(body.Error, context); - const contents: APICallRateForCustomerExceededFault = { - name: "APICallRateForCustomerExceededFault", - $fault: "client", + const exception = new APICallRateForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationAlreadyExistsFaultResponse = async ( @@ -7415,13 +5233,11 @@ const deserializeAws_queryAuthorizationAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationAlreadyExistsFault(body.Error, context); - const contents: AuthorizationAlreadyExistsFault = { - name: "AuthorizationAlreadyExistsFault", - $fault: "client", + const exception = new AuthorizationAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( @@ -7430,13 +5246,11 @@ const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationNotFoundFault(body.Error, context); - const contents: AuthorizationNotFoundFault = { - name: "AuthorizationNotFoundFault", - $fault: "client", + const exception = new AuthorizationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheClusterAlreadyExistsFaultResponse = async ( @@ -7445,13 +5259,11 @@ const deserializeAws_queryCacheClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheClusterAlreadyExistsFault(body.Error, context); - const contents: CacheClusterAlreadyExistsFault = { - name: "CacheClusterAlreadyExistsFault", - $fault: "client", + const exception = new CacheClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheClusterNotFoundFaultResponse = async ( @@ -7460,13 +5272,11 @@ const deserializeAws_queryCacheClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheClusterNotFoundFault(body.Error, context); - const contents: CacheClusterNotFoundFault = { - name: "CacheClusterNotFoundFault", - $fault: "client", + const exception = new CacheClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheParameterGroupAlreadyExistsFaultResponse = async ( @@ -7475,13 +5285,11 @@ const deserializeAws_queryCacheParameterGroupAlreadyExistsFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheParameterGroupAlreadyExistsFault(body.Error, context); - const contents: CacheParameterGroupAlreadyExistsFault = { - name: "CacheParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new CacheParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheParameterGroupNotFoundFaultResponse = async ( @@ -7490,13 +5298,11 @@ const deserializeAws_queryCacheParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheParameterGroupNotFoundFault(body.Error, context); - const contents: CacheParameterGroupNotFoundFault = { - name: "CacheParameterGroupNotFoundFault", - $fault: "client", + const exception = new CacheParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheParameterGroupQuotaExceededFaultResponse = async ( @@ -7505,13 +5311,11 @@ const deserializeAws_queryCacheParameterGroupQuotaExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheParameterGroupQuotaExceededFault(body.Error, context); - const contents: CacheParameterGroupQuotaExceededFault = { - name: "CacheParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new CacheParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSecurityGroupAlreadyExistsFaultResponse = async ( @@ -7520,13 +5324,11 @@ const deserializeAws_queryCacheSecurityGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSecurityGroupAlreadyExistsFault(body.Error, context); - const contents: CacheSecurityGroupAlreadyExistsFault = { - name: "CacheSecurityGroupAlreadyExistsFault", - $fault: "client", + const exception = new CacheSecurityGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse = async ( @@ -7535,13 +5337,11 @@ const deserializeAws_queryCacheSecurityGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSecurityGroupNotFoundFault(body.Error, context); - const contents: CacheSecurityGroupNotFoundFault = { - name: "CacheSecurityGroupNotFoundFault", - $fault: "client", + const exception = new CacheSecurityGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSecurityGroupQuotaExceededFaultResponse = async ( @@ -7550,13 +5350,11 @@ const deserializeAws_queryCacheSecurityGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSecurityGroupQuotaExceededFault(body.Error, context); - const contents: CacheSecurityGroupQuotaExceededFault = { - name: "CacheSecurityGroupQuotaExceededFault", - $fault: "client", + const exception = new CacheSecurityGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSubnetGroupAlreadyExistsFaultResponse = async ( @@ -7565,13 +5363,11 @@ const deserializeAws_queryCacheSubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSubnetGroupAlreadyExistsFault(body.Error, context); - const contents: CacheSubnetGroupAlreadyExistsFault = { - name: "CacheSubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new CacheSubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSubnetGroupInUseResponse = async ( @@ -7580,13 +5376,11 @@ const deserializeAws_queryCacheSubnetGroupInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSubnetGroupInUse(body.Error, context); - const contents: CacheSubnetGroupInUse = { - name: "CacheSubnetGroupInUse", - $fault: "client", + const exception = new CacheSubnetGroupInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse = async ( @@ -7595,13 +5389,11 @@ const deserializeAws_queryCacheSubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSubnetGroupNotFoundFault(body.Error, context); - const contents: CacheSubnetGroupNotFoundFault = { - name: "CacheSubnetGroupNotFoundFault", - $fault: "client", + const exception = new CacheSubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSubnetGroupQuotaExceededFaultResponse = async ( @@ -7610,13 +5402,11 @@ const deserializeAws_queryCacheSubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSubnetGroupQuotaExceededFault(body.Error, context); - const contents: CacheSubnetGroupQuotaExceededFault = { - name: "CacheSubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new CacheSubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCacheSubnetQuotaExceededFaultResponse = async ( @@ -7625,13 +5415,11 @@ const deserializeAws_queryCacheSubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCacheSubnetQuotaExceededFault(body.Error, context); - const contents: CacheSubnetQuotaExceededFault = { - name: "CacheSubnetQuotaExceededFault", - $fault: "client", + const exception = new CacheSubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse = async ( @@ -7640,13 +5428,11 @@ const deserializeAws_queryClusterQuotaForCustomerExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterQuotaForCustomerExceededFault(body.Error, context); - const contents: ClusterQuotaForCustomerExceededFault = { - name: "ClusterQuotaForCustomerExceededFault", - $fault: "client", + const exception = new ClusterQuotaForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDefaultUserAssociatedToUserGroupFaultResponse = async ( @@ -7655,13 +5441,11 @@ const deserializeAws_queryDefaultUserAssociatedToUserGroupFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDefaultUserAssociatedToUserGroupFault(body.Error, context); - const contents: DefaultUserAssociatedToUserGroupFault = { - name: "DefaultUserAssociatedToUserGroupFault", - $fault: "client", + const exception = new DefaultUserAssociatedToUserGroupFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDefaultUserRequiredResponse = async ( @@ -7670,13 +5454,11 @@ const deserializeAws_queryDefaultUserRequiredResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDefaultUserRequired(body.Error, context); - const contents: DefaultUserRequired = { - name: "DefaultUserRequired", - $fault: "client", + const exception = new DefaultUserRequired({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateUserNameFaultResponse = async ( @@ -7685,13 +5467,11 @@ const deserializeAws_queryDuplicateUserNameFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateUserNameFault(body.Error, context); - const contents: DuplicateUserNameFault = { - name: "DuplicateUserNameFault", - $fault: "client", + const exception = new DuplicateUserNameFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalReplicationGroupAlreadyExistsFaultResponse = async ( @@ -7700,13 +5480,11 @@ const deserializeAws_queryGlobalReplicationGroupAlreadyExistsFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalReplicationGroupAlreadyExistsFault(body.Error, context); - const contents: GlobalReplicationGroupAlreadyExistsFault = { - name: "GlobalReplicationGroupAlreadyExistsFault", - $fault: "client", + const exception = new GlobalReplicationGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse = async ( @@ -7715,13 +5493,11 @@ const deserializeAws_queryGlobalReplicationGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalReplicationGroupNotFoundFault(body.Error, context); - const contents: GlobalReplicationGroupNotFoundFault = { - name: "GlobalReplicationGroupNotFoundFault", - $fault: "client", + const exception = new GlobalReplicationGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse = async ( @@ -7730,13 +5506,11 @@ const deserializeAws_queryInsufficientCacheClusterCapacityFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientCacheClusterCapacityFault(body.Error, context); - const contents: InsufficientCacheClusterCapacityFault = { - name: "InsufficientCacheClusterCapacityFault", - $fault: "client", + const exception = new InsufficientCacheClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidARNFaultResponse = async ( @@ -7745,13 +5519,11 @@ const deserializeAws_queryInvalidARNFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidARNFault(body.Error, context); - const contents: InvalidARNFault = { - name: "InvalidARNFault", - $fault: "client", + const exception = new InvalidARNFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidCacheClusterStateFaultResponse = async ( @@ -7760,13 +5532,11 @@ const deserializeAws_queryInvalidCacheClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidCacheClusterStateFault(body.Error, context); - const contents: InvalidCacheClusterStateFault = { - name: "InvalidCacheClusterStateFault", - $fault: "client", + const exception = new InvalidCacheClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse = async ( @@ -7775,13 +5545,11 @@ const deserializeAws_queryInvalidCacheParameterGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidCacheParameterGroupStateFault(body.Error, context); - const contents: InvalidCacheParameterGroupStateFault = { - name: "InvalidCacheParameterGroupStateFault", - $fault: "client", + const exception = new InvalidCacheParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse = async ( @@ -7790,13 +5558,11 @@ const deserializeAws_queryInvalidCacheSecurityGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidCacheSecurityGroupStateFault(body.Error, context); - const contents: InvalidCacheSecurityGroupStateFault = { - name: "InvalidCacheSecurityGroupStateFault", - $fault: "client", + const exception = new InvalidCacheSecurityGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse = async ( @@ -7805,13 +5571,11 @@ const deserializeAws_queryInvalidGlobalReplicationGroupStateFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidGlobalReplicationGroupStateFault(body.Error, context); - const contents: InvalidGlobalReplicationGroupStateFault = { - name: "InvalidGlobalReplicationGroupStateFault", - $fault: "client", + const exception = new InvalidGlobalReplicationGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidKMSKeyFaultResponse = async ( @@ -7820,13 +5584,11 @@ const deserializeAws_queryInvalidKMSKeyFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidKMSKeyFault(body.Error, context); - const contents: InvalidKMSKeyFault = { - name: "InvalidKMSKeyFault", - $fault: "client", + const exception = new InvalidKMSKeyFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidParameterCombinationExceptionResponse = async ( @@ -7835,13 +5597,11 @@ const deserializeAws_queryInvalidParameterCombinationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidParameterCombinationException(body.Error, context); - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", + const exception = new InvalidParameterCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidParameterValueExceptionResponse = async ( @@ -7850,13 +5610,11 @@ const deserializeAws_queryInvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidParameterValueException(body.Error, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidReplicationGroupStateFaultResponse = async ( @@ -7865,13 +5623,11 @@ const deserializeAws_queryInvalidReplicationGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidReplicationGroupStateFault(body.Error, context); - const contents: InvalidReplicationGroupStateFault = { - name: "InvalidReplicationGroupStateFault", - $fault: "client", + const exception = new InvalidReplicationGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSnapshotStateFaultResponse = async ( @@ -7880,13 +5636,11 @@ const deserializeAws_queryInvalidSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSnapshotStateFault(body.Error, context); - const contents: InvalidSnapshotStateFault = { - name: "InvalidSnapshotStateFault", - $fault: "client", + const exception = new InvalidSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetResponse = async ( @@ -7895,13 +5649,11 @@ const deserializeAws_queryInvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnet(body.Error, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidUserGroupStateFaultResponse = async ( @@ -7910,13 +5662,11 @@ const deserializeAws_queryInvalidUserGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidUserGroupStateFault(body.Error, context); - const contents: InvalidUserGroupStateFault = { - name: "InvalidUserGroupStateFault", - $fault: "client", + const exception = new InvalidUserGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidUserStateFaultResponse = async ( @@ -7925,13 +5675,11 @@ const deserializeAws_queryInvalidUserStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidUserStateFault(body.Error, context); - const contents: InvalidUserStateFault = { - name: "InvalidUserStateFault", - $fault: "client", + const exception = new InvalidUserStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( @@ -7940,13 +5688,11 @@ const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidVPCNetworkStateFault(body.Error, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNodeGroupNotFoundFaultResponse = async ( @@ -7955,13 +5701,11 @@ const deserializeAws_queryNodeGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNodeGroupNotFoundFault(body.Error, context); - const contents: NodeGroupNotFoundFault = { - name: "NodeGroupNotFoundFault", - $fault: "client", + const exception = new NodeGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultResponse = async ( @@ -7970,13 +5714,11 @@ const deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFaultRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNodeGroupsPerReplicationGroupQuotaExceededFault(body.Error, context); - const contents: NodeGroupsPerReplicationGroupQuotaExceededFault = { - name: "NodeGroupsPerReplicationGroupQuotaExceededFault", - $fault: "client", + const exception = new NodeGroupsPerReplicationGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNodeQuotaForClusterExceededFaultResponse = async ( @@ -7985,13 +5727,11 @@ const deserializeAws_queryNodeQuotaForClusterExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNodeQuotaForClusterExceededFault(body.Error, context); - const contents: NodeQuotaForClusterExceededFault = { - name: "NodeQuotaForClusterExceededFault", - $fault: "client", + const exception = new NodeQuotaForClusterExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse = async ( @@ -8000,13 +5740,11 @@ const deserializeAws_queryNodeQuotaForCustomerExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNodeQuotaForCustomerExceededFault(body.Error, context); - const contents: NodeQuotaForCustomerExceededFault = { - name: "NodeQuotaForCustomerExceededFault", - $fault: "client", + const exception = new NodeQuotaForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNoOperationFaultResponse = async ( @@ -8015,13 +5753,11 @@ const deserializeAws_queryNoOperationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNoOperationFault(body.Error, context); - const contents: NoOperationFault = { - name: "NoOperationFault", - $fault: "client", + const exception = new NoOperationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReplicationGroupAlreadyExistsFaultResponse = async ( @@ -8030,13 +5766,11 @@ const deserializeAws_queryReplicationGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReplicationGroupAlreadyExistsFault(body.Error, context); - const contents: ReplicationGroupAlreadyExistsFault = { - name: "ReplicationGroupAlreadyExistsFault", - $fault: "client", + const exception = new ReplicationGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReplicationGroupAlreadyUnderMigrationFaultResponse = async ( @@ -8045,13 +5779,11 @@ const deserializeAws_queryReplicationGroupAlreadyUnderMigrationFaultResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReplicationGroupAlreadyUnderMigrationFault(body.Error, context); - const contents: ReplicationGroupAlreadyUnderMigrationFault = { - name: "ReplicationGroupAlreadyUnderMigrationFault", - $fault: "client", + const exception = new ReplicationGroupAlreadyUnderMigrationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReplicationGroupNotFoundFaultResponse = async ( @@ -8060,13 +5792,11 @@ const deserializeAws_queryReplicationGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReplicationGroupNotFoundFault(body.Error, context); - const contents: ReplicationGroupNotFoundFault = { - name: "ReplicationGroupNotFoundFault", - $fault: "client", + const exception = new ReplicationGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReplicationGroupNotUnderMigrationFaultResponse = async ( @@ -8075,13 +5805,11 @@ const deserializeAws_queryReplicationGroupNotUnderMigrationFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReplicationGroupNotUnderMigrationFault(body.Error, context); - const contents: ReplicationGroupNotUnderMigrationFault = { - name: "ReplicationGroupNotUnderMigrationFault", - $fault: "client", + const exception = new ReplicationGroupNotUnderMigrationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedCacheNodeAlreadyExistsFaultResponse = async ( @@ -8090,13 +5818,11 @@ const deserializeAws_queryReservedCacheNodeAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedCacheNodeAlreadyExistsFault(body.Error, context); - const contents: ReservedCacheNodeAlreadyExistsFault = { - name: "ReservedCacheNodeAlreadyExistsFault", - $fault: "client", + const exception = new ReservedCacheNodeAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedCacheNodeNotFoundFaultResponse = async ( @@ -8105,13 +5831,11 @@ const deserializeAws_queryReservedCacheNodeNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedCacheNodeNotFoundFault(body.Error, context); - const contents: ReservedCacheNodeNotFoundFault = { - name: "ReservedCacheNodeNotFoundFault", - $fault: "client", + const exception = new ReservedCacheNodeNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedCacheNodeQuotaExceededFaultResponse = async ( @@ -8120,13 +5844,11 @@ const deserializeAws_queryReservedCacheNodeQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedCacheNodeQuotaExceededFault(body.Error, context); - const contents: ReservedCacheNodeQuotaExceededFault = { - name: "ReservedCacheNodeQuotaExceededFault", - $fault: "client", + const exception = new ReservedCacheNodeQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedCacheNodesOfferingNotFoundFaultResponse = async ( @@ -8135,13 +5857,11 @@ const deserializeAws_queryReservedCacheNodesOfferingNotFoundFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedCacheNodesOfferingNotFoundFault(body.Error, context); - const contents: ReservedCacheNodesOfferingNotFoundFault = { - name: "ReservedCacheNodesOfferingNotFoundFault", - $fault: "client", + const exception = new ReservedCacheNodesOfferingNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse = async ( @@ -8150,13 +5870,11 @@ const deserializeAws_queryServiceLinkedRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryServiceLinkedRoleNotFoundFault(body.Error, context); - const contents: ServiceLinkedRoleNotFoundFault = { - name: "ServiceLinkedRoleNotFoundFault", - $fault: "client", + const exception = new ServiceLinkedRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryServiceUpdateNotFoundFaultResponse = async ( @@ -8165,13 +5883,11 @@ const deserializeAws_queryServiceUpdateNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryServiceUpdateNotFoundFault(body.Error, context); - const contents: ServiceUpdateNotFoundFault = { - name: "ServiceUpdateNotFoundFault", - $fault: "client", + const exception = new ServiceUpdateNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotAlreadyExistsFaultResponse = async ( @@ -8180,13 +5896,11 @@ const deserializeAws_querySnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotAlreadyExistsFault(body.Error, context); - const contents: SnapshotAlreadyExistsFault = { - name: "SnapshotAlreadyExistsFault", - $fault: "client", + const exception = new SnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotFeatureNotSupportedFaultResponse = async ( @@ -8195,13 +5909,11 @@ const deserializeAws_querySnapshotFeatureNotSupportedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotFeatureNotSupportedFault(body.Error, context); - const contents: SnapshotFeatureNotSupportedFault = { - name: "SnapshotFeatureNotSupportedFault", - $fault: "client", + const exception = new SnapshotFeatureNotSupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotNotFoundFaultResponse = async ( @@ -8210,13 +5922,11 @@ const deserializeAws_querySnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotNotFoundFault(body.Error, context); - const contents: SnapshotNotFoundFault = { - name: "SnapshotNotFoundFault", - $fault: "client", + const exception = new SnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( @@ -8225,13 +5935,11 @@ const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotQuotaExceededFault(body.Error, context); - const contents: SnapshotQuotaExceededFault = { - name: "SnapshotQuotaExceededFault", - $fault: "client", + const exception = new SnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetInUseResponse = async ( @@ -8240,13 +5948,11 @@ const deserializeAws_querySubnetInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetInUse(body.Error, context); - const contents: SubnetInUse = { - name: "SubnetInUse", - $fault: "client", + const exception = new SubnetInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetNotAllowedFaultResponse = async ( @@ -8255,13 +5961,11 @@ const deserializeAws_querySubnetNotAllowedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetNotAllowedFault(body.Error, context); - const contents: SubnetNotAllowedFault = { - name: "SubnetNotAllowedFault", - $fault: "client", + const exception = new SubnetNotAllowedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTagNotFoundFaultResponse = async ( @@ -8270,13 +5974,11 @@ const deserializeAws_queryTagNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTagNotFoundFault(body.Error, context); - const contents: TagNotFoundFault = { - name: "TagNotFoundFault", - $fault: "client", + const exception = new TagNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTagQuotaPerResourceExceededResponse = async ( @@ -8285,13 +5987,11 @@ const deserializeAws_queryTagQuotaPerResourceExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTagQuotaPerResourceExceeded(body.Error, context); - const contents: TagQuotaPerResourceExceeded = { - name: "TagQuotaPerResourceExceeded", - $fault: "client", + const exception = new TagQuotaPerResourceExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTestFailoverNotAvailableFaultResponse = async ( @@ -8300,13 +6000,11 @@ const deserializeAws_queryTestFailoverNotAvailableFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTestFailoverNotAvailableFault(body.Error, context); - const contents: TestFailoverNotAvailableFault = { - name: "TestFailoverNotAvailableFault", - $fault: "client", + const exception = new TestFailoverNotAvailableFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserAlreadyExistsFaultResponse = async ( @@ -8315,13 +6013,11 @@ const deserializeAws_queryUserAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserAlreadyExistsFault(body.Error, context); - const contents: UserAlreadyExistsFault = { - name: "UserAlreadyExistsFault", - $fault: "client", + const exception = new UserAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserGroupAlreadyExistsFaultResponse = async ( @@ -8330,13 +6026,11 @@ const deserializeAws_queryUserGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserGroupAlreadyExistsFault(body.Error, context); - const contents: UserGroupAlreadyExistsFault = { - name: "UserGroupAlreadyExistsFault", - $fault: "client", + const exception = new UserGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserGroupNotFoundFaultResponse = async ( @@ -8345,13 +6039,11 @@ const deserializeAws_queryUserGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserGroupNotFoundFault(body.Error, context); - const contents: UserGroupNotFoundFault = { - name: "UserGroupNotFoundFault", - $fault: "client", + const exception = new UserGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserGroupQuotaExceededFaultResponse = async ( @@ -8360,13 +6052,11 @@ const deserializeAws_queryUserGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserGroupQuotaExceededFault(body.Error, context); - const contents: UserGroupQuotaExceededFault = { - name: "UserGroupQuotaExceededFault", - $fault: "client", + const exception = new UserGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserNotFoundFaultResponse = async ( @@ -8375,13 +6065,11 @@ const deserializeAws_queryUserNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserNotFoundFault(body.Error, context); - const contents: UserNotFoundFault = { - name: "UserNotFoundFault", - $fault: "client", + const exception = new UserNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserQuotaExceededFaultResponse = async ( @@ -8390,13 +6078,11 @@ const deserializeAws_queryUserQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserQuotaExceededFault(body.Error, context); - const contents: UserQuotaExceededFault = { - name: "UserQuotaExceededFault", - $fault: "client", + const exception = new UserQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAddTagsToResourceMessage = (input: AddTagsToResourceMessage, context: __SerdeContext): any => { diff --git a/clients/client-elasticsearch-service/src/index.ts b/clients/client-elasticsearch-service/src/index.ts index bc1058f16cc04..4728a8ed793b0 100644 --- a/clients/client-elasticsearch-service/src/index.ts +++ b/clients/client-elasticsearch-service/src/index.ts @@ -3,3 +3,4 @@ export * from "./ElasticsearchServiceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ElasticsearchServiceServiceException } from "./models/ElasticsearchServiceServiceException"; diff --git a/clients/client-elasticsearch-service/src/models/ElasticsearchServiceServiceException.ts b/clients/client-elasticsearch-service/src/models/ElasticsearchServiceServiceException.ts new file mode 100644 index 0000000000000..015f10939845e --- /dev/null +++ b/clients/client-elasticsearch-service/src/models/ElasticsearchServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ElasticsearchService service. + */ +export class ElasticsearchServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ElasticsearchServiceServiceException.prototype); + } +} diff --git a/clients/client-elasticsearch-service/src/models/models_0.ts b/clients/client-elasticsearch-service/src/models/models_0.ts index 2271b51c033db..796709c056c10 100644 --- a/clients/client-elasticsearch-service/src/models/models_0.ts +++ b/clients/client-elasticsearch-service/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ElasticsearchServiceServiceException as __BaseException } from "./ElasticsearchServiceServiceException"; /** *

Container for the parameters to the AcceptInboundCrossClusterSearchConnection operation.

@@ -136,49 +138,77 @@ export namespace AcceptInboundCrossClusterSearchConnectionResponse { /** *

An error occured because the client wanted to access a not supported operation. Gives http status code of 409.

*/ -export interface DisabledOperationException extends __SmithyException, $MetadataBearer { - name: "DisabledOperationException"; - $fault: "client"; +export class DisabledOperationException extends __BaseException { + readonly name: "DisabledOperationException" = "DisabledOperationException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DisabledOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DisabledOperationException.prototype); + } } /** *

An exception for trying to create more than allowed resources or sub-resources. Gives http status code of 409.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

An exception for accessing or deleting a resource that does not exist. Gives http status code of 400.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

An error occurred because user does not have permissions to access the resource. Returns HTTP status code 403.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export type OptionState = "Active" | "Processing" | "RequiresIndexDocuments"; @@ -360,37 +390,58 @@ export namespace AddTagsRequest { /** *

An error occurred while processing the request.

*/ -export interface BaseException extends __SmithyException, $MetadataBearer { - name: "BaseException"; - $fault: "client"; +export class BaseException extends __BaseException { + readonly name: "BaseException" = "BaseException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BaseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BaseException.prototype); + } } /** *

The request processing has failed because of an unknown error, exception or failure (the failure is internal to the service) . Gives http status code of 500.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + } } /** *

An exception for missing / invalid input fields. Gives http status code of 400.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -807,13 +858,20 @@ export namespace AssociatePackageResponse { /** *

An error occurred because the client attempts to remove a resource that is currently in use. Returns HTTP status code 409.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -1750,25 +1808,39 @@ export namespace CreateElasticsearchDomainResponse { /** *

An exception for trying to create or access sub-resource that is either invalid or not supported. Gives http status code of 409.

*/ -export interface InvalidTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidTypeException"; - $fault: "client"; +export class InvalidTypeException extends __BaseException { + readonly name: "InvalidTypeException" = "InvalidTypeException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTypeException.prototype); + } } /** *

An exception for creating a resource that already exists. Gives http status code of 400.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** @@ -3460,13 +3532,20 @@ export namespace DescribeInboundCrossClusterSearchConnectionsResponse { /** *

The request processing has failed because of invalid pagination token provided by customer. Returns an HTTP status code of 400.

*/ -export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationTokenException"; - $fault: "client"; +export class InvalidPaginationTokenException extends __BaseException { + readonly name: "InvalidPaginationTokenException" = "InvalidPaginationTokenException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationTokenException.prototype); + } } /** diff --git a/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts b/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts index f901d2b8d814f..fb741207198e4 100644 --- a/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts +++ b/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -147,6 +146,7 @@ import { UpgradeElasticsearchDomainCommandInput, UpgradeElasticsearchDomainCommandOutput, } from "../commands/UpgradeElasticsearchDomainCommand"; +import { ElasticsearchServiceServiceException as __BaseException } from "../models/ElasticsearchServiceServiceException"; import { AccessDeniedException, AccessPoliciesStatus, @@ -1616,49 +1616,28 @@ const deserializeAws_restJson1AcceptInboundCrossClusterSearchConnectionCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddTagsCommand = async ( @@ -1683,57 +1662,31 @@ const deserializeAws_restJson1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociatePackageCommand = async ( @@ -1762,73 +1715,37 @@ const deserializeAws_restJson1AssociatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.elasticsearchservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelElasticsearchServiceSoftwareUpdateCommand = async ( @@ -1860,57 +1777,31 @@ const deserializeAws_restJson1CancelElasticsearchServiceSoftwareUpdateCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateElasticsearchDomainCommand = async ( @@ -1939,81 +1830,40 @@ const deserializeAws_restJson1CreateElasticsearchDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.elasticsearchservice#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.elasticsearchservice#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateOutboundCrossClusterSearchConnectionCommand = async ( @@ -2061,57 +1911,31 @@ const deserializeAws_restJson1CreateOutboundCrossClusterSearchConnectionCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.elasticsearchservice#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePackageCommand = async ( @@ -2140,81 +1964,40 @@ const deserializeAws_restJson1CreatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.elasticsearchservice#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.elasticsearchservice#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteElasticsearchDomainCommand = async ( @@ -2243,57 +2026,31 @@ const deserializeAws_restJson1DeleteElasticsearchDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteElasticsearchServiceRoleCommand = async ( @@ -2318,49 +2075,28 @@ const deserializeAws_restJson1DeleteElasticsearchServiceRoleCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInboundCrossClusterSearchConnectionCommand = async ( @@ -2392,41 +2128,25 @@ const deserializeAws_restJson1DeleteInboundCrossClusterSearchConnectionCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteOutboundCrossClusterSearchConnectionCommand = async ( @@ -2458,41 +2178,25 @@ const deserializeAws_restJson1DeleteOutboundCrossClusterSearchConnectionCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePackageCommand = async ( @@ -2521,73 +2225,37 @@ const deserializeAws_restJson1DeletePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.elasticsearchservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainAutoTunesCommand = async ( @@ -2620,57 +2288,31 @@ const deserializeAws_restJson1DescribeDomainAutoTunesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainChangeProgressCommand = async ( @@ -2702,57 +2344,31 @@ const deserializeAws_restJson1DescribeDomainChangeProgressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeElasticsearchDomainCommand = async ( @@ -2781,57 +2397,31 @@ const deserializeAws_restJson1DescribeElasticsearchDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeElasticsearchDomainConfigCommand = async ( @@ -2860,57 +2450,31 @@ const deserializeAws_restJson1DescribeElasticsearchDomainConfigCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeElasticsearchDomainsCommand = async ( @@ -2939,49 +2503,28 @@ const deserializeAws_restJson1DescribeElasticsearchDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeElasticsearchInstanceTypeLimitsCommand = async ( @@ -3010,73 +2553,37 @@ const deserializeAws_restJson1DescribeElasticsearchInstanceTypeLimitsCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.elasticsearchservice#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInboundCrossClusterSearchConnectionsCommand = async ( @@ -3112,41 +2619,25 @@ const deserializeAws_restJson1DescribeInboundCrossClusterSearchConnectionsComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.elasticsearchservice#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOutboundCrossClusterSearchConnectionsCommand = async ( @@ -3182,41 +2673,25 @@ const deserializeAws_restJson1DescribeOutboundCrossClusterSearchConnectionsComma ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.elasticsearchservice#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackagesCommand = async ( @@ -3249,65 +2724,34 @@ const deserializeAws_restJson1DescribePackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReservedElasticsearchInstanceOfferingsCommand = async ( @@ -3346,57 +2790,31 @@ const deserializeAws_restJson1DescribeReservedElasticsearchInstanceOfferingsComm ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReservedElasticsearchInstancesCommand = async ( @@ -3432,57 +2850,31 @@ const deserializeAws_restJson1DescribeReservedElasticsearchInstancesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DissociatePackageCommand = async ( @@ -3511,73 +2903,37 @@ const deserializeAws_restJson1DissociatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.elasticsearchservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCompatibleElasticsearchVersionsCommand = async ( @@ -3609,65 +2965,34 @@ const deserializeAws_restJson1GetCompatibleElasticsearchVersionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPackageVersionHistoryCommand = async ( @@ -3707,65 +3032,34 @@ const deserializeAws_restJson1GetPackageVersionHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUpgradeHistoryCommand = async ( @@ -3798,65 +3092,34 @@ const deserializeAws_restJson1GetUpgradeHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUpgradeStatusCommand = async ( @@ -3893,65 +3156,34 @@ const deserializeAws_restJson1GetUpgradeStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainNamesCommand = async ( @@ -3980,41 +3212,25 @@ const deserializeAws_restJson1ListDomainNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainsForPackageCommand = async ( @@ -4050,65 +3266,34 @@ const deserializeAws_restJson1ListDomainsForPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListElasticsearchInstanceTypesCommand = async ( @@ -4144,57 +3329,31 @@ const deserializeAws_restJson1ListElasticsearchInstanceTypesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListElasticsearchVersionsCommand = async ( @@ -4230,57 +3389,31 @@ const deserializeAws_restJson1ListElasticsearchVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackagesForDomainCommand = async ( @@ -4316,65 +3449,34 @@ const deserializeAws_restJson1ListPackagesForDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsCommand = async ( @@ -4403,57 +3505,31 @@ const deserializeAws_restJson1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PurchaseReservedElasticsearchInstanceOfferingCommand = async ( @@ -4486,73 +3562,37 @@ const deserializeAws_restJson1PurchaseReservedElasticsearchInstanceOfferingComma ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.elasticsearchservice#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectInboundCrossClusterSearchConnectionCommand = async ( @@ -4584,41 +3624,25 @@ const deserializeAws_restJson1RejectInboundCrossClusterSearchConnectionCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveTagsCommand = async ( @@ -4643,49 +3667,28 @@ const deserializeAws_restJson1RemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartElasticsearchServiceSoftwareUpdateCommand = async ( @@ -4717,57 +3720,31 @@ const deserializeAws_restJson1StartElasticsearchServiceSoftwareUpdateCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateElasticsearchDomainConfigCommand = async ( @@ -4800,73 +3777,37 @@ const deserializeAws_restJson1UpdateElasticsearchDomainConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.elasticsearchservice#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePackageCommand = async ( @@ -4895,73 +3836,37 @@ const deserializeAws_restJson1UpdatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.elasticsearchservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.elasticsearchservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpgradeElasticsearchDomainCommand = async ( @@ -5002,260 +3907,213 @@ const deserializeAws_restJson1UpgradeElasticsearchDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.elasticsearchservice#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.elasticsearchservice#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.elasticsearchservice#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BaseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BaseException = { - name: "BaseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BaseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DisabledOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DisabledOperationException = { - name: "DisabledOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DisabledOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalException = { - name: "InternalException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidPaginationTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidPaginationTokenException = { - name: "InvalidPaginationTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidPaginationTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTypeException = { - name: "InvalidTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdvancedOptions = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-emr-containers/src/index.ts b/clients/client-emr-containers/src/index.ts index 5e805150c6403..fa75d077e23ed 100644 --- a/clients/client-emr-containers/src/index.ts +++ b/clients/client-emr-containers/src/index.ts @@ -3,3 +3,4 @@ export * from "./EMRContainersClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { EMRContainersServiceException } from "./models/EMRContainersServiceException"; diff --git a/clients/client-emr-containers/src/models/EMRContainersServiceException.ts b/clients/client-emr-containers/src/models/EMRContainersServiceException.ts new file mode 100644 index 0000000000000..e9d9bc8a112fb --- /dev/null +++ b/clients/client-emr-containers/src/models/EMRContainersServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EMRContainers service. + */ +export class EMRContainersServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EMRContainersServiceException.prototype); + } +} diff --git a/clients/client-emr-containers/src/models/models_0.ts b/clients/client-emr-containers/src/models/models_0.ts index a4ebd9f42c626..37f1dd3bdb049 100644 --- a/clients/client-emr-containers/src/models/models_0.ts +++ b/clients/client-emr-containers/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EMRContainersServiceException as __BaseException } from "./EMRContainersServiceException"; export interface CancelJobRunRequest { /** @@ -46,19 +48,39 @@ export namespace CancelJobRunResponse { /** *

This is an internal server exception.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

There are invalid parameters in the client request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -172,10 +194,20 @@ export namespace CreateManagedEndpointResponse { /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** diff --git a/clients/client-emr-containers/src/protocols/Aws_restJson1.ts b/clients/client-emr-containers/src/protocols/Aws_restJson1.ts index 299c95a815331..f808924f62ffb 100644 --- a/clients/client-emr-containers/src/protocols/Aws_restJson1.ts +++ b/clients/client-emr-containers/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -59,6 +58,7 @@ import { import { StartJobRunCommandInput, StartJobRunCommandOutput } from "../commands/StartJobRunCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { EMRContainersServiceException as __BaseException } from "../models/EMRContainersServiceException"; import { Certificate, CloudWatchMonitoringConfiguration, @@ -656,41 +656,25 @@ const deserializeAws_restJson1CancelJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateManagedEndpointCommand = async ( @@ -731,49 +715,28 @@ const deserializeAws_restJson1CreateManagedEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVirtualClusterCommand = async ( @@ -810,49 +773,28 @@ const deserializeAws_restJson1CreateVirtualClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteManagedEndpointCommand = async ( @@ -885,41 +827,25 @@ const deserializeAws_restJson1DeleteManagedEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVirtualClusterCommand = async ( @@ -948,41 +874,25 @@ const deserializeAws_restJson1DeleteVirtualClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobRunCommand = async ( @@ -1011,49 +921,28 @@ const deserializeAws_restJson1DescribeJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeManagedEndpointCommand = async ( @@ -1082,49 +971,28 @@ const deserializeAws_restJson1DescribeManagedEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVirtualClusterCommand = async ( @@ -1153,49 +1021,28 @@ const deserializeAws_restJson1DescribeVirtualClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobRunsCommand = async ( @@ -1228,41 +1075,25 @@ const deserializeAws_restJson1ListJobRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListManagedEndpointsCommand = async ( @@ -1295,41 +1126,25 @@ const deserializeAws_restJson1ListManagedEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1358,49 +1173,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVirtualClustersCommand = async ( @@ -1433,41 +1227,25 @@ const deserializeAws_restJson1ListVirtualClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartJobRunCommand = async ( @@ -1508,49 +1286,28 @@ const deserializeAws_restJson1StartJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1575,49 +1332,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1642,100 +1378,76 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emrcontainers#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.emrcontainers#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.emrcontainers#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CloudWatchMonitoringConfiguration = ( diff --git a/clients/client-emr/src/index.ts b/clients/client-emr/src/index.ts index 095054a91ad6a..e886954194538 100644 --- a/clients/client-emr/src/index.ts +++ b/clients/client-emr/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { EMRServiceException } from "./models/EMRServiceException"; diff --git a/clients/client-emr/src/models/EMRServiceException.ts b/clients/client-emr/src/models/EMRServiceException.ts new file mode 100644 index 0000000000000..46558de74bb7b --- /dev/null +++ b/clients/client-emr/src/models/EMRServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EMR service. + */ +export class EMRServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EMRServiceException.prototype); + } +} diff --git a/clients/client-emr/src/models/models_0.ts b/clients/client-emr/src/models/models_0.ts index 67455c6c667bd..5dbaffd0f1272 100644 --- a/clients/client-emr/src/models/models_0.ts +++ b/clients/client-emr/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EMRServiceException as __BaseException } from "./EMRServiceException"; export enum ActionOnFailure { CANCEL_AND_WAIT = "CANCEL_AND_WAIT", @@ -316,21 +319,33 @@ export namespace AddInstanceFleetOutput { *

This exception occurs when there is an internal failure in the Amazon EMR * service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

The message associated with the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

This exception occurs when there is something wrong with user input.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** *

The error code associated with the exception.

*/ @@ -340,6 +355,19 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea *

The message associated with the exception.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** @@ -725,9 +753,20 @@ export namespace AddInstanceGroupsOutput { *

Indicates that an error occurred while processing the request and that the request was * not completed.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + } } /** diff --git a/clients/client-emr/src/protocols/Aws_json1_1.ts b/clients/client-emr/src/protocols/Aws_json1_1.ts index 6ff3091c4e0cd..98caac7ce00ce 100644 --- a/clients/client-emr/src/protocols/Aws_json1_1.ts +++ b/clients/client-emr/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddInstanceFleetCommandInput, AddInstanceFleetCommandOutput } from "../commands/AddInstanceFleetCommand"; @@ -158,6 +157,7 @@ import { UpdateStudioSessionMappingCommandInput, UpdateStudioSessionMappingCommandOutput, } from "../commands/UpdateStudioSessionMappingCommand"; +import { EMRServiceException as __BaseException } from "../models/EMRServiceException"; import { AddInstanceFleetInput, AddInstanceFleetOutput, @@ -1054,41 +1054,25 @@ const deserializeAws_json1_1AddInstanceFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddInstanceGroupsCommand = async ( @@ -1116,33 +1100,22 @@ const deserializeAws_json1_1AddInstanceGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddJobFlowStepsCommand = async ( @@ -1170,33 +1143,22 @@ const deserializeAws_json1_1AddJobFlowStepsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddTagsCommand = async ( @@ -1224,41 +1186,25 @@ const deserializeAws_json1_1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelStepsCommand = async ( @@ -1286,41 +1232,25 @@ const deserializeAws_json1_1CancelStepsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSecurityConfigurationCommand = async ( @@ -1348,41 +1278,25 @@ const deserializeAws_json1_1CreateSecurityConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStudioCommand = async ( @@ -1410,41 +1324,25 @@ const deserializeAws_json1_1CreateStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStudioSessionMappingCommand = async ( @@ -1469,41 +1367,25 @@ const deserializeAws_json1_1CreateStudioSessionMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSecurityConfigurationCommand = async ( @@ -1531,41 +1413,25 @@ const deserializeAws_json1_1DeleteSecurityConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStudioCommand = async ( @@ -1590,41 +1456,25 @@ const deserializeAws_json1_1DeleteStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStudioSessionMappingCommand = async ( @@ -1649,41 +1499,25 @@ const deserializeAws_json1_1DeleteStudioSessionMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClusterCommand = async ( @@ -1711,41 +1545,25 @@ const deserializeAws_json1_1DescribeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeJobFlowsCommand = async ( @@ -1773,33 +1591,22 @@ const deserializeAws_json1_1DescribeJobFlowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNotebookExecutionCommand = async ( @@ -1827,41 +1634,25 @@ const deserializeAws_json1_1DescribeNotebookExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReleaseLabelCommand = async ( @@ -1889,41 +1680,25 @@ const deserializeAws_json1_1DescribeReleaseLabelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSecurityConfigurationCommand = async ( @@ -1951,41 +1726,25 @@ const deserializeAws_json1_1DescribeSecurityConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStepCommand = async ( @@ -2013,41 +1772,25 @@ const deserializeAws_json1_1DescribeStepCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStudioCommand = async ( @@ -2075,41 +1818,25 @@ const deserializeAws_json1_1DescribeStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAutoTerminationPolicyCommand = async ( @@ -2137,25 +1864,19 @@ const deserializeAws_json1_1GetAutoTerminationPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBlockPublicAccessConfigurationCommand = async ( @@ -2183,41 +1904,25 @@ const deserializeAws_json1_1GetBlockPublicAccessConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetManagedScalingPolicyCommand = async ( @@ -2245,25 +1950,19 @@ const deserializeAws_json1_1GetManagedScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetStudioSessionMappingCommand = async ( @@ -2291,41 +1990,25 @@ const deserializeAws_json1_1GetStudioSessionMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBootstrapActionsCommand = async ( @@ -2353,41 +2036,25 @@ const deserializeAws_json1_1ListBootstrapActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListClustersCommand = async ( @@ -2415,41 +2082,25 @@ const deserializeAws_json1_1ListClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInstanceFleetsCommand = async ( @@ -2477,41 +2128,25 @@ const deserializeAws_json1_1ListInstanceFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInstanceGroupsCommand = async ( @@ -2539,41 +2174,25 @@ const deserializeAws_json1_1ListInstanceGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInstancesCommand = async ( @@ -2601,41 +2220,25 @@ const deserializeAws_json1_1ListInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListNotebookExecutionsCommand = async ( @@ -2663,41 +2266,25 @@ const deserializeAws_json1_1ListNotebookExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReleaseLabelsCommand = async ( @@ -2725,41 +2312,25 @@ const deserializeAws_json1_1ListReleaseLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSecurityConfigurationsCommand = async ( @@ -2787,41 +2358,25 @@ const deserializeAws_json1_1ListSecurityConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStepsCommand = async ( @@ -2849,41 +2404,25 @@ const deserializeAws_json1_1ListStepsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStudiosCommand = async ( @@ -2911,41 +2450,25 @@ const deserializeAws_json1_1ListStudiosCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStudioSessionMappingsCommand = async ( @@ -2973,41 +2496,25 @@ const deserializeAws_json1_1ListStudioSessionMappingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyClusterCommand = async ( @@ -3035,41 +2542,25 @@ const deserializeAws_json1_1ModifyClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyInstanceFleetCommand = async ( @@ -3094,41 +2585,25 @@ const deserializeAws_json1_1ModifyInstanceFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyInstanceGroupsCommand = async ( @@ -3153,33 +2628,22 @@ const deserializeAws_json1_1ModifyInstanceGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAutoScalingPolicyCommand = async ( @@ -3207,25 +2671,19 @@ const deserializeAws_json1_1PutAutoScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAutoTerminationPolicyCommand = async ( @@ -3253,25 +2711,19 @@ const deserializeAws_json1_1PutAutoTerminationPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutBlockPublicAccessConfigurationCommand = async ( @@ -3299,41 +2751,25 @@ const deserializeAws_json1_1PutBlockPublicAccessConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutManagedScalingPolicyCommand = async ( @@ -3361,25 +2797,19 @@ const deserializeAws_json1_1PutManagedScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveAutoScalingPolicyCommand = async ( @@ -3407,25 +2837,19 @@ const deserializeAws_json1_1RemoveAutoScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveAutoTerminationPolicyCommand = async ( @@ -3453,25 +2877,19 @@ const deserializeAws_json1_1RemoveAutoTerminationPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveManagedScalingPolicyCommand = async ( @@ -3499,25 +2917,19 @@ const deserializeAws_json1_1RemoveManagedScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsCommand = async ( @@ -3545,41 +2957,25 @@ const deserializeAws_json1_1RemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RunJobFlowCommand = async ( @@ -3607,33 +3003,22 @@ const deserializeAws_json1_1RunJobFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetTerminationProtectionCommand = async ( @@ -3658,33 +3043,22 @@ const deserializeAws_json1_1SetTerminationProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetVisibleToAllUsersCommand = async ( @@ -3709,33 +3083,22 @@ const deserializeAws_json1_1SetVisibleToAllUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartNotebookExecutionCommand = async ( @@ -3763,41 +3126,25 @@ const deserializeAws_json1_1StartNotebookExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopNotebookExecutionCommand = async ( @@ -3822,41 +3169,25 @@ const deserializeAws_json1_1StopNotebookExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TerminateJobFlowsCommand = async ( @@ -3881,33 +3212,22 @@ const deserializeAws_json1_1TerminateJobFlowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateStudioCommand = async ( @@ -3932,41 +3252,25 @@ const deserializeAws_json1_1UpdateStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.emr#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateStudioSessionMappingCommand = async ( @@ -3991,41 +3295,25 @@ const deserializeAws_json1_1UpdateStudioSessionMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.emr#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.emr#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -4034,13 +3322,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -4049,13 +3335,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -4064,13 +3348,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddInstanceFleetInput = (input: AddInstanceFleetInput, context: __SerdeContext): any => { diff --git a/clients/client-eventbridge/src/index.ts b/clients/client-eventbridge/src/index.ts index 7c15704042b01..17400c8d88413 100644 --- a/clients/client-eventbridge/src/index.ts +++ b/clients/client-eventbridge/src/index.ts @@ -2,3 +2,4 @@ export * from "./EventBridge"; export * from "./EventBridgeClient"; export * from "./commands"; export * from "./models"; +export { EventBridgeServiceException } from "./models/EventBridgeServiceException"; diff --git a/clients/client-eventbridge/src/models/EventBridgeServiceException.ts b/clients/client-eventbridge/src/models/EventBridgeServiceException.ts new file mode 100644 index 0000000000000..f47475cde0a8b --- /dev/null +++ b/clients/client-eventbridge/src/models/EventBridgeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EventBridge service. + */ +export class EventBridgeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EventBridgeServiceException.prototype); + } +} diff --git a/clients/client-eventbridge/src/models/models_0.ts b/clients/client-eventbridge/src/models/models_0.ts index ca9518ee50ad6..36db534c80614 100644 --- a/clients/client-eventbridge/src/models/models_0.ts +++ b/clients/client-eventbridge/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EventBridgeServiceException as __BaseException } from "./EventBridgeServiceException"; export interface ActivateEventSourceRequest { /** @@ -19,46 +22,96 @@ export namespace ActivateEventSourceRequest { /** *

There is concurrent modification on a rule, target, archive, or replay.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** *

This exception occurs due to unexpected causes.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; - message?: string; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + } } /** *

The specified state is not a valid state for an event source.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; - message?: string; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + } } /** *

The operation you are attempting is not available in this region.

*/ -export interface OperationDisabledException extends __SmithyException, $MetadataBearer { - name: "OperationDisabledException"; - $fault: "client"; - message?: string; +export class OperationDisabledException extends __BaseException { + readonly name: "OperationDisabledException" = "OperationDisabledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationDisabledException.prototype); + } } /** *

An entity that you specified does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum ApiDestinationState { @@ -259,10 +312,20 @@ export namespace CancelReplayResponse { *

An error occurred because a replay can be canceled only when the state is Running or * Starting.

*/ -export interface IllegalStatusException extends __SmithyException, $MetadataBearer { - name: "IllegalStatusException"; - $fault: "client"; - message?: string; +export class IllegalStatusException extends __BaseException { + readonly name: "IllegalStatusException" = "IllegalStatusException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalStatusException.prototype); + } } export interface CreateApiDestinationRequest { @@ -342,19 +405,39 @@ export namespace CreateApiDestinationResponse { *

The request failed because it attempted to create resource beyond the allowed service * quota.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource you are trying to create already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } export interface CreateArchiveRequest { @@ -428,10 +511,20 @@ export namespace CreateArchiveResponse { /** *

The event pattern is not valid.

*/ -export interface InvalidEventPatternException extends __SmithyException, $MetadataBearer { - name: "InvalidEventPatternException"; - $fault: "client"; - message?: string; +export class InvalidEventPatternException extends __BaseException { + readonly name: "InvalidEventPatternException" = "InvalidEventPatternException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventPatternException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventPatternException.prototype); + } } export enum ConnectionAuthorizationType { @@ -1158,10 +1251,20 @@ export namespace DeleteRuleRequest { * using DisableRule, EnableRule, PutTargets, * PutRule, TagResource, or UntagResource.

*/ -export interface ManagedRuleException extends __SmithyException, $MetadataBearer { - name: "ManagedRuleException"; - $fault: "client"; - message?: string; +export class ManagedRuleException extends __BaseException { + readonly name: "ManagedRuleException" = "ManagedRuleException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ManagedRuleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ManagedRuleException.prototype); + } } export interface DescribeApiDestinationRequest { @@ -3996,10 +4099,20 @@ export namespace PutPartnerEventsResponse { /** *

The event bus policy is too long. For more information, see the limits.

*/ -export interface PolicyLengthExceededException extends __SmithyException, $MetadataBearer { - name: "PolicyLengthExceededException"; - $fault: "client"; - message?: string; +export class PolicyLengthExceededException extends __BaseException { + readonly name: "PolicyLengthExceededException" = "PolicyLengthExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyLengthExceededException.prototype); + } } /** diff --git a/clients/client-eventbridge/src/protocols/Aws_json1_1.ts b/clients/client-eventbridge/src/protocols/Aws_json1_1.ts index 50a461de76128..98e6d2c61c68b 100644 --- a/clients/client-eventbridge/src/protocols/Aws_json1_1.ts +++ b/clients/client-eventbridge/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -116,6 +115,7 @@ import { } from "../commands/UpdateApiDestinationCommand"; import { UpdateArchiveCommandInput, UpdateArchiveCommandOutput } from "../commands/UpdateArchiveCommand"; import { UpdateConnectionCommandInput, UpdateConnectionCommandOutput } from "../commands/UpdateConnectionCommand"; +import { EventBridgeServiceException as __BaseException } from "../models/EventBridgeServiceException"; import { ActivateEventSourceRequest, ApiDestination, @@ -966,65 +966,34 @@ const deserializeAws_json1_1ActivateEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.eventbridge#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelReplayCommand = async ( @@ -1052,57 +1021,31 @@ const deserializeAws_json1_1CancelReplayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IllegalStatusException": case "com.amazonaws.eventbridge#IllegalStatusException": - response = { - ...(await deserializeAws_json1_1IllegalStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalStatusExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApiDestinationCommand = async ( @@ -1130,57 +1073,31 @@ const deserializeAws_json1_1CreateApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateArchiveCommand = async ( @@ -1208,73 +1125,37 @@ const deserializeAws_json1_1CreateArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.eventbridge#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConnectionCommand = async ( @@ -1302,49 +1183,28 @@ const deserializeAws_json1_1CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEventBusCommand = async ( @@ -1372,81 +1232,40 @@ const deserializeAws_json1_1CreateEventBusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.eventbridge#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePartnerEventSourceCommand = async ( @@ -1474,65 +1293,34 @@ const deserializeAws_json1_1CreatePartnerEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeactivateEventSourceCommand = async ( @@ -1557,65 +1345,34 @@ const deserializeAws_json1_1DeactivateEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.eventbridge#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeauthorizeConnectionCommand = async ( @@ -1643,49 +1400,28 @@ const deserializeAws_json1_1DeauthorizeConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApiDestinationCommand = async ( @@ -1713,49 +1449,28 @@ const deserializeAws_json1_1DeleteApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteArchiveCommand = async ( @@ -1783,49 +1498,28 @@ const deserializeAws_json1_1DeleteArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectionCommand = async ( @@ -1853,49 +1547,28 @@ const deserializeAws_json1_1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventBusCommand = async ( @@ -1920,41 +1593,25 @@ const deserializeAws_json1_1DeleteEventBusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePartnerEventSourceCommand = async ( @@ -1979,49 +1636,28 @@ const deserializeAws_json1_1DeletePartnerEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleCommand = async ( @@ -2046,57 +1682,31 @@ const deserializeAws_json1_1DeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApiDestinationCommand = async ( @@ -2124,41 +1734,25 @@ const deserializeAws_json1_1DescribeApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeArchiveCommand = async ( @@ -2186,49 +1780,28 @@ const deserializeAws_json1_1DescribeArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionCommand = async ( @@ -2256,41 +1829,25 @@ const deserializeAws_json1_1DescribeConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventBusCommand = async ( @@ -2318,41 +1875,25 @@ const deserializeAws_json1_1DescribeEventBusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventSourceCommand = async ( @@ -2380,49 +1921,28 @@ const deserializeAws_json1_1DescribeEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePartnerEventSourceCommand = async ( @@ -2450,49 +1970,28 @@ const deserializeAws_json1_1DescribePartnerEventSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReplayCommand = async ( @@ -2520,41 +2019,25 @@ const deserializeAws_json1_1DescribeReplayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRuleCommand = async ( @@ -2582,41 +2065,25 @@ const deserializeAws_json1_1DescribeRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableRuleCommand = async ( @@ -2641,57 +2108,31 @@ const deserializeAws_json1_1DisableRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableRuleCommand = async ( @@ -2716,57 +2157,31 @@ const deserializeAws_json1_1EnableRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApiDestinationsCommand = async ( @@ -2794,33 +2209,22 @@ const deserializeAws_json1_1ListApiDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListArchivesCommand = async ( @@ -2848,41 +2252,25 @@ const deserializeAws_json1_1ListArchivesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListConnectionsCommand = async ( @@ -2910,33 +2298,22 @@ const deserializeAws_json1_1ListConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventBusesCommand = async ( @@ -2964,33 +2341,22 @@ const deserializeAws_json1_1ListEventBusesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventSourcesCommand = async ( @@ -3018,41 +2384,25 @@ const deserializeAws_json1_1ListEventSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPartnerEventSourceAccountsCommand = async ( @@ -3080,49 +2430,28 @@ const deserializeAws_json1_1ListPartnerEventSourceAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPartnerEventSourcesCommand = async ( @@ -3150,41 +2479,25 @@ const deserializeAws_json1_1ListPartnerEventSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReplaysCommand = async ( @@ -3212,33 +2525,22 @@ const deserializeAws_json1_1ListReplaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRuleNamesByTargetCommand = async ( @@ -3266,41 +2568,25 @@ const deserializeAws_json1_1ListRuleNamesByTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRulesCommand = async ( @@ -3328,41 +2614,25 @@ const deserializeAws_json1_1ListRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3390,41 +2660,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTargetsByRuleCommand = async ( @@ -3452,41 +2706,25 @@ const deserializeAws_json1_1ListTargetsByRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEventsCommand = async ( @@ -3514,33 +2752,22 @@ const deserializeAws_json1_1PutEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPartnerEventsCommand = async ( @@ -3568,41 +2795,25 @@ const deserializeAws_json1_1PutPartnerEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPermissionCommand = async ( @@ -3627,65 +2838,34 @@ const deserializeAws_json1_1PutPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "PolicyLengthExceededException": case "com.amazonaws.eventbridge#PolicyLengthExceededException": - response = { - ...(await deserializeAws_json1_1PolicyLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyLengthExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRuleCommand = async ( @@ -3713,73 +2893,37 @@ const deserializeAws_json1_1PutRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.eventbridge#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutTargetsCommand = async ( @@ -3807,65 +2951,34 @@ const deserializeAws_json1_1PutTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemovePermissionCommand = async ( @@ -3890,57 +3003,31 @@ const deserializeAws_json1_1RemovePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "OperationDisabledException": case "com.amazonaws.eventbridge#OperationDisabledException": - response = { - ...(await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationDisabledExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTargetsCommand = async ( @@ -3968,57 +3055,31 @@ const deserializeAws_json1_1RemoveTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartReplayCommand = async ( @@ -4046,65 +3107,34 @@ const deserializeAws_json1_1StartReplayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.eventbridge#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.eventbridge#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4132,57 +3162,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestEventPatternCommand = async ( @@ -4210,41 +3214,25 @@ const deserializeAws_json1_1TestEventPatternCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.eventbridge#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -4272,57 +3260,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "ManagedRuleException": case "com.amazonaws.eventbridge#ManagedRuleException": - response = { - ...(await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ManagedRuleExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApiDestinationCommand = async ( @@ -4350,57 +3312,31 @@ const deserializeAws_json1_1UpdateApiDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateArchiveCommand = async ( @@ -4428,65 +3364,34 @@ const deserializeAws_json1_1UpdateArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidEventPatternException": case "com.amazonaws.eventbridge#InvalidEventPatternException": - response = { - ...(await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEventPatternExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConnectionCommand = async ( @@ -4514,57 +3419,31 @@ const deserializeAws_json1_1UpdateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.eventbridge#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.eventbridge#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.eventbridge#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.eventbridge#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -4573,13 +3452,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IllegalStatusExceptionResponse = async ( @@ -4588,13 +3465,11 @@ const deserializeAws_json1_1IllegalStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IllegalStatusException(body, context); - const contents: IllegalStatusException = { - name: "IllegalStatusException", - $fault: "client", + const exception = new IllegalStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalExceptionResponse = async ( @@ -4603,13 +3478,11 @@ const deserializeAws_json1_1InternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalException(body, context); - const contents: InternalException = { - name: "InternalException", - $fault: "server", + const exception = new InternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEventPatternExceptionResponse = async ( @@ -4618,13 +3491,11 @@ const deserializeAws_json1_1InvalidEventPatternExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEventPatternException(body, context); - const contents: InvalidEventPatternException = { - name: "InvalidEventPatternException", - $fault: "client", + const exception = new InvalidEventPatternException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -4633,13 +3504,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -4648,13 +3517,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ManagedRuleExceptionResponse = async ( @@ -4663,13 +3530,11 @@ const deserializeAws_json1_1ManagedRuleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ManagedRuleException(body, context); - const contents: ManagedRuleException = { - name: "ManagedRuleException", - $fault: "client", + const exception = new ManagedRuleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationDisabledExceptionResponse = async ( @@ -4678,13 +3543,11 @@ const deserializeAws_json1_1OperationDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationDisabledException(body, context); - const contents: OperationDisabledException = { - name: "OperationDisabledException", - $fault: "client", + const exception = new OperationDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyLengthExceededExceptionResponse = async ( @@ -4693,13 +3556,11 @@ const deserializeAws_json1_1PolicyLengthExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyLengthExceededException(body, context); - const contents: PolicyLengthExceededException = { - name: "PolicyLengthExceededException", - $fault: "client", + const exception = new PolicyLengthExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -4708,13 +3569,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -4723,13 +3582,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActivateEventSourceRequest = ( diff --git a/clients/client-evidently/src/index.ts b/clients/client-evidently/src/index.ts index 3104664227cd1..32d514d22f4d2 100644 --- a/clients/client-evidently/src/index.ts +++ b/clients/client-evidently/src/index.ts @@ -3,3 +3,4 @@ export * from "./EvidentlyClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { EvidentlyServiceException } from "./models/EvidentlyServiceException"; diff --git a/clients/client-evidently/src/models/EvidentlyServiceException.ts b/clients/client-evidently/src/models/EvidentlyServiceException.ts new file mode 100644 index 0000000000000..17d0ce5d1a7f1 --- /dev/null +++ b/clients/client-evidently/src/models/EvidentlyServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Evidently service. + */ +export class EvidentlyServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EvidentlyServiceException.prototype); + } +} diff --git a/clients/client-evidently/src/models/models_0.ts b/clients/client-evidently/src/models/models_0.ts index 393e117d97625..498b80de59d46 100644 --- a/clients/client-evidently/src/models/models_0.ts +++ b/clients/client-evidently/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EvidentlyServiceException as __BaseException } from "./EvidentlyServiceException"; /** *

You do not have sufficient permissions to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -236,10 +251,9 @@ export namespace BatchEvaluateFeatureResponse { /** *

The request references a resource that does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that caused the exception.

*/ @@ -249,15 +263,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource that is associated with the error.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

The request was denied because of request throttling. Retry the request.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

The ID of the service that is associated with the error.

*/ @@ -267,6 +294,20 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The ID of the service quota that was exceeded.

*/ quotaCode?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } /** @@ -303,10 +344,9 @@ export enum ValidationExceptionReason { /** *

The value of a parameter in the request caused an error.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A reason for the error.

*/ @@ -316,6 +356,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The parameter that caused the exception.

*/ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } export enum ChangeDirectionEnum { @@ -368,10 +422,9 @@ export namespace CloudWatchLogsDestinationConfig { /** *

A resource was in an inconsistent state during an update or a deletion.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that caused the exception.

*/ @@ -381,6 +434,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource that is associated with the error.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** @@ -909,10 +976,9 @@ export namespace CreateExperimentResponse { /** *

The request would cause a service quota to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that caused the exception.

*/ @@ -932,6 +998,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The ID of the service quota that was exceeded.

*/ quotaCode?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } export enum FeatureEvaluationStrategy { @@ -1905,19 +1987,39 @@ export namespace DeleteExperimentResponse { /** *

Unexpected error while processing the request. Retry the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The service was unavailable. Retry the request.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } export interface DeleteFeatureRequest { diff --git a/clients/client-evidently/src/protocols/Aws_restJson1.ts b/clients/client-evidently/src/protocols/Aws_restJson1.ts index 2e5bbd93341df..923ad2ac9cbc6 100644 --- a/clients/client-evidently/src/protocols/Aws_restJson1.ts +++ b/clients/client-evidently/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -20,10 +21,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -70,6 +69,7 @@ import { UpdateProjectDataDeliveryCommandInput, UpdateProjectDataDeliveryCommandOutput, } from "../commands/UpdateProjectDataDeliveryCommand"; +import { EvidentlyServiceException as __BaseException } from "../models/EvidentlyServiceException"; import { AccessDeniedException, CloudWatchLogsDestination, @@ -1455,57 +1455,31 @@ const deserializeAws_restJson1BatchEvaluateFeatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateExperimentCommand = async ( @@ -1534,65 +1508,34 @@ const deserializeAws_restJson1CreateExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFeatureCommand = async ( @@ -1621,65 +1564,34 @@ const deserializeAws_restJson1CreateFeatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLaunchCommand = async ( @@ -1708,65 +1620,34 @@ const deserializeAws_restJson1CreateLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProjectCommand = async ( @@ -1795,57 +1676,31 @@ const deserializeAws_restJson1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteExperimentCommand = async ( @@ -1870,65 +1725,34 @@ const deserializeAws_restJson1DeleteExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.evidently#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.evidently#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFeatureCommand = async ( @@ -1953,65 +1777,34 @@ const deserializeAws_restJson1DeleteFeatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLaunchCommand = async ( @@ -2036,65 +1829,34 @@ const deserializeAws_restJson1DeleteLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProjectCommand = async ( @@ -2119,65 +1881,34 @@ const deserializeAws_restJson1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EvaluateFeatureCommand = async ( @@ -2218,57 +1949,31 @@ const deserializeAws_restJson1EvaluateFeatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExperimentCommand = async ( @@ -2297,49 +2002,28 @@ const deserializeAws_restJson1GetExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExperimentResultsCommand = async ( @@ -2376,65 +2060,34 @@ const deserializeAws_restJson1GetExperimentResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFeatureCommand = async ( @@ -2463,57 +2116,31 @@ const deserializeAws_restJson1GetFeatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchCommand = async ( @@ -2542,49 +2169,28 @@ const deserializeAws_restJson1GetLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProjectCommand = async ( @@ -2613,57 +2219,31 @@ const deserializeAws_restJson1GetProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListExperimentsCommand = async ( @@ -2696,41 +2276,25 @@ const deserializeAws_restJson1ListExperimentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFeaturesCommand = async ( @@ -2763,57 +2327,31 @@ const deserializeAws_restJson1ListFeaturesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLaunchesCommand = async ( @@ -2846,49 +2384,28 @@ const deserializeAws_restJson1ListLaunchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectsCommand = async ( @@ -2921,49 +2438,28 @@ const deserializeAws_restJson1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2992,49 +2488,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutProjectEventsCommand = async ( @@ -3067,57 +2542,31 @@ const deserializeAws_restJson1PutProjectEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartExperimentCommand = async ( @@ -3146,73 +2595,37 @@ const deserializeAws_restJson1StartExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartLaunchCommand = async ( @@ -3241,65 +2654,34 @@ const deserializeAws_restJson1StartLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopExperimentCommand = async ( @@ -3328,73 +2710,37 @@ const deserializeAws_restJson1StopExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopLaunchCommand = async ( @@ -3423,57 +2769,31 @@ const deserializeAws_restJson1StopLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.evidently#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3498,49 +2818,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3565,49 +2864,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateExperimentCommand = async ( @@ -3636,57 +2914,31 @@ const deserializeAws_restJson1UpdateExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFeatureCommand = async ( @@ -3715,65 +2967,34 @@ const deserializeAws_restJson1UpdateFeatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLaunchCommand = async ( @@ -3802,57 +3023,31 @@ const deserializeAws_restJson1UpdateLaunchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProjectCommand = async ( @@ -3881,57 +3076,31 @@ const deserializeAws_restJson1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProjectDataDeliveryCommand = async ( @@ -3960,96 +3129,57 @@ const deserializeAws_restJson1UpdateProjectDataDeliveryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.evidently#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.evidently#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.evidently#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.evidently#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.evidently#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4060,38 +3190,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4102,23 +3228,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4135,38 +3256,34 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4177,21 +3294,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fieldList !== undefined && data.fieldList !== null) { contents.fieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context); @@ -4202,7 +3316,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CloudWatchLogsDestinationConfig = ( diff --git a/clients/client-finspace-data/src/index.ts b/clients/client-finspace-data/src/index.ts index 2a7cb8e067373..a1ffe14c9fd13 100644 --- a/clients/client-finspace-data/src/index.ts +++ b/clients/client-finspace-data/src/index.ts @@ -3,3 +3,4 @@ export * from "./FinspaceDataClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { FinspaceDataServiceException } from "./models/FinspaceDataServiceException"; diff --git a/clients/client-finspace-data/src/models/FinspaceDataServiceException.ts b/clients/client-finspace-data/src/models/FinspaceDataServiceException.ts new file mode 100644 index 0000000000000..11eafdad0cc55 --- /dev/null +++ b/clients/client-finspace-data/src/models/FinspaceDataServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from FinspaceData service. + */ +export class FinspaceDataServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FinspaceDataServiceException.prototype); + } +} diff --git a/clients/client-finspace-data/src/models/models_0.ts b/clients/client-finspace-data/src/models/models_0.ts index c8802446a82dc..ef7fb49515e27 100644 --- a/clients/client-finspace-data/src/models/models_0.ts +++ b/clients/client-finspace-data/src/models/models_0.ts @@ -1,21 +1,44 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FinspaceDataServiceException as __BaseException } from "./FinspaceDataServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

The request conflicts with an existing resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export enum ChangeType { @@ -165,45 +188,96 @@ export namespace CreateChangesetResponse { *

The request processing has failed because of an unknown error, exception or * failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

A limit has exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

One or more resources can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The input fails to satisfy the constraints specified by an AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export enum DatasetKind { diff --git a/clients/client-finspace-data/src/protocols/Aws_restJson1.ts b/clients/client-finspace-data/src/protocols/Aws_restJson1.ts index d9294dcd34c48..aefd1073124ca 100644 --- a/clients/client-finspace-data/src/protocols/Aws_restJson1.ts +++ b/clients/client-finspace-data/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -33,6 +32,7 @@ import { ListDatasetsCommandInput, ListDatasetsCommandOutput } from "../commands import { ListDataViewsCommandInput, ListDataViewsCommandOutput } from "../commands/ListDataViewsCommand"; import { UpdateChangesetCommandInput, UpdateChangesetCommandOutput } from "../commands/UpdateChangesetCommand"; import { UpdateDatasetCommandInput, UpdateDatasetCommandOutput } from "../commands/UpdateDatasetCommand"; +import { FinspaceDataServiceException as __BaseException } from "../models/FinspaceDataServiceException"; import { AccessDeniedException, ChangesetErrorInfo, @@ -582,81 +582,40 @@ const deserializeAws_restJson1CreateChangesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.finspacedata#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDatasetCommand = async ( @@ -685,81 +644,40 @@ const deserializeAws_restJson1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.finspacedata#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataViewCommand = async ( @@ -792,73 +710,37 @@ const deserializeAws_restJson1CreateDataViewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.finspacedata#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatasetCommand = async ( @@ -887,81 +769,40 @@ const deserializeAws_restJson1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.finspacedata#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChangesetCommand = async ( @@ -1038,73 +879,37 @@ const deserializeAws_restJson1GetChangesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDatasetCommand = async ( @@ -1169,73 +974,37 @@ const deserializeAws_restJson1GetDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataViewCommand = async ( @@ -1311,65 +1080,34 @@ const deserializeAws_restJson1GetDataViewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProgrammaticAccessCredentialsCommand = async ( @@ -1402,57 +1140,31 @@ const deserializeAws_restJson1GetProgrammaticAccessCredentialsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWorkingLocationCommand = async ( @@ -1489,57 +1201,31 @@ const deserializeAws_restJson1GetWorkingLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChangesetsCommand = async ( @@ -1572,73 +1258,37 @@ const deserializeAws_restJson1ListChangesetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatasetsCommand = async ( @@ -1671,65 +1321,34 @@ const deserializeAws_restJson1ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataViewsCommand = async ( @@ -1762,65 +1381,34 @@ const deserializeAws_restJson1ListDataViewsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChangesetCommand = async ( @@ -1853,73 +1441,37 @@ const deserializeAws_restJson1UpdateChangesetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDatasetCommand = async ( @@ -1948,188 +1500,146 @@ const deserializeAws_restJson1UpdateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspacedata#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.finspacedata#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspacedata#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspacedata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspacedata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspacedata#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ColumnDefinition = (input: ColumnDefinition, context: __SerdeContext): any => { diff --git a/clients/client-finspace/src/index.ts b/clients/client-finspace/src/index.ts index 32fe4c66c3703..f78765e23488d 100644 --- a/clients/client-finspace/src/index.ts +++ b/clients/client-finspace/src/index.ts @@ -2,3 +2,4 @@ export * from "./Finspace"; export * from "./FinspaceClient"; export * from "./commands"; export * from "./models"; +export { FinspaceServiceException } from "./models/FinspaceServiceException"; diff --git a/clients/client-finspace/src/models/FinspaceServiceException.ts b/clients/client-finspace/src/models/FinspaceServiceException.ts new file mode 100644 index 0000000000000..27a6be9298b7f --- /dev/null +++ b/clients/client-finspace/src/models/FinspaceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Finspace service. + */ +export class FinspaceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FinspaceServiceException.prototype); + } +} diff --git a/clients/client-finspace/src/models/models_0.ts b/clients/client-finspace/src/models/models_0.ts index 9d77d1f930dcd..e545128d75003 100644 --- a/clients/client-finspace/src/models/models_0.ts +++ b/clients/client-finspace/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FinspaceServiceException as __BaseException } from "./FinspaceServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum FederationMode { @@ -196,46 +209,97 @@ export namespace CreateEnvironmentResponse { *

The request processing has failed because of an unknown error, exception or * failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

A service limit or quota is exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

You have exceeded your service quota. To perform the requested action, * remove some of the relevant resources, or use Service Quotas to request a service quota increase.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The input fails to satisfy the constraints specified by an AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface DeleteEnvironmentRequest { @@ -268,10 +332,20 @@ export namespace DeleteEnvironmentResponse { /** *

One or more resources can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface GetEnvironmentRequest { @@ -442,10 +516,20 @@ export namespace ListEnvironmentsResponse { /** *

The request is invalid. Something is wrong with the input to the request.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } export interface ListTagsForResourceRequest { diff --git a/clients/client-finspace/src/protocols/Aws_restJson1.ts b/clients/client-finspace/src/protocols/Aws_restJson1.ts index 50dedb86d2ff4..f1bfec300d853 100644 --- a/clients/client-finspace/src/protocols/Aws_restJson1.ts +++ b/clients/client-finspace/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateEnvironmentCommandInput, CreateEnvironmentCommandOutput } from "../commands/CreateEnvironmentCommand"; @@ -24,6 +23,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateEnvironmentCommandInput, UpdateEnvironmentCommandOutput } from "../commands/UpdateEnvironmentCommand"; +import { FinspaceServiceException as __BaseException } from "../models/FinspaceServiceException"; import { AccessDeniedException, Environment, @@ -327,73 +327,37 @@ const deserializeAws_restJson1CreateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspace#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.finspace#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.finspace#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspace#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspace#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEnvironmentCommand = async ( @@ -418,65 +382,34 @@ const deserializeAws_restJson1DeleteEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspace#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspace#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspace#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspace#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEnvironmentCommand = async ( @@ -505,57 +438,31 @@ const deserializeAws_restJson1GetEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspace#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspace#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspace#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEnvironmentsCommand = async ( @@ -588,41 +495,25 @@ const deserializeAws_restJson1ListEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspace#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -651,49 +542,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.finspace#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspace#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -718,49 +588,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.finspace#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspace#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -785,49 +634,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.finspace#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspace#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEnvironmentCommand = async ( @@ -856,193 +684,156 @@ const deserializeAws_restJson1UpdateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.finspace#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.finspace#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.finspace#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.finspace#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.finspace#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AttributeMap = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-firehose/src/index.ts b/clients/client-firehose/src/index.ts index e743537840110..b04f5e86b7924 100644 --- a/clients/client-firehose/src/index.ts +++ b/clients/client-firehose/src/index.ts @@ -2,3 +2,4 @@ export * from "./Firehose"; export * from "./FirehoseClient"; export * from "./commands"; export * from "./models"; +export { FirehoseServiceException } from "./models/FirehoseServiceException"; diff --git a/clients/client-firehose/src/models/FirehoseServiceException.ts b/clients/client-firehose/src/models/FirehoseServiceException.ts new file mode 100644 index 0000000000000..3d5401f488dc9 --- /dev/null +++ b/clients/client-firehose/src/models/FirehoseServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Firehose service. + */ +export class FirehoseServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FirehoseServiceException.prototype); + } +} diff --git a/clients/client-firehose/src/models/models_0.ts b/clients/client-firehose/src/models/models_0.ts index 6fc20d6604aba..ed00c00c9ff7a 100644 --- a/clients/client-firehose/src/models/models_0.ts +++ b/clients/client-firehose/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FirehoseServiceException as __BaseException } from "./FirehoseServiceException"; export interface AmazonopensearchserviceBufferingHints { IntervalInSeconds?: number; @@ -768,13 +770,20 @@ export namespace AmazonopensearchserviceDestinationUpdate { *

Another modification has already happened. Fetch VersionId again and use * it to update the destination.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } export enum ContentEncoding { @@ -2256,13 +2265,20 @@ export namespace CreateDeliveryStreamOutput { /** *

The specified input parameter has a value that is not valid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + } } /** @@ -2272,35 +2288,60 @@ export interface InvalidArgumentException extends __SmithyException, $MetadataBe * InvalidStateException, DisabledException, or * NotFoundException.

*/ -export interface InvalidKMSResourceException extends __SmithyException, $MetadataBearer { - name: "InvalidKMSResourceException"; - $fault: "client"; +export class InvalidKMSResourceException extends __BaseException { + readonly name: "InvalidKMSResourceException" = "InvalidKMSResourceException"; + readonly $fault: "client" = "client"; code?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKMSResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKMSResourceException.prototype); + this.code = opts.code; + } } /** *

You have already reached the limit for a requested resource.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource is already in use and not available for this operation.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export interface DeleteDeliveryStreamInput { @@ -2345,13 +2386,20 @@ export namespace DeleteDeliveryStreamOutput { /** *

The specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum DeliveryStreamFailureType { @@ -3517,13 +3565,20 @@ export namespace PutRecordOutput { * information about limits and how to request an increase, see Amazon Kinesis Data Firehose * Limits.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } export interface PutRecordBatchInput { diff --git a/clients/client-firehose/src/protocols/Aws_json1_1.ts b/clients/client-firehose/src/protocols/Aws_json1_1.ts index d00d360746e84..a6ac92c3d5d6e 100644 --- a/clients/client-firehose/src/protocols/Aws_json1_1.ts +++ b/clients/client-firehose/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -54,6 +53,7 @@ import { UntagDeliveryStreamCommandOutput, } from "../commands/UntagDeliveryStreamCommand"; import { UpdateDestinationCommandInput, UpdateDestinationCommandOutput } from "../commands/UpdateDestinationCommand"; +import { FirehoseServiceException as __BaseException } from "../models/FirehoseServiceException"; import { _Record, AmazonopensearchserviceBufferingHints, @@ -335,57 +335,31 @@ const deserializeAws_json1_1CreateDeliveryStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidKMSResourceException": case "com.amazonaws.firehose#InvalidKMSResourceException": - response = { - ...(await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.firehose#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeliveryStreamCommand = async ( @@ -413,41 +387,25 @@ const deserializeAws_json1_1DeleteDeliveryStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDeliveryStreamCommand = async ( @@ -475,33 +433,22 @@ const deserializeAws_json1_1DescribeDeliveryStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeliveryStreamsCommand = async ( @@ -529,25 +476,19 @@ const deserializeAws_json1_1ListDeliveryStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForDeliveryStreamCommand = async ( @@ -575,49 +516,28 @@ const deserializeAws_json1_1ListTagsForDeliveryStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.firehose#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRecordCommand = async ( @@ -645,57 +565,31 @@ const deserializeAws_json1_1PutRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidKMSResourceException": case "com.amazonaws.firehose#InvalidKMSResourceException": - response = { - ...(await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.firehose#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRecordBatchCommand = async ( @@ -723,57 +617,31 @@ const deserializeAws_json1_1PutRecordBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidKMSResourceException": case "com.amazonaws.firehose#InvalidKMSResourceException": - response = { - ...(await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.firehose#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDeliveryStreamEncryptionCommand = async ( @@ -801,65 +669,34 @@ const deserializeAws_json1_1StartDeliveryStreamEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidKMSResourceException": case "com.amazonaws.firehose#InvalidKMSResourceException": - response = { - ...(await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSResourceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.firehose#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopDeliveryStreamEncryptionCommand = async ( @@ -887,57 +724,31 @@ const deserializeAws_json1_1StopDeliveryStreamEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.firehose#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagDeliveryStreamCommand = async ( @@ -965,57 +776,31 @@ const deserializeAws_json1_1TagDeliveryStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.firehose#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagDeliveryStreamCommand = async ( @@ -1043,57 +828,31 @@ const deserializeAws_json1_1UntagDeliveryStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.firehose#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDestinationCommand = async ( @@ -1121,57 +880,31 @@ const deserializeAws_json1_1UpdateDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.firehose#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.firehose#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.firehose#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.firehose#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -1180,13 +913,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( @@ -1195,13 +926,11 @@ const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgumentException(body, context); - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", + const exception = new InvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKMSResourceExceptionResponse = async ( @@ -1210,13 +939,11 @@ const deserializeAws_json1_1InvalidKMSResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKMSResourceException(body, context); - const contents: InvalidKMSResourceException = { - name: "InvalidKMSResourceException", - $fault: "client", + const exception = new InvalidKMSResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1225,13 +952,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -1240,13 +965,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -1255,13 +978,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -1270,13 +991,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AmazonopensearchserviceBufferingHints = ( diff --git a/clients/client-fis/src/index.ts b/clients/client-fis/src/index.ts index aaf7613c5a5c9..c23aac4622519 100644 --- a/clients/client-fis/src/index.ts +++ b/clients/client-fis/src/index.ts @@ -3,3 +3,4 @@ export * from "./FisClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { FisServiceException } from "./models/FisServiceException"; diff --git a/clients/client-fis/src/models/FisServiceException.ts b/clients/client-fis/src/models/FisServiceException.ts new file mode 100644 index 0000000000000..76e1c6a779860 --- /dev/null +++ b/clients/client-fis/src/models/FisServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Fis service. + */ +export class FisServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FisServiceException.prototype); + } +} diff --git a/clients/client-fis/src/models/models_0.ts b/clients/client-fis/src/models/models_0.ts index 6292779558323..2b4c7e948ef73 100644 --- a/clients/client-fis/src/models/models_0.ts +++ b/clients/client-fis/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FisServiceException as __BaseException } from "./FisServiceException"; /** *

Describes a parameter for an action.

@@ -120,10 +123,20 @@ export namespace ActionSummary { /** *

The request could not be processed because of a conflict.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -535,28 +548,58 @@ export namespace CreateExperimentTemplateResponse { /** *

The specified resource cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

You have exceeded your service quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The specified input is not valid, or fails to satisfy the constraints for the request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface DeleteExperimentTemplateRequest { diff --git a/clients/client-fis/src/protocols/Aws_restJson1.ts b/clients/client-fis/src/protocols/Aws_restJson1.ts index d46275fc4986e..3ad0e5dd5bde2 100644 --- a/clients/client-fis/src/protocols/Aws_restJson1.ts +++ b/clients/client-fis/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -57,6 +56,7 @@ import { UpdateExperimentTemplateCommandInput, UpdateExperimentTemplateCommandOutput, } from "../commands/UpdateExperimentTemplateCommand"; +import { FisServiceException as __BaseException } from "../models/FisServiceException"; import { Action, ActionParameter, @@ -597,57 +597,31 @@ const deserializeAws_restJson1CreateExperimentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.fis#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.fis#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteExperimentTemplateCommand = async ( @@ -676,41 +650,25 @@ const deserializeAws_restJson1DeleteExperimentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetActionCommand = async ( @@ -739,41 +697,25 @@ const deserializeAws_restJson1GetActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExperimentCommand = async ( @@ -802,41 +744,25 @@ const deserializeAws_restJson1GetExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExperimentTemplateCommand = async ( @@ -865,41 +791,25 @@ const deserializeAws_restJson1GetExperimentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTargetResourceTypeCommand = async ( @@ -928,41 +838,25 @@ const deserializeAws_restJson1GetTargetResourceTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListActionsCommand = async ( @@ -995,33 +889,22 @@ const deserializeAws_restJson1ListActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListExperimentsCommand = async ( @@ -1054,33 +937,22 @@ const deserializeAws_restJson1ListExperimentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListExperimentTemplatesCommand = async ( @@ -1116,33 +988,22 @@ const deserializeAws_restJson1ListExperimentTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1171,25 +1032,19 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTargetResourceTypesCommand = async ( @@ -1225,33 +1080,22 @@ const deserializeAws_restJson1ListTargetResourceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartExperimentCommand = async ( @@ -1280,57 +1124,31 @@ const deserializeAws_restJson1StartExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.fis#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.fis#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopExperimentCommand = async ( @@ -1359,41 +1177,25 @@ const deserializeAws_restJson1StopExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1418,25 +1220,19 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1461,25 +1257,19 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateExperimentTemplateCommand = async ( @@ -1508,117 +1298,92 @@ const deserializeAws_restJson1UpdateExperimentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.fis#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.fis#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.fis#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CreateExperimentTemplateActionInput = ( diff --git a/clients/client-fms/src/index.ts b/clients/client-fms/src/index.ts index 4e9afad9a9f09..f9b625bd67cf1 100644 --- a/clients/client-fms/src/index.ts +++ b/clients/client-fms/src/index.ts @@ -3,3 +3,4 @@ export * from "./FMSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { FMSServiceException } from "./models/FMSServiceException"; diff --git a/clients/client-fms/src/models/FMSServiceException.ts b/clients/client-fms/src/models/FMSServiceException.ts new file mode 100644 index 0000000000000..84eeb9bff4d29 --- /dev/null +++ b/clients/client-fms/src/models/FMSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from FMS service. + */ +export class FMSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FMSServiceException.prototype); + } +} diff --git a/clients/client-fms/src/models/models_0.ts b/clients/client-fms/src/models/models_0.ts index 596388e423f92..dcf76a14fda76 100644 --- a/clients/client-fms/src/models/models_0.ts +++ b/clients/client-fms/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FMSServiceException as __BaseException } from "./FMSServiceException"; export enum AccountRoleStatus { Creating = "CREATING", @@ -169,19 +172,43 @@ export namespace AssociateAdminAccountRequest { *

The operation failed because of a system problem, even though the request was valid. Retry * your request.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "client"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + this.Message = opts.Message; + } } /** *

The parameters of the request were invalid.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** @@ -191,10 +218,22 @@ export interface InvalidInputException extends __SmithyException, $MetadataBeare * that's disabled by default, and that you need to enable for the Firewall Manager * administrator account and for Organizations before you can access it.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + this.Message = opts.Message; + } } /** @@ -203,19 +242,43 @@ export interface InvalidOperationException extends __SmithyException, $MetadataB * see Firewall * Manager Limits in the WAF Developer Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -967,10 +1030,22 @@ export namespace GetPolicyResponse { /** *

The value of the Type parameter is invalid.

*/ -export interface InvalidTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidTypeException"; - $fault: "client"; +export class InvalidTypeException extends __BaseException { + readonly name: "InvalidTypeException" = "InvalidTypeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTypeException.prototype); + this.Message = opts.Message; + } } export interface GetProtectionStatusRequest { diff --git a/clients/client-fms/src/protocols/Aws_json1_1.ts b/clients/client-fms/src/protocols/Aws_json1_1.ts index 3d43960779fe9..865acad4ec2ba 100644 --- a/clients/client-fms/src/protocols/Aws_json1_1.ts +++ b/clients/client-fms/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -76,6 +75,7 @@ import { PutPolicyCommandInput, PutPolicyCommandOutput } from "../commands/PutPo import { PutProtocolsListCommandInput, PutProtocolsListCommandOutput } from "../commands/PutProtocolsListCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { FMSServiceException as __BaseException } from "../models/FMSServiceException"; import { ActionTarget, App, @@ -544,65 +544,34 @@ const deserializeAws_json1_1AssociateAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppsListCommand = async ( @@ -627,49 +596,28 @@ const deserializeAws_json1_1DeleteAppsListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNotificationChannelCommand = async ( @@ -694,49 +642,28 @@ const deserializeAws_json1_1DeleteNotificationChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePolicyCommand = async ( @@ -761,65 +688,34 @@ const deserializeAws_json1_1DeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProtocolsListCommand = async ( @@ -844,49 +740,28 @@ const deserializeAws_json1_1DeleteProtocolsListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateAdminAccountCommand = async ( @@ -911,49 +786,28 @@ const deserializeAws_json1_1DisassociateAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAdminAccountCommand = async ( @@ -981,49 +835,28 @@ const deserializeAws_json1_1GetAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAppsListCommand = async ( @@ -1051,49 +884,28 @@ const deserializeAws_json1_1GetAppsListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetComplianceDetailCommand = async ( @@ -1121,57 +933,31 @@ const deserializeAws_json1_1GetComplianceDetailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetNotificationChannelCommand = async ( @@ -1199,49 +985,28 @@ const deserializeAws_json1_1GetNotificationChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPolicyCommand = async ( @@ -1269,57 +1034,31 @@ const deserializeAws_json1_1GetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.fms#InvalidTypeException": - response = { - ...(await deserializeAws_json1_1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetProtectionStatusCommand = async ( @@ -1347,49 +1086,28 @@ const deserializeAws_json1_1GetProtectionStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetProtocolsListCommand = async ( @@ -1417,49 +1135,28 @@ const deserializeAws_json1_1GetProtocolsListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetViolationDetailsCommand = async ( @@ -1487,49 +1184,28 @@ const deserializeAws_json1_1GetViolationDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAppsListsCommand = async ( @@ -1557,57 +1233,31 @@ const deserializeAws_json1_1ListAppsListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListComplianceStatusCommand = async ( @@ -1635,41 +1285,25 @@ const deserializeAws_json1_1ListComplianceStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMemberAccountsCommand = async ( @@ -1697,41 +1331,25 @@ const deserializeAws_json1_1ListMemberAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPoliciesCommand = async ( @@ -1759,57 +1377,31 @@ const deserializeAws_json1_1ListPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProtocolsListsCommand = async ( @@ -1837,49 +1429,28 @@ const deserializeAws_json1_1ListProtocolsListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1907,57 +1478,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAppsListCommand = async ( @@ -1985,65 +1530,34 @@ const deserializeAws_json1_1PutAppsListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutNotificationChannelCommand = async ( @@ -2068,49 +1582,28 @@ const deserializeAws_json1_1PutNotificationChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPolicyCommand = async ( @@ -2138,73 +1631,37 @@ const deserializeAws_json1_1PutPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.fms#InvalidTypeException": - response = { - ...(await deserializeAws_json1_1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutProtocolsListCommand = async ( @@ -2232,65 +1689,34 @@ const deserializeAws_json1_1PutProtocolsListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2318,65 +1744,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.fms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2404,57 +1799,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.fms#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.fms#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.fms#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.fms#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -2463,13 +1832,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "client", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -2478,13 +1845,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( @@ -2493,13 +1858,11 @@ const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOperationException(body, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTypeExceptionResponse = async ( @@ -2508,13 +1871,11 @@ const deserializeAws_json1_1InvalidTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTypeException(body, context); - const contents: InvalidTypeException = { - name: "InvalidTypeException", - $fault: "client", + const exception = new InvalidTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2523,13 +1884,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2538,13 +1897,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1App = (input: App, context: __SerdeContext): any => { diff --git a/clients/client-forecast/src/index.ts b/clients/client-forecast/src/index.ts index 94ceaf692bbda..bc19e242b31ef 100644 --- a/clients/client-forecast/src/index.ts +++ b/clients/client-forecast/src/index.ts @@ -3,3 +3,4 @@ export * from "./ForecastClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ForecastServiceException } from "./models/ForecastServiceException"; diff --git a/clients/client-forecast/src/models/ForecastServiceException.ts b/clients/client-forecast/src/models/ForecastServiceException.ts new file mode 100644 index 0000000000000..3ce9394a5329c --- /dev/null +++ b/clients/client-forecast/src/models/ForecastServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Forecast service. + */ +export class ForecastServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ForecastServiceException.prototype); + } +} diff --git a/clients/client-forecast/src/models/models_0.ts b/clients/client-forecast/src/models/models_0.ts index 93d81ac1ed74c..ef93c67bbf2f5 100644 --- a/clients/client-forecast/src/models/models_0.ts +++ b/clients/client-forecast/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ForecastServiceException as __BaseException } from "./ForecastServiceException"; /** *

Describes an additional dataset. This object is part of the DataConfig object. Forecast supports the Weather Index and Holidays additional datasets.

@@ -620,47 +622,107 @@ export namespace CreateAutoPredictorResponse { *

We can't process the request because it includes an invalid value or a value that exceeds * the valid range.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** *

The limit on the number of resources per account has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

There is already a resource with this name. Try again with a different name.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

We can't find a resource with that Amazon Resource Name (ARN). Check the ARN and try * again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export enum DatasetType { @@ -4697,10 +4759,22 @@ export namespace GetAccuracyMetricsResponse { /** *

The token is not valid. Tokens expire after 24 hours.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface ListDatasetGroupsRequest { diff --git a/clients/client-forecast/src/protocols/Aws_json1_1.ts b/clients/client-forecast/src/protocols/Aws_json1_1.ts index 9abd24f481e15..c6416b6e12aef 100644 --- a/clients/client-forecast/src/protocols/Aws_json1_1.ts +++ b/clients/client-forecast/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -136,6 +135,7 @@ import { StopResourceCommandInput, StopResourceCommandOutput } from "../commands import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateDatasetGroupCommandInput, UpdateDatasetGroupCommandOutput } from "../commands/UpdateDatasetGroupCommand"; +import { ForecastServiceException as __BaseException } from "../models/ForecastServiceException"; import { AdditionalDataset, AttributeConfig, @@ -877,65 +877,34 @@ const deserializeAws_json1_1CreateAutoPredictorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetCommand = async ( @@ -963,49 +932,28 @@ const deserializeAws_json1_1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetGroupCommand = async ( @@ -1033,65 +981,34 @@ const deserializeAws_json1_1CreateDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetImportJobCommand = async ( @@ -1119,65 +1036,34 @@ const deserializeAws_json1_1CreateDatasetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateExplainabilityCommand = async ( @@ -1205,65 +1091,34 @@ const deserializeAws_json1_1CreateExplainabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateExplainabilityExportCommand = async ( @@ -1291,65 +1146,34 @@ const deserializeAws_json1_1CreateExplainabilityExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateForecastCommand = async ( @@ -1377,65 +1201,34 @@ const deserializeAws_json1_1CreateForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateForecastExportJobCommand = async ( @@ -1463,65 +1256,34 @@ const deserializeAws_json1_1CreateForecastExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePredictorCommand = async ( @@ -1549,65 +1311,34 @@ const deserializeAws_json1_1CreatePredictorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePredictorBacktestExportJobCommand = async ( @@ -1635,65 +1366,34 @@ const deserializeAws_json1_1CreatePredictorBacktestExportJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.forecast#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatasetCommand = async ( @@ -1718,49 +1418,28 @@ const deserializeAws_json1_1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatasetGroupCommand = async ( @@ -1785,49 +1464,28 @@ const deserializeAws_json1_1DeleteDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatasetImportJobCommand = async ( @@ -1852,49 +1510,28 @@ const deserializeAws_json1_1DeleteDatasetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteExplainabilityCommand = async ( @@ -1919,49 +1556,28 @@ const deserializeAws_json1_1DeleteExplainabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteExplainabilityExportCommand = async ( @@ -1986,49 +1602,28 @@ const deserializeAws_json1_1DeleteExplainabilityExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteForecastCommand = async ( @@ -2053,49 +1648,28 @@ const deserializeAws_json1_1DeleteForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteForecastExportJobCommand = async ( @@ -2120,49 +1694,28 @@ const deserializeAws_json1_1DeleteForecastExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePredictorCommand = async ( @@ -2187,49 +1740,28 @@ const deserializeAws_json1_1DeletePredictorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePredictorBacktestExportJobCommand = async ( @@ -2254,49 +1786,28 @@ const deserializeAws_json1_1DeletePredictorBacktestExportJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourceTreeCommand = async ( @@ -2321,49 +1832,28 @@ const deserializeAws_json1_1DeleteResourceTreeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAutoPredictorCommand = async ( @@ -2391,41 +1881,25 @@ const deserializeAws_json1_1DescribeAutoPredictorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetCommand = async ( @@ -2453,41 +1927,25 @@ const deserializeAws_json1_1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetGroupCommand = async ( @@ -2515,41 +1973,25 @@ const deserializeAws_json1_1DescribeDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetImportJobCommand = async ( @@ -2577,41 +2019,25 @@ const deserializeAws_json1_1DescribeDatasetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExplainabilityCommand = async ( @@ -2639,41 +2065,25 @@ const deserializeAws_json1_1DescribeExplainabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExplainabilityExportCommand = async ( @@ -2701,41 +2111,25 @@ const deserializeAws_json1_1DescribeExplainabilityExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeForecastCommand = async ( @@ -2763,41 +2157,25 @@ const deserializeAws_json1_1DescribeForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeForecastExportJobCommand = async ( @@ -2825,41 +2203,25 @@ const deserializeAws_json1_1DescribeForecastExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePredictorCommand = async ( @@ -2887,41 +2249,25 @@ const deserializeAws_json1_1DescribePredictorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePredictorBacktestExportJobCommand = async ( @@ -2949,41 +2295,25 @@ const deserializeAws_json1_1DescribePredictorBacktestExportJobCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAccuracyMetricsCommand = async ( @@ -3011,49 +2341,28 @@ const deserializeAws_json1_1GetAccuracyMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetGroupsCommand = async ( @@ -3081,33 +2390,22 @@ const deserializeAws_json1_1ListDatasetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetImportJobsCommand = async ( @@ -3135,41 +2433,25 @@ const deserializeAws_json1_1ListDatasetImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetsCommand = async ( @@ -3197,33 +2479,22 @@ const deserializeAws_json1_1ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExplainabilitiesCommand = async ( @@ -3251,41 +2522,25 @@ const deserializeAws_json1_1ListExplainabilitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExplainabilityExportsCommand = async ( @@ -3313,41 +2568,25 @@ const deserializeAws_json1_1ListExplainabilityExportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListForecastExportJobsCommand = async ( @@ -3375,41 +2614,25 @@ const deserializeAws_json1_1ListForecastExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListForecastsCommand = async ( @@ -3437,41 +2660,25 @@ const deserializeAws_json1_1ListForecastsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPredictorBacktestExportJobsCommand = async ( @@ -3499,41 +2706,25 @@ const deserializeAws_json1_1ListPredictorBacktestExportJobsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPredictorsCommand = async ( @@ -3561,41 +2752,25 @@ const deserializeAws_json1_1ListPredictorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecast#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3623,41 +2798,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopResourceCommand = async ( @@ -3682,49 +2841,28 @@ const deserializeAws_json1_1StopResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3752,49 +2890,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecast#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3822,41 +2939,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDatasetGroupCommand = async ( @@ -3884,49 +2985,28 @@ const deserializeAws_json1_1UpdateDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecast#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecast#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecast#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -3935,13 +3015,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -3950,13 +3028,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -3965,13 +3041,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -3980,13 +3054,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -3995,13 +3067,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -4010,13 +3080,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AdditionalDataset = (input: AdditionalDataset, context: __SerdeContext): any => { diff --git a/clients/client-forecastquery/src/index.ts b/clients/client-forecastquery/src/index.ts index 746b35ddce646..8c98494836702 100644 --- a/clients/client-forecastquery/src/index.ts +++ b/clients/client-forecastquery/src/index.ts @@ -2,3 +2,4 @@ export * from "./Forecastquery"; export * from "./ForecastqueryClient"; export * from "./commands"; export * from "./models"; +export { ForecastqueryServiceException } from "./models/ForecastqueryServiceException"; diff --git a/clients/client-forecastquery/src/models/ForecastqueryServiceException.ts b/clients/client-forecastquery/src/models/ForecastqueryServiceException.ts new file mode 100644 index 0000000000000..04a79d83626b4 --- /dev/null +++ b/clients/client-forecastquery/src/models/ForecastqueryServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Forecastquery service. + */ +export class ForecastqueryServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ForecastqueryServiceException.prototype); + } +} diff --git a/clients/client-forecastquery/src/models/models_0.ts b/clients/client-forecastquery/src/models/models_0.ts index 22cd298adaff2..740c69617851a 100644 --- a/clients/client-forecastquery/src/models/models_0.ts +++ b/clients/client-forecastquery/src/models/models_0.ts @@ -1,30 +1,69 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ForecastqueryServiceException as __BaseException } from "./ForecastqueryServiceException"; /** *

The value is invalid or is too long.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** *

The token is not valid. Tokens expire after 24 hours.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } /** *

The limit on the number of requests per second has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface QueryForecastRequest { @@ -151,18 +190,42 @@ export namespace QueryForecastResponse { /** *

The specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

We can't find that resource. Check the information that you've provided and try * again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } diff --git a/clients/client-forecastquery/src/protocols/Aws_json1_1.ts b/clients/client-forecastquery/src/protocols/Aws_json1_1.ts index dc6614e9db8a3..44190e8fc7d67 100644 --- a/clients/client-forecastquery/src/protocols/Aws_json1_1.ts +++ b/clients/client-forecastquery/src/protocols/Aws_json1_1.ts @@ -1,15 +1,18 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString, limitedParseDouble as __limitedParseDouble } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, + limitedParseDouble as __limitedParseDouble, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { QueryForecastCommandInput, QueryForecastCommandOutput } from "../commands/QueryForecastCommand"; +import { ForecastqueryServiceException as __BaseException } from "../models/ForecastqueryServiceException"; import { DataPoint, Forecast, @@ -60,65 +63,34 @@ const deserializeAws_json1_1QueryForecastCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.forecastquery#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.forecastquery#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.forecastquery#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.forecastquery#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.forecastquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -127,13 +99,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -142,13 +112,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -157,13 +125,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -172,13 +138,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -187,13 +151,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1Filters = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-frauddetector/src/index.ts b/clients/client-frauddetector/src/index.ts index 6f8e12ae78cd2..1a91b1dce93f9 100644 --- a/clients/client-frauddetector/src/index.ts +++ b/clients/client-frauddetector/src/index.ts @@ -3,3 +3,4 @@ export * from "./FraudDetectorClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { FraudDetectorServiceException } from "./models/FraudDetectorServiceException"; diff --git a/clients/client-frauddetector/src/models/FraudDetectorServiceException.ts b/clients/client-frauddetector/src/models/FraudDetectorServiceException.ts new file mode 100644 index 0000000000000..debce399c0416 --- /dev/null +++ b/clients/client-frauddetector/src/models/FraudDetectorServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from FraudDetector service. + */ +export class FraudDetectorServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FraudDetectorServiceException.prototype); + } +} diff --git a/clients/client-frauddetector/src/models/models_0.ts b/clients/client-frauddetector/src/models/models_0.ts index 37264a90599c9..115c3d62f9997 100644 --- a/clients/client-frauddetector/src/models/models_0.ts +++ b/clients/client-frauddetector/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FraudDetectorServiceException as __BaseException } from "./FraudDetectorServiceException"; /** *

An exception indicating Amazon Fraud Detector does not have the needed permissions. This can occur if you submit a request, such as PutExternalModel, that specifies a role that is not in your account.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AsyncJobStatus { @@ -158,28 +170,58 @@ export namespace BatchCreateVariableResult { /** *

An exception indicating an internal server error.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

An exception indicating a throttling error.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

An exception indicating a specified value is not allowed.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface BatchGetVariableRequest { @@ -353,10 +395,20 @@ export namespace CancelBatchImportJobResult { /** *

An exception indicating the specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface CancelBatchPredictionJobRequest { @@ -1091,10 +1143,20 @@ export namespace DeleteBatchPredictionJobResult { /** *

An exception indicating there was a conflict during a delete operation.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface DeleteDetectorRequest { @@ -2843,10 +2905,20 @@ export namespace GetEventPredictionResult { /** *

An exception indicating that the attached customer-owned (external) model threw an exception when Amazon Fraud Detector invoked the model.

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "client"; - message?: string; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + } } export interface GetEventPredictionMetadataRequest { diff --git a/clients/client-frauddetector/src/protocols/Aws_json1_1.ts b/clients/client-frauddetector/src/protocols/Aws_json1_1.ts index e493a6b4b1dea..dde0585cbae3b 100644 --- a/clients/client-frauddetector/src/protocols/Aws_json1_1.ts +++ b/clients/client-frauddetector/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -152,6 +151,7 @@ import { import { UpdateRuleMetadataCommandInput, UpdateRuleMetadataCommandOutput } from "../commands/UpdateRuleMetadataCommand"; import { UpdateRuleVersionCommandInput, UpdateRuleVersionCommandOutput } from "../commands/UpdateRuleVersionCommand"; import { UpdateVariableCommandInput, UpdateVariableCommandOutput } from "../commands/UpdateVariableCommand"; +import { FraudDetectorServiceException as __BaseException } from "../models/FraudDetectorServiceException"; import { AccessDeniedException, BatchCreateVariableError, @@ -1258,57 +1258,31 @@ const deserializeAws_json1_1BatchCreateVariableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetVariableCommand = async ( @@ -1336,57 +1310,31 @@ const deserializeAws_json1_1BatchGetVariableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelBatchImportJobCommand = async ( @@ -1414,65 +1362,34 @@ const deserializeAws_json1_1CancelBatchImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelBatchPredictionJobCommand = async ( @@ -1500,65 +1417,34 @@ const deserializeAws_json1_1CancelBatchPredictionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBatchImportJobCommand = async ( @@ -1586,65 +1472,34 @@ const deserializeAws_json1_1CreateBatchImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBatchPredictionJobCommand = async ( @@ -1672,65 +1527,34 @@ const deserializeAws_json1_1CreateBatchPredictionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDetectorVersionCommand = async ( @@ -1758,65 +1582,34 @@ const deserializeAws_json1_1CreateDetectorVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelCommand = async ( @@ -1844,57 +1637,31 @@ const deserializeAws_json1_1CreateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelVersionCommand = async ( @@ -1922,65 +1689,34 @@ const deserializeAws_json1_1CreateModelVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRuleCommand = async ( @@ -2008,57 +1744,31 @@ const deserializeAws_json1_1CreateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVariableCommand = async ( @@ -2086,57 +1796,31 @@ const deserializeAws_json1_1CreateVariableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBatchImportJobCommand = async ( @@ -2164,57 +1848,31 @@ const deserializeAws_json1_1DeleteBatchImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBatchPredictionJobCommand = async ( @@ -2242,57 +1900,31 @@ const deserializeAws_json1_1DeleteBatchPredictionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDetectorCommand = async ( @@ -2320,65 +1952,34 @@ const deserializeAws_json1_1DeleteDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDetectorVersionCommand = async ( @@ -2406,73 +2007,37 @@ const deserializeAws_json1_1DeleteDetectorVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEntityTypeCommand = async ( @@ -2500,65 +2065,34 @@ const deserializeAws_json1_1DeleteEntityTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventCommand = async ( @@ -2586,57 +2120,31 @@ const deserializeAws_json1_1DeleteEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventsByEventTypeCommand = async ( @@ -2664,73 +2172,37 @@ const deserializeAws_json1_1DeleteEventsByEventTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventTypeCommand = async ( @@ -2758,65 +2230,34 @@ const deserializeAws_json1_1DeleteEventTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteExternalModelCommand = async ( @@ -2844,65 +2285,34 @@ const deserializeAws_json1_1DeleteExternalModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLabelCommand = async ( @@ -2930,57 +2340,31 @@ const deserializeAws_json1_1DeleteLabelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelCommand = async ( @@ -3008,65 +2392,34 @@ const deserializeAws_json1_1DeleteModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelVersionCommand = async ( @@ -3094,65 +2447,34 @@ const deserializeAws_json1_1DeleteModelVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOutcomeCommand = async ( @@ -3180,65 +2502,34 @@ const deserializeAws_json1_1DeleteOutcomeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleCommand = async ( @@ -3266,65 +2557,34 @@ const deserializeAws_json1_1DeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVariableCommand = async ( @@ -3352,65 +2612,34 @@ const deserializeAws_json1_1DeleteVariableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDetectorCommand = async ( @@ -3438,65 +2667,34 @@ const deserializeAws_json1_1DescribeDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelVersionsCommand = async ( @@ -3524,65 +2722,34 @@ const deserializeAws_json1_1DescribeModelVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBatchImportJobsCommand = async ( @@ -3610,65 +2777,34 @@ const deserializeAws_json1_1GetBatchImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBatchPredictionJobsCommand = async ( @@ -3696,65 +2832,34 @@ const deserializeAws_json1_1GetBatchPredictionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeleteEventsByEventTypeStatusCommand = async ( @@ -3782,65 +2887,34 @@ const deserializeAws_json1_1GetDeleteEventsByEventTypeStatusCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDetectorsCommand = async ( @@ -3868,65 +2942,34 @@ const deserializeAws_json1_1GetDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDetectorVersionCommand = async ( @@ -3954,65 +2997,34 @@ const deserializeAws_json1_1GetDetectorVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEntityTypesCommand = async ( @@ -4040,65 +3052,34 @@ const deserializeAws_json1_1GetEntityTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEventCommand = async ( @@ -4126,65 +3107,34 @@ const deserializeAws_json1_1GetEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEventPredictionCommand = async ( @@ -4212,81 +3162,40 @@ const deserializeAws_json1_1GetEventPredictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.frauddetector#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEventPredictionMetadataCommand = async ( @@ -4314,65 +3223,34 @@ const deserializeAws_json1_1GetEventPredictionMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEventTypesCommand = async ( @@ -4400,65 +3278,34 @@ const deserializeAws_json1_1GetEventTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetExternalModelsCommand = async ( @@ -4486,65 +3333,34 @@ const deserializeAws_json1_1GetExternalModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetKMSEncryptionKeyCommand = async ( @@ -4572,57 +3388,31 @@ const deserializeAws_json1_1GetKMSEncryptionKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLabelsCommand = async ( @@ -4650,65 +3440,34 @@ const deserializeAws_json1_1GetLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetModelsCommand = async ( @@ -4736,65 +3495,34 @@ const deserializeAws_json1_1GetModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetModelVersionCommand = async ( @@ -4822,65 +3550,34 @@ const deserializeAws_json1_1GetModelVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOutcomesCommand = async ( @@ -4908,65 +3605,34 @@ const deserializeAws_json1_1GetOutcomesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRulesCommand = async ( @@ -4994,65 +3660,34 @@ const deserializeAws_json1_1GetRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetVariablesCommand = async ( @@ -5080,65 +3715,34 @@ const deserializeAws_json1_1GetVariablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventPredictionsCommand = async ( @@ -5166,57 +3770,31 @@ const deserializeAws_json1_1ListEventPredictionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5244,57 +3822,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutDetectorCommand = async ( @@ -5322,65 +3874,34 @@ const deserializeAws_json1_1PutDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEntityTypeCommand = async ( @@ -5408,65 +3929,34 @@ const deserializeAws_json1_1PutEntityTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEventTypeCommand = async ( @@ -5494,65 +3984,34 @@ const deserializeAws_json1_1PutEventTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutExternalModelCommand = async ( @@ -5580,65 +4039,34 @@ const deserializeAws_json1_1PutExternalModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutKMSEncryptionKeyCommand = async ( @@ -5666,73 +4094,37 @@ const deserializeAws_json1_1PutKMSEncryptionKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLabelCommand = async ( @@ -5760,65 +4152,34 @@ const deserializeAws_json1_1PutLabelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutOutcomeCommand = async ( @@ -5846,65 +4207,34 @@ const deserializeAws_json1_1PutOutcomeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendEventCommand = async ( @@ -5932,73 +4262,37 @@ const deserializeAws_json1_1SendEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6026,57 +4320,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6104,57 +4372,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDetectorVersionCommand = async ( @@ -6182,73 +4424,37 @@ const deserializeAws_json1_1UpdateDetectorVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDetectorVersionMetadataCommand = async ( @@ -6276,65 +4482,34 @@ const deserializeAws_json1_1UpdateDetectorVersionMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDetectorVersionStatusCommand = async ( @@ -6362,73 +4537,37 @@ const deserializeAws_json1_1UpdateDetectorVersionStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEventLabelCommand = async ( @@ -6456,73 +4595,37 @@ const deserializeAws_json1_1UpdateEventLabelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateModelCommand = async ( @@ -6550,73 +4653,37 @@ const deserializeAws_json1_1UpdateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateModelVersionCommand = async ( @@ -6644,73 +4711,37 @@ const deserializeAws_json1_1UpdateModelVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateModelVersionStatusCommand = async ( @@ -6738,73 +4769,37 @@ const deserializeAws_json1_1UpdateModelVersionStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleMetadataCommand = async ( @@ -6832,73 +4827,37 @@ const deserializeAws_json1_1UpdateRuleMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleVersionCommand = async ( @@ -6926,73 +4885,37 @@ const deserializeAws_json1_1UpdateRuleVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVariableCommand = async ( @@ -7020,73 +4943,37 @@ const deserializeAws_json1_1UpdateVariableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.frauddetector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.frauddetector#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.frauddetector#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.frauddetector#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.frauddetector#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.frauddetector#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -7095,13 +4982,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -7110,13 +4995,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -7125,13 +5008,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -7140,13 +5021,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( @@ -7155,13 +5034,11 @@ const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceUnavailableException(body, context); - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "client", + const exception = new ResourceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -7170,13 +5047,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -7185,13 +5060,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BatchCreateVariableRequest = ( diff --git a/clients/client-fsx/src/index.ts b/clients/client-fsx/src/index.ts index 804b022c51072..a6e3091a23d41 100644 --- a/clients/client-fsx/src/index.ts +++ b/clients/client-fsx/src/index.ts @@ -3,3 +3,4 @@ export * from "./FSxClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { FSxServiceException } from "./models/FSxServiceException"; diff --git a/clients/client-fsx/src/models/FSxServiceException.ts b/clients/client-fsx/src/models/FSxServiceException.ts new file mode 100644 index 0000000000000..827f8e5b36f8a --- /dev/null +++ b/clients/client-fsx/src/models/FSxServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from FSx service. + */ +export class FSxServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, FSxServiceException.prototype); + } +} diff --git a/clients/client-fsx/src/models/models_0.ts b/clients/client-fsx/src/models/models_0.ts index b62c15a4684c3..348a994941607 100644 --- a/clients/client-fsx/src/models/models_0.ts +++ b/clients/client-fsx/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { FSxServiceException as __BaseException } from "./FSxServiceException"; /** *

The Microsoft Active Directory attributes of the Amazon FSx for Windows File @@ -44,9 +46,9 @@ export enum ActiveDirectoryErrorType { /** *

An Active Directory error.

*/ -export interface ActiveDirectoryError extends __SmithyException, $MetadataBearer { - name: "ActiveDirectoryError"; - $fault: "client"; +export class ActiveDirectoryError extends __BaseException { + readonly name: "ActiveDirectoryError" = "ActiveDirectoryError"; + readonly $fault: "client" = "client"; /** *

The directory ID of the directory that an error pertains to.

*/ @@ -61,6 +63,20 @@ export interface ActiveDirectoryError extends __SmithyException, $MetadataBearer *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActiveDirectoryError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActiveDirectoryError.prototype); + this.ActiveDirectoryId = opts.ActiveDirectoryId; + this.Type = opts.Type; + this.Message = opts.Message; + } } export enum AdministrativeActionType { @@ -1729,37 +1745,73 @@ export namespace AssociateFileSystemAliasesResponse { /** *

A generic error indicating a failure with a client request.

*/ -export interface BadRequest extends __SmithyException, $MetadataBearer { - name: "BadRequest"; - $fault: "client"; +export class BadRequest extends __BaseException { + readonly name: "BadRequest" = "BadRequest"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequest", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequest.prototype); + this.Message = opts.Message; + } } /** *

No Amazon FSx file systems were found based upon supplied parameters.

*/ -export interface FileSystemNotFound extends __SmithyException, $MetadataBearer { - name: "FileSystemNotFound"; - $fault: "client"; +export class FileSystemNotFound extends __BaseException { + readonly name: "FileSystemNotFound" = "FileSystemNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FileSystemNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FileSystemNotFound.prototype); + this.Message = opts.Message; + } } /** *

A generic error indicating a server-side failure.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } export enum EventType { @@ -1935,49 +1987,97 @@ export namespace CancelDataRepositoryTaskResponse { /** *

The data repository task could not be canceled because the task has already ended.

*/ -export interface DataRepositoryTaskEnded extends __SmithyException, $MetadataBearer { - name: "DataRepositoryTaskEnded"; - $fault: "client"; +export class DataRepositoryTaskEnded extends __BaseException { + readonly name: "DataRepositoryTaskEnded" = "DataRepositoryTaskEnded"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataRepositoryTaskEnded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataRepositoryTaskEnded.prototype); + this.Message = opts.Message; + } } /** *

The data repository task or tasks you specified could not be found.

*/ -export interface DataRepositoryTaskNotFound extends __SmithyException, $MetadataBearer { - name: "DataRepositoryTaskNotFound"; - $fault: "client"; +export class DataRepositoryTaskNotFound extends __BaseException { + readonly name: "DataRepositoryTaskNotFound" = "DataRepositoryTaskNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataRepositoryTaskNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataRepositoryTaskNotFound.prototype); + this.Message = opts.Message; + } } /** *

The requested operation is not supported for this resource or API.

*/ -export interface UnsupportedOperation extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperation"; - $fault: "client"; +export class UnsupportedOperation extends __BaseException { + readonly name: "UnsupportedOperation" = "UnsupportedOperation"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperation.prototype); + this.Message = opts.Message; + } } /** *

No Amazon FSx backups were found based upon the supplied parameters.

*/ -export interface BackupNotFound extends __SmithyException, $MetadataBearer { - name: "BackupNotFound"; - $fault: "client"; +export class BackupNotFound extends __BaseException { + readonly name: "BackupNotFound" = "BackupNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupNotFound.prototype); + this.Message = opts.Message; + } } export interface CopyBackupRequest { @@ -2084,9 +2184,9 @@ export enum BackupType { * token but different parameters settings. A client request token should always uniquely * identify a single request.

*/ -export interface IncompatibleParameterError extends __SmithyException, $MetadataBearer { - name: "IncompatibleParameterError"; - $fault: "client"; +export class IncompatibleParameterError extends __BaseException { + readonly name: "IncompatibleParameterError" = "IncompatibleParameterError"; + readonly $fault: "client" = "client"; /** *

A parameter that is incompatible with the earlier request.

*/ @@ -2096,58 +2196,119 @@ export interface IncompatibleParameterError extends __SmithyException, $Metadata *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleParameterError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleParameterError.prototype); + this.Parameter = opts.Parameter; + this.Message = opts.Message; + } } /** *

Amazon FSx doesn't support Multi-AZ Windows File Server copy backup in the * destination Region, so the copied backup can't be restored.

*/ -export interface IncompatibleRegionForMultiAZ extends __SmithyException, $MetadataBearer { - name: "IncompatibleRegionForMultiAZ"; - $fault: "client"; +export class IncompatibleRegionForMultiAZ extends __BaseException { + readonly name: "IncompatibleRegionForMultiAZ" = "IncompatibleRegionForMultiAZ"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleRegionForMultiAZ", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleRegionForMultiAZ.prototype); + this.Message = opts.Message; + } } /** *

The Key Management Service (KMS) key of the destination backup is not * valid.

*/ -export interface InvalidDestinationKmsKey extends __SmithyException, $MetadataBearer { - name: "InvalidDestinationKmsKey"; - $fault: "client"; +export class InvalidDestinationKmsKey extends __BaseException { + readonly name: "InvalidDestinationKmsKey" = "InvalidDestinationKmsKey"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDestinationKmsKey", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDestinationKmsKey.prototype); + this.Message = opts.Message; + } } /** *

The Region provided for SourceRegion is not valid or is in a different * Amazon Web Services partition.

*/ -export interface InvalidRegion extends __SmithyException, $MetadataBearer { - name: "InvalidRegion"; - $fault: "client"; +export class InvalidRegion extends __BaseException { + readonly name: "InvalidRegion" = "InvalidRegion"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRegion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRegion.prototype); + this.Message = opts.Message; + } } /** *

The Key Management Service (KMS) key of the source backup is not * valid.

*/ -export interface InvalidSourceKmsKey extends __SmithyException, $MetadataBearer { - name: "InvalidSourceKmsKey"; - $fault: "client"; +export class InvalidSourceKmsKey extends __BaseException { + readonly name: "InvalidSourceKmsKey" = "InvalidSourceKmsKey"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSourceKmsKey", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSourceKmsKey.prototype); + this.Message = opts.Message; + } } export enum ServiceLimit { @@ -2166,9 +2327,9 @@ export enum ServiceLimit { *

An error indicating that a particular service limit was exceeded. You can increase * some service limits by contacting Amazon Web Services Support.

*/ -export interface ServiceLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ServiceLimitExceeded"; - $fault: "client"; +export class ServiceLimitExceeded extends __BaseException { + readonly name: "ServiceLimitExceeded" = "ServiceLimitExceeded"; + readonly $fault: "client" = "client"; /** *

Enumeration of the service limit that was exceeded.

*/ @@ -2178,15 +2339,28 @@ export interface ServiceLimitExceeded extends __SmithyException, $MetadataBearer *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLimitExceeded.prototype); + this.Limit = opts.Limit; + this.Message = opts.Message; + } } /** *

The request was rejected because the lifecycle status of the source backup isn't * AVAILABLE.

*/ -export interface SourceBackupUnavailable extends __SmithyException, $MetadataBearer { - name: "SourceBackupUnavailable"; - $fault: "client"; +export class SourceBackupUnavailable extends __BaseException { + readonly name: "SourceBackupUnavailable" = "SourceBackupUnavailable"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ @@ -2196,19 +2370,44 @@ export interface SourceBackupUnavailable extends __SmithyException, $MetadataBea *

The ID of the source backup. Specifies the backup that you are copying.

*/ BackupId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceBackupUnavailable", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceBackupUnavailable.prototype); + this.Message = opts.Message; + this.BackupId = opts.BackupId; + } } /** *

Another backup is already under way. Wait for completion before initiating * additional backups of this file system.

*/ -export interface BackupInProgress extends __SmithyException, $MetadataBearer { - name: "BackupInProgress"; - $fault: "client"; +export class BackupInProgress extends __BaseException { + readonly name: "BackupInProgress" = "BackupInProgress"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupInProgress", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupInProgress.prototype); + this.Message = opts.Message; + } } /** @@ -2254,13 +2453,25 @@ export namespace CreateBackupRequest { /** *

No Amazon FSx for NetApp ONTAP volumes were found based upon the supplied parameters.

*/ -export interface VolumeNotFound extends __SmithyException, $MetadataBearer { - name: "VolumeNotFound"; - $fault: "client"; +export class VolumeNotFound extends __BaseException { + readonly name: "VolumeNotFound" = "VolumeNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "VolumeNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VolumeNotFound.prototype); + this.Message = opts.Message; + } } /** @@ -2875,13 +3086,25 @@ export namespace CreateDataRepositoryTaskResponse { *

An existing data repository task is currently executing on the file system. * Wait until the existing task has completed, then create the new task.

*/ -export interface DataRepositoryTaskExecuting extends __SmithyException, $MetadataBearer { - name: "DataRepositoryTaskExecuting"; - $fault: "client"; +export class DataRepositoryTaskExecuting extends __BaseException { + readonly name: "DataRepositoryTaskExecuting" = "DataRepositoryTaskExecuting"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataRepositoryTaskExecuting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataRepositoryTaskExecuting.prototype); + this.Message = opts.Message; + } } /** @@ -3996,33 +4219,57 @@ export namespace CreateFileSystemRequest { /** *

The path provided for data repository export isn't valid.

*/ -export interface InvalidExportPath extends __SmithyException, $MetadataBearer { - name: "InvalidExportPath"; - $fault: "client"; +export class InvalidExportPath extends __BaseException { + readonly name: "InvalidExportPath" = "InvalidExportPath"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExportPath", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExportPath.prototype); + this.Message = opts.Message; + } } /** *

The path provided for data repository import isn't valid.

*/ -export interface InvalidImportPath extends __SmithyException, $MetadataBearer { - name: "InvalidImportPath"; - $fault: "client"; +export class InvalidImportPath extends __BaseException { + readonly name: "InvalidImportPath" = "InvalidImportPath"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidImportPath", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidImportPath.prototype); + this.Message = opts.Message; + } } /** *

One or more network settings specified in the request are invalid.

*/ -export interface InvalidNetworkSettings extends __SmithyException, $MetadataBearer { - name: "InvalidNetworkSettings"; - $fault: "client"; +export class InvalidNetworkSettings extends __BaseException { + readonly name: "InvalidNetworkSettings" = "InvalidNetworkSettings"; + readonly $fault: "client" = "client"; /** *

Error message explaining what's wrong with network settings.

*/ @@ -4042,30 +4289,69 @@ export interface InvalidNetworkSettings extends __SmithyException, $MetadataBear *

The route table ID is either invalid or not part of the VPC specified.

*/ InvalidRouteTableId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNetworkSettings", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNetworkSettings.prototype); + this.Message = opts.Message; + this.InvalidSubnetId = opts.InvalidSubnetId; + this.InvalidSecurityGroupId = opts.InvalidSecurityGroupId; + this.InvalidRouteTableId = opts.InvalidRouteTableId; + } } /** *

An invalid value for PerUnitStorageThroughput was provided. Please create your file system again, using a valid value.

*/ -export interface InvalidPerUnitStorageThroughput extends __SmithyException, $MetadataBearer { - name: "InvalidPerUnitStorageThroughput"; - $fault: "client"; +export class InvalidPerUnitStorageThroughput extends __BaseException { + readonly name: "InvalidPerUnitStorageThroughput" = "InvalidPerUnitStorageThroughput"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPerUnitStorageThroughput", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPerUnitStorageThroughput.prototype); + this.Message = opts.Message; + } } /** *

A file system configuration is required for this operation.

*/ -export interface MissingFileSystemConfiguration extends __SmithyException, $MetadataBearer { - name: "MissingFileSystemConfiguration"; - $fault: "client"; +export class MissingFileSystemConfiguration extends __BaseException { + readonly name: "MissingFileSystemConfiguration" = "MissingFileSystemConfiguration"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingFileSystemConfiguration", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingFileSystemConfiguration.prototype); + this.Message = opts.Message; + } } /** @@ -4858,25 +5144,49 @@ export namespace CreateVolumeRequest { /** *

A volume configuration is required for this operation.

*/ -export interface MissingVolumeConfiguration extends __SmithyException, $MetadataBearer { - name: "MissingVolumeConfiguration"; - $fault: "client"; +export class MissingVolumeConfiguration extends __BaseException { + readonly name: "MissingVolumeConfiguration" = "MissingVolumeConfiguration"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingVolumeConfiguration", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingVolumeConfiguration.prototype); + this.Message = opts.Message; + } } /** *

No Amazon FSx for NetApp ONTAP SVMs were found based upon the supplied parameters.

*/ -export interface StorageVirtualMachineNotFound extends __SmithyException, $MetadataBearer { - name: "StorageVirtualMachineNotFound"; - $fault: "client"; +export class StorageVirtualMachineNotFound extends __BaseException { + readonly name: "StorageVirtualMachineNotFound" = "StorageVirtualMachineNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageVirtualMachineNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageVirtualMachineNotFound.prototype); + this.Message = opts.Message; + } } export interface CreateVolumeFromBackupRequest { @@ -4920,9 +5230,9 @@ export namespace CreateVolumeFromBackupRequest { /** *

You can't delete a backup while it's being copied.

*/ -export interface BackupBeingCopied extends __SmithyException, $MetadataBearer { - name: "BackupBeingCopied"; - $fault: "client"; +export class BackupBeingCopied extends __BaseException { + readonly name: "BackupBeingCopied" = "BackupBeingCopied"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ @@ -4932,15 +5242,28 @@ export interface BackupBeingCopied extends __SmithyException, $MetadataBearer { *

The ID of the source backup. Specifies the backup that you are copying.

*/ BackupId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupBeingCopied", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupBeingCopied.prototype); + this.Message = opts.Message; + this.BackupId = opts.BackupId; + } } /** *

You can't delete a backup while it's being used to restore a file * system.

*/ -export interface BackupRestoring extends __SmithyException, $MetadataBearer { - name: "BackupRestoring"; - $fault: "client"; +export class BackupRestoring extends __BaseException { + readonly name: "BackupRestoring" = "BackupRestoring"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ @@ -4950,6 +5273,19 @@ export interface BackupRestoring extends __SmithyException, $MetadataBearer { *

The ID of a file system being restored from the backup.

*/ FileSystemId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupRestoring", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupRestoring.prototype); + this.Message = opts.Message; + this.FileSystemId = opts.FileSystemId; + } } /** @@ -5006,13 +5342,25 @@ export namespace DeleteBackupResponse { /** *

No data repository associations were found based upon the supplied parameters.

*/ -export interface DataRepositoryAssociationNotFound extends __SmithyException, $MetadataBearer { - name: "DataRepositoryAssociationNotFound"; - $fault: "client"; +export class DataRepositoryAssociationNotFound extends __BaseException { + readonly name: "DataRepositoryAssociationNotFound" = "DataRepositoryAssociationNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataRepositoryAssociationNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataRepositoryAssociationNotFound.prototype); + this.Message = opts.Message; + } } export interface DeleteDataRepositoryAssociationRequest { @@ -5373,13 +5721,25 @@ export namespace DeleteSnapshotResponse { /** *

No Amazon FSx snapshots were found based on the supplied parameters.

*/ -export interface SnapshotNotFound extends __SmithyException, $MetadataBearer { - name: "SnapshotNotFound"; - $fault: "client"; +export class SnapshotNotFound extends __BaseException { + readonly name: "SnapshotNotFound" = "SnapshotNotFound"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotNotFound.prototype); + this.Message = opts.Message; + } } export interface DeleteStorageVirtualMachineRequest { @@ -5701,13 +6061,25 @@ export namespace DescribeDataRepositoryAssociationsResponse { /** *

You have filtered the response to a data repository type that is not supported.

*/ -export interface InvalidDataRepositoryType extends __SmithyException, $MetadataBearer { - name: "InvalidDataRepositoryType"; - $fault: "client"; +export class InvalidDataRepositoryType extends __BaseException { + readonly name: "InvalidDataRepositoryType" = "InvalidDataRepositoryType"; + readonly $fault: "client" = "client"; /** *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDataRepositoryType", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDataRepositoryType.prototype); + this.Message = opts.Message; + } } export enum DataRepositoryTaskFilterName { @@ -6252,9 +6624,9 @@ export namespace ListTagsForResourceResponse { *

The resource specified for the tagging operation is not a resource type owned by * Amazon FSx. Use the API of the relevant service to perform the operation.

*/ -export interface NotServiceResourceError extends __SmithyException, $MetadataBearer { - name: "NotServiceResourceError"; - $fault: "client"; +export class NotServiceResourceError extends __BaseException { + readonly name: "NotServiceResourceError" = "NotServiceResourceError"; + readonly $fault: "client" = "client"; /** *

The Amazon Resource Name (ARN) of the non-Amazon FSx resource.

*/ @@ -6264,14 +6636,27 @@ export interface NotServiceResourceError extends __SmithyException, $MetadataBea *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotServiceResourceError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotServiceResourceError.prototype); + this.ResourceARN = opts.ResourceARN; + this.Message = opts.Message; + } } /** *

The resource specified does not support tagging.

*/ -export interface ResourceDoesNotSupportTagging extends __SmithyException, $MetadataBearer { - name: "ResourceDoesNotSupportTagging"; - $fault: "client"; +export class ResourceDoesNotSupportTagging extends __BaseException { + readonly name: "ResourceDoesNotSupportTagging" = "ResourceDoesNotSupportTagging"; + readonly $fault: "client" = "client"; /** *

The Amazon Resource Name (ARN) of the resource that doesn't support * tagging.

@@ -6282,14 +6667,27 @@ export interface ResourceDoesNotSupportTagging extends __SmithyException, $Metad *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDoesNotSupportTagging", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDoesNotSupportTagging.prototype); + this.ResourceARN = opts.ResourceARN; + this.Message = opts.Message; + } } /** *

The resource specified by the Amazon Resource Name (ARN) can't be found.

*/ -export interface ResourceNotFound extends __SmithyException, $MetadataBearer { - name: "ResourceNotFound"; - $fault: "client"; +export class ResourceNotFound extends __BaseException { + readonly name: "ResourceNotFound" = "ResourceNotFound"; + readonly $fault: "client" = "client"; /** *

The resource ARN of the resource that can't be found.

*/ @@ -6299,6 +6697,19 @@ export interface ResourceNotFound extends __SmithyException, $MetadataBearer { *

A detailed error message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFound.prototype); + this.ResourceARN = opts.ResourceARN; + this.Message = opts.Message; + } } export interface ReleaseFileSystemNfsV3LocksRequest { diff --git a/clients/client-fsx/src/protocols/Aws_json1_1.ts b/clients/client-fsx/src/protocols/Aws_json1_1.ts index 8b466ea48a190..4187604c7c225 100644 --- a/clients/client-fsx/src/protocols/Aws_json1_1.ts +++ b/clients/client-fsx/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -115,6 +114,7 @@ import { UpdateStorageVirtualMachineCommandOutput, } from "../commands/UpdateStorageVirtualMachineCommand"; import { UpdateVolumeCommandInput, UpdateVolumeCommandOutput } from "../commands/UpdateVolumeCommand"; +import { FSxServiceException as __BaseException } from "../models/FSxServiceException"; import { ActiveDirectoryBackupAttributes, ActiveDirectoryError, @@ -812,49 +812,28 @@ const deserializeAws_json1_1AssociateFileSystemAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelDataRepositoryTaskCommand = async ( @@ -882,65 +861,34 @@ const deserializeAws_json1_1CancelDataRepositoryTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "DataRepositoryTaskEnded": case "com.amazonaws.fsx#DataRepositoryTaskEnded": - response = { - ...(await deserializeAws_json1_1DataRepositoryTaskEndedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryTaskEndedResponse(parsedOutput, context); case "DataRepositoryTaskNotFound": case "com.amazonaws.fsx#DataRepositoryTaskNotFound": - response = { - ...(await deserializeAws_json1_1DataRepositoryTaskNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryTaskNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CopyBackupCommand = async ( @@ -968,113 +916,52 @@ const deserializeAws_json1_1CopyBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupNotFound": case "com.amazonaws.fsx#BackupNotFound": - response = { - ...(await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "IncompatibleRegionForMultiAZ": case "com.amazonaws.fsx#IncompatibleRegionForMultiAZ": - response = { - ...(await deserializeAws_json1_1IncompatibleRegionForMultiAZResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleRegionForMultiAZResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDestinationKmsKey": case "com.amazonaws.fsx#InvalidDestinationKmsKey": - response = { - ...(await deserializeAws_json1_1InvalidDestinationKmsKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDestinationKmsKeyResponse(parsedOutput, context); case "InvalidRegion": case "com.amazonaws.fsx#InvalidRegion": - response = { - ...(await deserializeAws_json1_1InvalidRegionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRegionResponse(parsedOutput, context); case "InvalidSourceKmsKey": case "com.amazonaws.fsx#InvalidSourceKmsKey": - response = { - ...(await deserializeAws_json1_1InvalidSourceKmsKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSourceKmsKeyResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "SourceBackupUnavailable": case "com.amazonaws.fsx#SourceBackupUnavailable": - response = { - ...(await deserializeAws_json1_1SourceBackupUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SourceBackupUnavailableResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBackupCommand = async ( @@ -1102,89 +989,43 @@ const deserializeAws_json1_1CreateBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupInProgress": case "com.amazonaws.fsx#BackupInProgress": - response = { - ...(await deserializeAws_json1_1BackupInProgressResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupInProgressResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataRepositoryAssociationCommand = async ( @@ -1212,73 +1053,37 @@ const deserializeAws_json1_1CreateDataRepositoryAssociationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataRepositoryTaskCommand = async ( @@ -1306,81 +1111,40 @@ const deserializeAws_json1_1CreateDataRepositoryTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "DataRepositoryTaskExecuting": case "com.amazonaws.fsx#DataRepositoryTaskExecuting": - response = { - ...(await deserializeAws_json1_1DataRepositoryTaskExecutingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryTaskExecutingResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFileSystemCommand = async ( @@ -1408,105 +1172,49 @@ const deserializeAws_json1_1CreateFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActiveDirectoryError": case "com.amazonaws.fsx#ActiveDirectoryError": - response = { - ...(await deserializeAws_json1_1ActiveDirectoryErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActiveDirectoryErrorResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidExportPath": case "com.amazonaws.fsx#InvalidExportPath": - response = { - ...(await deserializeAws_json1_1InvalidExportPathResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidExportPathResponse(parsedOutput, context); case "InvalidImportPath": case "com.amazonaws.fsx#InvalidImportPath": - response = { - ...(await deserializeAws_json1_1InvalidImportPathResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImportPathResponse(parsedOutput, context); case "InvalidNetworkSettings": case "com.amazonaws.fsx#InvalidNetworkSettings": - response = { - ...(await deserializeAws_json1_1InvalidNetworkSettingsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNetworkSettingsResponse(parsedOutput, context); case "InvalidPerUnitStorageThroughput": case "com.amazonaws.fsx#InvalidPerUnitStorageThroughput": - response = { - ...(await deserializeAws_json1_1InvalidPerUnitStorageThroughputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPerUnitStorageThroughputResponse(parsedOutput, context); case "MissingFileSystemConfiguration": case "com.amazonaws.fsx#MissingFileSystemConfiguration": - response = { - ...(await deserializeAws_json1_1MissingFileSystemConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingFileSystemConfigurationResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFileSystemFromBackupCommand = async ( @@ -1534,97 +1242,46 @@ const deserializeAws_json1_1CreateFileSystemFromBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActiveDirectoryError": case "com.amazonaws.fsx#ActiveDirectoryError": - response = { - ...(await deserializeAws_json1_1ActiveDirectoryErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActiveDirectoryErrorResponse(parsedOutput, context); case "BackupNotFound": case "com.amazonaws.fsx#BackupNotFound": - response = { - ...(await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNetworkSettings": case "com.amazonaws.fsx#InvalidNetworkSettings": - response = { - ...(await deserializeAws_json1_1InvalidNetworkSettingsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNetworkSettingsResponse(parsedOutput, context); case "InvalidPerUnitStorageThroughput": case "com.amazonaws.fsx#InvalidPerUnitStorageThroughput": - response = { - ...(await deserializeAws_json1_1InvalidPerUnitStorageThroughputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPerUnitStorageThroughputResponse(parsedOutput, context); case "MissingFileSystemConfiguration": case "com.amazonaws.fsx#MissingFileSystemConfiguration": - response = { - ...(await deserializeAws_json1_1MissingFileSystemConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingFileSystemConfigurationResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSnapshotCommand = async ( @@ -1652,57 +1309,31 @@ const deserializeAws_json1_1CreateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStorageVirtualMachineCommand = async ( @@ -1730,81 +1361,40 @@ const deserializeAws_json1_1CreateStorageVirtualMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActiveDirectoryError": case "com.amazonaws.fsx#ActiveDirectoryError": - response = { - ...(await deserializeAws_json1_1ActiveDirectoryErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActiveDirectoryErrorResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVolumeCommand = async ( @@ -1832,89 +1422,43 @@ const deserializeAws_json1_1CreateVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "MissingVolumeConfiguration": case "com.amazonaws.fsx#MissingVolumeConfiguration": - response = { - ...(await deserializeAws_json1_1MissingVolumeConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingVolumeConfigurationResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "StorageVirtualMachineNotFound": case "com.amazonaws.fsx#StorageVirtualMachineNotFound": - response = { - ...(await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVolumeFromBackupCommand = async ( @@ -1942,89 +1486,43 @@ const deserializeAws_json1_1CreateVolumeFromBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupNotFound": case "com.amazonaws.fsx#BackupNotFound": - response = { - ...(await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "MissingVolumeConfiguration": case "com.amazonaws.fsx#MissingVolumeConfiguration": - response = { - ...(await deserializeAws_json1_1MissingVolumeConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingVolumeConfigurationResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "StorageVirtualMachineNotFound": case "com.amazonaws.fsx#StorageVirtualMachineNotFound": - response = { - ...(await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBackupCommand = async ( @@ -2052,81 +1550,40 @@ const deserializeAws_json1_1DeleteBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupBeingCopied": case "com.amazonaws.fsx#BackupBeingCopied": - response = { - ...(await deserializeAws_json1_1BackupBeingCopiedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupBeingCopiedResponse(parsedOutput, context); case "BackupInProgress": case "com.amazonaws.fsx#BackupInProgress": - response = { - ...(await deserializeAws_json1_1BackupInProgressResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupInProgressResponse(parsedOutput, context); case "BackupNotFound": case "com.amazonaws.fsx#BackupNotFound": - response = { - ...(await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context); case "BackupRestoring": case "com.amazonaws.fsx#BackupRestoring": - response = { - ...(await deserializeAws_json1_1BackupRestoringResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupRestoringResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDataRepositoryAssociationCommand = async ( @@ -2154,65 +1611,34 @@ const deserializeAws_json1_1DeleteDataRepositoryAssociationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "DataRepositoryAssociationNotFound": case "com.amazonaws.fsx#DataRepositoryAssociationNotFound": - response = { - ...(await deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFileSystemCommand = async ( @@ -2240,65 +1666,34 @@ const deserializeAws_json1_1DeleteFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSnapshotCommand = async ( @@ -2326,49 +1721,28 @@ const deserializeAws_json1_1DeleteSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "SnapshotNotFound": case "com.amazonaws.fsx#SnapshotNotFound": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStorageVirtualMachineCommand = async ( @@ -2396,57 +1770,31 @@ const deserializeAws_json1_1DeleteStorageVirtualMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "StorageVirtualMachineNotFound": case "com.amazonaws.fsx#StorageVirtualMachineNotFound": - response = { - ...(await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVolumeCommand = async ( @@ -2474,57 +1822,31 @@ const deserializeAws_json1_1DeleteVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBackupsCommand = async ( @@ -2552,65 +1874,34 @@ const deserializeAws_json1_1DescribeBackupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BackupNotFound": case "com.amazonaws.fsx#BackupNotFound": - response = { - ...(await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BackupNotFoundResponse(parsedOutput, context); case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDataRepositoryAssociationsCommand = async ( @@ -2638,65 +1929,34 @@ const deserializeAws_json1_1DescribeDataRepositoryAssociationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "DataRepositoryAssociationNotFound": case "com.amazonaws.fsx#DataRepositoryAssociationNotFound": - response = { - ...(await deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDataRepositoryType": case "com.amazonaws.fsx#InvalidDataRepositoryType": - response = { - ...(await deserializeAws_json1_1InvalidDataRepositoryTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDataRepositoryTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDataRepositoryTasksCommand = async ( @@ -2724,57 +1984,31 @@ const deserializeAws_json1_1DescribeDataRepositoryTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "DataRepositoryTaskNotFound": case "com.amazonaws.fsx#DataRepositoryTaskNotFound": - response = { - ...(await deserializeAws_json1_1DataRepositoryTaskNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryTaskNotFoundResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFileSystemAliasesCommand = async ( @@ -2802,49 +2036,28 @@ const deserializeAws_json1_1DescribeFileSystemAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFileSystemsCommand = async ( @@ -2872,49 +2085,28 @@ const deserializeAws_json1_1DescribeFileSystemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSnapshotsCommand = async ( @@ -2942,49 +2134,28 @@ const deserializeAws_json1_1DescribeSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "SnapshotNotFound": case "com.amazonaws.fsx#SnapshotNotFound": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStorageVirtualMachinesCommand = async ( @@ -3012,49 +2183,28 @@ const deserializeAws_json1_1DescribeStorageVirtualMachinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "StorageVirtualMachineNotFound": case "com.amazonaws.fsx#StorageVirtualMachineNotFound": - response = { - ...(await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVolumesCommand = async ( @@ -3082,49 +2232,28 @@ const deserializeAws_json1_1DescribeVolumesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateFileSystemAliasesCommand = async ( @@ -3152,49 +2281,28 @@ const deserializeAws_json1_1DisassociateFileSystemAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3222,65 +2330,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "NotServiceResourceError": case "com.amazonaws.fsx#NotServiceResourceError": - response = { - ...(await deserializeAws_json1_1NotServiceResourceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotServiceResourceErrorResponse(parsedOutput, context); case "ResourceDoesNotSupportTagging": case "com.amazonaws.fsx#ResourceDoesNotSupportTagging": - response = { - ...(await deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.fsx#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReleaseFileSystemNfsV3LocksCommand = async ( @@ -3308,65 +2385,34 @@ const deserializeAws_json1_1ReleaseFileSystemNfsV3LocksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreVolumeFromSnapshotCommand = async ( @@ -3394,49 +2440,28 @@ const deserializeAws_json1_1RestoreVolumeFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3464,65 +2489,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "NotServiceResourceError": case "com.amazonaws.fsx#NotServiceResourceError": - response = { - ...(await deserializeAws_json1_1NotServiceResourceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotServiceResourceErrorResponse(parsedOutput, context); case "ResourceDoesNotSupportTagging": case "com.amazonaws.fsx#ResourceDoesNotSupportTagging": - response = { - ...(await deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.fsx#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3550,65 +2544,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "NotServiceResourceError": case "com.amazonaws.fsx#NotServiceResourceError": - response = { - ...(await deserializeAws_json1_1NotServiceResourceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotServiceResourceErrorResponse(parsedOutput, context); case "ResourceDoesNotSupportTagging": case "com.amazonaws.fsx#ResourceDoesNotSupportTagging": - response = { - ...(await deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.fsx#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDataRepositoryAssociationCommand = async ( @@ -3636,65 +2599,34 @@ const deserializeAws_json1_1UpdateDataRepositoryAssociationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "DataRepositoryAssociationNotFound": case "com.amazonaws.fsx#DataRepositoryAssociationNotFound": - response = { - ...(await deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFileSystemCommand = async ( @@ -3722,81 +2654,40 @@ const deserializeAws_json1_1UpdateFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "FileSystemNotFound": case "com.amazonaws.fsx#FileSystemNotFound": - response = { - ...(await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FileSystemNotFoundResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "MissingFileSystemConfiguration": case "com.amazonaws.fsx#MissingFileSystemConfiguration": - response = { - ...(await deserializeAws_json1_1MissingFileSystemConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingFileSystemConfigurationResponse(parsedOutput, context); case "ServiceLimitExceeded": case "com.amazonaws.fsx#ServiceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLimitExceededResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSnapshotCommand = async ( @@ -3824,49 +2715,28 @@ const deserializeAws_json1_1UpdateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "SnapshotNotFound": case "com.amazonaws.fsx#SnapshotNotFound": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateStorageVirtualMachineCommand = async ( @@ -3894,65 +2764,34 @@ const deserializeAws_json1_1UpdateStorageVirtualMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "StorageVirtualMachineNotFound": case "com.amazonaws.fsx#StorageVirtualMachineNotFound": - response = { - ...(await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StorageVirtualMachineNotFoundResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.fsx#UnsupportedOperation": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVolumeCommand = async ( @@ -3980,65 +2819,34 @@ const deserializeAws_json1_1UpdateVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequest": case "com.amazonaws.fsx#BadRequest": - response = { - ...(await deserializeAws_json1_1BadRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestResponse(parsedOutput, context); case "IncompatibleParameterError": case "com.amazonaws.fsx#IncompatibleParameterError": - response = { - ...(await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatibleParameterErrorResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.fsx#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "MissingVolumeConfiguration": case "com.amazonaws.fsx#MissingVolumeConfiguration": - response = { - ...(await deserializeAws_json1_1MissingVolumeConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingVolumeConfigurationResponse(parsedOutput, context); case "VolumeNotFound": case "com.amazonaws.fsx#VolumeNotFound": - response = { - ...(await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VolumeNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ActiveDirectoryErrorResponse = async ( @@ -4047,13 +2855,11 @@ const deserializeAws_json1_1ActiveDirectoryErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ActiveDirectoryError(body, context); - const contents: ActiveDirectoryError = { - name: "ActiveDirectoryError", - $fault: "client", + const exception = new ActiveDirectoryError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BackupBeingCopiedResponse = async ( @@ -4062,13 +2868,11 @@ const deserializeAws_json1_1BackupBeingCopiedResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BackupBeingCopied(body, context); - const contents: BackupBeingCopied = { - name: "BackupBeingCopied", - $fault: "client", + const exception = new BackupBeingCopied({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BackupInProgressResponse = async ( @@ -4077,13 +2881,11 @@ const deserializeAws_json1_1BackupInProgressResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BackupInProgress(body, context); - const contents: BackupInProgress = { - name: "BackupInProgress", - $fault: "client", + const exception = new BackupInProgress({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BackupNotFoundResponse = async ( @@ -4092,13 +2894,11 @@ const deserializeAws_json1_1BackupNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BackupNotFound(body, context); - const contents: BackupNotFound = { - name: "BackupNotFound", - $fault: "client", + const exception = new BackupNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BackupRestoringResponse = async ( @@ -4107,13 +2907,11 @@ const deserializeAws_json1_1BackupRestoringResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BackupRestoring(body, context); - const contents: BackupRestoring = { - name: "BackupRestoring", - $fault: "client", + const exception = new BackupRestoring({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BadRequestResponse = async ( @@ -4122,13 +2920,11 @@ const deserializeAws_json1_1BadRequestResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BadRequest(body, context); - const contents: BadRequest = { - name: "BadRequest", - $fault: "client", + const exception = new BadRequest({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse = async ( @@ -4137,13 +2933,11 @@ const deserializeAws_json1_1DataRepositoryAssociationNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataRepositoryAssociationNotFound(body, context); - const contents: DataRepositoryAssociationNotFound = { - name: "DataRepositoryAssociationNotFound", - $fault: "client", + const exception = new DataRepositoryAssociationNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DataRepositoryTaskEndedResponse = async ( @@ -4152,13 +2946,11 @@ const deserializeAws_json1_1DataRepositoryTaskEndedResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataRepositoryTaskEnded(body, context); - const contents: DataRepositoryTaskEnded = { - name: "DataRepositoryTaskEnded", - $fault: "client", + const exception = new DataRepositoryTaskEnded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DataRepositoryTaskExecutingResponse = async ( @@ -4167,13 +2959,11 @@ const deserializeAws_json1_1DataRepositoryTaskExecutingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataRepositoryTaskExecuting(body, context); - const contents: DataRepositoryTaskExecuting = { - name: "DataRepositoryTaskExecuting", - $fault: "client", + const exception = new DataRepositoryTaskExecuting({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DataRepositoryTaskNotFoundResponse = async ( @@ -4182,13 +2972,11 @@ const deserializeAws_json1_1DataRepositoryTaskNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataRepositoryTaskNotFound(body, context); - const contents: DataRepositoryTaskNotFound = { - name: "DataRepositoryTaskNotFound", - $fault: "client", + const exception = new DataRepositoryTaskNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FileSystemNotFoundResponse = async ( @@ -4197,13 +2985,11 @@ const deserializeAws_json1_1FileSystemNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FileSystemNotFound(body, context); - const contents: FileSystemNotFound = { - name: "FileSystemNotFound", - $fault: "client", + const exception = new FileSystemNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncompatibleParameterErrorResponse = async ( @@ -4212,13 +2998,11 @@ const deserializeAws_json1_1IncompatibleParameterErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncompatibleParameterError(body, context); - const contents: IncompatibleParameterError = { - name: "IncompatibleParameterError", - $fault: "client", + const exception = new IncompatibleParameterError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncompatibleRegionForMultiAZResponse = async ( @@ -4227,13 +3011,11 @@ const deserializeAws_json1_1IncompatibleRegionForMultiAZResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncompatibleRegionForMultiAZ(body, context); - const contents: IncompatibleRegionForMultiAZ = { - name: "IncompatibleRegionForMultiAZ", - $fault: "client", + const exception = new IncompatibleRegionForMultiAZ({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -4242,13 +3024,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDataRepositoryTypeResponse = async ( @@ -4257,13 +3037,11 @@ const deserializeAws_json1_1InvalidDataRepositoryTypeResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDataRepositoryType(body, context); - const contents: InvalidDataRepositoryType = { - name: "InvalidDataRepositoryType", - $fault: "client", + const exception = new InvalidDataRepositoryType({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDestinationKmsKeyResponse = async ( @@ -4272,13 +3050,11 @@ const deserializeAws_json1_1InvalidDestinationKmsKeyResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDestinationKmsKey(body, context); - const contents: InvalidDestinationKmsKey = { - name: "InvalidDestinationKmsKey", - $fault: "client", + const exception = new InvalidDestinationKmsKey({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidExportPathResponse = async ( @@ -4287,13 +3063,11 @@ const deserializeAws_json1_1InvalidExportPathResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidExportPath(body, context); - const contents: InvalidExportPath = { - name: "InvalidExportPath", - $fault: "client", + const exception = new InvalidExportPath({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidImportPathResponse = async ( @@ -4302,13 +3076,11 @@ const deserializeAws_json1_1InvalidImportPathResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidImportPath(body, context); - const contents: InvalidImportPath = { - name: "InvalidImportPath", - $fault: "client", + const exception = new InvalidImportPath({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNetworkSettingsResponse = async ( @@ -4317,13 +3089,11 @@ const deserializeAws_json1_1InvalidNetworkSettingsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNetworkSettings(body, context); - const contents: InvalidNetworkSettings = { - name: "InvalidNetworkSettings", - $fault: "client", + const exception = new InvalidNetworkSettings({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPerUnitStorageThroughputResponse = async ( @@ -4332,13 +3102,11 @@ const deserializeAws_json1_1InvalidPerUnitStorageThroughputResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPerUnitStorageThroughput(body, context); - const contents: InvalidPerUnitStorageThroughput = { - name: "InvalidPerUnitStorageThroughput", - $fault: "client", + const exception = new InvalidPerUnitStorageThroughput({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRegionResponse = async ( @@ -4347,13 +3115,11 @@ const deserializeAws_json1_1InvalidRegionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRegion(body, context); - const contents: InvalidRegion = { - name: "InvalidRegion", - $fault: "client", + const exception = new InvalidRegion({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSourceKmsKeyResponse = async ( @@ -4362,13 +3128,11 @@ const deserializeAws_json1_1InvalidSourceKmsKeyResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSourceKmsKey(body, context); - const contents: InvalidSourceKmsKey = { - name: "InvalidSourceKmsKey", - $fault: "client", + const exception = new InvalidSourceKmsKey({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MissingFileSystemConfigurationResponse = async ( @@ -4377,13 +3141,11 @@ const deserializeAws_json1_1MissingFileSystemConfigurationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MissingFileSystemConfiguration(body, context); - const contents: MissingFileSystemConfiguration = { - name: "MissingFileSystemConfiguration", - $fault: "client", + const exception = new MissingFileSystemConfiguration({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MissingVolumeConfigurationResponse = async ( @@ -4392,13 +3154,11 @@ const deserializeAws_json1_1MissingVolumeConfigurationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MissingVolumeConfiguration(body, context); - const contents: MissingVolumeConfiguration = { - name: "MissingVolumeConfiguration", - $fault: "client", + const exception = new MissingVolumeConfiguration({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotServiceResourceErrorResponse = async ( @@ -4407,13 +3167,11 @@ const deserializeAws_json1_1NotServiceResourceErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotServiceResourceError(body, context); - const contents: NotServiceResourceError = { - name: "NotServiceResourceError", - $fault: "client", + const exception = new NotServiceResourceError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse = async ( @@ -4422,13 +3180,11 @@ const deserializeAws_json1_1ResourceDoesNotSupportTaggingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceDoesNotSupportTagging(body, context); - const contents: ResourceDoesNotSupportTagging = { - name: "ResourceDoesNotSupportTagging", - $fault: "client", + const exception = new ResourceDoesNotSupportTagging({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundResponse = async ( @@ -4437,13 +3193,11 @@ const deserializeAws_json1_1ResourceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFound(body, context); - const contents: ResourceNotFound = { - name: "ResourceNotFound", - $fault: "client", + const exception = new ResourceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceLimitExceededResponse = async ( @@ -4452,13 +3206,11 @@ const deserializeAws_json1_1ServiceLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceLimitExceeded(body, context); - const contents: ServiceLimitExceeded = { - name: "ServiceLimitExceeded", - $fault: "client", + const exception = new ServiceLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SnapshotNotFoundResponse = async ( @@ -4467,13 +3219,11 @@ const deserializeAws_json1_1SnapshotNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SnapshotNotFound(body, context); - const contents: SnapshotNotFound = { - name: "SnapshotNotFound", - $fault: "client", + const exception = new SnapshotNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SourceBackupUnavailableResponse = async ( @@ -4482,13 +3232,11 @@ const deserializeAws_json1_1SourceBackupUnavailableResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SourceBackupUnavailable(body, context); - const contents: SourceBackupUnavailable = { - name: "SourceBackupUnavailable", - $fault: "client", + const exception = new SourceBackupUnavailable({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1StorageVirtualMachineNotFoundResponse = async ( @@ -4497,13 +3245,11 @@ const deserializeAws_json1_1StorageVirtualMachineNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1StorageVirtualMachineNotFound(body, context); - const contents: StorageVirtualMachineNotFound = { - name: "StorageVirtualMachineNotFound", - $fault: "client", + const exception = new StorageVirtualMachineNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationResponse = async ( @@ -4512,13 +3258,11 @@ const deserializeAws_json1_1UnsupportedOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperation(body, context); - const contents: UnsupportedOperation = { - name: "UnsupportedOperation", - $fault: "client", + const exception = new UnsupportedOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1VolumeNotFoundResponse = async ( @@ -4527,13 +3271,11 @@ const deserializeAws_json1_1VolumeNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1VolumeNotFound(body, context); - const contents: VolumeNotFound = { - name: "VolumeNotFound", - $fault: "client", + const exception = new VolumeNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AlternateDNSNames = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-gamelift/src/index.ts b/clients/client-gamelift/src/index.ts index 4b91174a54f46..39c92aaa21004 100644 --- a/clients/client-gamelift/src/index.ts +++ b/clients/client-gamelift/src/index.ts @@ -3,3 +3,4 @@ export * from "./GameLiftClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GameLiftServiceException } from "./models/GameLiftServiceException"; diff --git a/clients/client-gamelift/src/models/GameLiftServiceException.ts b/clients/client-gamelift/src/models/GameLiftServiceException.ts new file mode 100644 index 0000000000000..53bfcd56ef0f9 --- /dev/null +++ b/clients/client-gamelift/src/models/GameLiftServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from GameLift service. + */ +export class GameLiftServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GameLiftServiceException.prototype); + } +} diff --git a/clients/client-gamelift/src/models/models_0.ts b/clients/client-gamelift/src/models/models_0.ts index 43bf132779ec7..6e326cc80792a 100644 --- a/clients/client-gamelift/src/models/models_0.ts +++ b/clients/client-gamelift/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GameLiftServiceException as __BaseException } from "./GameLiftServiceException"; export type AcceptanceType = "ACCEPT" | "REJECT"; @@ -50,39 +52,87 @@ export namespace AcceptMatchOutput { * request. Clients can retry such requests immediately or after a waiting * period.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

One or more parameter values in the request are invalid. Correct the invalid * parameter values before retrying.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

A service resource associated with the request could not be found. Clients should * not retry such requests.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The requested operation is not supported in the Region specified.

*/ -export interface UnsupportedRegionException extends __SmithyException, $MetadataBearer { - name: "UnsupportedRegionException"; - $fault: "client"; +export class UnsupportedRegionException extends __BaseException { + readonly name: "UnsupportedRegionException" = "UnsupportedRegionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedRegionException.prototype); + this.Message = opts.Message; + } } export enum RoutingStrategyType { @@ -611,10 +661,22 @@ export namespace ClaimGameServerOutput { * resource associated with the request. Resolve the conflict before retrying this * request.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -624,19 +686,43 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * *

*/ -export interface OutOfCapacityException extends __SmithyException, $MetadataBearer { - name: "OutOfCapacityException"; - $fault: "client"; +export class OutOfCapacityException extends __BaseException { + readonly name: "OutOfCapacityException" = "OutOfCapacityException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OutOfCapacityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OutOfCapacityException.prototype); + this.Message = opts.Message; + } } /** *

The client failed authentication. Clients should not retry such requests.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.Message = opts.Message; + } } export enum ComparisonOperatorType { @@ -761,10 +847,22 @@ export namespace CreateAliasOutput { *

The requested operation would cause the resource to exceed the allowed service * limit. Resolve the issue before retrying.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -773,10 +871,22 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear * or the maximum tag limit may have been exceeded. Resolve the issue before retrying. *

*/ -export interface TaggingFailedException extends __SmithyException, $MetadataBearer { - name: "TaggingFailedException"; - $fault: "client"; +export class TaggingFailedException extends __BaseException { + readonly name: "TaggingFailedException" = "TaggingFailedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TaggingFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TaggingFailedException.prototype); + this.Message = opts.Message; + } } /** @@ -1760,10 +1870,22 @@ export namespace CreateFleetLocationsOutput { * associated with the request and/or the fleet. Resolve the conflict before * retrying.

*/ -export interface InvalidFleetStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidFleetStatusException"; - $fault: "client"; +export class InvalidFleetStatusException extends __BaseException { + readonly name: "InvalidFleetStatusException" = "InvalidFleetStatusException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFleetStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFleetStatusException.prototype); + this.Message = opts.Message; + } } /** @@ -2653,20 +2775,44 @@ export namespace CreateGameSessionOutput { * CreateGameSession request. Clients can retry such requests immediately * or after a waiting period.

*/ -export interface FleetCapacityExceededException extends __SmithyException, $MetadataBearer { - name: "FleetCapacityExceededException"; - $fault: "client"; +export class FleetCapacityExceededException extends __BaseException { + readonly name: "FleetCapacityExceededException" = "FleetCapacityExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FleetCapacityExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FleetCapacityExceededException.prototype); + this.Message = opts.Message; + } } /** *

A game session with this custom ID string already exists in this fleet. Resolve * this conflict before retrying this request.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + this.Message = opts.Message; + } } /** @@ -2676,10 +2822,22 @@ export interface IdempotentParameterMismatchException extends __SmithyException, * should only be retried if the routing strategy for the specified alias is modified. *

*/ -export interface TerminalRoutingStrategyException extends __SmithyException, $MetadataBearer { - name: "TerminalRoutingStrategyException"; - $fault: "client"; +export class TerminalRoutingStrategyException extends __BaseException { + readonly name: "TerminalRoutingStrategyException" = "TerminalRoutingStrategyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TerminalRoutingStrategyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TerminalRoutingStrategyException.prototype); + this.Message = opts.Message; + } } /** @@ -3646,10 +3804,22 @@ export namespace CreatePlayerSessionOutput { *

The game instance is currently full and cannot allow the requested player(s) to * join. Clients can retry such requests immediately or after a waiting period.

*/ -export interface GameSessionFullException extends __SmithyException, $MetadataBearer { - name: "GameSessionFullException"; - $fault: "client"; +export class GameSessionFullException extends __BaseException { + readonly name: "GameSessionFullException" = "GameSessionFullException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GameSessionFullException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GameSessionFullException.prototype); + this.Message = opts.Message; + } } /** @@ -3657,10 +3827,22 @@ export interface GameSessionFullException extends __SmithyException, $MetadataBe * associated with the request and/or the game instance. Resolve the conflict before * retrying.

*/ -export interface InvalidGameSessionStatusException extends __SmithyException, $MetadataBearer { - name: "InvalidGameSessionStatusException"; - $fault: "client"; +export class InvalidGameSessionStatusException extends __BaseException { + readonly name: "InvalidGameSessionStatusException" = "InvalidGameSessionStatusException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGameSessionStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGameSessionStatusException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-gamelift/src/protocols/Aws_json1_1.ts b/clients/client-gamelift/src/protocols/Aws_json1_1.ts index 6d7f02f133cd1..6094d94e597fa 100644 --- a/clients/client-gamelift/src/protocols/Aws_json1_1.ts +++ b/clients/client-gamelift/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AcceptMatchCommandInput, AcceptMatchCommandOutput } from "../commands/AcceptMatchCommand"; @@ -286,6 +285,7 @@ import { ValidateMatchmakingRuleSetCommandInput, ValidateMatchmakingRuleSetCommandOutput, } from "../commands/ValidateMatchmakingRuleSetCommand"; +import { GameLiftServiceException as __BaseException } from "../models/GameLiftServiceException"; import { AcceptMatchInput, AcceptMatchOutput, @@ -1807,57 +1807,31 @@ const deserializeAws_json1_1AcceptMatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ClaimGameServerCommand = async ( @@ -1885,73 +1859,37 @@ const deserializeAws_json1_1ClaimGameServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OutOfCapacityException": case "com.amazonaws.gamelift#OutOfCapacityException": - response = { - ...(await deserializeAws_json1_1OutOfCapacityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OutOfCapacityExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAliasCommand = async ( @@ -1979,73 +1917,37 @@ const deserializeAws_json1_1CreateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBuildCommand = async ( @@ -2073,65 +1975,34 @@ const deserializeAws_json1_1CreateBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFleetCommand = async ( @@ -2159,89 +2030,43 @@ const deserializeAws_json1_1CreateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFleetLocationsCommand = async ( @@ -2269,73 +2094,37 @@ const deserializeAws_json1_1CreateFleetLocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGameServerGroupCommand = async ( @@ -2363,65 +2152,34 @@ const deserializeAws_json1_1CreateGameServerGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGameSessionCommand = async ( @@ -2449,113 +2207,52 @@ const deserializeAws_json1_1CreateGameSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "FleetCapacityExceededException": case "com.amazonaws.gamelift#FleetCapacityExceededException": - response = { - ...(await deserializeAws_json1_1FleetCapacityExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FleetCapacityExceededExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.gamelift#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGameSessionQueueCommand = async ( @@ -2583,73 +2280,37 @@ const deserializeAws_json1_1CreateGameSessionQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMatchmakingConfigurationCommand = async ( @@ -2677,73 +2338,37 @@ const deserializeAws_json1_1CreateMatchmakingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMatchmakingRuleSetCommand = async ( @@ -2771,57 +2396,31 @@ const deserializeAws_json1_1CreateMatchmakingRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePlayerSessionCommand = async ( @@ -2849,81 +2448,40 @@ const deserializeAws_json1_1CreatePlayerSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GameSessionFullException": case "com.amazonaws.gamelift#GameSessionFullException": - response = { - ...(await deserializeAws_json1_1GameSessionFullExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GameSessionFullExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidGameSessionStatusException": case "com.amazonaws.gamelift#InvalidGameSessionStatusException": - response = { - ...(await deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePlayerSessionsCommand = async ( @@ -2951,81 +2509,40 @@ const deserializeAws_json1_1CreatePlayerSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GameSessionFullException": case "com.amazonaws.gamelift#GameSessionFullException": - response = { - ...(await deserializeAws_json1_1GameSessionFullExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GameSessionFullExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidGameSessionStatusException": case "com.amazonaws.gamelift#InvalidGameSessionStatusException": - response = { - ...(await deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateScriptCommand = async ( @@ -3053,65 +2570,34 @@ const deserializeAws_json1_1CreateScriptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVpcPeeringAuthorizationCommand = async ( @@ -3139,57 +2625,31 @@ const deserializeAws_json1_1CreateVpcPeeringAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVpcPeeringConnectionCommand = async ( @@ -3217,57 +2677,31 @@ const deserializeAws_json1_1CreateVpcPeeringConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAliasCommand = async ( @@ -3292,65 +2726,34 @@ const deserializeAws_json1_1DeleteAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBuildCommand = async ( @@ -3375,65 +2778,34 @@ const deserializeAws_json1_1DeleteBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFleetCommand = async ( @@ -3458,73 +2830,37 @@ const deserializeAws_json1_1DeleteFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFleetLocationsCommand = async ( @@ -3552,65 +2888,34 @@ const deserializeAws_json1_1DeleteFleetLocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGameServerGroupCommand = async ( @@ -3638,57 +2943,31 @@ const deserializeAws_json1_1DeleteGameServerGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGameSessionQueueCommand = async ( @@ -3716,65 +2995,34 @@ const deserializeAws_json1_1DeleteGameSessionQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMatchmakingConfigurationCommand = async ( @@ -3802,65 +3050,34 @@ const deserializeAws_json1_1DeleteMatchmakingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMatchmakingRuleSetCommand = async ( @@ -3888,65 +3105,34 @@ const deserializeAws_json1_1DeleteMatchmakingRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteScalingPolicyCommand = async ( @@ -3971,57 +3157,31 @@ const deserializeAws_json1_1DeleteScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteScriptCommand = async ( @@ -4046,65 +3206,34 @@ const deserializeAws_json1_1DeleteScriptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVpcPeeringAuthorizationCommand = async ( @@ -4132,57 +3261,31 @@ const deserializeAws_json1_1DeleteVpcPeeringAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVpcPeeringConnectionCommand = async ( @@ -4210,57 +3313,31 @@ const deserializeAws_json1_1DeleteVpcPeeringConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterGameServerCommand = async ( @@ -4285,57 +3362,31 @@ const deserializeAws_json1_1DeregisterGameServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAliasCommand = async ( @@ -4363,57 +3414,31 @@ const deserializeAws_json1_1DescribeAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBuildCommand = async ( @@ -4441,57 +3466,31 @@ const deserializeAws_json1_1DescribeBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEC2InstanceLimitsCommand = async ( @@ -4519,57 +3518,31 @@ const deserializeAws_json1_1DescribeEC2InstanceLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetAttributesCommand = async ( @@ -4597,57 +3570,31 @@ const deserializeAws_json1_1DescribeFleetAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetCapacityCommand = async ( @@ -4675,57 +3622,31 @@ const deserializeAws_json1_1DescribeFleetCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetEventsCommand = async ( @@ -4753,57 +3674,31 @@ const deserializeAws_json1_1DescribeFleetEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetLocationAttributesCommand = async ( @@ -4831,65 +3726,34 @@ const deserializeAws_json1_1DescribeFleetLocationAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetLocationCapacityCommand = async ( @@ -4917,65 +3781,34 @@ const deserializeAws_json1_1DescribeFleetLocationCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetLocationUtilizationCommand = async ( @@ -5003,65 +3836,34 @@ const deserializeAws_json1_1DescribeFleetLocationUtilizationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetPortSettingsCommand = async ( @@ -5089,57 +3891,31 @@ const deserializeAws_json1_1DescribeFleetPortSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFleetUtilizationCommand = async ( @@ -5167,57 +3943,31 @@ const deserializeAws_json1_1DescribeFleetUtilizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameServerCommand = async ( @@ -5245,57 +3995,31 @@ const deserializeAws_json1_1DescribeGameServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameServerGroupCommand = async ( @@ -5323,57 +4047,31 @@ const deserializeAws_json1_1DescribeGameServerGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameServerInstancesCommand = async ( @@ -5401,57 +4099,31 @@ const deserializeAws_json1_1DescribeGameServerInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameSessionDetailsCommand = async ( @@ -5479,73 +4151,37 @@ const deserializeAws_json1_1DescribeGameSessionDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameSessionPlacementCommand = async ( @@ -5573,57 +4209,31 @@ const deserializeAws_json1_1DescribeGameSessionPlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameSessionQueuesCommand = async ( @@ -5651,57 +4261,31 @@ const deserializeAws_json1_1DescribeGameSessionQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGameSessionsCommand = async ( @@ -5729,73 +4313,37 @@ const deserializeAws_json1_1DescribeGameSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstancesCommand = async ( @@ -5823,65 +4371,34 @@ const deserializeAws_json1_1DescribeInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMatchmakingCommand = async ( @@ -5909,49 +4426,28 @@ const deserializeAws_json1_1DescribeMatchmakingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMatchmakingConfigurationsCommand = async ( @@ -5979,49 +4475,28 @@ const deserializeAws_json1_1DescribeMatchmakingConfigurationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMatchmakingRuleSetsCommand = async ( @@ -6049,57 +4524,31 @@ const deserializeAws_json1_1DescribeMatchmakingRuleSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePlayerSessionsCommand = async ( @@ -6127,57 +4576,31 @@ const deserializeAws_json1_1DescribePlayerSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRuntimeConfigurationCommand = async ( @@ -6205,57 +4628,31 @@ const deserializeAws_json1_1DescribeRuntimeConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScalingPoliciesCommand = async ( @@ -6283,65 +4680,34 @@ const deserializeAws_json1_1DescribeScalingPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeScriptCommand = async ( @@ -6369,57 +4735,31 @@ const deserializeAws_json1_1DescribeScriptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVpcPeeringAuthorizationsCommand = async ( @@ -6447,49 +4787,28 @@ const deserializeAws_json1_1DescribeVpcPeeringAuthorizationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVpcPeeringConnectionsCommand = async ( @@ -6517,57 +4836,31 @@ const deserializeAws_json1_1DescribeVpcPeeringConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGameSessionLogUrlCommand = async ( @@ -6595,57 +4888,31 @@ const deserializeAws_json1_1GetGameSessionLogUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceAccessCommand = async ( @@ -6673,57 +4940,31 @@ const deserializeAws_json1_1GetInstanceAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAliasesCommand = async ( @@ -6751,49 +4992,28 @@ const deserializeAws_json1_1ListAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBuildsCommand = async ( @@ -6821,49 +5041,28 @@ const deserializeAws_json1_1ListBuildsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFleetsCommand = async ( @@ -6891,57 +5090,31 @@ const deserializeAws_json1_1ListFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGameServerGroupsCommand = async ( @@ -6969,49 +5142,28 @@ const deserializeAws_json1_1ListGameServerGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGameServersCommand = async ( @@ -7039,49 +5191,28 @@ const deserializeAws_json1_1ListGameServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListScriptsCommand = async ( @@ -7109,49 +5240,28 @@ const deserializeAws_json1_1ListScriptsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -7179,57 +5289,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutScalingPolicyCommand = async ( @@ -7257,57 +5341,31 @@ const deserializeAws_json1_1PutScalingPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterGameServerCommand = async ( @@ -7335,65 +5393,34 @@ const deserializeAws_json1_1RegisterGameServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RequestUploadCredentialsCommand = async ( @@ -7421,57 +5448,31 @@ const deserializeAws_json1_1RequestUploadCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResolveAliasCommand = async ( @@ -7499,65 +5500,34 @@ const deserializeAws_json1_1ResolveAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResumeGameServerGroupCommand = async ( @@ -7585,57 +5555,31 @@ const deserializeAws_json1_1ResumeGameServerGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchGameSessionsCommand = async ( @@ -7663,73 +5607,37 @@ const deserializeAws_json1_1SearchGameSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TerminalRoutingStrategyException": case "com.amazonaws.gamelift#TerminalRoutingStrategyException": - response = { - ...(await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartFleetActionsCommand = async ( @@ -7757,65 +5665,34 @@ const deserializeAws_json1_1StartFleetActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartGameSessionPlacementCommand = async ( @@ -7843,57 +5720,31 @@ const deserializeAws_json1_1StartGameSessionPlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMatchBackfillCommand = async ( @@ -7921,57 +5772,31 @@ const deserializeAws_json1_1StartMatchBackfillCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMatchmakingCommand = async ( @@ -7999,57 +5824,31 @@ const deserializeAws_json1_1StartMatchmakingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopFleetActionsCommand = async ( @@ -8077,65 +5876,34 @@ const deserializeAws_json1_1StopFleetActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopGameSessionPlacementCommand = async ( @@ -8163,57 +5931,31 @@ const deserializeAws_json1_1StopGameSessionPlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopMatchmakingCommand = async ( @@ -8241,57 +5983,31 @@ const deserializeAws_json1_1StopMatchmakingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SuspendGameServerGroupCommand = async ( @@ -8319,57 +6035,31 @@ const deserializeAws_json1_1SuspendGameServerGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -8397,57 +6087,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -8475,57 +6139,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TaggingFailedException": case "com.amazonaws.gamelift#TaggingFailedException": - response = { - ...(await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TaggingFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAliasCommand = async ( @@ -8553,57 +6191,31 @@ const deserializeAws_json1_1UpdateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBuildCommand = async ( @@ -8631,57 +6243,31 @@ const deserializeAws_json1_1UpdateBuildCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFleetAttributesCommand = async ( @@ -8709,81 +6295,40 @@ const deserializeAws_json1_1UpdateFleetAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFleetCapacityCommand = async ( @@ -8811,89 +6356,43 @@ const deserializeAws_json1_1UpdateFleetCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFleetPortSettingsCommand = async ( @@ -8921,81 +6420,40 @@ const deserializeAws_json1_1UpdateFleetPortSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.gamelift#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGameServerCommand = async ( @@ -9023,57 +6481,31 @@ const deserializeAws_json1_1UpdateGameServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGameServerGroupCommand = async ( @@ -9101,57 +6533,31 @@ const deserializeAws_json1_1UpdateGameServerGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGameSessionCommand = async ( @@ -9179,73 +6585,37 @@ const deserializeAws_json1_1UpdateGameSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.gamelift#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidGameSessionStatusException": case "com.amazonaws.gamelift#InvalidGameSessionStatusException": - response = { - ...(await deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGameSessionQueueCommand = async ( @@ -9273,57 +6643,31 @@ const deserializeAws_json1_1UpdateGameSessionQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMatchmakingConfigurationCommand = async ( @@ -9351,57 +6695,31 @@ const deserializeAws_json1_1UpdateMatchmakingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuntimeConfigurationCommand = async ( @@ -9429,65 +6747,34 @@ const deserializeAws_json1_1UpdateRuntimeConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidFleetStatusException": case "com.amazonaws.gamelift#InvalidFleetStatusException": - response = { - ...(await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFleetStatusExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateScriptCommand = async ( @@ -9515,57 +6802,31 @@ const deserializeAws_json1_1UpdateScriptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.gamelift#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.gamelift#UnauthorizedException": - response = { - ...(await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ValidateMatchmakingRuleSetCommand = async ( @@ -9593,49 +6854,28 @@ const deserializeAws_json1_1ValidateMatchmakingRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.gamelift#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.gamelift#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnsupportedRegionException": case "com.amazonaws.gamelift#UnsupportedRegionException": - response = { - ...(await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedRegionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -9644,13 +6884,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FleetCapacityExceededExceptionResponse = async ( @@ -9659,13 +6897,11 @@ const deserializeAws_json1_1FleetCapacityExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FleetCapacityExceededException(body, context); - const contents: FleetCapacityExceededException = { - name: "FleetCapacityExceededException", - $fault: "client", + const exception = new FleetCapacityExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1GameSessionFullExceptionResponse = async ( @@ -9674,13 +6910,11 @@ const deserializeAws_json1_1GameSessionFullExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1GameSessionFullException(body, context); - const contents: GameSessionFullException = { - name: "GameSessionFullException", - $fault: "client", + const exception = new GameSessionFullException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ( @@ -9689,13 +6923,11 @@ const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotentParameterMismatchException(body, context); - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", + const exception = new IdempotentParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceExceptionResponse = async ( @@ -9704,13 +6936,11 @@ const deserializeAws_json1_1InternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceException(body, context); - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", + const exception = new InternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFleetStatusExceptionResponse = async ( @@ -9719,13 +6949,11 @@ const deserializeAws_json1_1InvalidFleetStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFleetStatusException(body, context); - const contents: InvalidFleetStatusException = { - name: "InvalidFleetStatusException", - $fault: "client", + const exception = new InvalidFleetStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse = async ( @@ -9734,13 +6962,11 @@ const deserializeAws_json1_1InvalidGameSessionStatusExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGameSessionStatusException(body, context); - const contents: InvalidGameSessionStatusException = { - name: "InvalidGameSessionStatusException", - $fault: "client", + const exception = new InvalidGameSessionStatusException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -9749,13 +6975,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -9764,13 +6988,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -9779,13 +7001,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OutOfCapacityExceptionResponse = async ( @@ -9794,13 +7014,11 @@ const deserializeAws_json1_1OutOfCapacityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OutOfCapacityException(body, context); - const contents: OutOfCapacityException = { - name: "OutOfCapacityException", - $fault: "client", + const exception = new OutOfCapacityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TaggingFailedExceptionResponse = async ( @@ -9809,13 +7027,11 @@ const deserializeAws_json1_1TaggingFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TaggingFailedException(body, context); - const contents: TaggingFailedException = { - name: "TaggingFailedException", - $fault: "client", + const exception = new TaggingFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse = async ( @@ -9824,13 +7040,11 @@ const deserializeAws_json1_1TerminalRoutingStrategyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TerminalRoutingStrategyException(body, context); - const contents: TerminalRoutingStrategyException = { - name: "TerminalRoutingStrategyException", - $fault: "client", + const exception = new TerminalRoutingStrategyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnauthorizedExceptionResponse = async ( @@ -9839,13 +7053,11 @@ const deserializeAws_json1_1UnauthorizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnauthorizedException(body, context); - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", + const exception = new UnauthorizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedRegionExceptionResponse = async ( @@ -9854,13 +7066,11 @@ const deserializeAws_json1_1UnsupportedRegionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedRegionException(body, context); - const contents: UnsupportedRegionException = { - name: "UnsupportedRegionException", - $fault: "client", + const exception = new UnsupportedRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptMatchInput = (input: AcceptMatchInput, context: __SerdeContext): any => { diff --git a/clients/client-glacier/src/index.ts b/clients/client-glacier/src/index.ts index c0e1739e26f1c..aed6d511f013e 100644 --- a/clients/client-glacier/src/index.ts +++ b/clients/client-glacier/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { GlacierServiceException } from "./models/GlacierServiceException"; diff --git a/clients/client-glacier/src/models/GlacierServiceException.ts b/clients/client-glacier/src/models/GlacierServiceException.ts new file mode 100644 index 0000000000000..2dc92bf7bbf2d --- /dev/null +++ b/clients/client-glacier/src/models/GlacierServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Glacier service. + */ +export class GlacierServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GlacierServiceException.prototype); + } +} diff --git a/clients/client-glacier/src/models/models_0.ts b/clients/client-glacier/src/models/models_0.ts index c0d6698ab4f8d..0539f41238cd7 100644 --- a/clients/client-glacier/src/models/models_0.ts +++ b/clients/client-glacier/src/models/models_0.ts @@ -1,6 +1,9 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { GlacierServiceException as __BaseException } from "./GlacierServiceException"; + /** *

Provides options to abort a multipart upload identified by the upload ID.

* @@ -41,9 +44,9 @@ export namespace AbortMultipartUploadInput { /** *

Returned if a parameter of the request is incorrectly specified.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; /** *

Client

*/ @@ -55,17 +58,26 @@ export interface InvalidParameterValueException extends __SmithyException, $Meta code?: string; /** - *

Returned if a parameter of the request is incorrectly specified.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** *

Returned if a required header or parameter is missing from the request.

*/ -export interface MissingParameterValueException extends __SmithyException, $MetadataBearer { - name: "MissingParameterValueException"; - $fault: "client"; +export class MissingParameterValueException extends __BaseException { + readonly name: "MissingParameterValueException" = "MissingParameterValueException"; + readonly $fault: "client" = "client"; /** *

Client.

*/ @@ -77,18 +89,27 @@ export interface MissingParameterValueException extends __SmithyException, $Meta code?: string; /** - *

Returned if no authentication data is found for the request.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingParameterValueException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** *

Returned if the specified resource (such as a vault, upload ID, or job ID) doesn't * exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Client

*/ @@ -100,18 +121,26 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB code?: string; /** - *

Returned if the specified resource (such as a vault, upload ID, or job ID) doesn't - * exist.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** *

Returned if the service cannot complete the request.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** *

Server

*/ @@ -123,9 +152,18 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat code?: string; /** - *

Returned if the service cannot complete the request.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** @@ -276,9 +314,9 @@ export namespace AddTagsToVaultInput { /** *

Returned if the request results in a vault or account limit being exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

Client

*/ @@ -290,9 +328,18 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear code?: string; /** - *

Returned if the request results in a vault limit or tags limit being exceeded.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** @@ -1855,21 +1902,33 @@ export namespace InitiateJobOutput { * error only applies to expedited retrievals and not to standard or bulk * retrievals.

*/ -export interface InsufficientCapacityException extends __SmithyException, $MetadataBearer { - name: "InsufficientCapacityException"; - $fault: "client"; +export class InsufficientCapacityException extends __BaseException { + readonly name: "InsufficientCapacityException" = "InsufficientCapacityException"; + readonly $fault: "client" = "client"; type?: string; code?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientCapacityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientCapacityException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** *

Returned if a retrieval job would exceed the current data policy's retrieval rate * limit. For more information about data retrieval policies,

*/ -export interface PolicyEnforcedException extends __SmithyException, $MetadataBearer { - name: "PolicyEnforcedException"; - $fault: "client"; +export class PolicyEnforcedException extends __BaseException { + readonly name: "PolicyEnforcedException" = "PolicyEnforcedException"; + readonly $fault: "client" = "client"; /** *

Client

*/ @@ -1881,9 +1940,18 @@ export interface PolicyEnforcedException extends __SmithyException, $MetadataBea code?: string; /** - *

InitiateJob request denied by current data retrieval policy.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyEnforcedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyEnforcedException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** @@ -2691,9 +2759,9 @@ export namespace SetVaultNotificationsInput { *

Returned if, when uploading an archive, Amazon S3 Glacier times out while receiving the * upload.

*/ -export interface RequestTimeoutException extends __SmithyException, $MetadataBearer { - name: "RequestTimeoutException"; - $fault: "client"; +export class RequestTimeoutException extends __BaseException { + readonly name: "RequestTimeoutException" = "RequestTimeoutException"; + readonly $fault: "client" = "client"; /** *

Client

*/ @@ -2705,10 +2773,18 @@ export interface RequestTimeoutException extends __SmithyException, $MetadataBea code?: string; /** - *

Returned if, when uploading an archive, Amazon S3 Glacier times out while receiving the - * upload.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestTimeoutException.prototype); + this.type = opts.type; + this.code = opts.code; + } } /** diff --git a/clients/client-glacier/src/protocols/Aws_restJson1.ts b/clients/client-glacier/src/protocols/Aws_restJson1.ts index ff146d6c09884..a7988e1f9631f 100644 --- a/clients/client-glacier/src/protocols/Aws_restJson1.ts +++ b/clients/client-glacier/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -96,6 +95,7 @@ import { UploadMultipartPartCommandInput, UploadMultipartPartCommandOutput, } from "../commands/UploadMultipartPartCommand"; +import { GlacierServiceException as __BaseException } from "../models/GlacierServiceException"; import { CSVInput, CSVOutput, @@ -1560,57 +1560,31 @@ const deserializeAws_restJson1AbortMultipartUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AbortVaultLockCommand = async ( @@ -1635,57 +1609,31 @@ const deserializeAws_restJson1AbortVaultLockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddTagsToVaultCommand = async ( @@ -1710,65 +1658,34 @@ const deserializeAws_restJson1AddTagsToVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.glacier#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CompleteMultipartUploadCommand = async ( @@ -1805,57 +1722,31 @@ const deserializeAws_restJson1CompleteMultipartUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CompleteVaultLockCommand = async ( @@ -1880,57 +1771,31 @@ const deserializeAws_restJson1CompleteVaultLockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVaultCommand = async ( @@ -1959,57 +1824,31 @@ const deserializeAws_restJson1CreateVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.glacier#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteArchiveCommand = async ( @@ -2034,57 +1873,31 @@ const deserializeAws_restJson1DeleteArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVaultCommand = async ( @@ -2109,57 +1922,31 @@ const deserializeAws_restJson1DeleteVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVaultAccessPolicyCommand = async ( @@ -2184,57 +1971,31 @@ const deserializeAws_restJson1DeleteVaultAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVaultNotificationsCommand = async ( @@ -2259,57 +2020,31 @@ const deserializeAws_restJson1DeleteVaultNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobCommand = async ( @@ -2421,57 +2156,31 @@ const deserializeAws_restJson1DescribeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVaultCommand = async ( @@ -2520,57 +2229,31 @@ const deserializeAws_restJson1DescribeVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataRetrievalPolicyCommand = async ( @@ -2599,49 +2282,28 @@ const deserializeAws_restJson1GetDataRetrievalPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobOutputCommand = async ( @@ -2692,57 +2354,31 @@ const deserializeAws_restJson1GetJobOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVaultAccessPolicyCommand = async ( @@ -2769,57 +2405,31 @@ const deserializeAws_restJson1GetVaultAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVaultLockCommand = async ( @@ -2860,57 +2470,31 @@ const deserializeAws_restJson1GetVaultLockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVaultNotificationsCommand = async ( @@ -2937,57 +2521,31 @@ const deserializeAws_restJson1GetVaultNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitiateJobCommand = async ( @@ -3024,73 +2582,37 @@ const deserializeAws_restJson1InitiateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCapacityException": case "com.amazonaws.glacier#InsufficientCapacityException": - response = { - ...(await deserializeAws_restJson1InsufficientCapacityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InsufficientCapacityExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "PolicyEnforcedException": case "com.amazonaws.glacier#PolicyEnforcedException": - response = { - ...(await deserializeAws_restJson1PolicyEnforcedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PolicyEnforcedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitiateMultipartUploadCommand = async ( @@ -3123,57 +2645,31 @@ const deserializeAws_restJson1InitiateMultipartUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitiateVaultLockCommand = async ( @@ -3202,57 +2698,31 @@ const deserializeAws_restJson1InitiateVaultLockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -3285,57 +2755,31 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMultipartUploadsCommand = async ( @@ -3368,57 +2812,31 @@ const deserializeAws_restJson1ListMultipartUploadsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPartsCommand = async ( @@ -3471,57 +2889,31 @@ const deserializeAws_restJson1ListPartsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProvisionedCapacityCommand = async ( @@ -3553,49 +2945,28 @@ const deserializeAws_restJson1ListProvisionedCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForVaultCommand = async ( @@ -3624,57 +2995,31 @@ const deserializeAws_restJson1ListTagsForVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVaultsCommand = async ( @@ -3707,57 +3052,31 @@ const deserializeAws_restJson1ListVaultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PurchaseProvisionedCapacityCommand = async ( @@ -3786,57 +3105,31 @@ const deserializeAws_restJson1PurchaseProvisionedCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.glacier#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveTagsFromVaultCommand = async ( @@ -3861,57 +3154,31 @@ const deserializeAws_restJson1RemoveTagsFromVaultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetDataRetrievalPolicyCommand = async ( @@ -3936,49 +3203,28 @@ const deserializeAws_restJson1SetDataRetrievalPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetVaultAccessPolicyCommand = async ( @@ -4003,57 +3249,31 @@ const deserializeAws_restJson1SetVaultAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetVaultNotificationsCommand = async ( @@ -4078,57 +3298,31 @@ const deserializeAws_restJson1SetVaultNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UploadArchiveCommand = async ( @@ -4165,65 +3359,34 @@ const deserializeAws_restJson1UploadArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.glacier#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UploadMultipartPartCommand = async ( @@ -4252,79 +3415,41 @@ const deserializeAws_restJson1UploadMultipartPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.glacier#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "MissingParameterValueException": case "com.amazonaws.glacier#MissingParameterValueException": - response = { - ...(await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingParameterValueExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.glacier#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.glacier#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.glacier#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InsufficientCapacityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InsufficientCapacityException = { - name: "InsufficientCapacityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4335,21 +3460,18 @@ const deserializeAws_restJson1InsufficientCapacityExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new InsufficientCapacityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4360,21 +3482,18 @@ const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new InvalidParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4385,21 +3504,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MissingParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MissingParameterValueException = { - name: "MissingParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4410,21 +3526,18 @@ const deserializeAws_restJson1MissingParameterValueExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new MissingParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PolicyEnforcedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PolicyEnforcedException = { - name: "PolicyEnforcedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4435,21 +3548,18 @@ const deserializeAws_restJson1PolicyEnforcedExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new PolicyEnforcedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestTimeoutException = { - name: "RequestTimeoutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4460,21 +3570,18 @@ const deserializeAws_restJson1RequestTimeoutExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new RequestTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4485,21 +3592,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -4510,7 +3614,11 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.type !== undefined && data.type !== null) { contents.type = __expectString(data.type); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccessControlPolicyList = (input: Grant[], context: __SerdeContext): any => { diff --git a/clients/client-global-accelerator/src/index.ts b/clients/client-global-accelerator/src/index.ts index 0bdc61cb38db9..cac0d2f339ac8 100644 --- a/clients/client-global-accelerator/src/index.ts +++ b/clients/client-global-accelerator/src/index.ts @@ -3,3 +3,4 @@ export * from "./GlobalAcceleratorClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GlobalAcceleratorServiceException } from "./models/GlobalAcceleratorServiceException"; diff --git a/clients/client-global-accelerator/src/models/GlobalAcceleratorServiceException.ts b/clients/client-global-accelerator/src/models/GlobalAcceleratorServiceException.ts new file mode 100644 index 0000000000000..218fa2dcba090 --- /dev/null +++ b/clients/client-global-accelerator/src/models/GlobalAcceleratorServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from GlobalAccelerator service. + */ +export class GlobalAcceleratorServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GlobalAcceleratorServiceException.prototype); + } +} diff --git a/clients/client-global-accelerator/src/models/models_0.ts b/clients/client-global-accelerator/src/models/models_0.ts index 44779df408f25..c8ce07037aa88 100644 --- a/clients/client-global-accelerator/src/models/models_0.ts +++ b/clients/client-global-accelerator/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GlobalAcceleratorServiceException as __BaseException } from "./GlobalAcceleratorServiceException"; export enum IpAddressType { IPV4 = "IPV4", @@ -139,28 +142,64 @@ export namespace AcceleratorAttributes { /** *

The accelerator that you specified could not be disabled.

*/ -export interface AcceleratorNotDisabledException extends __SmithyException, $MetadataBearer { - name: "AcceleratorNotDisabledException"; - $fault: "client"; +export class AcceleratorNotDisabledException extends __BaseException { + readonly name: "AcceleratorNotDisabledException" = "AcceleratorNotDisabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AcceleratorNotDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AcceleratorNotDisabledException.prototype); + this.Message = opts.Message; + } } /** *

The accelerator that you specified doesn't exist.

*/ -export interface AcceleratorNotFoundException extends __SmithyException, $MetadataBearer { - name: "AcceleratorNotFoundException"; - $fault: "client"; +export class AcceleratorNotFoundException extends __BaseException { + readonly name: "AcceleratorNotFoundException" = "AcceleratorNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AcceleratorNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AcceleratorNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You don't have access permission.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -249,55 +288,127 @@ export namespace AddCustomRoutingEndpointsResponse { /** *

You can't use both of those options.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The endpoint that you specified doesn't exist.

*/ -export interface EndpointAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EndpointAlreadyExistsException"; - $fault: "client"; +export class EndpointAlreadyExistsException extends __BaseException { + readonly name: "EndpointAlreadyExistsException" = "EndpointAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The endpoint group that you specified doesn't exist.

*/ -export interface EndpointGroupNotFoundException extends __SmithyException, $MetadataBearer { - name: "EndpointGroupNotFoundException"; - $fault: "client"; +export class EndpointGroupNotFoundException extends __BaseException { + readonly name: "EndpointGroupNotFoundException" = "EndpointGroupNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointGroupNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointGroupNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

There was an internal error for AWS Global Accelerator.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + this.Message = opts.Message; + } } /** *

An argument that you specified is invalid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** *

Processing your request would cause you to exceed an AWS Global Accelerator limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface AdvertiseByoipCidrRequest { @@ -477,20 +588,44 @@ export namespace AdvertiseByoipCidrResponse { /** *

The CIDR that you specified was not found or is incorrect.

*/ -export interface ByoipCidrNotFoundException extends __SmithyException, $MetadataBearer { - name: "ByoipCidrNotFoundException"; - $fault: "client"; +export class ByoipCidrNotFoundException extends __BaseException { + readonly name: "ByoipCidrNotFoundException" = "ByoipCidrNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ByoipCidrNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ByoipCidrNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The CIDR that you specified is not valid for this action. For example, the state of the CIDR might be * incorrect for this action.

*/ -export interface IncorrectCidrStateException extends __SmithyException, $MetadataBearer { - name: "IncorrectCidrStateException"; - $fault: "client"; +export class IncorrectCidrStateException extends __BaseException { + readonly name: "IncorrectCidrStateException" = "IncorrectCidrStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncorrectCidrStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncorrectCidrStateException.prototype); + this.Message = opts.Message; + } } export interface AllowCustomRoutingTrafficRequest { @@ -544,20 +679,44 @@ export namespace AllowCustomRoutingTrafficRequest { *

The listener that you specified has an endpoint group associated with it. You must remove all dependent resources * from a listener before you can delete it.

*/ -export interface AssociatedEndpointGroupFoundException extends __SmithyException, $MetadataBearer { - name: "AssociatedEndpointGroupFoundException"; - $fault: "client"; +export class AssociatedEndpointGroupFoundException extends __BaseException { + readonly name: "AssociatedEndpointGroupFoundException" = "AssociatedEndpointGroupFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociatedEndpointGroupFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociatedEndpointGroupFoundException.prototype); + this.Message = opts.Message; + } } /** *

The accelerator that you specified has a listener associated with it. You must remove all dependent resources from an * accelerator before you can delete it.

*/ -export interface AssociatedListenerFoundException extends __SmithyException, $MetadataBearer { - name: "AssociatedListenerFoundException"; - $fault: "client"; +export class AssociatedListenerFoundException extends __BaseException { + readonly name: "AssociatedListenerFoundException" = "AssociatedListenerFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociatedListenerFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociatedListenerFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -983,28 +1142,64 @@ export namespace CreateCustomRoutingEndpointGroupResponse { /** *

The endpoint group that you specified already exists.

*/ -export interface EndpointGroupAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EndpointGroupAlreadyExistsException"; - $fault: "client"; +export class EndpointGroupAlreadyExistsException extends __BaseException { + readonly name: "EndpointGroupAlreadyExistsException" = "EndpointGroupAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointGroupAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointGroupAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The port numbers that you specified are not valid numbers or are not unique for this accelerator.

*/ -export interface InvalidPortRangeException extends __SmithyException, $MetadataBearer { - name: "InvalidPortRangeException"; - $fault: "client"; +export class InvalidPortRangeException extends __BaseException { + readonly name: "InvalidPortRangeException" = "InvalidPortRangeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPortRangeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPortRangeException.prototype); + this.Message = opts.Message; + } } /** *

The listener that you specified doesn't exist.

*/ -export interface ListenerNotFoundException extends __SmithyException, $MetadataBearer { - name: "ListenerNotFoundException"; - $fault: "client"; +export class ListenerNotFoundException extends __BaseException { + readonly name: "ListenerNotFoundException" = "ListenerNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ListenerNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ListenerNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -2078,19 +2273,43 @@ export namespace DestinationPortMapping { /** *

The endpoint that you specified doesn't exist.

*/ -export interface EndpointNotFoundException extends __SmithyException, $MetadataBearer { - name: "EndpointNotFoundException"; - $fault: "client"; +export class EndpointNotFoundException extends __BaseException { + readonly name: "EndpointNotFoundException" = "EndpointNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

There isn't another item to return.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface ListAcceleratorsRequest { diff --git a/clients/client-global-accelerator/src/protocols/Aws_json1_1.ts b/clients/client-global-accelerator/src/protocols/Aws_json1_1.ts index dbefe901ec873..e32287fdb0291 100644 --- a/clients/client-global-accelerator/src/protocols/Aws_json1_1.ts +++ b/clients/client-global-accelerator/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -159,6 +158,7 @@ import { } from "../commands/UpdateEndpointGroupCommand"; import { UpdateListenerCommandInput, UpdateListenerCommandOutput } from "../commands/UpdateListenerCommand"; import { WithdrawByoipCidrCommandInput, WithdrawByoipCidrCommandOutput } from "../commands/WithdrawByoipCidrCommand"; +import { GlobalAcceleratorServiceException as __BaseException } from "../models/GlobalAcceleratorServiceException"; import { Accelerator, AcceleratorAttributes, @@ -927,81 +927,40 @@ const deserializeAws_json1_1AddCustomRoutingEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.globalaccelerator#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EndpointAlreadyExistsException": case "com.amazonaws.globalaccelerator#EndpointAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EndpointAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointAlreadyExistsExceptionResponse(parsedOutput, context); case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AdvertiseByoipCidrCommand = async ( @@ -1029,65 +988,34 @@ const deserializeAws_json1_1AdvertiseByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ByoipCidrNotFoundException": case "com.amazonaws.globalaccelerator#ByoipCidrNotFoundException": - response = { - ...(await deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse(parsedOutput, context); case "IncorrectCidrStateException": case "com.amazonaws.globalaccelerator#IncorrectCidrStateException": - response = { - ...(await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AllowCustomRoutingTrafficCommand = async ( @@ -1112,41 +1040,25 @@ const deserializeAws_json1_1AllowCustomRoutingTrafficCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAcceleratorCommand = async ( @@ -1174,49 +1086,28 @@ const deserializeAws_json1_1CreateAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCustomRoutingAcceleratorCommand = async ( @@ -1244,57 +1135,31 @@ const deserializeAws_json1_1CreateCustomRoutingAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCustomRoutingEndpointGroupCommand = async ( @@ -1322,89 +1187,43 @@ const deserializeAws_json1_1CreateCustomRoutingEndpointGroupCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EndpointGroupAlreadyExistsException": case "com.amazonaws.globalaccelerator#EndpointGroupAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EndpointGroupAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupAlreadyExistsExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidPortRangeException": case "com.amazonaws.globalaccelerator#InvalidPortRangeException": - response = { - ...(await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCustomRoutingListenerCommand = async ( @@ -1432,65 +1251,34 @@ const deserializeAws_json1_1CreateCustomRoutingListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidPortRangeException": case "com.amazonaws.globalaccelerator#InvalidPortRangeException": - response = { - ...(await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEndpointGroupCommand = async ( @@ -1518,81 +1306,40 @@ const deserializeAws_json1_1CreateEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EndpointGroupAlreadyExistsException": case "com.amazonaws.globalaccelerator#EndpointGroupAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1EndpointGroupAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupAlreadyExistsExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateListenerCommand = async ( @@ -1620,65 +1367,34 @@ const deserializeAws_json1_1CreateListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidPortRangeException": case "com.amazonaws.globalaccelerator#InvalidPortRangeException": - response = { - ...(await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAcceleratorCommand = async ( @@ -1703,65 +1419,34 @@ const deserializeAws_json1_1DeleteAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotDisabledException": case "com.amazonaws.globalaccelerator#AcceleratorNotDisabledException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotDisabledExceptionResponse(parsedOutput, context); case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "AssociatedListenerFoundException": case "com.amazonaws.globalaccelerator#AssociatedListenerFoundException": - response = { - ...(await deserializeAws_json1_1AssociatedListenerFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociatedListenerFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCustomRoutingAcceleratorCommand = async ( @@ -1786,65 +1471,34 @@ const deserializeAws_json1_1DeleteCustomRoutingAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotDisabledException": case "com.amazonaws.globalaccelerator#AcceleratorNotDisabledException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotDisabledExceptionResponse(parsedOutput, context); case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "AssociatedListenerFoundException": case "com.amazonaws.globalaccelerator#AssociatedListenerFoundException": - response = { - ...(await deserializeAws_json1_1AssociatedListenerFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociatedListenerFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCustomRoutingEndpointGroupCommand = async ( @@ -1869,49 +1523,28 @@ const deserializeAws_json1_1DeleteCustomRoutingEndpointGroupCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCustomRoutingListenerCommand = async ( @@ -1936,57 +1569,31 @@ const deserializeAws_json1_1DeleteCustomRoutingListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociatedEndpointGroupFoundException": case "com.amazonaws.globalaccelerator#AssociatedEndpointGroupFoundException": - response = { - ...(await deserializeAws_json1_1AssociatedEndpointGroupFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociatedEndpointGroupFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEndpointGroupCommand = async ( @@ -2011,49 +1618,28 @@ const deserializeAws_json1_1DeleteEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteListenerCommand = async ( @@ -2078,57 +1664,31 @@ const deserializeAws_json1_1DeleteListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociatedEndpointGroupFoundException": case "com.amazonaws.globalaccelerator#AssociatedEndpointGroupFoundException": - response = { - ...(await deserializeAws_json1_1AssociatedEndpointGroupFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociatedEndpointGroupFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DenyCustomRoutingTrafficCommand = async ( @@ -2153,41 +1713,25 @@ const deserializeAws_json1_1DenyCustomRoutingTrafficCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeprovisionByoipCidrCommand = async ( @@ -2215,65 +1759,34 @@ const deserializeAws_json1_1DeprovisionByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ByoipCidrNotFoundException": case "com.amazonaws.globalaccelerator#ByoipCidrNotFoundException": - response = { - ...(await deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse(parsedOutput, context); case "IncorrectCidrStateException": case "com.amazonaws.globalaccelerator#IncorrectCidrStateException": - response = { - ...(await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAcceleratorCommand = async ( @@ -2301,49 +1814,28 @@ const deserializeAws_json1_1DescribeAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAcceleratorAttributesCommand = async ( @@ -2371,49 +1863,28 @@ const deserializeAws_json1_1DescribeAcceleratorAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCustomRoutingAcceleratorCommand = async ( @@ -2441,49 +1912,28 @@ const deserializeAws_json1_1DescribeCustomRoutingAcceleratorCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCustomRoutingAcceleratorAttributesCommand = async ( @@ -2511,49 +1961,28 @@ const deserializeAws_json1_1DescribeCustomRoutingAcceleratorAttributesCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCustomRoutingEndpointGroupCommand = async ( @@ -2581,49 +2010,28 @@ const deserializeAws_json1_1DescribeCustomRoutingEndpointGroupCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCustomRoutingListenerCommand = async ( @@ -2651,49 +2059,28 @@ const deserializeAws_json1_1DescribeCustomRoutingListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointGroupCommand = async ( @@ -2721,49 +2108,28 @@ const deserializeAws_json1_1DescribeEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeListenerCommand = async ( @@ -2791,49 +2157,28 @@ const deserializeAws_json1_1DescribeListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAcceleratorsCommand = async ( @@ -2861,49 +2206,28 @@ const deserializeAws_json1_1ListAcceleratorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListByoipCidrsCommand = async ( @@ -2931,57 +2255,31 @@ const deserializeAws_json1_1ListByoipCidrsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCustomRoutingAcceleratorsCommand = async ( @@ -3009,49 +2307,28 @@ const deserializeAws_json1_1ListCustomRoutingAcceleratorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCustomRoutingEndpointGroupsCommand = async ( @@ -3079,57 +2356,31 @@ const deserializeAws_json1_1ListCustomRoutingEndpointGroupsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCustomRoutingListenersCommand = async ( @@ -3157,57 +2408,31 @@ const deserializeAws_json1_1ListCustomRoutingListenersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCustomRoutingPortMappingsCommand = async ( @@ -3235,65 +2460,34 @@ const deserializeAws_json1_1ListCustomRoutingPortMappingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCustomRoutingPortMappingsByDestinationCommand = async ( @@ -3321,57 +2515,31 @@ const deserializeAws_json1_1ListCustomRoutingPortMappingsByDestinationCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EndpointNotFoundException": case "com.amazonaws.globalaccelerator#EndpointNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEndpointGroupsCommand = async ( @@ -3399,57 +2567,31 @@ const deserializeAws_json1_1ListEndpointGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListListenersCommand = async ( @@ -3477,57 +2619,31 @@ const deserializeAws_json1_1ListListenersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.globalaccelerator#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3555,49 +2671,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ProvisionByoipCidrCommand = async ( @@ -3625,65 +2720,34 @@ const deserializeAws_json1_1ProvisionByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IncorrectCidrStateException": case "com.amazonaws.globalaccelerator#IncorrectCidrStateException": - response = { - ...(await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveCustomRoutingEndpointsCommand = async ( @@ -3708,73 +2772,37 @@ const deserializeAws_json1_1RemoveCustomRoutingEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.globalaccelerator#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "EndpointNotFoundException": case "com.amazonaws.globalaccelerator#EndpointNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3802,49 +2830,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3872,49 +2879,28 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAcceleratorCommand = async ( @@ -3942,49 +2928,28 @@ const deserializeAws_json1_1UpdateAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAcceleratorAttributesCommand = async ( @@ -4012,57 +2977,31 @@ const deserializeAws_json1_1UpdateAcceleratorAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCustomRoutingAcceleratorCommand = async ( @@ -4090,49 +3029,28 @@ const deserializeAws_json1_1UpdateCustomRoutingAcceleratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCustomRoutingAcceleratorAttributesCommand = async ( @@ -4160,57 +3078,31 @@ const deserializeAws_json1_1UpdateCustomRoutingAcceleratorAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AcceleratorNotFoundException": case "com.amazonaws.globalaccelerator#AcceleratorNotFoundException": - response = { - ...(await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AcceleratorNotFoundExceptionResponse(parsedOutput, context); case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCustomRoutingListenerCommand = async ( @@ -4238,65 +3130,34 @@ const deserializeAws_json1_1UpdateCustomRoutingListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidPortRangeException": case "com.amazonaws.globalaccelerator#InvalidPortRangeException": - response = { - ...(await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEndpointGroupCommand = async ( @@ -4324,65 +3185,34 @@ const deserializeAws_json1_1UpdateEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EndpointGroupNotFoundException": case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException": - response = { - ...(await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateListenerCommand = async ( @@ -4410,65 +3240,34 @@ const deserializeAws_json1_1UpdateListenerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidPortRangeException": case "com.amazonaws.globalaccelerator#InvalidPortRangeException": - response = { - ...(await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPortRangeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.globalaccelerator#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ListenerNotFoundException": case "com.amazonaws.globalaccelerator#ListenerNotFoundException": - response = { - ...(await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ListenerNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1WithdrawByoipCidrCommand = async ( @@ -4496,65 +3295,34 @@ const deserializeAws_json1_1WithdrawByoipCidrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.globalaccelerator#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ByoipCidrNotFoundException": case "com.amazonaws.globalaccelerator#ByoipCidrNotFoundException": - response = { - ...(await deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse(parsedOutput, context); case "IncorrectCidrStateException": case "com.amazonaws.globalaccelerator#IncorrectCidrStateException": - response = { - ...(await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectCidrStateExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.globalaccelerator#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.globalaccelerator#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AcceleratorNotDisabledExceptionResponse = async ( @@ -4563,13 +3331,11 @@ const deserializeAws_json1_1AcceleratorNotDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AcceleratorNotDisabledException(body, context); - const contents: AcceleratorNotDisabledException = { - name: "AcceleratorNotDisabledException", - $fault: "client", + const exception = new AcceleratorNotDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AcceleratorNotFoundExceptionResponse = async ( @@ -4578,13 +3344,11 @@ const deserializeAws_json1_1AcceleratorNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AcceleratorNotFoundException(body, context); - const contents: AcceleratorNotFoundException = { - name: "AcceleratorNotFoundException", - $fault: "client", + const exception = new AcceleratorNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -4593,13 +3357,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociatedEndpointGroupFoundExceptionResponse = async ( @@ -4608,13 +3370,11 @@ const deserializeAws_json1_1AssociatedEndpointGroupFoundExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociatedEndpointGroupFoundException(body, context); - const contents: AssociatedEndpointGroupFoundException = { - name: "AssociatedEndpointGroupFoundException", - $fault: "client", + const exception = new AssociatedEndpointGroupFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociatedListenerFoundExceptionResponse = async ( @@ -4623,13 +3383,11 @@ const deserializeAws_json1_1AssociatedListenerFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociatedListenerFoundException(body, context); - const contents: AssociatedListenerFoundException = { - name: "AssociatedListenerFoundException", - $fault: "client", + const exception = new AssociatedListenerFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse = async ( @@ -4638,13 +3396,11 @@ const deserializeAws_json1_1ByoipCidrNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ByoipCidrNotFoundException(body, context); - const contents: ByoipCidrNotFoundException = { - name: "ByoipCidrNotFoundException", - $fault: "client", + const exception = new ByoipCidrNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -4653,13 +3409,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EndpointAlreadyExistsExceptionResponse = async ( @@ -4668,13 +3422,11 @@ const deserializeAws_json1_1EndpointAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EndpointAlreadyExistsException(body, context); - const contents: EndpointAlreadyExistsException = { - name: "EndpointAlreadyExistsException", - $fault: "client", + const exception = new EndpointAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EndpointGroupAlreadyExistsExceptionResponse = async ( @@ -4683,13 +3435,11 @@ const deserializeAws_json1_1EndpointGroupAlreadyExistsExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EndpointGroupAlreadyExistsException(body, context); - const contents: EndpointGroupAlreadyExistsException = { - name: "EndpointGroupAlreadyExistsException", - $fault: "client", + const exception = new EndpointGroupAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse = async ( @@ -4698,13 +3448,11 @@ const deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EndpointGroupNotFoundException(body, context); - const contents: EndpointGroupNotFoundException = { - name: "EndpointGroupNotFoundException", - $fault: "client", + const exception = new EndpointGroupNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EndpointNotFoundExceptionResponse = async ( @@ -4713,13 +3461,11 @@ const deserializeAws_json1_1EndpointNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EndpointNotFoundException(body, context); - const contents: EndpointNotFoundException = { - name: "EndpointNotFoundException", - $fault: "client", + const exception = new EndpointNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncorrectCidrStateExceptionResponse = async ( @@ -4728,13 +3474,11 @@ const deserializeAws_json1_1IncorrectCidrStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncorrectCidrStateException(body, context); - const contents: IncorrectCidrStateException = { - name: "IncorrectCidrStateException", - $fault: "client", + const exception = new IncorrectCidrStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( @@ -4743,13 +3487,11 @@ const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceErrorException(body, context); - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", + const exception = new InternalServiceErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( @@ -4758,13 +3500,11 @@ const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgumentException(body, context); - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", + const exception = new InvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -4773,13 +3513,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPortRangeExceptionResponse = async ( @@ -4788,13 +3526,11 @@ const deserializeAws_json1_1InvalidPortRangeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPortRangeException(body, context); - const contents: InvalidPortRangeException = { - name: "InvalidPortRangeException", - $fault: "client", + const exception = new InvalidPortRangeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -4803,13 +3539,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ListenerNotFoundExceptionResponse = async ( @@ -4818,13 +3552,11 @@ const deserializeAws_json1_1ListenerNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ListenerNotFoundException(body, context); - const contents: ListenerNotFoundException = { - name: "ListenerNotFoundException", - $fault: "client", + const exception = new ListenerNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddCustomRoutingEndpointsRequest = ( diff --git a/clients/client-glue/src/index.ts b/clients/client-glue/src/index.ts index bf70c8d296b5a..da26f64852444 100644 --- a/clients/client-glue/src/index.ts +++ b/clients/client-glue/src/index.ts @@ -3,3 +3,4 @@ export * from "./GlueClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GlueServiceException } from "./models/GlueServiceException"; diff --git a/clients/client-glue/src/models/GlueServiceException.ts b/clients/client-glue/src/models/GlueServiceException.ts new file mode 100644 index 0000000000000..309a4d43446f6 --- /dev/null +++ b/clients/client-glue/src/models/GlueServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Glue service. + */ +export class GlueServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GlueServiceException.prototype); + } +} diff --git a/clients/client-glue/src/models/models_0.ts b/clients/client-glue/src/models/models_0.ts index 58b38c6651798..561ddd315c633 100644 --- a/clients/client-glue/src/models/models_0.ts +++ b/clients/client-glue/src/models/models_0.ts @@ -1,15 +1,30 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GlueServiceException as __BaseException } from "./GlueServiceException"; /** *

Access to a resource was denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -86,13 +101,25 @@ export namespace Action { /** *

A resource to be created or added already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface AuditContext { @@ -521,73 +548,145 @@ export namespace BatchCreatePartitionResponse { /** *

A specified entity does not exist

*/ -export interface EntityNotFoundException extends __SmithyException, $MetadataBearer { - name: "EntityNotFoundException"; - $fault: "client"; +export class EntityNotFoundException extends __BaseException { + readonly name: "EntityNotFoundException" = "EntityNotFoundException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

An encryption operation failed.

*/ -export interface GlueEncryptionException extends __SmithyException, $MetadataBearer { - name: "GlueEncryptionException"; - $fault: "client"; +export class GlueEncryptionException extends __BaseException { + readonly name: "GlueEncryptionException" = "GlueEncryptionException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlueEncryptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlueEncryptionException.prototype); + this.Message = opts.Message; + } } /** *

An internal service error occurred.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

The input provided was not valid.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** *

The operation timed out.

*/ -export interface OperationTimeoutException extends __SmithyException, $MetadataBearer { - name: "OperationTimeoutException"; - $fault: "client"; +export class OperationTimeoutException extends __BaseException { + readonly name: "OperationTimeoutException" = "OperationTimeoutException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationTimeoutException.prototype); + this.Message = opts.Message; + } } /** *

A resource numerical limit was exceeded.

*/ -export interface ResourceNumberLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceNumberLimitExceededException"; - $fault: "client"; +export class ResourceNumberLimitExceededException extends __BaseException { + readonly name: "ResourceNumberLimitExceededException" = "ResourceNumberLimitExceededException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNumberLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNumberLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface BatchDeleteConnectionRequest { @@ -780,13 +879,25 @@ export namespace BatchDeleteTableResponse { /** *

A resource was not ready for a transaction.

*/ -export interface ResourceNotReadyException extends __SmithyException, $MetadataBearer { - name: "ResourceNotReadyException"; - $fault: "client"; +export class ResourceNotReadyException extends __BaseException { + readonly name: "ResourceNotReadyException" = "ResourceNotReadyException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotReadyException.prototype); + this.Message = opts.Message; + } } export interface BatchDeleteTableVersionRequest { @@ -2279,13 +2390,25 @@ export namespace BatchGetPartitionResponse { /** *

An error that indicates your data is in an invalid state.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + this.Message = opts.Message; + } } export interface BatchGetTriggersRequest { @@ -4046,13 +4169,25 @@ export namespace CreateCrawlerResponse { /** *

Two processes are trying to modify a resource simultaneously.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } export enum Permission { @@ -4469,25 +4604,49 @@ export namespace CreateDevEndpointResponse { /** *

The same unique identifier was associated with two different records.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + this.Message = opts.Message; + } } /** *

A value could not be validated.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface CreateJobRequest { @@ -6289,13 +6448,25 @@ export namespace DeleteConnectionResponse { /** *

The operation cannot be performed because the crawler is already running.

*/ -export interface CrawlerRunningException extends __SmithyException, $MetadataBearer { - name: "CrawlerRunningException"; - $fault: "client"; +export class CrawlerRunningException extends __BaseException { + readonly name: "CrawlerRunningException" = "CrawlerRunningException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CrawlerRunningException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CrawlerRunningException.prototype); + this.Message = opts.Message; + } } export interface DeleteCrawlerRequest { @@ -6328,13 +6499,25 @@ export namespace DeleteCrawlerResponse { /** *

The specified scheduler is transitioning.

*/ -export interface SchedulerTransitioningException extends __SmithyException, $MetadataBearer { - name: "SchedulerTransitioningException"; - $fault: "client"; +export class SchedulerTransitioningException extends __BaseException { + readonly name: "SchedulerTransitioningException" = "SchedulerTransitioningException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SchedulerTransitioningException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SchedulerTransitioningException.prototype); + this.Message = opts.Message; + } } export interface DeleteDatabaseRequest { @@ -6509,13 +6692,25 @@ export namespace DeletePartitionResponse { /** *

The CreatePartitions API was called on a table that has indexes enabled.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export interface DeletePartitionIndexRequest { @@ -6610,13 +6805,25 @@ export namespace DeleteRegistryResponse { /** *

A specified condition was not satisfied.

*/ -export interface ConditionCheckFailureException extends __SmithyException, $MetadataBearer { - name: "ConditionCheckFailureException"; - $fault: "client"; +export class ConditionCheckFailureException extends __BaseException { + readonly name: "ConditionCheckFailureException" = "ConditionCheckFailureException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConditionCheckFailureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConditionCheckFailureException.prototype); + this.Message = opts.Message; + } } export interface DeleteResourcePolicyRequest { diff --git a/clients/client-glue/src/models/models_1.ts b/clients/client-glue/src/models/models_1.ts index 869de64209962..716e99f6cc024 100644 --- a/clients/client-glue/src/models/models_1.ts +++ b/clients/client-glue/src/models/models_1.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { GlueServiceException as __BaseException } from "./GlueServiceException"; import { Action, AuditContext, @@ -3657,10 +3659,22 @@ export namespace GetUnfilteredPartitionMetadataResponse { }); } -export interface PermissionTypeMismatchException extends __SmithyException, $MetadataBearer { - name: "PermissionTypeMismatchException"; - $fault: "client"; +export class PermissionTypeMismatchException extends __BaseException { + readonly name: "PermissionTypeMismatchException" = "PermissionTypeMismatchException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PermissionTypeMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PermissionTypeMismatchException.prototype); + this.Message = opts.Message; + } } export interface GetUnfilteredPartitionsMetadataRequest { @@ -5304,25 +5318,49 @@ export namespace ResetJobBookmarkResponse { /** *

Too many jobs are being run concurrently.

*/ -export interface ConcurrentRunsExceededException extends __SmithyException, $MetadataBearer { - name: "ConcurrentRunsExceededException"; - $fault: "client"; +export class ConcurrentRunsExceededException extends __BaseException { + readonly name: "ConcurrentRunsExceededException" = "ConcurrentRunsExceededException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentRunsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentRunsExceededException.prototype); + this.Message = opts.Message; + } } /** *

The workflow is in an invalid state to perform a requested operation.

*/ -export interface IllegalWorkflowStateException extends __SmithyException, $MetadataBearer { - name: "IllegalWorkflowStateException"; - $fault: "client"; +export class IllegalWorkflowStateException extends __BaseException { + readonly name: "IllegalWorkflowStateException" = "IllegalWorkflowStateException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalWorkflowStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalWorkflowStateException.prototype); + this.Message = opts.Message; + } } export interface ResumeWorkflowRunRequest { @@ -5519,10 +5557,22 @@ export namespace SearchTablesResponse { }); } -export interface IllegalBlueprintStateException extends __SmithyException, $MetadataBearer { - name: "IllegalBlueprintStateException"; - $fault: "client"; +export class IllegalBlueprintStateException extends __BaseException { + readonly name: "IllegalBlueprintStateException" = "IllegalBlueprintStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalBlueprintStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalBlueprintStateException.prototype); + this.Message = opts.Message; + } } export interface StartBlueprintRunRequest { @@ -5597,25 +5647,49 @@ export namespace StartCrawlerResponse { /** *

There is no applicable schedule.

*/ -export interface NoScheduleException extends __SmithyException, $MetadataBearer { - name: "NoScheduleException"; - $fault: "client"; +export class NoScheduleException extends __BaseException { + readonly name: "NoScheduleException" = "NoScheduleException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoScheduleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoScheduleException.prototype); + this.Message = opts.Message; + } } /** *

The specified scheduler is already running.

*/ -export interface SchedulerRunningException extends __SmithyException, $MetadataBearer { - name: "SchedulerRunningException"; - $fault: "client"; +export class SchedulerRunningException extends __BaseException { + readonly name: "SchedulerRunningException" = "SchedulerRunningException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SchedulerRunningException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SchedulerRunningException.prototype); + this.Message = opts.Message; + } } export interface StartCrawlerScheduleRequest { @@ -5850,13 +5924,25 @@ export namespace StartJobRunResponse { /** *

The machine learning transform is not ready to run.

*/ -export interface MLTransformNotReadyException extends __SmithyException, $MetadataBearer { - name: "MLTransformNotReadyException"; - $fault: "client"; +export class MLTransformNotReadyException extends __BaseException { + readonly name: "MLTransformNotReadyException" = "MLTransformNotReadyException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MLTransformNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MLTransformNotReadyException.prototype); + this.Message = opts.Message; + } } export interface StartMLEvaluationTaskRunRequest { @@ -6001,25 +6087,49 @@ export namespace StartWorkflowRunResponse { /** *

The specified crawler is not running.

*/ -export interface CrawlerNotRunningException extends __SmithyException, $MetadataBearer { - name: "CrawlerNotRunningException"; - $fault: "client"; +export class CrawlerNotRunningException extends __BaseException { + readonly name: "CrawlerNotRunningException" = "CrawlerNotRunningException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CrawlerNotRunningException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CrawlerNotRunningException.prototype); + this.Message = opts.Message; + } } /** *

The specified crawler is stopping.

*/ -export interface CrawlerStoppingException extends __SmithyException, $MetadataBearer { - name: "CrawlerStoppingException"; - $fault: "client"; +export class CrawlerStoppingException extends __BaseException { + readonly name: "CrawlerStoppingException" = "CrawlerStoppingException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CrawlerStoppingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CrawlerStoppingException.prototype); + this.Message = opts.Message; + } } export interface StopCrawlerRequest { @@ -6052,13 +6162,25 @@ export namespace StopCrawlerResponse { /** *

The specified scheduler is not running.

*/ -export interface SchedulerNotRunningException extends __SmithyException, $MetadataBearer { - name: "SchedulerNotRunningException"; - $fault: "client"; +export class SchedulerNotRunningException extends __BaseException { + readonly name: "SchedulerNotRunningException" = "SchedulerNotRunningException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SchedulerNotRunningException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SchedulerNotRunningException.prototype); + this.Message = opts.Message; + } } export interface StopCrawlerScheduleRequest { @@ -6448,13 +6570,25 @@ export namespace UpdateClassifierResponse { /** *

There was a version conflict.

*/ -export interface VersionMismatchException extends __SmithyException, $MetadataBearer { - name: "VersionMismatchException"; - $fault: "client"; +export class VersionMismatchException extends __BaseException { + readonly name: "VersionMismatchException" = "VersionMismatchException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "VersionMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VersionMismatchException.prototype); + this.Message = opts.Message; + } } export interface UpdateColumnStatisticsForPartitionRequest { diff --git a/clients/client-glue/src/protocols/Aws_json1_1.ts b/clients/client-glue/src/protocols/Aws_json1_1.ts index da927b7a251f9..f62fe75d0be24 100644 --- a/clients/client-glue/src/protocols/Aws_json1_1.ts +++ b/clients/client-glue/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -338,6 +337,7 @@ import { UpdateUserDefinedFunctionCommandOutput, } from "../commands/UpdateUserDefinedFunctionCommand"; import { UpdateWorkflowCommandInput, UpdateWorkflowCommandOutput } from "../commands/UpdateWorkflowCommand"; +import { GlueServiceException as __BaseException } from "../models/GlueServiceException"; import { AccessDeniedException, Action, @@ -3097,81 +3097,40 @@ const deserializeAws_json1_1BatchCreatePartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteConnectionCommand = async ( @@ -3199,41 +3158,25 @@ const deserializeAws_json1_1BatchDeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeletePartitionCommand = async ( @@ -3261,57 +3204,31 @@ const deserializeAws_json1_1BatchDeletePartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteTableCommand = async ( @@ -3339,73 +3256,37 @@ const deserializeAws_json1_1BatchDeleteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.glue#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteTableVersionCommand = async ( @@ -3433,57 +3314,31 @@ const deserializeAws_json1_1BatchDeleteTableVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetBlueprintsCommand = async ( @@ -3511,49 +3366,28 @@ const deserializeAws_json1_1BatchGetBlueprintsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetCrawlersCommand = async ( @@ -3581,41 +3415,25 @@ const deserializeAws_json1_1BatchGetCrawlersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetDevEndpointsCommand = async ( @@ -3643,57 +3461,31 @@ const deserializeAws_json1_1BatchGetDevEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetJobsCommand = async ( @@ -3721,49 +3513,28 @@ const deserializeAws_json1_1BatchGetJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetPartitionCommand = async ( @@ -3791,73 +3562,37 @@ const deserializeAws_json1_1BatchGetPartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.glue#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetTriggersCommand = async ( @@ -3885,49 +3620,28 @@ const deserializeAws_json1_1BatchGetTriggersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetWorkflowsCommand = async ( @@ -3955,49 +3669,28 @@ const deserializeAws_json1_1BatchGetWorkflowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchStopJobRunCommand = async ( @@ -4025,49 +3718,28 @@ const deserializeAws_json1_1BatchStopJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchUpdatePartitionCommand = async ( @@ -4095,65 +3767,34 @@ const deserializeAws_json1_1BatchUpdatePartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelMLTaskRunCommand = async ( @@ -4181,57 +3822,31 @@ const deserializeAws_json1_1CancelMLTaskRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckSchemaVersionValidityCommand = async ( @@ -4259,49 +3874,28 @@ const deserializeAws_json1_1CheckSchemaVersionValidityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBlueprintCommand = async ( @@ -4329,65 +3923,34 @@ const deserializeAws_json1_1CreateBlueprintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateClassifierCommand = async ( @@ -4415,49 +3978,28 @@ const deserializeAws_json1_1CreateClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConnectionCommand = async ( @@ -4485,65 +4027,34 @@ const deserializeAws_json1_1CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCrawlerCommand = async ( @@ -4571,57 +4082,31 @@ const deserializeAws_json1_1CreateCrawlerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatabaseCommand = async ( @@ -4649,81 +4134,40 @@ const deserializeAws_json1_1CreateDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDevEndpointCommand = async ( @@ -4751,89 +4195,43 @@ const deserializeAws_json1_1CreateDevEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.glue#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.glue#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateJobCommand = async ( @@ -4861,81 +4259,40 @@ const deserializeAws_json1_1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.glue#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMLTransformCommand = async ( @@ -4963,81 +4320,40 @@ const deserializeAws_json1_1CreateMLTransformCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.glue#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePartitionCommand = async ( @@ -5065,81 +4381,40 @@ const deserializeAws_json1_1CreatePartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePartitionIndexCommand = async ( @@ -5167,81 +4442,40 @@ const deserializeAws_json1_1CreatePartitionIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRegistryCommand = async ( @@ -5269,73 +4503,37 @@ const deserializeAws_json1_1CreateRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSchemaCommand = async ( @@ -5363,81 +4561,40 @@ const deserializeAws_json1_1CreateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateScriptCommand = async ( @@ -5465,49 +4622,28 @@ const deserializeAws_json1_1CreateScriptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSecurityConfigurationCommand = async ( @@ -5535,65 +4671,34 @@ const deserializeAws_json1_1CreateSecurityConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTableCommand = async ( @@ -5621,97 +4726,46 @@ const deserializeAws_json1_1CreateTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.glue#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTriggerCommand = async ( @@ -5739,89 +4793,43 @@ const deserializeAws_json1_1CreateTriggerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.glue#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserDefinedFunctionCommand = async ( @@ -5849,81 +4857,40 @@ const deserializeAws_json1_1CreateUserDefinedFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkflowCommand = async ( @@ -5951,73 +4918,37 @@ const deserializeAws_json1_1CreateWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBlueprintCommand = async ( @@ -6045,49 +4976,28 @@ const deserializeAws_json1_1DeleteBlueprintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteClassifierCommand = async ( @@ -6115,41 +5025,25 @@ const deserializeAws_json1_1DeleteClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteColumnStatisticsForPartitionCommand = async ( @@ -6177,65 +5071,34 @@ const deserializeAws_json1_1DeleteColumnStatisticsForPartitionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteColumnStatisticsForTableCommand = async ( @@ -6263,65 +5126,34 @@ const deserializeAws_json1_1DeleteColumnStatisticsForTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectionCommand = async ( @@ -6349,41 +5181,25 @@ const deserializeAws_json1_1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCrawlerCommand = async ( @@ -6411,57 +5227,31 @@ const deserializeAws_json1_1DeleteCrawlerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CrawlerRunningException": case "com.amazonaws.glue#CrawlerRunningException": - response = { - ...(await deserializeAws_json1_1CrawlerRunningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CrawlerRunningExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "SchedulerTransitioningException": case "com.amazonaws.glue#SchedulerTransitioningException": - response = { - ...(await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatabaseCommand = async ( @@ -6489,65 +5279,34 @@ const deserializeAws_json1_1DeleteDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDevEndpointCommand = async ( @@ -6575,57 +5334,31 @@ const deserializeAws_json1_1DeleteDevEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteJobCommand = async ( @@ -6653,49 +5386,28 @@ const deserializeAws_json1_1DeleteJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMLTransformCommand = async ( @@ -6723,57 +5435,31 @@ const deserializeAws_json1_1DeleteMLTransformCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePartitionCommand = async ( @@ -6801,57 +5487,31 @@ const deserializeAws_json1_1DeletePartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePartitionIndexCommand = async ( @@ -6879,73 +5539,37 @@ const deserializeAws_json1_1DeletePartitionIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.glue#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegistryCommand = async ( @@ -6973,57 +5597,31 @@ const deserializeAws_json1_1DeleteRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourcePolicyCommand = async ( @@ -7051,65 +5649,34 @@ const deserializeAws_json1_1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConditionCheckFailureException": case "com.amazonaws.glue#ConditionCheckFailureException": - response = { - ...(await deserializeAws_json1_1ConditionCheckFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConditionCheckFailureExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSchemaCommand = async ( @@ -7137,57 +5704,31 @@ const deserializeAws_json1_1DeleteSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSchemaVersionsCommand = async ( @@ -7215,57 +5756,31 @@ const deserializeAws_json1_1DeleteSchemaVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSecurityConfigurationCommand = async ( @@ -7293,57 +5808,31 @@ const deserializeAws_json1_1DeleteSecurityConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTableCommand = async ( @@ -7371,73 +5860,37 @@ const deserializeAws_json1_1DeleteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.glue#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTableVersionCommand = async ( @@ -7465,57 +5918,31 @@ const deserializeAws_json1_1DeleteTableVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTriggerCommand = async ( @@ -7543,57 +5970,31 @@ const deserializeAws_json1_1DeleteTriggerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserDefinedFunctionCommand = async ( @@ -7621,57 +6022,31 @@ const deserializeAws_json1_1DeleteUserDefinedFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkflowCommand = async ( @@ -7699,57 +6074,31 @@ const deserializeAws_json1_1DeleteWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBlueprintCommand = async ( @@ -7777,57 +6126,31 @@ const deserializeAws_json1_1GetBlueprintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBlueprintRunCommand = async ( @@ -7855,49 +6178,28 @@ const deserializeAws_json1_1GetBlueprintRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBlueprintRunsCommand = async ( @@ -7925,57 +6227,31 @@ const deserializeAws_json1_1GetBlueprintRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCatalogImportStatusCommand = async ( @@ -8003,41 +6279,25 @@ const deserializeAws_json1_1GetCatalogImportStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetClassifierCommand = async ( @@ -8065,41 +6325,25 @@ const deserializeAws_json1_1GetClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetClassifiersCommand = async ( @@ -8127,33 +6371,22 @@ const deserializeAws_json1_1GetClassifiersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetColumnStatisticsForPartitionCommand = async ( @@ -8181,65 +6414,34 @@ const deserializeAws_json1_1GetColumnStatisticsForPartitionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetColumnStatisticsForTableCommand = async ( @@ -8267,65 +6469,34 @@ const deserializeAws_json1_1GetColumnStatisticsForTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConnectionCommand = async ( @@ -8353,57 +6524,31 @@ const deserializeAws_json1_1GetConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConnectionsCommand = async ( @@ -8431,57 +6576,31 @@ const deserializeAws_json1_1GetConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCrawlerCommand = async ( @@ -8509,41 +6628,25 @@ const deserializeAws_json1_1GetCrawlerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCrawlerMetricsCommand = async ( @@ -8571,33 +6674,22 @@ const deserializeAws_json1_1GetCrawlerMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCrawlersCommand = async ( @@ -8625,33 +6717,22 @@ const deserializeAws_json1_1GetCrawlersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDatabaseCommand = async ( @@ -8679,65 +6760,34 @@ const deserializeAws_json1_1GetDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDatabasesCommand = async ( @@ -8765,57 +6815,31 @@ const deserializeAws_json1_1GetDatabasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDataCatalogEncryptionSettingsCommand = async ( @@ -8843,49 +6867,28 @@ const deserializeAws_json1_1GetDataCatalogEncryptionSettingsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDataflowGraphCommand = async ( @@ -8913,49 +6916,28 @@ const deserializeAws_json1_1GetDataflowGraphCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDevEndpointCommand = async ( @@ -8983,57 +6965,31 @@ const deserializeAws_json1_1GetDevEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDevEndpointsCommand = async ( @@ -9061,57 +7017,31 @@ const deserializeAws_json1_1GetDevEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobCommand = async ( @@ -9139,57 +7069,31 @@ const deserializeAws_json1_1GetJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobBookmarkCommand = async ( @@ -9217,65 +7121,34 @@ const deserializeAws_json1_1GetJobBookmarkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.glue#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobRunCommand = async ( @@ -9303,57 +7176,31 @@ const deserializeAws_json1_1GetJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobRunsCommand = async ( @@ -9381,57 +7228,31 @@ const deserializeAws_json1_1GetJobRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobsCommand = async ( @@ -9459,57 +7280,31 @@ const deserializeAws_json1_1GetJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMappingCommand = async ( @@ -9537,57 +7332,31 @@ const deserializeAws_json1_1GetMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMLTaskRunCommand = async ( @@ -9615,57 +7384,31 @@ const deserializeAws_json1_1GetMLTaskRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMLTaskRunsCommand = async ( @@ -9693,57 +7436,31 @@ const deserializeAws_json1_1GetMLTaskRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMLTransformCommand = async ( @@ -9771,57 +7488,31 @@ const deserializeAws_json1_1GetMLTransformCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMLTransformsCommand = async ( @@ -9849,57 +7540,31 @@ const deserializeAws_json1_1GetMLTransformsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPartitionCommand = async ( @@ -9927,65 +7592,34 @@ const deserializeAws_json1_1GetPartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPartitionIndexesCommand = async ( @@ -10013,65 +7647,34 @@ const deserializeAws_json1_1GetPartitionIndexesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.glue#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPartitionsCommand = async ( @@ -10099,81 +7702,40 @@ const deserializeAws_json1_1GetPartitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.glue#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.glue#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPlanCommand = async ( @@ -10201,49 +7763,28 @@ const deserializeAws_json1_1GetPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegistryCommand = async ( @@ -10271,57 +7812,31 @@ const deserializeAws_json1_1GetRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourcePoliciesCommand = async ( @@ -10349,57 +7864,31 @@ const deserializeAws_json1_1GetResourcePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourcePolicyCommand = async ( @@ -10427,57 +7916,31 @@ const deserializeAws_json1_1GetResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSchemaCommand = async ( @@ -10505,57 +7968,31 @@ const deserializeAws_json1_1GetSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSchemaByDefinitionCommand = async ( @@ -10583,57 +8020,31 @@ const deserializeAws_json1_1GetSchemaByDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSchemaVersionCommand = async ( @@ -10661,57 +8072,31 @@ const deserializeAws_json1_1GetSchemaVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSchemaVersionsDiffCommand = async ( @@ -10739,57 +8124,31 @@ const deserializeAws_json1_1GetSchemaVersionsDiffCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSecurityConfigurationCommand = async ( @@ -10817,57 +8176,31 @@ const deserializeAws_json1_1GetSecurityConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSecurityConfigurationsCommand = async ( @@ -10895,57 +8228,31 @@ const deserializeAws_json1_1GetSecurityConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTableCommand = async ( @@ -10973,73 +8280,37 @@ const deserializeAws_json1_1GetTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.glue#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTablesCommand = async ( @@ -11067,65 +8338,34 @@ const deserializeAws_json1_1GetTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTableVersionCommand = async ( @@ -11153,65 +8393,34 @@ const deserializeAws_json1_1GetTableVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTableVersionsCommand = async ( @@ -11239,65 +8448,34 @@ const deserializeAws_json1_1GetTableVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTagsCommand = async ( @@ -11325,57 +8503,31 @@ const deserializeAws_json1_1GetTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTriggerCommand = async ( @@ -11403,57 +8555,31 @@ const deserializeAws_json1_1GetTriggerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTriggersCommand = async ( @@ -11481,57 +8607,31 @@ const deserializeAws_json1_1GetTriggersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUnfilteredPartitionMetadataCommand = async ( @@ -11559,73 +8659,37 @@ const deserializeAws_json1_1GetUnfilteredPartitionMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "PermissionTypeMismatchException": case "com.amazonaws.glue#PermissionTypeMismatchException": - response = { - ...(await deserializeAws_json1_1PermissionTypeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PermissionTypeMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUnfilteredPartitionsMetadataCommand = async ( @@ -11653,73 +8717,37 @@ const deserializeAws_json1_1GetUnfilteredPartitionsMetadataCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "PermissionTypeMismatchException": case "com.amazonaws.glue#PermissionTypeMismatchException": - response = { - ...(await deserializeAws_json1_1PermissionTypeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PermissionTypeMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUnfilteredTableMetadataCommand = async ( @@ -11747,73 +8775,37 @@ const deserializeAws_json1_1GetUnfilteredTableMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "PermissionTypeMismatchException": case "com.amazonaws.glue#PermissionTypeMismatchException": - response = { - ...(await deserializeAws_json1_1PermissionTypeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PermissionTypeMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUserDefinedFunctionCommand = async ( @@ -11841,65 +8833,34 @@ const deserializeAws_json1_1GetUserDefinedFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUserDefinedFunctionsCommand = async ( @@ -11927,65 +8888,34 @@ const deserializeAws_json1_1GetUserDefinedFunctionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWorkflowCommand = async ( @@ -12013,57 +8943,31 @@ const deserializeAws_json1_1GetWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWorkflowRunCommand = async ( @@ -12091,57 +8995,31 @@ const deserializeAws_json1_1GetWorkflowRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWorkflowRunPropertiesCommand = async ( @@ -12169,57 +9047,31 @@ const deserializeAws_json1_1GetWorkflowRunPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWorkflowRunsCommand = async ( @@ -12247,57 +9099,31 @@ const deserializeAws_json1_1GetWorkflowRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportCatalogToGlueCommand = async ( @@ -12325,41 +9151,25 @@ const deserializeAws_json1_1ImportCatalogToGlueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBlueprintsCommand = async ( @@ -12387,49 +9197,28 @@ const deserializeAws_json1_1ListBlueprintsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCrawlersCommand = async ( @@ -12457,33 +9246,22 @@ const deserializeAws_json1_1ListCrawlersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDevEndpointsCommand = async ( @@ -12511,57 +9289,31 @@ const deserializeAws_json1_1ListDevEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListJobsCommand = async ( @@ -12589,57 +9341,31 @@ const deserializeAws_json1_1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMLTransformsCommand = async ( @@ -12667,57 +9393,31 @@ const deserializeAws_json1_1ListMLTransformsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRegistriesCommand = async ( @@ -12745,49 +9445,28 @@ const deserializeAws_json1_1ListRegistriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSchemasCommand = async ( @@ -12815,57 +9494,31 @@ const deserializeAws_json1_1ListSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSchemaVersionsCommand = async ( @@ -12893,57 +9546,31 @@ const deserializeAws_json1_1ListSchemaVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTriggersCommand = async ( @@ -12971,57 +9598,31 @@ const deserializeAws_json1_1ListTriggersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkflowsCommand = async ( @@ -13049,49 +9650,28 @@ const deserializeAws_json1_1ListWorkflowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutDataCatalogEncryptionSettingsCommand = async ( @@ -13119,49 +9699,28 @@ const deserializeAws_json1_1PutDataCatalogEncryptionSettingsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourcePolicyCommand = async ( @@ -13189,65 +9748,34 @@ const deserializeAws_json1_1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConditionCheckFailureException": case "com.amazonaws.glue#ConditionCheckFailureException": - response = { - ...(await deserializeAws_json1_1ConditionCheckFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConditionCheckFailureExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutSchemaVersionMetadataCommand = async ( @@ -13275,65 +9803,34 @@ const deserializeAws_json1_1PutSchemaVersionMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutWorkflowRunPropertiesCommand = async ( @@ -13361,81 +9858,40 @@ const deserializeAws_json1_1PutWorkflowRunPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.glue#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1QuerySchemaVersionMetadataCommand = async ( @@ -13463,49 +9919,28 @@ const deserializeAws_json1_1QuerySchemaVersionMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterSchemaVersionCommand = async ( @@ -13533,73 +9968,37 @@ const deserializeAws_json1_1RegisterSchemaVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveSchemaVersionMetadataCommand = async ( @@ -13627,49 +10026,28 @@ const deserializeAws_json1_1RemoveSchemaVersionMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetJobBookmarkCommand = async ( @@ -13697,57 +10075,31 @@ const deserializeAws_json1_1ResetJobBookmarkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResumeWorkflowRunCommand = async ( @@ -13775,73 +10127,37 @@ const deserializeAws_json1_1ResumeWorkflowRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentRunsExceededException": case "com.amazonaws.glue#ConcurrentRunsExceededException": - response = { - ...(await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "IllegalWorkflowStateException": case "com.amazonaws.glue#IllegalWorkflowStateException": - response = { - ...(await deserializeAws_json1_1IllegalWorkflowStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalWorkflowStateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchTablesCommand = async ( @@ -13869,49 +10185,28 @@ const deserializeAws_json1_1SearchTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartBlueprintRunCommand = async ( @@ -13939,73 +10234,37 @@ const deserializeAws_json1_1StartBlueprintRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "IllegalBlueprintStateException": case "com.amazonaws.glue#IllegalBlueprintStateException": - response = { - ...(await deserializeAws_json1_1IllegalBlueprintStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalBlueprintStateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartCrawlerCommand = async ( @@ -14033,49 +10292,28 @@ const deserializeAws_json1_1StartCrawlerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CrawlerRunningException": case "com.amazonaws.glue#CrawlerRunningException": - response = { - ...(await deserializeAws_json1_1CrawlerRunningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CrawlerRunningExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartCrawlerScheduleCommand = async ( @@ -14103,65 +10341,34 @@ const deserializeAws_json1_1StartCrawlerScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "NoScheduleException": case "com.amazonaws.glue#NoScheduleException": - response = { - ...(await deserializeAws_json1_1NoScheduleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoScheduleExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "SchedulerRunningException": case "com.amazonaws.glue#SchedulerRunningException": - response = { - ...(await deserializeAws_json1_1SchedulerRunningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SchedulerRunningExceptionResponse(parsedOutput, context); case "SchedulerTransitioningException": case "com.amazonaws.glue#SchedulerTransitioningException": - response = { - ...(await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartExportLabelsTaskRunCommand = async ( @@ -14189,57 +10396,31 @@ const deserializeAws_json1_1StartExportLabelsTaskRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartImportLabelsTaskRunCommand = async ( @@ -14267,65 +10448,34 @@ const deserializeAws_json1_1StartImportLabelsTaskRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartJobRunCommand = async ( @@ -14353,73 +10503,37 @@ const deserializeAws_json1_1StartJobRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentRunsExceededException": case "com.amazonaws.glue#ConcurrentRunsExceededException": - response = { - ...(await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMLEvaluationTaskRunCommand = async ( @@ -14447,73 +10561,37 @@ const deserializeAws_json1_1StartMLEvaluationTaskRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentRunsExceededException": case "com.amazonaws.glue#ConcurrentRunsExceededException": - response = { - ...(await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "MLTransformNotReadyException": case "com.amazonaws.glue#MLTransformNotReadyException": - response = { - ...(await deserializeAws_json1_1MLTransformNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MLTransformNotReadyExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMLLabelingSetGenerationTaskRunCommand = async ( @@ -14541,65 +10619,34 @@ const deserializeAws_json1_1StartMLLabelingSetGenerationTaskRunCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentRunsExceededException": case "com.amazonaws.glue#ConcurrentRunsExceededException": - response = { - ...(await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTriggerCommand = async ( @@ -14627,73 +10674,37 @@ const deserializeAws_json1_1StartTriggerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentRunsExceededException": case "com.amazonaws.glue#ConcurrentRunsExceededException": - response = { - ...(await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartWorkflowRunCommand = async ( @@ -14721,73 +10732,37 @@ const deserializeAws_json1_1StartWorkflowRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentRunsExceededException": case "com.amazonaws.glue#ConcurrentRunsExceededException": - response = { - ...(await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopCrawlerCommand = async ( @@ -14815,57 +10790,31 @@ const deserializeAws_json1_1StopCrawlerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CrawlerNotRunningException": case "com.amazonaws.glue#CrawlerNotRunningException": - response = { - ...(await deserializeAws_json1_1CrawlerNotRunningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CrawlerNotRunningExceptionResponse(parsedOutput, context); case "CrawlerStoppingException": case "com.amazonaws.glue#CrawlerStoppingException": - response = { - ...(await deserializeAws_json1_1CrawlerStoppingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CrawlerStoppingExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopCrawlerScheduleCommand = async ( @@ -14893,57 +10842,31 @@ const deserializeAws_json1_1StopCrawlerScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "SchedulerNotRunningException": case "com.amazonaws.glue#SchedulerNotRunningException": - response = { - ...(await deserializeAws_json1_1SchedulerNotRunningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SchedulerNotRunningExceptionResponse(parsedOutput, context); case "SchedulerTransitioningException": case "com.amazonaws.glue#SchedulerTransitioningException": - response = { - ...(await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTriggerCommand = async ( @@ -14971,65 +10894,34 @@ const deserializeAws_json1_1StopTriggerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopWorkflowRunCommand = async ( @@ -15057,65 +10949,34 @@ const deserializeAws_json1_1StopWorkflowRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "IllegalWorkflowStateException": case "com.amazonaws.glue#IllegalWorkflowStateException": - response = { - ...(await deserializeAws_json1_1IllegalWorkflowStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalWorkflowStateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -15143,57 +11004,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -15221,57 +11056,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBlueprintCommand = async ( @@ -15299,73 +11108,37 @@ const deserializeAws_json1_1UpdateBlueprintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "IllegalBlueprintStateException": case "com.amazonaws.glue#IllegalBlueprintStateException": - response = { - ...(await deserializeAws_json1_1IllegalBlueprintStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalBlueprintStateExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateClassifierCommand = async ( @@ -15393,57 +11166,31 @@ const deserializeAws_json1_1UpdateClassifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.glue#VersionMismatchException": - response = { - ...(await deserializeAws_json1_1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateColumnStatisticsForPartitionCommand = async ( @@ -15471,65 +11218,34 @@ const deserializeAws_json1_1UpdateColumnStatisticsForPartitionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateColumnStatisticsForTableCommand = async ( @@ -15557,65 +11273,34 @@ const deserializeAws_json1_1UpdateColumnStatisticsForTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConnectionCommand = async ( @@ -15643,57 +11328,31 @@ const deserializeAws_json1_1UpdateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCrawlerCommand = async ( @@ -15721,65 +11380,34 @@ const deserializeAws_json1_1UpdateCrawlerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CrawlerRunningException": case "com.amazonaws.glue#CrawlerRunningException": - response = { - ...(await deserializeAws_json1_1CrawlerRunningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CrawlerRunningExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.glue#VersionMismatchException": - response = { - ...(await deserializeAws_json1_1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCrawlerScheduleCommand = async ( @@ -15807,65 +11435,34 @@ const deserializeAws_json1_1UpdateCrawlerScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "SchedulerTransitioningException": case "com.amazonaws.glue#SchedulerTransitioningException": - response = { - ...(await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SchedulerTransitioningExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.glue#VersionMismatchException": - response = { - ...(await deserializeAws_json1_1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDatabaseCommand = async ( @@ -15893,73 +11490,37 @@ const deserializeAws_json1_1UpdateDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDevEndpointCommand = async ( @@ -15987,65 +11548,34 @@ const deserializeAws_json1_1UpdateDevEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.glue#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateJobCommand = async ( @@ -16073,65 +11603,34 @@ const deserializeAws_json1_1UpdateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMLTransformCommand = async ( @@ -16159,65 +11658,34 @@ const deserializeAws_json1_1UpdateMLTransformCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePartitionCommand = async ( @@ -16245,65 +11713,34 @@ const deserializeAws_json1_1UpdatePartitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRegistryCommand = async ( @@ -16331,65 +11768,34 @@ const deserializeAws_json1_1UpdateRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSchemaCommand = async ( @@ -16417,65 +11823,34 @@ const deserializeAws_json1_1UpdateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.glue#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTableCommand = async ( @@ -16503,89 +11878,43 @@ const deserializeAws_json1_1UpdateTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.glue#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.glue#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTriggerCommand = async ( @@ -16613,65 +11942,34 @@ const deserializeAws_json1_1UpdateTriggerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserDefinedFunctionCommand = async ( @@ -16699,65 +11997,34 @@ const deserializeAws_json1_1UpdateUserDefinedFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.glue#GlueEncryptionException": - response = { - ...(await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWorkflowCommand = async ( @@ -16785,65 +12052,34 @@ const deserializeAws_json1_1UpdateWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.glue#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.glue#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.glue#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.glue#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.glue#OperationTimeoutException": - response = { - ...(await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -16852,13 +12088,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( @@ -16867,13 +12101,11 @@ const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AlreadyExistsException(body, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -16882,13 +12114,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse = async ( @@ -16897,13 +12127,11 @@ const deserializeAws_json1_1ConcurrentRunsExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentRunsExceededException(body, context); - const contents: ConcurrentRunsExceededException = { - name: "ConcurrentRunsExceededException", - $fault: "client", + const exception = new ConcurrentRunsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConditionCheckFailureExceptionResponse = async ( @@ -16912,13 +12140,11 @@ const deserializeAws_json1_1ConditionCheckFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConditionCheckFailureException(body, context); - const contents: ConditionCheckFailureException = { - name: "ConditionCheckFailureException", - $fault: "client", + const exception = new ConditionCheckFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -16927,13 +12153,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CrawlerNotRunningExceptionResponse = async ( @@ -16942,13 +12166,11 @@ const deserializeAws_json1_1CrawlerNotRunningExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CrawlerNotRunningException(body, context); - const contents: CrawlerNotRunningException = { - name: "CrawlerNotRunningException", - $fault: "client", + const exception = new CrawlerNotRunningException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CrawlerRunningExceptionResponse = async ( @@ -16957,13 +12179,11 @@ const deserializeAws_json1_1CrawlerRunningExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CrawlerRunningException(body, context); - const contents: CrawlerRunningException = { - name: "CrawlerRunningException", - $fault: "client", + const exception = new CrawlerRunningException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CrawlerStoppingExceptionResponse = async ( @@ -16972,13 +12192,11 @@ const deserializeAws_json1_1CrawlerStoppingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CrawlerStoppingException(body, context); - const contents: CrawlerStoppingException = { - name: "CrawlerStoppingException", - $fault: "client", + const exception = new CrawlerStoppingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntityNotFoundExceptionResponse = async ( @@ -16987,13 +12205,11 @@ const deserializeAws_json1_1EntityNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntityNotFoundException(body, context); - const contents: EntityNotFoundException = { - name: "EntityNotFoundException", - $fault: "client", + const exception = new EntityNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1GlueEncryptionExceptionResponse = async ( @@ -17002,13 +12218,11 @@ const deserializeAws_json1_1GlueEncryptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1GlueEncryptionException(body, context); - const contents: GlueEncryptionException = { - name: "GlueEncryptionException", - $fault: "client", + const exception = new GlueEncryptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ( @@ -17017,13 +12231,11 @@ const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotentParameterMismatchException(body, context); - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", + const exception = new IdempotentParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IllegalBlueprintStateExceptionResponse = async ( @@ -17032,13 +12244,11 @@ const deserializeAws_json1_1IllegalBlueprintStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IllegalBlueprintStateException(body, context); - const contents: IllegalBlueprintStateException = { - name: "IllegalBlueprintStateException", - $fault: "client", + const exception = new IllegalBlueprintStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IllegalWorkflowStateExceptionResponse = async ( @@ -17047,13 +12257,11 @@ const deserializeAws_json1_1IllegalWorkflowStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IllegalWorkflowStateException(body, context); - const contents: IllegalWorkflowStateException = { - name: "IllegalWorkflowStateException", - $fault: "client", + const exception = new IllegalWorkflowStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceExceptionResponse = async ( @@ -17062,13 +12270,11 @@ const deserializeAws_json1_1InternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceException(body, context); - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", + const exception = new InternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -17077,13 +12283,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -17092,13 +12296,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MLTransformNotReadyExceptionResponse = async ( @@ -17107,13 +12309,11 @@ const deserializeAws_json1_1MLTransformNotReadyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MLTransformNotReadyException(body, context); - const contents: MLTransformNotReadyException = { - name: "MLTransformNotReadyException", - $fault: "client", + const exception = new MLTransformNotReadyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoScheduleExceptionResponse = async ( @@ -17122,13 +12322,11 @@ const deserializeAws_json1_1NoScheduleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoScheduleException(body, context); - const contents: NoScheduleException = { - name: "NoScheduleException", - $fault: "client", + const exception = new NoScheduleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationTimeoutExceptionResponse = async ( @@ -17137,13 +12335,11 @@ const deserializeAws_json1_1OperationTimeoutExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationTimeoutException(body, context); - const contents: OperationTimeoutException = { - name: "OperationTimeoutException", - $fault: "client", + const exception = new OperationTimeoutException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PermissionTypeMismatchExceptionResponse = async ( @@ -17152,13 +12348,11 @@ const deserializeAws_json1_1PermissionTypeMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PermissionTypeMismatchException(body, context); - const contents: PermissionTypeMismatchException = { - name: "PermissionTypeMismatchException", - $fault: "client", + const exception = new PermissionTypeMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotReadyExceptionResponse = async ( @@ -17167,13 +12361,11 @@ const deserializeAws_json1_1ResourceNotReadyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotReadyException(body, context); - const contents: ResourceNotReadyException = { - name: "ResourceNotReadyException", - $fault: "client", + const exception = new ResourceNotReadyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse = async ( @@ -17182,13 +12374,11 @@ const deserializeAws_json1_1ResourceNumberLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNumberLimitExceededException(body, context); - const contents: ResourceNumberLimitExceededException = { - name: "ResourceNumberLimitExceededException", - $fault: "client", + const exception = new ResourceNumberLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SchedulerNotRunningExceptionResponse = async ( @@ -17197,13 +12387,11 @@ const deserializeAws_json1_1SchedulerNotRunningExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SchedulerNotRunningException(body, context); - const contents: SchedulerNotRunningException = { - name: "SchedulerNotRunningException", - $fault: "client", + const exception = new SchedulerNotRunningException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SchedulerRunningExceptionResponse = async ( @@ -17212,13 +12400,11 @@ const deserializeAws_json1_1SchedulerRunningExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SchedulerRunningException(body, context); - const contents: SchedulerRunningException = { - name: "SchedulerRunningException", - $fault: "client", + const exception = new SchedulerRunningException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SchedulerTransitioningExceptionResponse = async ( @@ -17227,13 +12413,11 @@ const deserializeAws_json1_1SchedulerTransitioningExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SchedulerTransitioningException(body, context); - const contents: SchedulerTransitioningException = { - name: "SchedulerTransitioningException", - $fault: "client", + const exception = new SchedulerTransitioningException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -17242,13 +12426,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1VersionMismatchExceptionResponse = async ( @@ -17257,13 +12439,11 @@ const deserializeAws_json1_1VersionMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1VersionMismatchException(body, context); - const contents: VersionMismatchException = { - name: "VersionMismatchException", - $fault: "client", + const exception = new VersionMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1Action = (input: Action, context: __SerdeContext): any => { diff --git a/clients/client-grafana/src/index.ts b/clients/client-grafana/src/index.ts index 580fed5b702c3..257bae7bd2f33 100644 --- a/clients/client-grafana/src/index.ts +++ b/clients/client-grafana/src/index.ts @@ -3,3 +3,4 @@ export * from "./GrafanaClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GrafanaServiceException } from "./models/GrafanaServiceException"; diff --git a/clients/client-grafana/src/models/GrafanaServiceException.ts b/clients/client-grafana/src/models/GrafanaServiceException.ts new file mode 100644 index 0000000000000..765c04bc500af --- /dev/null +++ b/clients/client-grafana/src/models/GrafanaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Grafana service. + */ +export class GrafanaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GrafanaServiceException.prototype); + } +} diff --git a/clients/client-grafana/src/models/models_0.ts b/clients/client-grafana/src/models/models_0.ts index 84dee22c00e16..fef71a04758ad 100644 --- a/clients/client-grafana/src/models/models_0.ts +++ b/clients/client-grafana/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GrafanaServiceException as __BaseException } from "./GrafanaServiceException"; /** *

You do not have sufficient permissions to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AccountAccessType { @@ -404,32 +416,35 @@ export namespace AssociateLicenseResponse { /** *

Unexpected error while processing the request. Retry the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; /** - *

A description of the error.

+ *

How long to wait before you retry this operation.

*/ - message: string | undefined; + retryAfterSeconds?: number; /** - *

How long to wait before you retry this operation.

+ * @internal */ - retryAfterSeconds?: number; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The request references a resource that does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - /** - *

The value of a parameter in the request caused an error.

- */ - message: string | undefined; - +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that is associated with the error.

*/ @@ -439,20 +454,29 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource that is associated with the error.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

The request was denied because of request throttling. Retry the request.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: {}; - /** - *

A description of the error.

- */ - message: string | undefined; - +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = {}; /** *

The ID of the service that is associated with the error.

*/ @@ -467,6 +491,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The value of a parameter in the request caused an error.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -503,14 +542,9 @@ export enum ValidationExceptionReason { /** *

The value of a parameter in the request caused an error.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - /** - *

A description of the error.

- */ - message: string | undefined; - +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The reason that the operation failed.

*/ @@ -520,6 +554,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

A list of fields that might be associated with the error.

*/ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } export interface DescribeWorkspaceAuthenticationRequest { @@ -767,14 +815,9 @@ export namespace DescribeWorkspaceAuthenticationResponse { /** *

A resource was in an inconsistent state during an update or a deletion.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - /** - *

A description of the error.

- */ - message: string | undefined; - +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that is associated with the error.

*/ @@ -784,6 +827,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource that is associated with the error.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } export interface UpdateWorkspaceAuthenticationRequest { @@ -1246,14 +1303,9 @@ export namespace CreateWorkspaceResponse { /** *

The request would cause a service quota to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - /** - *

A description of the error.

- */ - message: string | undefined; - +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that is associated with the error.

*/ @@ -1273,6 +1325,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The ID of the service quota that was exceeded.

*/ quotaCode: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } export interface DeleteWorkspaceRequest { diff --git a/clients/client-grafana/src/protocols/Aws_restJson1.ts b/clients/client-grafana/src/protocols/Aws_restJson1.ts index 253af50a720dc..b720f95f708fb 100644 --- a/clients/client-grafana/src/protocols/Aws_restJson1.ts +++ b/clients/client-grafana/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -40,6 +39,7 @@ import { UpdateWorkspaceAuthenticationCommandOutput, } from "../commands/UpdateWorkspaceAuthenticationCommand"; import { UpdateWorkspaceCommandInput, UpdateWorkspaceCommandOutput } from "../commands/UpdateWorkspaceCommand"; +import { GrafanaServiceException as __BaseException } from "../models/GrafanaServiceException"; import { AccessDeniedException, AssertionAttributes, @@ -519,65 +519,34 @@ const deserializeAws_restJson1AssociateLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorkspaceCommand = async ( @@ -606,73 +575,37 @@ const deserializeAws_restJson1CreateWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.grafana#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.grafana#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWorkspaceCommand = async ( @@ -701,73 +634,37 @@ const deserializeAws_restJson1DeleteWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.grafana#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorkspaceCommand = async ( @@ -796,65 +693,34 @@ const deserializeAws_restJson1DescribeWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorkspaceAuthenticationCommand = async ( @@ -883,65 +749,34 @@ const deserializeAws_restJson1DescribeWorkspaceAuthenticationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateLicenseCommand = async ( @@ -970,65 +805,34 @@ const deserializeAws_restJson1DisassociateLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPermissionsCommand = async ( @@ -1061,65 +865,34 @@ const deserializeAws_restJson1ListPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorkspacesCommand = async ( @@ -1152,49 +925,28 @@ const deserializeAws_restJson1ListWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePermissionsCommand = async ( @@ -1223,65 +975,34 @@ const deserializeAws_restJson1UpdatePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorkspaceCommand = async ( @@ -1310,73 +1031,37 @@ const deserializeAws_restJson1UpdateWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.grafana#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorkspaceAuthenticationCommand = async ( @@ -1405,104 +1090,60 @@ const deserializeAws_restJson1UpdateWorkspaceAuthenticationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.grafana#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.grafana#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.grafana#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.grafana#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.grafana#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.grafana#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -1513,21 +1154,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -1535,21 +1173,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -1560,23 +1195,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -1593,23 +1223,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -1623,21 +1248,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fieldList !== undefined && data.fieldList !== null) { contents.fieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context); @@ -1648,7 +1270,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AllowedOrganizations = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-greengrass/src/index.ts b/clients/client-greengrass/src/index.ts index e1da932b34d7b..70ec16dbecd0a 100644 --- a/clients/client-greengrass/src/index.ts +++ b/clients/client-greengrass/src/index.ts @@ -2,3 +2,4 @@ export * from "./Greengrass"; export * from "./GreengrassClient"; export * from "./commands"; export * from "./models"; +export { GreengrassServiceException } from "./models/GreengrassServiceException"; diff --git a/clients/client-greengrass/src/models/GreengrassServiceException.ts b/clients/client-greengrass/src/models/GreengrassServiceException.ts new file mode 100644 index 0000000000000..4c4f164c6ed0a --- /dev/null +++ b/clients/client-greengrass/src/models/GreengrassServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Greengrass service. + */ +export class GreengrassServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GreengrassServiceException.prototype); + } +} diff --git a/clients/client-greengrass/src/models/models_0.ts b/clients/client-greengrass/src/models/models_0.ts index 7b8e534d6abd1..bd2aab3e07505 100644 --- a/clients/client-greengrass/src/models/models_0.ts +++ b/clients/client-greengrass/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GreengrassServiceException as __BaseException } from "./GreengrassServiceException"; /** * Information about a Greengrass core's connectivity. @@ -897,9 +900,9 @@ export namespace ErrorDetail { /** * General error information. */ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** * Details about the error. */ @@ -909,14 +912,27 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer * A message containing information about the error. */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.ErrorDetails = opts.ErrorDetails; + this.Message = opts.Message; + } } /** * General error information. */ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** * Details about the error. */ @@ -926,6 +942,19 @@ export interface InternalServerErrorException extends __SmithyException, $Metada * A message containing information about the error. */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.ErrorDetails = opts.ErrorDetails; + this.Message = opts.Message; + } } export interface AssociateServiceRoleToAccountRequest { diff --git a/clients/client-greengrass/src/protocols/Aws_restJson1.ts b/clients/client-greengrass/src/protocols/Aws_restJson1.ts index 079ade3ff241a..47a4a6c1933a9 100644 --- a/clients/client-greengrass/src/protocols/Aws_restJson1.ts +++ b/clients/client-greengrass/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -335,6 +334,7 @@ import { UpdateThingRuntimeConfigurationCommandInput, UpdateThingRuntimeConfigurationCommandOutput, } from "../commands/UpdateThingRuntimeConfigurationCommand"; +import { GreengrassServiceException as __BaseException } from "../models/GreengrassServiceException"; import { BadRequestException, BulkDeployment, @@ -3445,41 +3445,25 @@ const deserializeAws_restJson1AssociateRoleToGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateServiceRoleToAccountCommand = async ( @@ -3508,41 +3492,25 @@ const deserializeAws_restJson1AssociateServiceRoleToAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConnectorDefinitionCommand = async ( @@ -3595,33 +3563,22 @@ const deserializeAws_restJson1CreateConnectorDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConnectorDefinitionVersionCommand = async ( @@ -3662,33 +3619,22 @@ const deserializeAws_restJson1CreateConnectorDefinitionVersionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCoreDefinitionCommand = async ( @@ -3741,33 +3687,22 @@ const deserializeAws_restJson1CreateCoreDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCoreDefinitionVersionCommand = async ( @@ -3808,33 +3743,22 @@ const deserializeAws_restJson1CreateCoreDefinitionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentCommand = async ( @@ -3867,33 +3791,22 @@ const deserializeAws_restJson1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeviceDefinitionCommand = async ( @@ -3946,33 +3859,22 @@ const deserializeAws_restJson1CreateDeviceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeviceDefinitionVersionCommand = async ( @@ -4013,33 +3915,22 @@ const deserializeAws_restJson1CreateDeviceDefinitionVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFunctionDefinitionCommand = async ( @@ -4092,33 +3983,22 @@ const deserializeAws_restJson1CreateFunctionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFunctionDefinitionVersionCommand = async ( @@ -4159,33 +4039,22 @@ const deserializeAws_restJson1CreateFunctionDefinitionVersionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGroupCommand = async ( @@ -4238,33 +4107,22 @@ const deserializeAws_restJson1CreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGroupCertificateAuthorityCommand = async ( @@ -4293,41 +4151,25 @@ const deserializeAws_restJson1CreateGroupCertificateAuthorityCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGroupVersionCommand = async ( @@ -4368,33 +4210,22 @@ const deserializeAws_restJson1CreateGroupVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLoggerDefinitionCommand = async ( @@ -4447,33 +4278,22 @@ const deserializeAws_restJson1CreateLoggerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLoggerDefinitionVersionCommand = async ( @@ -4514,33 +4334,22 @@ const deserializeAws_restJson1CreateLoggerDefinitionVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourceDefinitionCommand = async ( @@ -4593,33 +4402,22 @@ const deserializeAws_restJson1CreateResourceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourceDefinitionVersionCommand = async ( @@ -4660,33 +4458,22 @@ const deserializeAws_restJson1CreateResourceDefinitionVersionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSoftwareUpdateJobCommand = async ( @@ -4723,41 +4510,25 @@ const deserializeAws_restJson1CreateSoftwareUpdateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSubscriptionDefinitionCommand = async ( @@ -4810,33 +4581,22 @@ const deserializeAws_restJson1CreateSubscriptionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSubscriptionDefinitionVersionCommand = async ( @@ -4877,33 +4637,22 @@ const deserializeAws_restJson1CreateSubscriptionDefinitionVersionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConnectorDefinitionCommand = async ( @@ -4928,33 +4677,22 @@ const deserializeAws_restJson1DeleteConnectorDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCoreDefinitionCommand = async ( @@ -4979,33 +4717,22 @@ const deserializeAws_restJson1DeleteCoreDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeviceDefinitionCommand = async ( @@ -5030,33 +4757,22 @@ const deserializeAws_restJson1DeleteDeviceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFunctionDefinitionCommand = async ( @@ -5081,33 +4797,22 @@ const deserializeAws_restJson1DeleteFunctionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGroupCommand = async ( @@ -5132,33 +4837,22 @@ const deserializeAws_restJson1DeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLoggerDefinitionCommand = async ( @@ -5183,33 +4877,22 @@ const deserializeAws_restJson1DeleteLoggerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourceDefinitionCommand = async ( @@ -5234,33 +4917,22 @@ const deserializeAws_restJson1DeleteResourceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSubscriptionDefinitionCommand = async ( @@ -5285,33 +4957,22 @@ const deserializeAws_restJson1DeleteSubscriptionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateRoleFromGroupCommand = async ( @@ -5340,41 +5001,25 @@ const deserializeAws_restJson1DisassociateRoleFromGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateServiceRoleFromAccountCommand = async ( @@ -5403,33 +5048,22 @@ const deserializeAws_restJson1DisassociateServiceRoleFromAccountCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssociatedRoleCommand = async ( @@ -5462,41 +5096,25 @@ const deserializeAws_restJson1GetAssociatedRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBulkDeploymentStatusCommand = async ( @@ -5545,33 +5163,22 @@ const deserializeAws_restJson1GetBulkDeploymentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectivityInfoCommand = async ( @@ -5604,41 +5211,25 @@ const deserializeAws_restJson1GetConnectivityInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectorDefinitionCommand = async ( @@ -5695,33 +5286,22 @@ const deserializeAws_restJson1GetConnectorDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectorDefinitionVersionCommand = async ( @@ -5770,33 +5350,22 @@ const deserializeAws_restJson1GetConnectorDefinitionVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCoreDefinitionCommand = async ( @@ -5853,33 +5422,22 @@ const deserializeAws_restJson1GetCoreDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCoreDefinitionVersionCommand = async ( @@ -5928,33 +5486,22 @@ const deserializeAws_restJson1GetCoreDefinitionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentStatusCommand = async ( @@ -5999,33 +5546,22 @@ const deserializeAws_restJson1GetDeploymentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeviceDefinitionCommand = async ( @@ -6082,33 +5618,22 @@ const deserializeAws_restJson1GetDeviceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeviceDefinitionVersionCommand = async ( @@ -6157,33 +5682,22 @@ const deserializeAws_restJson1GetDeviceDefinitionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionDefinitionCommand = async ( @@ -6240,33 +5754,22 @@ const deserializeAws_restJson1GetFunctionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionDefinitionVersionCommand = async ( @@ -6315,33 +5818,22 @@ const deserializeAws_restJson1GetFunctionDefinitionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupCommand = async ( @@ -6398,33 +5890,22 @@ const deserializeAws_restJson1GetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupCertificateAuthorityCommand = async ( @@ -6461,41 +5942,25 @@ const deserializeAws_restJson1GetGroupCertificateAuthorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupCertificateConfigurationCommand = async ( @@ -6535,41 +6000,25 @@ const deserializeAws_restJson1GetGroupCertificateConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupVersionCommand = async ( @@ -6614,33 +6063,22 @@ const deserializeAws_restJson1GetGroupVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLoggerDefinitionCommand = async ( @@ -6697,33 +6135,22 @@ const deserializeAws_restJson1GetLoggerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLoggerDefinitionVersionCommand = async ( @@ -6768,33 +6195,22 @@ const deserializeAws_restJson1GetLoggerDefinitionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceDefinitionCommand = async ( @@ -6851,33 +6267,22 @@ const deserializeAws_restJson1GetResourceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceDefinitionVersionCommand = async ( @@ -6922,33 +6327,22 @@ const deserializeAws_restJson1GetResourceDefinitionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServiceRoleForAccountCommand = async ( @@ -6981,33 +6375,22 @@ const deserializeAws_restJson1GetServiceRoleForAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSubscriptionDefinitionCommand = async ( @@ -7064,33 +6447,22 @@ const deserializeAws_restJson1GetSubscriptionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSubscriptionDefinitionVersionCommand = async ( @@ -7139,33 +6511,22 @@ const deserializeAws_restJson1GetSubscriptionDefinitionVersionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetThingRuntimeConfigurationCommand = async ( @@ -7194,41 +6555,25 @@ const deserializeAws_restJson1GetThingRuntimeConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBulkDeploymentDetailedReportsCommand = async ( @@ -7261,33 +6606,22 @@ const deserializeAws_restJson1ListBulkDeploymentDetailedReportsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBulkDeploymentsCommand = async ( @@ -7320,33 +6654,22 @@ const deserializeAws_restJson1ListBulkDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConnectorDefinitionsCommand = async ( @@ -7379,25 +6702,19 @@ const deserializeAws_restJson1ListConnectorDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConnectorDefinitionVersionsCommand = async ( @@ -7430,33 +6747,22 @@ const deserializeAws_restJson1ListConnectorDefinitionVersionsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoreDefinitionsCommand = async ( @@ -7489,25 +6795,19 @@ const deserializeAws_restJson1ListCoreDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoreDefinitionVersionsCommand = async ( @@ -7540,33 +6840,22 @@ const deserializeAws_restJson1ListCoreDefinitionVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeploymentsCommand = async ( @@ -7599,33 +6888,22 @@ const deserializeAws_restJson1ListDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeviceDefinitionsCommand = async ( @@ -7658,25 +6936,19 @@ const deserializeAws_restJson1ListDeviceDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeviceDefinitionVersionsCommand = async ( @@ -7709,33 +6981,22 @@ const deserializeAws_restJson1ListDeviceDefinitionVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFunctionDefinitionsCommand = async ( @@ -7768,25 +7029,19 @@ const deserializeAws_restJson1ListFunctionDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFunctionDefinitionVersionsCommand = async ( @@ -7819,33 +7074,22 @@ const deserializeAws_restJson1ListFunctionDefinitionVersionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupCertificateAuthoritiesCommand = async ( @@ -7877,41 +7121,25 @@ const deserializeAws_restJson1ListGroupCertificateAuthoritiesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupsCommand = async ( @@ -7944,25 +7172,19 @@ const deserializeAws_restJson1ListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupVersionsCommand = async ( @@ -7995,33 +7217,22 @@ const deserializeAws_restJson1ListGroupVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLoggerDefinitionsCommand = async ( @@ -8054,25 +7265,19 @@ const deserializeAws_restJson1ListLoggerDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLoggerDefinitionVersionsCommand = async ( @@ -8105,33 +7310,22 @@ const deserializeAws_restJson1ListLoggerDefinitionVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourceDefinitionsCommand = async ( @@ -8164,25 +7358,19 @@ const deserializeAws_restJson1ListResourceDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourceDefinitionVersionsCommand = async ( @@ -8215,33 +7403,22 @@ const deserializeAws_restJson1ListResourceDefinitionVersionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSubscriptionDefinitionsCommand = async ( @@ -8274,25 +7451,19 @@ const deserializeAws_restJson1ListSubscriptionDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSubscriptionDefinitionVersionsCommand = async ( @@ -8325,33 +7496,22 @@ const deserializeAws_restJson1ListSubscriptionDefinitionVersionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -8380,33 +7540,22 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResetDeploymentsCommand = async ( @@ -8439,33 +7588,22 @@ const deserializeAws_restJson1ResetDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartBulkDeploymentCommand = async ( @@ -8498,33 +7636,22 @@ const deserializeAws_restJson1StartBulkDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopBulkDeploymentCommand = async ( @@ -8549,33 +7676,22 @@ const deserializeAws_restJson1StopBulkDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -8600,33 +7716,22 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -8651,33 +7756,22 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectivityInfoCommand = async ( @@ -8710,41 +7804,25 @@ const deserializeAws_restJson1UpdateConnectivityInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectorDefinitionCommand = async ( @@ -8769,33 +7847,22 @@ const deserializeAws_restJson1UpdateConnectorDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCoreDefinitionCommand = async ( @@ -8820,33 +7887,22 @@ const deserializeAws_restJson1UpdateCoreDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeviceDefinitionCommand = async ( @@ -8871,33 +7927,22 @@ const deserializeAws_restJson1UpdateDeviceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFunctionDefinitionCommand = async ( @@ -8922,33 +7967,22 @@ const deserializeAws_restJson1UpdateFunctionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGroupCommand = async ( @@ -8973,33 +8007,22 @@ const deserializeAws_restJson1UpdateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGroupCertificateConfigurationCommand = async ( @@ -9039,41 +8062,25 @@ const deserializeAws_restJson1UpdateGroupCertificateConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLoggerDefinitionCommand = async ( @@ -9098,33 +8105,22 @@ const deserializeAws_restJson1UpdateLoggerDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceDefinitionCommand = async ( @@ -9149,33 +8145,22 @@ const deserializeAws_restJson1UpdateResourceDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSubscriptionDefinitionCommand = async ( @@ -9200,33 +8185,22 @@ const deserializeAws_restJson1UpdateSubscriptionDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThingRuntimeConfigurationCommand = async ( @@ -9251,54 +8225,32 @@ const deserializeAws_restJson1UpdateThingRuntimeConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.greengrass#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.greengrass#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorDetails: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorDetails !== undefined && data.ErrorDetails !== null) { contents.ErrorDetails = deserializeAws_restJson1ErrorDetails(data.ErrorDetails, context); @@ -9306,20 +8258,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - ErrorDetails: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorDetails !== undefined && data.ErrorDetails !== null) { contents.ErrorDetails = deserializeAws_restJson1ErrorDetails(data.ErrorDetails, context); @@ -9327,7 +8277,11 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-greengrassv2/src/index.ts b/clients/client-greengrassv2/src/index.ts index 52005f04db394..621c2828fe9b0 100644 --- a/clients/client-greengrassv2/src/index.ts +++ b/clients/client-greengrassv2/src/index.ts @@ -3,3 +3,4 @@ export * from "./GreengrassV2Client"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GreengrassV2ServiceException } from "./models/GreengrassV2ServiceException"; diff --git a/clients/client-greengrassv2/src/models/GreengrassV2ServiceException.ts b/clients/client-greengrassv2/src/models/GreengrassV2ServiceException.ts new file mode 100644 index 0000000000000..315e5dc72a521 --- /dev/null +++ b/clients/client-greengrassv2/src/models/GreengrassV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from GreengrassV2 service. + */ +export class GreengrassV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GreengrassV2ServiceException.prototype); + } +} diff --git a/clients/client-greengrassv2/src/models/models_0.ts b/clients/client-greengrassv2/src/models/models_0.ts index 514d52e49202e..412af133e01c6 100644 --- a/clients/client-greengrassv2/src/models/models_0.ts +++ b/clients/client-greengrassv2/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GreengrassV2ServiceException as __BaseException } from "./GreengrassV2ServiceException"; /** *

You don't have permission to perform the action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -122,14 +135,26 @@ export namespace AssociateServiceRoleToAccountResponse { /** *

IoT Greengrass can't process your request right now. Try again later.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

The amount of time to wait before you retry the request.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -167,10 +192,9 @@ export enum ValidationExceptionReason { *

The request isn't valid. This can occur if your request contains malformed JSON or * unsupported characters.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The reason for the validation exception.

*/ @@ -180,6 +204,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The list of fields that failed to validate.

*/ fields?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fields = opts.fields; + } } export interface BatchAssociateClientDeviceWithCoreDeviceRequest { @@ -223,10 +261,9 @@ export namespace BatchAssociateClientDeviceWithCoreDeviceResponse { /** *

The requested resource can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that isn't found.

*/ @@ -236,16 +273,29 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource that isn't found.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

Your request exceeded a request rate quota. For example, you might have exceeded the * amount of times that you can retrieve device or deployment status per second.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

The code for the quota in Service Quotas.

*/ @@ -260,6 +310,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The amount of time to wait before you retry the request.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.quotaCode = opts.quotaCode; + this.serviceCode = opts.serviceCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -387,10 +452,9 @@ export namespace CancelDeploymentResponse { *

Your request has conflicting operations. This can occur if you're trying to perform more * than one operation on the same resource at the same time.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that conflicts with the request.

*/ @@ -400,6 +464,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource that conflicts with the request.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } export enum CloudComponentState { @@ -1315,20 +1393,29 @@ export namespace CreateComponentVersionResponse { * multiple requests while IoT Greengrass is still processing an earlier request that uses the same client * token.

*/ -export interface RequestAlreadyInProgressException extends __SmithyException, $MetadataBearer { - name: "RequestAlreadyInProgressException"; - $fault: "client"; - message: string | undefined; +export class RequestAlreadyInProgressException extends __BaseException { + readonly name: "RequestAlreadyInProgressException" = "RequestAlreadyInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestAlreadyInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestAlreadyInProgressException.prototype); + } } /** *

Your request exceeds a service quota. For example, you might have the maximum number of * components that you can create.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that exceeds the service quota.

*/ @@ -1348,6 +1435,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The code for the service in Service Quotas.

*/ serviceCode: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.quotaCode = opts.quotaCode; + this.serviceCode = opts.serviceCode; + } } export enum DeploymentComponentUpdatePolicyAction { diff --git a/clients/client-greengrassv2/src/protocols/Aws_restJson1.ts b/clients/client-greengrassv2/src/protocols/Aws_restJson1.ts index ccd7a036c02ab..b7c6adf41caf3 100644 --- a/clients/client-greengrassv2/src/protocols/Aws_restJson1.ts +++ b/clients/client-greengrassv2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -15,10 +16,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -95,6 +94,7 @@ import { UpdateConnectivityInfoCommandInput, UpdateConnectivityInfoCommandOutput, } from "../commands/UpdateConnectivityInfoCommand"; +import { GreengrassV2ServiceException as __BaseException } from "../models/GreengrassV2ServiceException"; import { AccessDeniedException, AssociateClientDeviceWithCoreDeviceEntry, @@ -1057,41 +1057,25 @@ const deserializeAws_restJson1AssociateServiceRoleToAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchAssociateClientDeviceWithCoreDeviceCommand = async ( @@ -1123,65 +1107,34 @@ const deserializeAws_restJson1BatchAssociateClientDeviceWithCoreDeviceCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDisassociateClientDeviceFromCoreDeviceCommand = async ( @@ -1213,65 +1166,34 @@ const deserializeAws_restJson1BatchDisassociateClientDeviceFromCoreDeviceCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelDeploymentCommand = async ( @@ -1300,73 +1222,37 @@ const deserializeAws_restJson1CancelDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.greengrassv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateComponentVersionCommand = async ( @@ -1411,81 +1297,40 @@ const deserializeAws_restJson1CreateComponentVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.greengrassv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestAlreadyInProgressException": case "com.amazonaws.greengrassv2#RequestAlreadyInProgressException": - response = { - ...(await deserializeAws_restJson1RequestAlreadyInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestAlreadyInProgressExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.greengrassv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentCommand = async ( @@ -1522,73 +1367,37 @@ const deserializeAws_restJson1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestAlreadyInProgressException": case "com.amazonaws.greengrassv2#RequestAlreadyInProgressException": - response = { - ...(await deserializeAws_restJson1RequestAlreadyInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestAlreadyInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteComponentCommand = async ( @@ -1613,73 +1422,37 @@ const deserializeAws_restJson1DeleteComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.greengrassv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCoreDeviceCommand = async ( @@ -1704,73 +1477,37 @@ const deserializeAws_restJson1DeleteCoreDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.greengrassv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeComponentCommand = async ( @@ -1831,65 +1568,34 @@ const deserializeAws_restJson1DescribeComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateServiceRoleFromAccountCommand = async ( @@ -1918,33 +1624,22 @@ const deserializeAws_restJson1DisassociateServiceRoleFromAccountCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetComponentCommand = async ( @@ -1981,65 +1676,34 @@ const deserializeAws_restJson1GetComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetComponentVersionArtifactCommand = async ( @@ -2068,65 +1732,34 @@ const deserializeAws_restJson1GetComponentVersionArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectivityInfoCommand = async ( @@ -2159,41 +1792,25 @@ const deserializeAws_restJson1GetConnectivityInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCoreDeviceCommand = async ( @@ -2248,65 +1865,34 @@ const deserializeAws_restJson1GetCoreDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeploymentCommand = async ( @@ -2386,65 +1972,34 @@ const deserializeAws_restJson1GetDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServiceRoleForAccountCommand = async ( @@ -2477,33 +2032,22 @@ const deserializeAws_restJson1GetServiceRoleForAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClientDevicesAssociatedWithCoreDeviceCommand = async ( @@ -2539,65 +2083,34 @@ const deserializeAws_restJson1ListClientDevicesAssociatedWithCoreDeviceCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListComponentsCommand = async ( @@ -2630,57 +2143,31 @@ const deserializeAws_restJson1ListComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListComponentVersionsCommand = async ( @@ -2713,65 +2200,34 @@ const deserializeAws_restJson1ListComponentVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoreDevicesCommand = async ( @@ -2804,57 +2260,31 @@ const deserializeAws_restJson1ListCoreDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeploymentsCommand = async ( @@ -2887,57 +2317,31 @@ const deserializeAws_restJson1ListDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEffectiveDeploymentsCommand = async ( @@ -2973,65 +2377,34 @@ const deserializeAws_restJson1ListEffectiveDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInstalledComponentsCommand = async ( @@ -3064,65 +2437,34 @@ const deserializeAws_restJson1ListInstalledComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3151,49 +2493,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResolveComponentCandidatesCommand = async ( @@ -3225,73 +2546,37 @@ const deserializeAws_restJson1ResolveComponentCandidatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.greengrassv2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.greengrassv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.greengrassv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3316,49 +2601,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3383,49 +2647,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.greengrassv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectivityInfoCommand = async ( @@ -3458,72 +2701,48 @@ const deserializeAws_restJson1UpdateConnectivityInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.greengrassv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.greengrassv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3534,20 +2753,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3555,38 +2772,34 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestAlreadyInProgressExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestAlreadyInProgressException = { - name: "RequestAlreadyInProgressException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new RequestAlreadyInProgressException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3597,23 +2810,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3630,22 +2838,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3659,21 +2863,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fields: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fields !== undefined && data.fields !== null) { contents.fields = deserializeAws_restJson1ValidationExceptionFieldList(data.fields, context); @@ -3684,7 +2885,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AssociateClientDeviceWithCoreDeviceEntry = ( diff --git a/clients/client-groundstation/src/index.ts b/clients/client-groundstation/src/index.ts index ed68929c6f4fd..3ed0d4ec1e8a7 100644 --- a/clients/client-groundstation/src/index.ts +++ b/clients/client-groundstation/src/index.ts @@ -3,3 +3,4 @@ export * from "./GroundStationClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GroundStationServiceException } from "./models/GroundStationServiceException"; diff --git a/clients/client-groundstation/src/models/GroundStationServiceException.ts b/clients/client-groundstation/src/models/GroundStationServiceException.ts new file mode 100644 index 0000000000000..83fb530413878 --- /dev/null +++ b/clients/client-groundstation/src/models/GroundStationServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from GroundStation service. + */ +export class GroundStationServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GroundStationServiceException.prototype); + } +} diff --git a/clients/client-groundstation/src/models/models_0.ts b/clients/client-groundstation/src/models/models_0.ts index 073b05364374f..fef288e4e2830 100644 --- a/clients/client-groundstation/src/models/models_0.ts +++ b/clients/client-groundstation/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GroundStationServiceException as __BaseException } from "./GroundStationServiceException"; export enum AngleUnits { DEGREE_ANGLE = "DEGREE_ANGLE", @@ -350,36 +353,70 @@ export namespace ContactIdResponse { /** *

Dependency encountered an error.

*/ -export interface DependencyException extends __SmithyException, $MetadataBearer { - name: "DependencyException"; - $fault: "server"; - message?: string; +export class DependencyException extends __BaseException { + readonly name: "DependencyException" = "DependencyException"; + readonly $fault: "server" = "server"; /** *

*/ parameterName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DependencyException.prototype); + this.parameterName = opts.parameterName; + } } /** *

One or more parameters are not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

*/ parameterName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.parameterName = opts.parameterName; + } } /** *

Resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum ConfigCapabilityType { @@ -734,14 +771,26 @@ export namespace CreateConfigRequest { /** *

Account limits for this resource have been exceeded.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; - message?: string; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; /** *

*/ parameterName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.parameterName = opts.parameterName; + } } /** diff --git a/clients/client-groundstation/src/protocols/Aws_restJson1.ts b/clients/client-groundstation/src/protocols/Aws_restJson1.ts index 45a2925c1eb94..b1c9d2ca28cdb 100644 --- a/clients/client-groundstation/src/protocols/Aws_restJson1.ts +++ b/clients/client-groundstation/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelContactCommandInput, CancelContactCommandOutput } from "../commands/CancelContactCommand"; @@ -72,6 +71,7 @@ import { UpdateMissionProfileCommandInput, UpdateMissionProfileCommandOutput, } from "../commands/UpdateMissionProfileCommand"; +import { GroundStationServiceException as __BaseException } from "../models/GroundStationServiceException"; import { AntennaDemodDecodeDetails, AntennaDownlinkConfig, @@ -922,49 +922,28 @@ const deserializeAws_restJson1CancelContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigCommand = async ( @@ -1001,57 +980,31 @@ const deserializeAws_restJson1CreateConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.groundstation#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataflowEndpointGroupCommand = async ( @@ -1080,49 +1033,28 @@ const deserializeAws_restJson1CreateDataflowEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMissionProfileCommand = async ( @@ -1151,49 +1083,28 @@ const deserializeAws_restJson1CreateMissionProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigCommand = async ( @@ -1230,49 +1141,28 @@ const deserializeAws_restJson1DeleteConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataflowEndpointGroupCommand = async ( @@ -1301,49 +1191,28 @@ const deserializeAws_restJson1DeleteDataflowEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMissionProfileCommand = async ( @@ -1372,49 +1241,28 @@ const deserializeAws_restJson1DeleteMissionProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeContactCommand = async ( @@ -1495,49 +1343,28 @@ const deserializeAws_restJson1DescribeContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigCommand = async ( @@ -1586,49 +1413,28 @@ const deserializeAws_restJson1GetConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataflowEndpointGroupCommand = async ( @@ -1669,49 +1475,28 @@ const deserializeAws_restJson1GetDataflowEndpointGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMinuteUsageCommand = async ( @@ -1756,49 +1541,28 @@ const deserializeAws_restJson1GetMinuteUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMissionProfileCommand = async ( @@ -1863,49 +1627,28 @@ const deserializeAws_restJson1GetMissionProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSatelliteCommand = async ( @@ -1946,49 +1689,28 @@ const deserializeAws_restJson1GetSatelliteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigsCommand = async ( @@ -2021,49 +1743,28 @@ const deserializeAws_restJson1ListConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContactsCommand = async ( @@ -2096,49 +1797,28 @@ const deserializeAws_restJson1ListContactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataflowEndpointGroupsCommand = async ( @@ -2174,49 +1854,28 @@ const deserializeAws_restJson1ListDataflowEndpointGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroundStationsCommand = async ( @@ -2249,49 +1908,28 @@ const deserializeAws_restJson1ListGroundStationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMissionProfilesCommand = async ( @@ -2324,49 +1962,28 @@ const deserializeAws_restJson1ListMissionProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSatellitesCommand = async ( @@ -2399,49 +2016,28 @@ const deserializeAws_restJson1ListSatellitesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2470,49 +2066,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ReserveContactCommand = async ( @@ -2541,49 +2116,28 @@ const deserializeAws_restJson1ReserveContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2608,49 +2162,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2675,49 +2208,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigCommand = async ( @@ -2754,49 +2266,28 @@ const deserializeAws_restJson1UpdateConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMissionProfileCommand = async ( @@ -2825,62 +2316,35 @@ const deserializeAws_restJson1UpdateMissionProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyException": case "com.amazonaws.groundstation#DependencyException": - response = { - ...(await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.groundstation#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.groundstation#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1DependencyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DependencyException = { - name: "DependencyException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - parameterName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -2888,20 +2352,18 @@ const deserializeAws_restJson1DependencyExceptionResponse = async ( if (data.parameterName !== undefined && data.parameterName !== null) { contents.parameterName = __expectString(data.parameterName); } - return contents; + const exception = new DependencyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - parameterName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -2909,20 +2371,18 @@ const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( if (data.parameterName !== undefined && data.parameterName !== null) { contents.parameterName = __expectString(data.parameterName); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - parameterName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -2930,24 +2390,27 @@ const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( if (data.parameterName !== undefined && data.parameterName !== null) { contents.parameterName = __expectString(data.parameterName); } - return contents; + const exception = new ResourceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AntennaDownlinkConfig = (input: AntennaDownlinkConfig, context: __SerdeContext): any => { diff --git a/clients/client-guardduty/src/index.ts b/clients/client-guardduty/src/index.ts index 3390a2b868257..aeebfc79f9411 100644 --- a/clients/client-guardduty/src/index.ts +++ b/clients/client-guardduty/src/index.ts @@ -3,3 +3,4 @@ export * from "./GuardDutyClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { GuardDutyServiceException } from "./models/GuardDutyServiceException"; diff --git a/clients/client-guardduty/src/models/GuardDutyServiceException.ts b/clients/client-guardduty/src/models/GuardDutyServiceException.ts new file mode 100644 index 0000000000000..332d61b3b08ef --- /dev/null +++ b/clients/client-guardduty/src/models/GuardDutyServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from GuardDuty service. + */ +export class GuardDutyServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, GuardDutyServiceException.prototype); + } +} diff --git a/clients/client-guardduty/src/models/models_0.ts b/clients/client-guardduty/src/models/models_0.ts index a06959c77f7e1..89c83609dc681 100644 --- a/clients/client-guardduty/src/models/models_0.ts +++ b/clients/client-guardduty/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { GuardDutyServiceException as __BaseException } from "./GuardDutyServiceException"; export interface AcceptInvitationRequest { /** @@ -40,9 +43,9 @@ export namespace AcceptInvitationResponse { /** *

A bad request exception object.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

The error message.

*/ @@ -52,14 +55,27 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

The error type.

*/ Type?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + this.Type = opts.Type; + } } /** *

An internal server error exception object.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** *

The error message.

*/ @@ -69,6 +85,19 @@ export interface InternalServerErrorException extends __SmithyException, $Metada *

The error type.

*/ Type?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + this.Type = opts.Type; + } } /** diff --git a/clients/client-guardduty/src/protocols/Aws_restJson1.ts b/clients/client-guardduty/src/protocols/Aws_restJson1.ts index 674e8ddb1f46e..f6725e2eb401a 100644 --- a/clients/client-guardduty/src/protocols/Aws_restJson1.ts +++ b/clients/client-guardduty/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -150,6 +149,7 @@ import { UpdateThreatIntelSetCommandInput, UpdateThreatIntelSetCommandOutput, } from "../commands/UpdateThreatIntelSetCommand"; +import { GuardDutyServiceException as __BaseException } from "../models/GuardDutyServiceException"; import { AccessControlList, AccessKeyDetails, @@ -2304,41 +2304,25 @@ const deserializeAws_restJson1AcceptInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ArchiveFindingsCommand = async ( @@ -2363,41 +2347,25 @@ const deserializeAws_restJson1ArchiveFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDetectorCommand = async ( @@ -2426,41 +2394,25 @@ const deserializeAws_restJson1CreateDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFilterCommand = async ( @@ -2489,41 +2441,25 @@ const deserializeAws_restJson1CreateFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIPSetCommand = async ( @@ -2552,41 +2488,25 @@ const deserializeAws_restJson1CreateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMembersCommand = async ( @@ -2615,41 +2535,25 @@ const deserializeAws_restJson1CreateMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePublishingDestinationCommand = async ( @@ -2678,41 +2582,25 @@ const deserializeAws_restJson1CreatePublishingDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSampleFindingsCommand = async ( @@ -2737,41 +2625,25 @@ const deserializeAws_restJson1CreateSampleFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThreatIntelSetCommand = async ( @@ -2800,41 +2672,25 @@ const deserializeAws_restJson1CreateThreatIntelSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeclineInvitationsCommand = async ( @@ -2863,41 +2719,25 @@ const deserializeAws_restJson1DeclineInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDetectorCommand = async ( @@ -2922,41 +2762,25 @@ const deserializeAws_restJson1DeleteDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFilterCommand = async ( @@ -2981,41 +2805,25 @@ const deserializeAws_restJson1DeleteFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInvitationsCommand = async ( @@ -3044,41 +2852,25 @@ const deserializeAws_restJson1DeleteInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIPSetCommand = async ( @@ -3103,41 +2895,25 @@ const deserializeAws_restJson1DeleteIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMembersCommand = async ( @@ -3166,41 +2942,25 @@ const deserializeAws_restJson1DeleteMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePublishingDestinationCommand = async ( @@ -3225,41 +2985,25 @@ const deserializeAws_restJson1DeletePublishingDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThreatIntelSetCommand = async ( @@ -3284,41 +3028,25 @@ const deserializeAws_restJson1DeleteThreatIntelSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationConfigurationCommand = async ( @@ -3358,41 +3086,25 @@ const deserializeAws_restJson1DescribeOrganizationConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePublishingDestinationCommand = async ( @@ -3437,41 +3149,25 @@ const deserializeAws_restJson1DescribePublishingDestinationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableOrganizationAdminAccountCommand = async ( @@ -3496,41 +3192,25 @@ const deserializeAws_restJson1DisableOrganizationAdminAccountCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateFromMasterAccountCommand = async ( @@ -3555,41 +3235,25 @@ const deserializeAws_restJson1DisassociateFromMasterAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateMembersCommand = async ( @@ -3618,41 +3282,25 @@ const deserializeAws_restJson1DisassociateMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableOrganizationAdminAccountCommand = async ( @@ -3677,41 +3325,25 @@ const deserializeAws_restJson1EnableOrganizationAdminAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDetectorCommand = async ( @@ -3764,41 +3396,25 @@ const deserializeAws_restJson1GetDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFilterCommand = async ( @@ -3847,41 +3463,25 @@ const deserializeAws_restJson1GetFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsCommand = async ( @@ -3910,41 +3510,25 @@ const deserializeAws_restJson1GetFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsStatisticsCommand = async ( @@ -3973,41 +3557,25 @@ const deserializeAws_restJson1GetFindingsStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInvitationsCountCommand = async ( @@ -4036,41 +3604,25 @@ const deserializeAws_restJson1GetInvitationsCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIPSetCommand = async ( @@ -4115,41 +3667,25 @@ const deserializeAws_restJson1GetIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMasterAccountCommand = async ( @@ -4178,41 +3714,25 @@ const deserializeAws_restJson1GetMasterAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMemberDetectorsCommand = async ( @@ -4248,41 +3768,25 @@ const deserializeAws_restJson1GetMemberDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMembersCommand = async ( @@ -4315,41 +3819,25 @@ const deserializeAws_restJson1GetMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetThreatIntelSetCommand = async ( @@ -4394,41 +3882,25 @@ const deserializeAws_restJson1GetThreatIntelSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsageStatisticsCommand = async ( @@ -4461,41 +3933,25 @@ const deserializeAws_restJson1GetUsageStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InviteMembersCommand = async ( @@ -4524,41 +3980,25 @@ const deserializeAws_restJson1InviteMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDetectorsCommand = async ( @@ -4591,41 +4031,25 @@ const deserializeAws_restJson1ListDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFiltersCommand = async ( @@ -4658,41 +4082,25 @@ const deserializeAws_restJson1ListFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingsCommand = async ( @@ -4725,41 +4133,25 @@ const deserializeAws_restJson1ListFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInvitationsCommand = async ( @@ -4792,41 +4184,25 @@ const deserializeAws_restJson1ListInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIPSetsCommand = async ( @@ -4859,41 +4235,25 @@ const deserializeAws_restJson1ListIPSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMembersCommand = async ( @@ -4926,41 +4286,25 @@ const deserializeAws_restJson1ListMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOrganizationAdminAccountsCommand = async ( @@ -4993,41 +4337,25 @@ const deserializeAws_restJson1ListOrganizationAdminAccountsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPublishingDestinationsCommand = async ( @@ -5060,41 +4388,25 @@ const deserializeAws_restJson1ListPublishingDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -5123,41 +4435,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThreatIntelSetsCommand = async ( @@ -5190,41 +4486,25 @@ const deserializeAws_restJson1ListThreatIntelSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMonitoringMembersCommand = async ( @@ -5253,41 +4533,25 @@ const deserializeAws_restJson1StartMonitoringMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopMonitoringMembersCommand = async ( @@ -5316,41 +4580,25 @@ const deserializeAws_restJson1StopMonitoringMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -5375,41 +4623,25 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnarchiveFindingsCommand = async ( @@ -5434,41 +4666,25 @@ const deserializeAws_restJson1UnarchiveFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -5493,41 +4709,25 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDetectorCommand = async ( @@ -5552,41 +4752,25 @@ const deserializeAws_restJson1UpdateDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFilterCommand = async ( @@ -5615,41 +4799,25 @@ const deserializeAws_restJson1UpdateFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFindingsFeedbackCommand = async ( @@ -5674,41 +4842,25 @@ const deserializeAws_restJson1UpdateFindingsFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIPSetCommand = async ( @@ -5733,41 +4885,25 @@ const deserializeAws_restJson1UpdateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMemberDetectorsCommand = async ( @@ -5796,41 +4932,25 @@ const deserializeAws_restJson1UpdateMemberDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOrganizationConfigurationCommand = async ( @@ -5855,41 +4975,25 @@ const deserializeAws_restJson1UpdateOrganizationConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePublishingDestinationCommand = async ( @@ -5914,41 +5018,25 @@ const deserializeAws_restJson1UpdatePublishingDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThreatIntelSetCommand = async ( @@ -5973,54 +5061,32 @@ const deserializeAws_restJson1UpdateThreatIntelSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.guardduty#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.guardduty#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); @@ -6028,20 +5094,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.__type !== undefined && data.__type !== null) { contents.Type = __expectString(data.__type); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); @@ -6049,7 +5113,11 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.__type !== undefined && data.__type !== null) { contents.Type = __expectString(data.__type); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountDetail = (input: AccountDetail, context: __SerdeContext): any => { diff --git a/clients/client-health/src/index.ts b/clients/client-health/src/index.ts index 7c7f7825ea82e..577db02012bc9 100644 --- a/clients/client-health/src/index.ts +++ b/clients/client-health/src/index.ts @@ -3,3 +3,4 @@ export * from "./HealthClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { HealthServiceException } from "./models/HealthServiceException"; diff --git a/clients/client-health/src/models/HealthServiceException.ts b/clients/client-health/src/models/HealthServiceException.ts new file mode 100644 index 0000000000000..d28d2f21a50d5 --- /dev/null +++ b/clients/client-health/src/models/HealthServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Health service. + */ +export class HealthServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, HealthServiceException.prototype); + } +} diff --git a/clients/client-health/src/models/models_0.ts b/clients/client-health/src/models/models_0.ts index 0095d4d26f7c6..b492b49fc9aee 100644 --- a/clients/client-health/src/models/models_0.ts +++ b/clients/client-health/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { HealthServiceException as __BaseException } from "./HealthServiceException"; export enum EntityStatusCode { IMPAIRED = "IMPAIRED", @@ -165,10 +168,20 @@ export namespace DescribeAffectedAccountsForOrganizationResponse { /** *

The specified pagination token (nextToken) is not valid.

*/ -export interface InvalidPaginationToken extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationToken"; - $fault: "client"; - message?: string; +export class InvalidPaginationToken extends __BaseException { + readonly name: "InvalidPaginationToken" = "InvalidPaginationToken"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationToken.prototype); + } } /** @@ -311,10 +324,20 @@ export namespace DescribeAffectedEntitiesResponse { /** *

The specified locale is not supported.

*/ -export interface UnsupportedLocale extends __SmithyException, $MetadataBearer { - name: "UnsupportedLocale"; - $fault: "client"; - message?: string; +export class UnsupportedLocale extends __BaseException { + readonly name: "UnsupportedLocale" = "UnsupportedLocale"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedLocale", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedLocale.prototype); + } } /** @@ -1570,8 +1593,18 @@ export namespace DescribeHealthServiceStatusForOrganizationResponse { * EnableHealthServiceAccessForOrganization is already in progress. Wait for the * action to complete before trying again. To get the current status, use the DescribeHealthServiceStatusForOrganization operation.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } diff --git a/clients/client-health/src/protocols/Aws_json1_1.ts b/clients/client-health/src/protocols/Aws_json1_1.ts index 817f1c2ebfe75..c3facb8e39b96 100644 --- a/clients/client-health/src/protocols/Aws_json1_1.ts +++ b/clients/client-health/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -61,6 +60,7 @@ import { EnableHealthServiceAccessForOrganizationCommandInput, EnableHealthServiceAccessForOrganizationCommandOutput, } from "../commands/EnableHealthServiceAccessForOrganizationCommand"; +import { HealthServiceException as __BaseException } from "../models/HealthServiceException"; import { AffectedEntity, ConcurrentModificationException, @@ -300,33 +300,22 @@ const deserializeAws_json1_1DescribeAffectedAccountsForOrganizationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAffectedEntitiesCommand = async ( @@ -354,41 +343,25 @@ const deserializeAws_json1_1DescribeAffectedEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAffectedEntitiesForOrganizationCommand = async ( @@ -416,41 +389,25 @@ const deserializeAws_json1_1DescribeAffectedEntitiesForOrganizationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEntityAggregatesCommand = async ( @@ -478,25 +435,19 @@ const deserializeAws_json1_1DescribeEntityAggregatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventAggregatesCommand = async ( @@ -524,33 +475,22 @@ const deserializeAws_json1_1DescribeEventAggregatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventDetailsCommand = async ( @@ -578,33 +518,22 @@ const deserializeAws_json1_1DescribeEventDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventDetailsForOrganizationCommand = async ( @@ -632,33 +561,22 @@ const deserializeAws_json1_1DescribeEventDetailsForOrganizationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsCommand = async ( @@ -686,41 +604,25 @@ const deserializeAws_json1_1DescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsForOrganizationCommand = async ( @@ -748,41 +650,25 @@ const deserializeAws_json1_1DescribeEventsForOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventTypesCommand = async ( @@ -810,41 +696,25 @@ const deserializeAws_json1_1DescribeEventTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPaginationToken": case "com.amazonaws.health#InvalidPaginationToken": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenResponse(parsedOutput, context); case "UnsupportedLocale": case "com.amazonaws.health#UnsupportedLocale": - response = { - ...(await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLocaleResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHealthServiceStatusForOrganizationCommand = async ( @@ -872,25 +742,19 @@ const deserializeAws_json1_1DescribeHealthServiceStatusForOrganizationCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableHealthServiceAccessForOrganizationCommand = async ( @@ -915,33 +779,22 @@ const deserializeAws_json1_1DisableHealthServiceAccessForOrganizationCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.health#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableHealthServiceAccessForOrganizationCommand = async ( @@ -966,33 +819,22 @@ const deserializeAws_json1_1EnableHealthServiceAccessForOrganizationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.health#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -1001,13 +843,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPaginationTokenResponse = async ( @@ -1016,13 +856,11 @@ const deserializeAws_json1_1InvalidPaginationTokenResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPaginationToken(body, context); - const contents: InvalidPaginationToken = { - name: "InvalidPaginationToken", - $fault: "client", + const exception = new InvalidPaginationToken({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedLocaleResponse = async ( @@ -1031,13 +869,11 @@ const deserializeAws_json1_1UnsupportedLocaleResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedLocale(body, context); - const contents: UnsupportedLocale = { - name: "UnsupportedLocale", - $fault: "client", + const exception = new UnsupportedLocale({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1availabilityZones = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-healthlake/src/index.ts b/clients/client-healthlake/src/index.ts index c9bde87aaa2f9..2e5ba4ba29540 100644 --- a/clients/client-healthlake/src/index.ts +++ b/clients/client-healthlake/src/index.ts @@ -3,3 +3,4 @@ export * from "./HealthLakeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { HealthLakeServiceException } from "./models/HealthLakeServiceException"; diff --git a/clients/client-healthlake/src/models/HealthLakeServiceException.ts b/clients/client-healthlake/src/models/HealthLakeServiceException.ts new file mode 100644 index 0000000000000..8764464c4bd8c --- /dev/null +++ b/clients/client-healthlake/src/models/HealthLakeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from HealthLake service. + */ +export class HealthLakeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, HealthLakeServiceException.prototype); + } +} diff --git a/clients/client-healthlake/src/models/models_0.ts b/clients/client-healthlake/src/models/models_0.ts index 0f2efd0d577ac..b16766f16defa 100644 --- a/clients/client-healthlake/src/models/models_0.ts +++ b/clients/client-healthlake/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { HealthLakeServiceException as __BaseException } from "./HealthLakeServiceException"; /** *

Access is denied. Your account is not authorized to perform this operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum CmkType { @@ -17,10 +32,22 @@ export enum CmkType { /** *

The Data Store is in a transition state and the user requested action can not be performed.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export enum FHIRVersion { @@ -224,28 +251,64 @@ export namespace CreateFHIRDatastoreResponse { /** *

Unknown error occurs in the service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The user has exceeded their maximum number of allowed calls to the given API.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The user input parameter was invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -396,10 +459,22 @@ export namespace DeleteFHIRDatastoreResponse { /** *

The requested Data Store was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeFHIRDatastoreRequest { diff --git a/clients/client-healthlake/src/protocols/Aws_json1_0.ts b/clients/client-healthlake/src/protocols/Aws_json1_0.ts index b28f5129f9f5d..da944ea1490d2 100644 --- a/clients/client-healthlake/src/protocols/Aws_json1_0.ts +++ b/clients/client-healthlake/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -47,6 +46,7 @@ import { StartFHIRExportJobCommandInput, StartFHIRExportJobCommandOutput } from import { StartFHIRImportJobCommandInput, StartFHIRImportJobCommandOutput } from "../commands/StartFHIRImportJobCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { HealthLakeServiceException as __BaseException } from "../models/HealthLakeServiceException"; import { AccessDeniedException, ConflictException, @@ -287,57 +287,31 @@ const deserializeAws_json1_0CreateFHIRDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.healthlake#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteFHIRDatastoreCommand = async ( @@ -365,73 +339,37 @@ const deserializeAws_json1_0DeleteFHIRDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.healthlake#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.healthlake#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFHIRDatastoreCommand = async ( @@ -459,57 +397,31 @@ const deserializeAws_json1_0DescribeFHIRDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFHIRExportJobCommand = async ( @@ -537,57 +449,31 @@ const deserializeAws_json1_0DescribeFHIRExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFHIRImportJobCommand = async ( @@ -615,57 +501,31 @@ const deserializeAws_json1_0DescribeFHIRImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListFHIRDatastoresCommand = async ( @@ -693,49 +553,28 @@ const deserializeAws_json1_0ListFHIRDatastoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListFHIRExportJobsCommand = async ( @@ -763,65 +602,34 @@ const deserializeAws_json1_0ListFHIRExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.healthlake#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListFHIRImportJobsCommand = async ( @@ -849,65 +657,34 @@ const deserializeAws_json1_0ListFHIRImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.healthlake#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -935,41 +712,25 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartFHIRExportJobCommand = async ( @@ -997,65 +758,34 @@ const deserializeAws_json1_0StartFHIRExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.healthlake#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartFHIRImportJobCommand = async ( @@ -1083,65 +813,34 @@ const deserializeAws_json1_0StartFHIRImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.healthlake#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.healthlake#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.healthlake#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -1169,41 +868,25 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -1231,41 +914,25 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.healthlake#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.healthlake#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -1274,13 +941,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -1289,13 +954,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -1304,13 +967,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -1319,13 +980,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -1334,13 +993,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -1349,13 +1006,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CreateFHIRDatastoreRequest = ( diff --git a/clients/client-honeycode/src/index.ts b/clients/client-honeycode/src/index.ts index ee06f5839af3a..554e0bfb1a095 100644 --- a/clients/client-honeycode/src/index.ts +++ b/clients/client-honeycode/src/index.ts @@ -3,3 +3,4 @@ export * from "./HoneycodeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { HoneycodeServiceException } from "./models/HoneycodeServiceException"; diff --git a/clients/client-honeycode/src/models/HoneycodeServiceException.ts b/clients/client-honeycode/src/models/HoneycodeServiceException.ts new file mode 100644 index 0000000000000..1adbd78dad9e1 --- /dev/null +++ b/clients/client-honeycode/src/models/HoneycodeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Honeycode service. + */ +export class HoneycodeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, HoneycodeServiceException.prototype); + } +} diff --git a/clients/client-honeycode/src/models/models_0.ts b/clients/client-honeycode/src/models/models_0.ts index 950ef0fde5d37..566392112f22d 100644 --- a/clients/client-honeycode/src/models/models_0.ts +++ b/clients/client-honeycode/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { HoneycodeServiceException as __BaseException } from "./HoneycodeServiceException"; /** *

@@ -7,28 +9,58 @@ import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException * IAM policy allows access to the resource in the request. *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

The automation execution did not end successfully.

*/ -export interface AutomationExecutionException extends __SmithyException, $MetadataBearer { - name: "AutomationExecutionException"; - $fault: "client"; - message?: string; +export class AutomationExecutionException extends __BaseException { + readonly name: "AutomationExecutionException" = "AutomationExecutionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationExecutionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationExecutionException.prototype); + } } /** *

The automation execution timed out.

*/ -export interface AutomationExecutionTimeoutException extends __SmithyException, $MetadataBearer { - name: "AutomationExecutionTimeoutException"; - $fault: "server"; - message?: string; +export class AutomationExecutionTimeoutException extends __BaseException { + readonly name: "AutomationExecutionTimeoutException" = "AutomationExecutionTimeoutException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationExecutionTimeoutException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, AutomationExecutionTimeoutException.prototype); + } } /** @@ -236,28 +268,58 @@ export namespace BatchCreateTableRowsResult { /** *

There were unexpected errors from the server.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The request timed out.

*/ -export interface RequestTimeoutException extends __SmithyException, $MetadataBearer { - name: "RequestTimeoutException"; - $fault: "server"; - message?: string; +export class RequestTimeoutException extends __BaseException { + readonly name: "RequestTimeoutException" = "RequestTimeoutException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestTimeoutException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, RequestTimeoutException.prototype); + } } /** *

A Workbook, Table, App, Screen or Screen Automation was not found with the given ID.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -265,28 +327,58 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * The request caused service quota to be breached. *

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

Remote service is unreachable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

Tps(transactions per second) rate reached.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** @@ -294,10 +386,20 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer * Request is invalid. The message in the response contains details on why the request is invalid. *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface BatchDeleteTableRowsRequest { diff --git a/clients/client-honeycode/src/protocols/Aws_restJson1.ts b/clients/client-honeycode/src/protocols/Aws_restJson1.ts index c1e6b271aa584..f3815ac0fe13a 100644 --- a/clients/client-honeycode/src/protocols/Aws_restJson1.ts +++ b/clients/client-honeycode/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -57,6 +56,7 @@ import { } from "../commands/StartTableDataImportJobCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { HoneycodeServiceException as __BaseException } from "../models/HoneycodeServiceException"; import { AccessDeniedException, AutomationExecutionException, @@ -783,89 +783,43 @@ const deserializeAws_restJson1BatchCreateTableRowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.honeycode#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDeleteTableRowsCommand = async ( @@ -898,81 +852,40 @@ const deserializeAws_restJson1BatchDeleteTableRowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdateTableRowsCommand = async ( @@ -1005,81 +918,40 @@ const deserializeAws_restJson1BatchUpdateTableRowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpsertTableRowsCommand = async ( @@ -1116,89 +988,43 @@ const deserializeAws_restJson1BatchUpsertTableRowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.honeycode#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTableDataImportJobCommand = async ( @@ -1239,81 +1065,40 @@ const deserializeAws_restJson1DescribeTableDataImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetScreenDataCommand = async ( @@ -1350,81 +1135,40 @@ const deserializeAws_restJson1GetScreenDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InvokeScreenAutomationCommand = async ( @@ -1453,105 +1197,49 @@ const deserializeAws_restJson1InvokeScreenAutomationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "AutomationExecutionException": case "com.amazonaws.honeycode#AutomationExecutionException": - response = { - ...(await deserializeAws_restJson1AutomationExecutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AutomationExecutionExceptionResponse(parsedOutput, context); case "AutomationExecutionTimeoutException": case "com.amazonaws.honeycode#AutomationExecutionTimeoutException": - response = { - ...(await deserializeAws_restJson1AutomationExecutionTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AutomationExecutionTimeoutExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.honeycode#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTableColumnsCommand = async ( @@ -1588,81 +1276,40 @@ const deserializeAws_restJson1ListTableColumnsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTableRowsCommand = async ( @@ -1707,81 +1354,40 @@ const deserializeAws_restJson1ListTableRowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTablesCommand = async ( @@ -1818,81 +1424,40 @@ const deserializeAws_restJson1ListTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1921,81 +1486,40 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1QueryTableRowsCommand = async ( @@ -2036,81 +1560,40 @@ const deserializeAws_restJson1QueryTableRowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartTableDataImportJobCommand = async ( @@ -2143,89 +1626,43 @@ const deserializeAws_restJson1StartTableDataImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.honeycode#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2250,81 +1687,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2349,251 +1745,200 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.honeycode#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.honeycode#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.honeycode#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.honeycode#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.honeycode#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.honeycode#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.honeycode#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AutomationExecutionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AutomationExecutionException = { - name: "AutomationExecutionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AutomationExecutionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AutomationExecutionTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AutomationExecutionTimeoutException = { - name: "AutomationExecutionTimeoutException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AutomationExecutionTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestTimeoutException = { - name: "RequestTimeoutException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new RequestTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CellInput = (input: CellInput, context: __SerdeContext): any => { diff --git a/clients/client-iam/src/index.ts b/clients/client-iam/src/index.ts index 8bcb46ba64bb0..fb91979f6f633 100644 --- a/clients/client-iam/src/index.ts +++ b/clients/client-iam/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { IAMServiceException } from "./models/IAMServiceException"; diff --git a/clients/client-iam/src/models/IAMServiceException.ts b/clients/client-iam/src/models/IAMServiceException.ts new file mode 100644 index 0000000000000..b8f3324926a61 --- /dev/null +++ b/clients/client-iam/src/models/IAMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IAM service. + */ +export class IAMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IAMServiceException.prototype); + } +} diff --git a/clients/client-iam/src/models/models_0.ts b/clients/client-iam/src/models/models_0.ts index f47f5f1a6ea90..c771ce7b0c8e1 100644 --- a/clients/client-iam/src/models/models_0.ts +++ b/clients/client-iam/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IAMServiceException as __BaseException } from "./IAMServiceException"; export enum AccessAdvisorUsageGranularityType { ACTION_LEVEL = "ACTION_LEVEL", @@ -257,40 +259,80 @@ export namespace AddClientIDToOpenIDConnectProviderRequest { *

The request was rejected because an invalid or out-of-range value was supplied for an * input parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - message?: string; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + } } /** *

The request was rejected because it attempted to create resources beyond the current Amazon Web Services * account limits. The error message describes the limit exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The request was rejected because it referenced a resource entity that does not exist. The * error message describes the resource.

*/ -export interface NoSuchEntityException extends __SmithyException, $MetadataBearer { - name: "NoSuchEntityException"; - $fault: "client"; - message?: string; +export class NoSuchEntityException extends __BaseException { + readonly name: "NoSuchEntityException" = "NoSuchEntityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchEntityException.prototype); + } } /** *

The request processing has failed because of an unknown error, exception or * failure.

*/ -export interface ServiceFailureException extends __SmithyException, $MetadataBearer { - name: "ServiceFailureException"; - $fault: "server"; - message?: string; +export class ServiceFailureException extends __BaseException { + readonly name: "ServiceFailureException" = "ServiceFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceFailureException.prototype); + } } export interface AddRoleToInstanceProfileRequest { @@ -322,10 +364,20 @@ export namespace AddRoleToInstanceProfileRequest { *

The request was rejected because it attempted to create a resource that already * exists.

*/ -export interface EntityAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EntityAlreadyExistsException"; - $fault: "client"; - message?: string; +export class EntityAlreadyExistsException extends __BaseException { + readonly name: "EntityAlreadyExistsException" = "EntityAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityAlreadyExistsException.prototype); + } } /** @@ -334,10 +386,20 @@ export interface EntityAlreadyExistsException extends __SmithyException, $Metada * service that depends on this service-linked role. You must request the change through that * service.

*/ -export interface UnmodifiableEntityException extends __SmithyException, $MetadataBearer { - name: "UnmodifiableEntityException"; - $fault: "client"; - message?: string; +export class UnmodifiableEntityException extends __BaseException { + readonly name: "UnmodifiableEntityException" = "UnmodifiableEntityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnmodifiableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnmodifiableEntityException.prototype); + } } export interface AddUserToGroupRequest { @@ -459,10 +521,20 @@ export namespace AttachGroupPolicyRequest { *

The request failed because Amazon Web Services service role policies can only be attached to the * service-linked role for that service.

*/ -export interface PolicyNotAttachableException extends __SmithyException, $MetadataBearer { - name: "PolicyNotAttachableException"; - $fault: "client"; - message?: string; +export class PolicyNotAttachableException extends __BaseException { + readonly name: "PolicyNotAttachableException" = "PolicyNotAttachableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyNotAttachableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyNotAttachableException.prototype); + } } export interface AttachRolePolicyRequest { @@ -550,30 +622,60 @@ export namespace ChangePasswordRequest { * is likely to succeed if you try again after waiting several minutes. The error message * describes the entity.

*/ -export interface EntityTemporarilyUnmodifiableException extends __SmithyException, $MetadataBearer { - name: "EntityTemporarilyUnmodifiableException"; - $fault: "client"; - message?: string; +export class EntityTemporarilyUnmodifiableException extends __BaseException { + readonly name: "EntityTemporarilyUnmodifiableException" = "EntityTemporarilyUnmodifiableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityTemporarilyUnmodifiableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityTemporarilyUnmodifiableException.prototype); + } } /** *

The request was rejected because the type of user for the transaction was * incorrect.

*/ -export interface InvalidUserTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidUserTypeException"; - $fault: "client"; - message?: string; +export class InvalidUserTypeException extends __BaseException { + readonly name: "InvalidUserTypeException" = "InvalidUserTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUserTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUserTypeException.prototype); + } } /** *

The request was rejected because the provided password did not meet the requirements * imposed by the account password policy.

*/ -export interface PasswordPolicyViolationException extends __SmithyException, $MetadataBearer { - name: "PasswordPolicyViolationException"; - $fault: "client"; - message?: string; +export class PasswordPolicyViolationException extends __BaseException { + readonly name: "PasswordPolicyViolationException" = "PasswordPolicyViolationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PasswordPolicyViolationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PasswordPolicyViolationException.prototype); + } } export interface CreateAccessKeyRequest { @@ -750,10 +852,20 @@ export namespace CreateGroupResponse { *

The request was rejected because multiple requests to change this object were submitted * simultaneously. Wait a few minutes and submit your request again.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** @@ -1439,10 +1551,20 @@ export namespace CreatePolicyResponse { *

The request was rejected because the policy document was malformed. The error message * describes the specific error.

*/ -export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer { - name: "MalformedPolicyDocumentException"; - $fault: "client"; - message?: string; +export class MalformedPolicyDocumentException extends __BaseException { + readonly name: "MalformedPolicyDocumentException" = "MalformedPolicyDocumentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedPolicyDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype); + } } export interface CreatePolicyVersionRequest { @@ -1916,10 +2038,20 @@ export namespace CreateServiceSpecificCredentialResponse { /** *

The specified service does not support service-specific credentials.

*/ -export interface ServiceNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ServiceNotSupportedException"; - $fault: "client"; - message?: string; +export class ServiceNotSupportedException extends __BaseException { + readonly name: "ServiceNotSupportedException" = "ServiceNotSupportedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceNotSupportedException.prototype); + } } export interface CreateUserRequest { @@ -2278,10 +2410,20 @@ export namespace DeleteAccountAliasRequest { *

The request was rejected because it attempted to delete a resource that has attached * subordinate entities. The error message describes these entities.

*/ -export interface DeleteConflictException extends __SmithyException, $MetadataBearer { - name: "DeleteConflictException"; - $fault: "client"; - message?: string; +export class DeleteConflictException extends __BaseException { + readonly name: "DeleteConflictException" = "DeleteConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeleteConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeleteConflictException.prototype); + } } export interface DeleteGroupRequest { @@ -2845,10 +2987,20 @@ export namespace EnableMFADeviceRequest { *

The request was rejected because the authentication code was not recognized. The error * message describes the specific error.

*/ -export interface InvalidAuthenticationCodeException extends __SmithyException, $MetadataBearer { - name: "InvalidAuthenticationCodeException"; - $fault: "client"; - message?: string; +export class InvalidAuthenticationCodeException extends __BaseException { + readonly name: "InvalidAuthenticationCodeException" = "InvalidAuthenticationCodeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAuthenticationCodeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAuthenticationCodeException.prototype); + } } export enum ReportStateType { @@ -2931,10 +3083,20 @@ export namespace GenerateOrganizationsAccessReportResponse { *

The request failed because the maximum number of concurrent requests for this account are * already running.

*/ -export interface ReportGenerationLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ReportGenerationLimitExceededException"; - $fault: "client"; - message?: string; +export class ReportGenerationLimitExceededException extends __BaseException { + readonly name: "ReportGenerationLimitExceededException" = "ReportGenerationLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReportGenerationLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReportGenerationLimitExceededException.prototype); + } } export interface GenerateServiceLastAccessedDetailsRequest { @@ -3715,29 +3877,59 @@ export namespace GetContextKeysForPrincipalPolicyRequest { * information about credential report expiration, see Getting credential reports in the * IAM User Guide.

*/ -export interface CredentialReportExpiredException extends __SmithyException, $MetadataBearer { - name: "CredentialReportExpiredException"; - $fault: "client"; - message?: string; +export class CredentialReportExpiredException extends __BaseException { + readonly name: "CredentialReportExpiredException" = "CredentialReportExpiredException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CredentialReportExpiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CredentialReportExpiredException.prototype); + } } /** *

The request was rejected because the credential report does not exist. To generate a * credential report, use GenerateCredentialReport.

*/ -export interface CredentialReportNotPresentException extends __SmithyException, $MetadataBearer { - name: "CredentialReportNotPresentException"; - $fault: "client"; - message?: string; +export class CredentialReportNotPresentException extends __BaseException { + readonly name: "CredentialReportNotPresentException" = "CredentialReportNotPresentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CredentialReportNotPresentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CredentialReportNotPresentException.prototype); + } } /** *

The request was rejected because the credential report is still being generated.

*/ -export interface CredentialReportNotReadyException extends __SmithyException, $MetadataBearer { - name: "CredentialReportNotReadyException"; - $fault: "client"; - message?: string; +export class CredentialReportNotReadyException extends __BaseException { + readonly name: "CredentialReportNotReadyException" = "CredentialReportNotReadyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CredentialReportNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CredentialReportNotReadyException.prototype); + } } export type ReportFormatType = "text/csv"; @@ -5174,10 +5366,20 @@ export namespace GetSSHPublicKeyResponse { *

The request was rejected because the public key encoding format is unsupported or * unrecognized.

*/ -export interface UnrecognizedPublicKeyEncodingException extends __SmithyException, $MetadataBearer { - name: "UnrecognizedPublicKeyEncodingException"; - $fault: "client"; - message?: string; +export class UnrecognizedPublicKeyEncodingException extends __BaseException { + readonly name: "UnrecognizedPublicKeyEncodingException" = "UnrecognizedPublicKeyEncodingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnrecognizedPublicKeyEncodingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnrecognizedPublicKeyEncodingException.prototype); + } } export interface GetUserRequest { @@ -8627,10 +8829,20 @@ export namespace SetSecurityTokenServicePreferencesRequest { *

The request failed because a provided policy could not be successfully evaluated. An * additional detailed message indicates the source of the failure.

*/ -export interface PolicyEvaluationException extends __SmithyException, $MetadataBearer { - name: "PolicyEvaluationException"; - $fault: "server"; - message?: string; +export class PolicyEvaluationException extends __BaseException { + readonly name: "PolicyEvaluationException" = "PolicyEvaluationException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyEvaluationException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, PolicyEvaluationException.prototype); + } } export enum ContextKeyTypeEnum { diff --git a/clients/client-iam/src/models/models_1.ts b/clients/client-iam/src/models/models_1.ts index f4d5f3894842c..232485d97cbad 100644 --- a/clients/client-iam/src/models/models_1.ts +++ b/clients/client-iam/src/models/models_1.ts @@ -1,6 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { IAMServiceException as __BaseException } from "./IAMServiceException"; import { Role, ServerCertificateMetadata, SigningCertificate, SSHPublicKey, StatusType, Tag } from "./models_0"; export interface UntagPolicyRequest { @@ -704,20 +705,40 @@ export namespace UpdateUserRequest { *

The request was rejected because the public key certificate and the private key do not * match.

*/ -export interface KeyPairMismatchException extends __SmithyException, $MetadataBearer { - name: "KeyPairMismatchException"; - $fault: "client"; - message?: string; +export class KeyPairMismatchException extends __BaseException { + readonly name: "KeyPairMismatchException" = "KeyPairMismatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeyPairMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KeyPairMismatchException.prototype); + } } /** *

The request was rejected because the certificate was malformed or expired. The error * message describes the specific error.

*/ -export interface MalformedCertificateException extends __SmithyException, $MetadataBearer { - name: "MalformedCertificateException"; - $fault: "client"; - message?: string; +export class MalformedCertificateException extends __BaseException { + readonly name: "MalformedCertificateException" = "MalformedCertificateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedCertificateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedCertificateException.prototype); + } } export interface UploadServerCertificateRequest { @@ -864,19 +885,39 @@ export namespace UploadServerCertificateResponse { *

The request was rejected because the same certificate is associated with an IAM user in * the account.

*/ -export interface DuplicateCertificateException extends __SmithyException, $MetadataBearer { - name: "DuplicateCertificateException"; - $fault: "client"; - message?: string; +export class DuplicateCertificateException extends __BaseException { + readonly name: "DuplicateCertificateException" = "DuplicateCertificateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateCertificateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateCertificateException.prototype); + } } /** *

The request was rejected because the certificate is invalid.

*/ -export interface InvalidCertificateException extends __SmithyException, $MetadataBearer { - name: "InvalidCertificateException"; - $fault: "client"; - message?: string; +export class InvalidCertificateException extends __BaseException { + readonly name: "InvalidCertificateException" = "InvalidCertificateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCertificateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCertificateException.prototype); + } } export interface UploadSigningCertificateRequest { @@ -942,19 +983,39 @@ export namespace UploadSigningCertificateResponse { *

The request was rejected because the SSH public key is already associated with the * specified IAM user.

*/ -export interface DuplicateSSHPublicKeyException extends __SmithyException, $MetadataBearer { - name: "DuplicateSSHPublicKeyException"; - $fault: "client"; - message?: string; +export class DuplicateSSHPublicKeyException extends __BaseException { + readonly name: "DuplicateSSHPublicKeyException" = "DuplicateSSHPublicKeyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateSSHPublicKeyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateSSHPublicKeyException.prototype); + } } /** *

The request was rejected because the public key is malformed or otherwise invalid.

*/ -export interface InvalidPublicKeyException extends __SmithyException, $MetadataBearer { - name: "InvalidPublicKeyException"; - $fault: "client"; - message?: string; +export class InvalidPublicKeyException extends __BaseException { + readonly name: "InvalidPublicKeyException" = "InvalidPublicKeyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPublicKeyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPublicKeyException.prototype); + } } export interface UploadSSHPublicKeyRequest { diff --git a/clients/client-iam/src/protocols/Aws_query.ts b/clients/client-iam/src/protocols/Aws_query.ts index 25f9182cbc6ef..694cd3e19fa44 100644 --- a/clients/client-iam/src/protocols/Aws_query.ts +++ b/clients/client-iam/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -403,6 +402,7 @@ import { UploadSigningCertificateCommandOutput, } from "../commands/UploadSigningCertificateCommand"; import { UploadSSHPublicKeyCommandInput, UploadSSHPublicKeyCommandOutput } from "../commands/UploadSSHPublicKeyCommand"; +import { IAMServiceException as __BaseException } from "../models/IAMServiceException"; import { AccessDetail, AccessKey, @@ -3264,57 +3264,31 @@ const deserializeAws_queryAddClientIDToOpenIDConnectProviderCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddRoleToInstanceProfileCommand = async ( @@ -3339,65 +3313,34 @@ const deserializeAws_queryAddRoleToInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddUserToGroupCommand = async ( @@ -3422,49 +3365,28 @@ const deserializeAws_queryAddUserToGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAttachGroupPolicyCommand = async ( @@ -3489,65 +3411,34 @@ const deserializeAws_queryAttachGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PolicyNotAttachableException": case "com.amazonaws.iam#PolicyNotAttachableException": - response = { - ...(await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAttachRolePolicyCommand = async ( @@ -3572,73 +3463,37 @@ const deserializeAws_queryAttachRolePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PolicyNotAttachableException": case "com.amazonaws.iam#PolicyNotAttachableException": - response = { - ...(await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAttachUserPolicyCommand = async ( @@ -3663,65 +3518,34 @@ const deserializeAws_queryAttachUserPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PolicyNotAttachableException": case "com.amazonaws.iam#PolicyNotAttachableException": - response = { - ...(await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryChangePasswordCommand = async ( @@ -3746,73 +3570,37 @@ const deserializeAws_queryChangePasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityTemporarilyUnmodifiableException": case "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": - response = { - ...(await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context); case "InvalidUserTypeException": case "com.amazonaws.iam#InvalidUserTypeException": - response = { - ...(await deserializeAws_queryInvalidUserTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUserTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PasswordPolicyViolationException": case "com.amazonaws.iam#PasswordPolicyViolationException": - response = { - ...(await deserializeAws_queryPasswordPolicyViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPasswordPolicyViolationExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateAccessKeyCommand = async ( @@ -3840,49 +3628,28 @@ const deserializeAws_queryCreateAccessKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateAccountAliasCommand = async ( @@ -3907,49 +3674,28 @@ const deserializeAws_queryCreateAccountAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateGroupCommand = async ( @@ -3977,57 +3723,31 @@ const deserializeAws_queryCreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateInstanceProfileCommand = async ( @@ -4055,65 +3775,34 @@ const deserializeAws_queryCreateInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateLoginProfileCommand = async ( @@ -4141,65 +3830,34 @@ const deserializeAws_queryCreateLoginProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PasswordPolicyViolationException": case "com.amazonaws.iam#PasswordPolicyViolationException": - response = { - ...(await deserializeAws_queryPasswordPolicyViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPasswordPolicyViolationExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateOpenIDConnectProviderCommand = async ( @@ -4227,65 +3885,34 @@ const deserializeAws_queryCreateOpenIDConnectProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreatePolicyCommand = async ( @@ -4313,73 +3940,37 @@ const deserializeAws_queryCreatePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreatePolicyVersionCommand = async ( @@ -4407,65 +3998,34 @@ const deserializeAws_queryCreatePolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateRoleCommand = async ( @@ -4493,73 +4053,37 @@ const deserializeAws_queryCreateRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateSAMLProviderCommand = async ( @@ -4587,65 +4111,34 @@ const deserializeAws_queryCreateSAMLProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateServiceLinkedRoleCommand = async ( @@ -4673,57 +4166,31 @@ const deserializeAws_queryCreateServiceLinkedRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateServiceSpecificCredentialCommand = async ( @@ -4754,49 +4221,28 @@ const deserializeAws_queryCreateServiceSpecificCredentialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceNotSupportedException": case "com.amazonaws.iam#ServiceNotSupportedException": - response = { - ...(await deserializeAws_queryServiceNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceNotSupportedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateUserCommand = async ( @@ -4824,73 +4270,37 @@ const deserializeAws_queryCreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateVirtualMFADeviceCommand = async ( @@ -4918,65 +4328,34 @@ const deserializeAws_queryCreateVirtualMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeactivateMFADeviceCommand = async ( @@ -5001,57 +4380,31 @@ const deserializeAws_queryDeactivateMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityTemporarilyUnmodifiableException": case "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": - response = { - ...(await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAccessKeyCommand = async ( @@ -5076,49 +4429,28 @@ const deserializeAws_queryDeleteAccessKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAccountAliasCommand = async ( @@ -5143,49 +4475,28 @@ const deserializeAws_queryDeleteAccountAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAccountPasswordPolicyCommand = async ( @@ -5210,49 +4521,28 @@ const deserializeAws_queryDeleteAccountPasswordPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteGroupCommand = async ( @@ -5277,57 +4567,31 @@ const deserializeAws_queryDeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteGroupPolicyCommand = async ( @@ -5352,49 +4616,28 @@ const deserializeAws_queryDeleteGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteInstanceProfileCommand = async ( @@ -5419,57 +4662,31 @@ const deserializeAws_queryDeleteInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteLoginProfileCommand = async ( @@ -5494,57 +4711,31 @@ const deserializeAws_queryDeleteLoginProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityTemporarilyUnmodifiableException": case "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": - response = { - ...(await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteOpenIDConnectProviderCommand = async ( @@ -5569,49 +4760,28 @@ const deserializeAws_queryDeleteOpenIDConnectProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeletePolicyCommand = async ( @@ -5636,65 +4806,34 @@ const deserializeAws_queryDeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeletePolicyVersionCommand = async ( @@ -5719,65 +4858,34 @@ const deserializeAws_queryDeletePolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteRoleCommand = async ( @@ -5802,73 +4910,37 @@ const deserializeAws_queryDeleteRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteRolePermissionsBoundaryCommand = async ( @@ -5893,49 +4965,28 @@ const deserializeAws_queryDeleteRolePermissionsBoundaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteRolePolicyCommand = async ( @@ -5960,57 +5011,31 @@ const deserializeAws_queryDeleteRolePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSAMLProviderCommand = async ( @@ -6035,57 +5060,31 @@ const deserializeAws_queryDeleteSAMLProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteServerCertificateCommand = async ( @@ -6110,57 +5109,31 @@ const deserializeAws_queryDeleteServerCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteServiceLinkedRoleCommand = async ( @@ -6188,49 +5161,28 @@ const deserializeAws_queryDeleteServiceLinkedRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteServiceSpecificCredentialCommand = async ( @@ -6255,33 +5207,22 @@ const deserializeAws_queryDeleteServiceSpecificCredentialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSigningCertificateCommand = async ( @@ -6306,49 +5247,28 @@ const deserializeAws_queryDeleteSigningCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSSHPublicKeyCommand = async ( @@ -6373,33 +5293,22 @@ const deserializeAws_queryDeleteSSHPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteUserCommand = async ( @@ -6424,65 +5333,34 @@ const deserializeAws_queryDeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteUserPermissionsBoundaryCommand = async ( @@ -6507,41 +5385,25 @@ const deserializeAws_queryDeleteUserPermissionsBoundaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteUserPolicyCommand = async ( @@ -6566,49 +5428,28 @@ const deserializeAws_queryDeleteUserPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteVirtualMFADeviceCommand = async ( @@ -6633,57 +5474,31 @@ const deserializeAws_queryDeleteVirtualMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iam#DeleteConflictException": - response = { - ...(await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDeleteConflictExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachGroupPolicyCommand = async ( @@ -6708,57 +5523,31 @@ const deserializeAws_queryDetachGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachRolePolicyCommand = async ( @@ -6783,65 +5572,34 @@ const deserializeAws_queryDetachRolePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDetachUserPolicyCommand = async ( @@ -6866,57 +5624,31 @@ const deserializeAws_queryDetachUserPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableMFADeviceCommand = async ( @@ -6941,73 +5673,37 @@ const deserializeAws_queryEnableMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityTemporarilyUnmodifiableException": case "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": - response = { - ...(await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context); case "InvalidAuthenticationCodeException": case "com.amazonaws.iam#InvalidAuthenticationCodeException": - response = { - ...(await deserializeAws_queryInvalidAuthenticationCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthenticationCodeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGenerateCredentialReportCommand = async ( @@ -7035,41 +5731,25 @@ const deserializeAws_queryGenerateCredentialReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGenerateOrganizationsAccessReportCommand = async ( @@ -7100,33 +5780,22 @@ const deserializeAws_queryGenerateOrganizationsAccessReportCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ReportGenerationLimitExceededException": case "com.amazonaws.iam#ReportGenerationLimitExceededException": - response = { - ...(await deserializeAws_queryReportGenerationLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReportGenerationLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGenerateServiceLastAccessedDetailsCommand = async ( @@ -7157,41 +5826,25 @@ const deserializeAws_queryGenerateServiceLastAccessedDetailsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetAccessKeyLastUsedCommand = async ( @@ -7219,33 +5872,22 @@ const deserializeAws_queryGetAccessKeyLastUsedCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetAccountAuthorizationDetailsCommand = async ( @@ -7276,33 +5918,22 @@ const deserializeAws_queryGetAccountAuthorizationDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetAccountPasswordPolicyCommand = async ( @@ -7330,41 +5961,25 @@ const deserializeAws_queryGetAccountPasswordPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetAccountSummaryCommand = async ( @@ -7392,33 +6007,22 @@ const deserializeAws_queryGetAccountSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetContextKeysForCustomPolicyCommand = async ( @@ -7446,33 +6050,22 @@ const deserializeAws_queryGetContextKeysForCustomPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetContextKeysForPrincipalPolicyCommand = async ( @@ -7500,41 +6093,25 @@ const deserializeAws_queryGetContextKeysForPrincipalPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetCredentialReportCommand = async ( @@ -7562,57 +6139,31 @@ const deserializeAws_queryGetCredentialReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CredentialReportExpiredException": case "com.amazonaws.iam#CredentialReportExpiredException": - response = { - ...(await deserializeAws_queryCredentialReportExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCredentialReportExpiredExceptionResponse(parsedOutput, context); case "CredentialReportNotPresentException": case "com.amazonaws.iam#CredentialReportNotPresentException": - response = { - ...(await deserializeAws_queryCredentialReportNotPresentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCredentialReportNotPresentExceptionResponse(parsedOutput, context); case "CredentialReportNotReadyException": case "com.amazonaws.iam#CredentialReportNotReadyException": - response = { - ...(await deserializeAws_queryCredentialReportNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCredentialReportNotReadyExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetGroupCommand = async ( @@ -7640,41 +6191,25 @@ const deserializeAws_queryGetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetGroupPolicyCommand = async ( @@ -7702,41 +6237,25 @@ const deserializeAws_queryGetGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetInstanceProfileCommand = async ( @@ -7764,41 +6283,25 @@ const deserializeAws_queryGetInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetLoginProfileCommand = async ( @@ -7826,41 +6329,25 @@ const deserializeAws_queryGetLoginProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetOpenIDConnectProviderCommand = async ( @@ -7888,49 +6375,28 @@ const deserializeAws_queryGetOpenIDConnectProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetOrganizationsAccessReportCommand = async ( @@ -7958,33 +6424,22 @@ const deserializeAws_queryGetOrganizationsAccessReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetPolicyCommand = async ( @@ -8012,49 +6467,28 @@ const deserializeAws_queryGetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetPolicyVersionCommand = async ( @@ -8082,49 +6516,28 @@ const deserializeAws_queryGetPolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetRoleCommand = async ( @@ -8152,41 +6565,25 @@ const deserializeAws_queryGetRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetRolePolicyCommand = async ( @@ -8214,41 +6611,25 @@ const deserializeAws_queryGetRolePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSAMLProviderCommand = async ( @@ -8276,49 +6657,28 @@ const deserializeAws_queryGetSAMLProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetServerCertificateCommand = async ( @@ -8346,41 +6706,25 @@ const deserializeAws_queryGetServerCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetServiceLastAccessedDetailsCommand = async ( @@ -8411,41 +6755,25 @@ const deserializeAws_queryGetServiceLastAccessedDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetServiceLastAccessedDetailsWithEntitiesCommand = async ( @@ -8476,41 +6804,25 @@ const deserializeAws_queryGetServiceLastAccessedDetailsWithEntitiesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetServiceLinkedRoleDeletionStatusCommand = async ( @@ -8541,49 +6853,28 @@ const deserializeAws_queryGetServiceLinkedRoleDeletionStatusCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSSHPublicKeyCommand = async ( @@ -8611,41 +6902,25 @@ const deserializeAws_queryGetSSHPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "UnrecognizedPublicKeyEncodingException": case "com.amazonaws.iam#UnrecognizedPublicKeyEncodingException": - response = { - ...(await deserializeAws_queryUnrecognizedPublicKeyEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnrecognizedPublicKeyEncodingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetUserCommand = async ( @@ -8673,41 +6948,25 @@ const deserializeAws_queryGetUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetUserPolicyCommand = async ( @@ -8735,41 +6994,25 @@ const deserializeAws_queryGetUserPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAccessKeysCommand = async ( @@ -8797,41 +7040,25 @@ const deserializeAws_queryListAccessKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAccountAliasesCommand = async ( @@ -8859,33 +7086,22 @@ const deserializeAws_queryListAccountAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAttachedGroupPoliciesCommand = async ( @@ -8913,49 +7129,28 @@ const deserializeAws_queryListAttachedGroupPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAttachedRolePoliciesCommand = async ( @@ -8983,49 +7178,28 @@ const deserializeAws_queryListAttachedRolePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListAttachedUserPoliciesCommand = async ( @@ -9053,49 +7227,28 @@ const deserializeAws_queryListAttachedUserPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListEntitiesForPolicyCommand = async ( @@ -9123,49 +7276,28 @@ const deserializeAws_queryListEntitiesForPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListGroupPoliciesCommand = async ( @@ -9193,41 +7325,25 @@ const deserializeAws_queryListGroupPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListGroupsCommand = async ( @@ -9255,33 +7371,22 @@ const deserializeAws_queryListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListGroupsForUserCommand = async ( @@ -9309,41 +7414,25 @@ const deserializeAws_queryListGroupsForUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListInstanceProfilesCommand = async ( @@ -9371,33 +7460,22 @@ const deserializeAws_queryListInstanceProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListInstanceProfilesForRoleCommand = async ( @@ -9425,41 +7503,25 @@ const deserializeAws_queryListInstanceProfilesForRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListInstanceProfileTagsCommand = async ( @@ -9487,41 +7549,25 @@ const deserializeAws_queryListInstanceProfileTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListMFADevicesCommand = async ( @@ -9549,41 +7595,25 @@ const deserializeAws_queryListMFADevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListMFADeviceTagsCommand = async ( @@ -9611,49 +7641,28 @@ const deserializeAws_queryListMFADeviceTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListOpenIDConnectProvidersCommand = async ( @@ -9681,33 +7690,22 @@ const deserializeAws_queryListOpenIDConnectProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListOpenIDConnectProviderTagsCommand = async ( @@ -9738,49 +7736,28 @@ const deserializeAws_queryListOpenIDConnectProviderTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPoliciesCommand = async ( @@ -9808,33 +7785,22 @@ const deserializeAws_queryListPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPoliciesGrantingServiceAccessCommand = async ( @@ -9865,41 +7831,25 @@ const deserializeAws_queryListPoliciesGrantingServiceAccessCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPolicyTagsCommand = async ( @@ -9927,49 +7877,28 @@ const deserializeAws_queryListPolicyTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPolicyVersionsCommand = async ( @@ -9997,49 +7926,28 @@ const deserializeAws_queryListPolicyVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListRolePoliciesCommand = async ( @@ -10067,41 +7975,25 @@ const deserializeAws_queryListRolePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListRolesCommand = async ( @@ -10129,33 +8021,22 @@ const deserializeAws_queryListRolesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListRoleTagsCommand = async ( @@ -10183,41 +8064,25 @@ const deserializeAws_queryListRoleTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSAMLProvidersCommand = async ( @@ -10245,33 +8110,22 @@ const deserializeAws_queryListSAMLProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSAMLProviderTagsCommand = async ( @@ -10299,49 +8153,28 @@ const deserializeAws_queryListSAMLProviderTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListServerCertificatesCommand = async ( @@ -10369,33 +8202,22 @@ const deserializeAws_queryListServerCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListServerCertificateTagsCommand = async ( @@ -10423,41 +8245,25 @@ const deserializeAws_queryListServerCertificateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListServiceSpecificCredentialsCommand = async ( @@ -10488,41 +8294,25 @@ const deserializeAws_queryListServiceSpecificCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceNotSupportedException": case "com.amazonaws.iam#ServiceNotSupportedException": - response = { - ...(await deserializeAws_queryServiceNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceNotSupportedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSigningCertificatesCommand = async ( @@ -10550,41 +8340,25 @@ const deserializeAws_queryListSigningCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSSHPublicKeysCommand = async ( @@ -10612,33 +8386,22 @@ const deserializeAws_queryListSSHPublicKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListUserPoliciesCommand = async ( @@ -10666,41 +8429,25 @@ const deserializeAws_queryListUserPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListUsersCommand = async ( @@ -10728,33 +8475,22 @@ const deserializeAws_queryListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListUserTagsCommand = async ( @@ -10782,41 +8518,25 @@ const deserializeAws_queryListUserTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListVirtualMFADevicesCommand = async ( @@ -10844,25 +8564,19 @@ const deserializeAws_queryListVirtualMFADevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutGroupPolicyCommand = async ( @@ -10887,57 +8601,31 @@ const deserializeAws_queryPutGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutRolePermissionsBoundaryCommand = async ( @@ -10962,65 +8650,34 @@ const deserializeAws_queryPutRolePermissionsBoundaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PolicyNotAttachableException": case "com.amazonaws.iam#PolicyNotAttachableException": - response = { - ...(await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutRolePolicyCommand = async ( @@ -11045,65 +8702,34 @@ const deserializeAws_queryPutRolePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutUserPermissionsBoundaryCommand = async ( @@ -11128,57 +8754,31 @@ const deserializeAws_queryPutUserPermissionsBoundaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PolicyNotAttachableException": case "com.amazonaws.iam#PolicyNotAttachableException": - response = { - ...(await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyNotAttachableExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutUserPolicyCommand = async ( @@ -11203,57 +8803,31 @@ const deserializeAws_queryPutUserPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveClientIDFromOpenIDConnectProviderCommand = async ( @@ -11278,49 +8852,28 @@ const deserializeAws_queryRemoveClientIDFromOpenIDConnectProviderCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveRoleFromInstanceProfileCommand = async ( @@ -11345,57 +8898,31 @@ const deserializeAws_queryRemoveRoleFromInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveUserFromGroupCommand = async ( @@ -11420,49 +8947,28 @@ const deserializeAws_queryRemoveUserFromGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetServiceSpecificCredentialCommand = async ( @@ -11493,33 +8999,22 @@ const deserializeAws_queryResetServiceSpecificCredentialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResyncMFADeviceCommand = async ( @@ -11544,57 +9039,31 @@ const deserializeAws_queryResyncMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAuthenticationCodeException": case "com.amazonaws.iam#InvalidAuthenticationCodeException": - response = { - ...(await deserializeAws_queryInvalidAuthenticationCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthenticationCodeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetDefaultPolicyVersionCommand = async ( @@ -11619,57 +9088,31 @@ const deserializeAws_querySetDefaultPolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetSecurityTokenServicePreferencesCommand = async ( @@ -11694,33 +9137,22 @@ const deserializeAws_querySetSecurityTokenServicePreferencesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySimulateCustomPolicyCommand = async ( @@ -11748,41 +9180,25 @@ const deserializeAws_querySimulateCustomPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "PolicyEvaluationException": case "com.amazonaws.iam#PolicyEvaluationException": - response = { - ...(await deserializeAws_queryPolicyEvaluationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyEvaluationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySimulatePrincipalPolicyCommand = async ( @@ -11810,49 +9226,28 @@ const deserializeAws_querySimulatePrincipalPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PolicyEvaluationException": case "com.amazonaws.iam#PolicyEvaluationException": - response = { - ...(await deserializeAws_queryPolicyEvaluationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPolicyEvaluationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagInstanceProfileCommand = async ( @@ -11877,65 +9272,34 @@ const deserializeAws_queryTagInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagMFADeviceCommand = async ( @@ -11960,65 +9324,34 @@ const deserializeAws_queryTagMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagOpenIDConnectProviderCommand = async ( @@ -12043,65 +9376,34 @@ const deserializeAws_queryTagOpenIDConnectProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagPolicyCommand = async ( @@ -12126,65 +9428,34 @@ const deserializeAws_queryTagPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagRoleCommand = async ( @@ -12209,65 +9480,34 @@ const deserializeAws_queryTagRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagSAMLProviderCommand = async ( @@ -12292,65 +9532,34 @@ const deserializeAws_queryTagSAMLProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagServerCertificateCommand = async ( @@ -12375,65 +9584,34 @@ const deserializeAws_queryTagServerCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagUserCommand = async ( @@ -12458,65 +9636,34 @@ const deserializeAws_queryTagUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagInstanceProfileCommand = async ( @@ -12541,57 +9688,31 @@ const deserializeAws_queryUntagInstanceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagMFADeviceCommand = async ( @@ -12616,57 +9737,31 @@ const deserializeAws_queryUntagMFADeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagOpenIDConnectProviderCommand = async ( @@ -12691,57 +9786,31 @@ const deserializeAws_queryUntagOpenIDConnectProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagPolicyCommand = async ( @@ -12766,57 +9835,31 @@ const deserializeAws_queryUntagPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagRoleCommand = async ( @@ -12841,49 +9884,28 @@ const deserializeAws_queryUntagRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagSAMLProviderCommand = async ( @@ -12908,57 +9930,31 @@ const deserializeAws_queryUntagSAMLProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagServerCertificateCommand = async ( @@ -12983,57 +9979,31 @@ const deserializeAws_queryUntagServerCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagUserCommand = async ( @@ -13058,49 +10028,28 @@ const deserializeAws_queryUntagUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateAccessKeyCommand = async ( @@ -13125,49 +10074,28 @@ const deserializeAws_queryUpdateAccessKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateAccountPasswordPolicyCommand = async ( @@ -13192,57 +10120,31 @@ const deserializeAws_queryUpdateAccountPasswordPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateAssumeRolePolicyCommand = async ( @@ -13267,65 +10169,34 @@ const deserializeAws_queryUpdateAssumeRolePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.iam#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateGroupCommand = async ( @@ -13350,57 +10221,31 @@ const deserializeAws_queryUpdateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateLoginProfileCommand = async ( @@ -13425,65 +10270,34 @@ const deserializeAws_queryUpdateLoginProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityTemporarilyUnmodifiableException": case "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": - response = { - ...(await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "PasswordPolicyViolationException": case "com.amazonaws.iam#PasswordPolicyViolationException": - response = { - ...(await deserializeAws_queryPasswordPolicyViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPasswordPolicyViolationExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateOpenIDConnectProviderThumbprintCommand = async ( @@ -13508,49 +10322,28 @@ const deserializeAws_queryUpdateOpenIDConnectProviderThumbprintCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateRoleCommand = async ( @@ -13578,49 +10371,28 @@ const deserializeAws_queryUpdateRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateRoleDescriptionCommand = async ( @@ -13648,49 +10420,28 @@ const deserializeAws_queryUpdateRoleDescriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); case "UnmodifiableEntityException": case "com.amazonaws.iam#UnmodifiableEntityException": - response = { - ...(await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnmodifiableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateSAMLProviderCommand = async ( @@ -13718,57 +10469,31 @@ const deserializeAws_queryUpdateSAMLProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateServerCertificateCommand = async ( @@ -13793,57 +10518,31 @@ const deserializeAws_queryUpdateServerCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateServiceSpecificCredentialCommand = async ( @@ -13868,33 +10567,22 @@ const deserializeAws_queryUpdateServiceSpecificCredentialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateSigningCertificateCommand = async ( @@ -13919,49 +10607,28 @@ const deserializeAws_queryUpdateSigningCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateSSHPublicKeyCommand = async ( @@ -13986,33 +10653,22 @@ const deserializeAws_queryUpdateSSHPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateUserCommand = async ( @@ -14037,73 +10693,37 @@ const deserializeAws_queryUpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityTemporarilyUnmodifiableException": case "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": - response = { - ...(await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUploadServerCertificateCommand = async ( @@ -14131,81 +10751,40 @@ const deserializeAws_queryUploadServerCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.iam#ConcurrentModificationException": - response = { - ...(await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.iam#InvalidInputException": - response = { - ...(await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidInputExceptionResponse(parsedOutput, context); case "KeyPairMismatchException": case "com.amazonaws.iam#KeyPairMismatchException": - response = { - ...(await deserializeAws_queryKeyPairMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKeyPairMismatchExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedCertificateException": case "com.amazonaws.iam#MalformedCertificateException": - response = { - ...(await deserializeAws_queryMalformedCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedCertificateExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUploadSigningCertificateCommand = async ( @@ -14233,81 +10812,40 @@ const deserializeAws_queryUploadSigningCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateCertificateException": case "com.amazonaws.iam#DuplicateCertificateException": - response = { - ...(await deserializeAws_queryDuplicateCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateCertificateExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.iam#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEntityAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidCertificateException": case "com.amazonaws.iam#InvalidCertificateException": - response = { - ...(await deserializeAws_queryInvalidCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCertificateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "MalformedCertificateException": case "com.amazonaws.iam#MalformedCertificateException": - response = { - ...(await deserializeAws_queryMalformedCertificateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedCertificateExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.iam#ServiceFailureException": - response = { - ...(await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUploadSSHPublicKeyCommand = async ( @@ -14335,65 +10873,34 @@ const deserializeAws_queryUploadSSHPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateSSHPublicKeyException": case "com.amazonaws.iam#DuplicateSSHPublicKeyException": - response = { - ...(await deserializeAws_queryDuplicateSSHPublicKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDuplicateSSHPublicKeyExceptionResponse(parsedOutput, context); case "InvalidPublicKeyException": case "com.amazonaws.iam#InvalidPublicKeyException": - response = { - ...(await deserializeAws_queryInvalidPublicKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidPublicKeyExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iam#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.iam#NoSuchEntityException": - response = { - ...(await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNoSuchEntityExceptionResponse(parsedOutput, context); case "UnrecognizedPublicKeyEncodingException": case "com.amazonaws.iam#UnrecognizedPublicKeyEncodingException": - response = { - ...(await deserializeAws_queryUnrecognizedPublicKeyEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnrecognizedPublicKeyEncodingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryConcurrentModificationExceptionResponse = async ( @@ -14402,13 +10909,11 @@ const deserializeAws_queryConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryConcurrentModificationException(body.Error, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCredentialReportExpiredExceptionResponse = async ( @@ -14417,13 +10922,11 @@ const deserializeAws_queryCredentialReportExpiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCredentialReportExpiredException(body.Error, context); - const contents: CredentialReportExpiredException = { - name: "CredentialReportExpiredException", - $fault: "client", + const exception = new CredentialReportExpiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCredentialReportNotPresentExceptionResponse = async ( @@ -14432,13 +10935,11 @@ const deserializeAws_queryCredentialReportNotPresentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCredentialReportNotPresentException(body.Error, context); - const contents: CredentialReportNotPresentException = { - name: "CredentialReportNotPresentException", - $fault: "client", + const exception = new CredentialReportNotPresentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCredentialReportNotReadyExceptionResponse = async ( @@ -14447,13 +10948,11 @@ const deserializeAws_queryCredentialReportNotReadyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCredentialReportNotReadyException(body.Error, context); - const contents: CredentialReportNotReadyException = { - name: "CredentialReportNotReadyException", - $fault: "client", + const exception = new CredentialReportNotReadyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDeleteConflictExceptionResponse = async ( @@ -14462,13 +10961,11 @@ const deserializeAws_queryDeleteConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDeleteConflictException(body.Error, context); - const contents: DeleteConflictException = { - name: "DeleteConflictException", - $fault: "client", + const exception = new DeleteConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateCertificateExceptionResponse = async ( @@ -14477,13 +10974,11 @@ const deserializeAws_queryDuplicateCertificateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateCertificateException(body.Error, context); - const contents: DuplicateCertificateException = { - name: "DuplicateCertificateException", - $fault: "client", + const exception = new DuplicateCertificateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDuplicateSSHPublicKeyExceptionResponse = async ( @@ -14492,13 +10987,11 @@ const deserializeAws_queryDuplicateSSHPublicKeyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDuplicateSSHPublicKeyException(body.Error, context); - const contents: DuplicateSSHPublicKeyException = { - name: "DuplicateSSHPublicKeyException", - $fault: "client", + const exception = new DuplicateSSHPublicKeyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEntityAlreadyExistsExceptionResponse = async ( @@ -14507,13 +11000,11 @@ const deserializeAws_queryEntityAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEntityAlreadyExistsException(body.Error, context); - const contents: EntityAlreadyExistsException = { - name: "EntityAlreadyExistsException", - $fault: "client", + const exception = new EntityAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse = async ( @@ -14522,13 +11013,11 @@ const deserializeAws_queryEntityTemporarilyUnmodifiableExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEntityTemporarilyUnmodifiableException(body.Error, context); - const contents: EntityTemporarilyUnmodifiableException = { - name: "EntityTemporarilyUnmodifiableException", - $fault: "client", + const exception = new EntityTemporarilyUnmodifiableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidAuthenticationCodeExceptionResponse = async ( @@ -14537,13 +11026,11 @@ const deserializeAws_queryInvalidAuthenticationCodeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidAuthenticationCodeException(body.Error, context); - const contents: InvalidAuthenticationCodeException = { - name: "InvalidAuthenticationCodeException", - $fault: "client", + const exception = new InvalidAuthenticationCodeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidCertificateExceptionResponse = async ( @@ -14552,13 +11039,11 @@ const deserializeAws_queryInvalidCertificateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidCertificateException(body.Error, context); - const contents: InvalidCertificateException = { - name: "InvalidCertificateException", - $fault: "client", + const exception = new InvalidCertificateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidInputExceptionResponse = async ( @@ -14567,13 +11052,11 @@ const deserializeAws_queryInvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidInputException(body.Error, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidPublicKeyExceptionResponse = async ( @@ -14582,13 +11065,11 @@ const deserializeAws_queryInvalidPublicKeyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidPublicKeyException(body.Error, context); - const contents: InvalidPublicKeyException = { - name: "InvalidPublicKeyException", - $fault: "client", + const exception = new InvalidPublicKeyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidUserTypeExceptionResponse = async ( @@ -14597,13 +11078,11 @@ const deserializeAws_queryInvalidUserTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidUserTypeException(body.Error, context); - const contents: InvalidUserTypeException = { - name: "InvalidUserTypeException", - $fault: "client", + const exception = new InvalidUserTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKeyPairMismatchExceptionResponse = async ( @@ -14612,13 +11091,11 @@ const deserializeAws_queryKeyPairMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKeyPairMismatchException(body.Error, context); - const contents: KeyPairMismatchException = { - name: "KeyPairMismatchException", - $fault: "client", + const exception = new KeyPairMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededExceptionResponse = async ( @@ -14627,13 +11104,11 @@ const deserializeAws_queryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededException(body.Error, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMalformedCertificateExceptionResponse = async ( @@ -14642,13 +11117,11 @@ const deserializeAws_queryMalformedCertificateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMalformedCertificateException(body.Error, context); - const contents: MalformedCertificateException = { - name: "MalformedCertificateException", - $fault: "client", + const exception = new MalformedCertificateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMalformedPolicyDocumentExceptionResponse = async ( @@ -14657,13 +11130,11 @@ const deserializeAws_queryMalformedPolicyDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMalformedPolicyDocumentException(body.Error, context); - const contents: MalformedPolicyDocumentException = { - name: "MalformedPolicyDocumentException", - $fault: "client", + const exception = new MalformedPolicyDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNoSuchEntityExceptionResponse = async ( @@ -14672,13 +11143,11 @@ const deserializeAws_queryNoSuchEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNoSuchEntityException(body.Error, context); - const contents: NoSuchEntityException = { - name: "NoSuchEntityException", - $fault: "client", + const exception = new NoSuchEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPasswordPolicyViolationExceptionResponse = async ( @@ -14687,13 +11156,11 @@ const deserializeAws_queryPasswordPolicyViolationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPasswordPolicyViolationException(body.Error, context); - const contents: PasswordPolicyViolationException = { - name: "PasswordPolicyViolationException", - $fault: "client", + const exception = new PasswordPolicyViolationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPolicyEvaluationExceptionResponse = async ( @@ -14702,13 +11169,11 @@ const deserializeAws_queryPolicyEvaluationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPolicyEvaluationException(body.Error, context); - const contents: PolicyEvaluationException = { - name: "PolicyEvaluationException", - $fault: "server", + const exception = new PolicyEvaluationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPolicyNotAttachableExceptionResponse = async ( @@ -14717,13 +11182,11 @@ const deserializeAws_queryPolicyNotAttachableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPolicyNotAttachableException(body.Error, context); - const contents: PolicyNotAttachableException = { - name: "PolicyNotAttachableException", - $fault: "client", + const exception = new PolicyNotAttachableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReportGenerationLimitExceededExceptionResponse = async ( @@ -14732,13 +11195,11 @@ const deserializeAws_queryReportGenerationLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReportGenerationLimitExceededException(body.Error, context); - const contents: ReportGenerationLimitExceededException = { - name: "ReportGenerationLimitExceededException", - $fault: "client", + const exception = new ReportGenerationLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryServiceFailureExceptionResponse = async ( @@ -14747,13 +11208,11 @@ const deserializeAws_queryServiceFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryServiceFailureException(body.Error, context); - const contents: ServiceFailureException = { - name: "ServiceFailureException", - $fault: "server", + const exception = new ServiceFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryServiceNotSupportedExceptionResponse = async ( @@ -14762,13 +11221,11 @@ const deserializeAws_queryServiceNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryServiceNotSupportedException(body.Error, context); - const contents: ServiceNotSupportedException = { - name: "ServiceNotSupportedException", - $fault: "client", + const exception = new ServiceNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnmodifiableEntityExceptionResponse = async ( @@ -14777,13 +11234,11 @@ const deserializeAws_queryUnmodifiableEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnmodifiableEntityException(body.Error, context); - const contents: UnmodifiableEntityException = { - name: "UnmodifiableEntityException", - $fault: "client", + const exception = new UnmodifiableEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnrecognizedPublicKeyEncodingExceptionResponse = async ( @@ -14792,13 +11247,11 @@ const deserializeAws_queryUnrecognizedPublicKeyEncodingExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnrecognizedPublicKeyEncodingException(body.Error, context); - const contents: UnrecognizedPublicKeyEncodingException = { - name: "UnrecognizedPublicKeyEncodingException", - $fault: "client", + const exception = new UnrecognizedPublicKeyEncodingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryActionNameListType = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-identitystore/src/index.ts b/clients/client-identitystore/src/index.ts index 4e93b669c934a..58f2303b3e709 100644 --- a/clients/client-identitystore/src/index.ts +++ b/clients/client-identitystore/src/index.ts @@ -3,3 +3,4 @@ export * from "./IdentitystoreClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IdentitystoreServiceException } from "./models/IdentitystoreServiceException"; diff --git a/clients/client-identitystore/src/models/IdentitystoreServiceException.ts b/clients/client-identitystore/src/models/IdentitystoreServiceException.ts new file mode 100644 index 0000000000000..8b8661030c8fb --- /dev/null +++ b/clients/client-identitystore/src/models/IdentitystoreServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Identitystore service. + */ +export class IdentitystoreServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IdentitystoreServiceException.prototype); + } +} diff --git a/clients/client-identitystore/src/models/models_0.ts b/clients/client-identitystore/src/models/models_0.ts index da538f23a9915..d402f76ff5d76 100644 --- a/clients/client-identitystore/src/models/models_0.ts +++ b/clients/client-identitystore/src/models/models_0.ts @@ -1,17 +1,32 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IdentitystoreServiceException as __BaseException } from "./IdentitystoreServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The identifier for each request. This value is a globally unique ID that is generated by the Identity Store service for each sent request, and is then returned inside the exception if the request fails.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface DescribeGroupRequest { @@ -68,14 +83,27 @@ export namespace DescribeGroupResponse { /** *

The request processing has failed because of an unknown error, exception or failure with an internal server.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; /** *

The identifier for each request. This value is a globally unique ID that is generated by the Identity Store service for each sent request, and is then returned inside the exception if the request fails.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum ResourceType { @@ -87,9 +115,9 @@ export enum ResourceType { /** *

Indicates that a requested resource is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The type of resource in the Identity Store service, which is an enum object. Valid values include USER, GROUP, and IDENTITY_STORE.

*/ @@ -105,32 +133,73 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The identifier for each request. This value is a globally unique ID that is generated by the Identity Store service for each sent request, and is then returned inside the exception if the request fails.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.ResourceType = opts.ResourceType; + this.ResourceId = opts.ResourceId; + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

Indicates that the principal has crossed the throttling limits of the API operations.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The identifier for each request. This value is a globally unique ID that is generated by the Identity Store service for each sent request, and is then returned inside the exception if the request fails.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

The request failed because it contains a syntax error.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The identifier for each request. This value is a globally unique ID that is generated by the Identity Store service for each sent request, and is then returned inside the exception if the request fails.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface DescribeUserRequest { diff --git a/clients/client-identitystore/src/protocols/Aws_json1_1.ts b/clients/client-identitystore/src/protocols/Aws_json1_1.ts index 1974638a253fc..134d1715175a8 100644 --- a/clients/client-identitystore/src/protocols/Aws_json1_1.ts +++ b/clients/client-identitystore/src/protocols/Aws_json1_1.ts @@ -1,18 +1,20 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DescribeGroupCommandInput, DescribeGroupCommandOutput } from "../commands/DescribeGroupCommand"; import { DescribeUserCommandInput, DescribeUserCommandOutput } from "../commands/DescribeUserCommand"; import { ListGroupsCommandInput, ListGroupsCommandOutput } from "../commands/ListGroupsCommand"; import { ListUsersCommandInput, ListUsersCommandOutput } from "../commands/ListUsersCommand"; +import { IdentitystoreServiceException as __BaseException } from "../models/IdentitystoreServiceException"; import { AccessDeniedException, DescribeGroupRequest, @@ -109,65 +111,34 @@ const deserializeAws_json1_1DescribeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.identitystore#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.identitystore#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.identitystore#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.identitystore#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.identitystore#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserCommand = async ( @@ -195,65 +166,34 @@ const deserializeAws_json1_1DescribeUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.identitystore#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.identitystore#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.identitystore#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.identitystore#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.identitystore#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGroupsCommand = async ( @@ -281,65 +221,34 @@ const deserializeAws_json1_1ListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.identitystore#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.identitystore#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.identitystore#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.identitystore#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.identitystore#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUsersCommand = async ( @@ -367,65 +276,34 @@ const deserializeAws_json1_1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.identitystore#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.identitystore#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.identitystore#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.identitystore#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.identitystore#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -434,13 +312,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -449,13 +325,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -464,13 +338,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -479,13 +351,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -494,13 +364,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1DescribeGroupRequest = (input: DescribeGroupRequest, context: __SerdeContext): any => { diff --git a/clients/client-imagebuilder/src/index.ts b/clients/client-imagebuilder/src/index.ts index fd077b787a2b6..fafe1e25ce4c8 100644 --- a/clients/client-imagebuilder/src/index.ts +++ b/clients/client-imagebuilder/src/index.ts @@ -3,3 +3,4 @@ export * from "./ImagebuilderClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ImagebuilderServiceException } from "./models/ImagebuilderServiceException"; diff --git a/clients/client-imagebuilder/src/models/ImagebuilderServiceException.ts b/clients/client-imagebuilder/src/models/ImagebuilderServiceException.ts new file mode 100644 index 0000000000000..9475872bd1f10 --- /dev/null +++ b/clients/client-imagebuilder/src/models/ImagebuilderServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Imagebuilder service. + */ +export class ImagebuilderServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ImagebuilderServiceException.prototype); + } +} diff --git a/clients/client-imagebuilder/src/models/models_0.ts b/clients/client-imagebuilder/src/models/models_0.ts index 4d5e27317cf58..494e760fbf53b 100644 --- a/clients/client-imagebuilder/src/models/models_0.ts +++ b/clients/client-imagebuilder/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ImagebuilderServiceException as __BaseException } from "./ImagebuilderServiceException"; /** *

Contains settings for the Systems Manager agent on your build instance.

@@ -232,10 +235,20 @@ export enum BuildType { /** *

You have exceeded the permitted request rate for the specific operation.

*/ -export interface CallRateLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CallRateLimitExceededException"; - $fault: "client"; - message?: string; +export class CallRateLimitExceededException extends __BaseException { + readonly name: "CallRateLimitExceededException" = "CallRateLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CallRateLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CallRateLimitExceededException.prototype); + } } export interface CancelImageCreationRequest { @@ -292,66 +305,136 @@ export namespace CancelImageCreationResponse { * behalf of a user that doesn't have permissions to use the action or resource, or specifying an * invalid resource identifier.

*/ -export interface ClientException extends __SmithyException, $MetadataBearer { - name: "ClientException"; - $fault: "client"; - message?: string; +export class ClientException extends __BaseException { + readonly name: "ClientException" = "ClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientException.prototype); + } } /** *

You are not authorized to perform the requested operation.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; - message?: string; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + } } /** *

You have specified a client token for an operation using parameter values that differ from * a previous request that used the same client token.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; - message?: string; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + } } /** *

You have made a request for an action that is not supported by the service.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The resource that you are trying to operate on is currently in use. Review the message * details and retry later.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

This exception is thrown when the service encounters an unrecoverable exception.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; - message?: string; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + } } /** *

The service is unable to process your request at this time.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** @@ -1261,28 +1344,58 @@ export namespace CreateComponentResponse { *

You have specified two or more mutually exclusive parameters. Review the error message for * details.

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; - message?: string; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + } } /** *

Your version number is out of bounds or does not follow the required syntax.

*/ -export interface InvalidVersionNumberException extends __SmithyException, $MetadataBearer { - name: "InvalidVersionNumberException"; - $fault: "client"; - message?: string; +export class InvalidVersionNumberException extends __BaseException { + readonly name: "InvalidVersionNumberException" = "InvalidVersionNumberException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVersionNumberException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVersionNumberException.prototype); + } } /** *

You have exceeded the number of permitted resources or operations for this service. For service quotas, see EC2 Image Builder endpoints and quotas.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface CreateContainerRecipeRequest { @@ -1417,10 +1530,20 @@ export namespace CreateContainerRecipeResponse { /** *

The resource that you are trying to create already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** @@ -2244,10 +2367,20 @@ export namespace DeleteComponentResponse { *

You have attempted to mutate or delete a resource with a dependency that prohibits this * action. See the error message for more details.

*/ -export interface ResourceDependencyException extends __SmithyException, $MetadataBearer { - name: "ResourceDependencyException"; - $fault: "client"; - message?: string; +export class ResourceDependencyException extends __BaseException { + readonly name: "ResourceDependencyException" = "ResourceDependencyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDependencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDependencyException.prototype); + } } export interface DeleteContainerRecipeRequest { @@ -2680,10 +2813,20 @@ export namespace GetComponentPolicyResponse { /** *

At least one of the resources referenced by your request does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface GetContainerRecipeRequest { @@ -3724,10 +3867,20 @@ export namespace ImportVmImageResponse { /** *

You have provided an invalid pagination token in your request.

*/ -export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationTokenException"; - $fault: "client"; - message?: string; +export class InvalidPaginationTokenException extends __BaseException { + readonly name: "InvalidPaginationTokenException" = "InvalidPaginationTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationTokenException.prototype); + } } export interface ListComponentBuildVersionsRequest { @@ -4911,10 +5064,20 @@ export namespace ListInfrastructureConfigurationsResponse { *

The specified parameter is invalid. Review the available parameters for the API * request.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } export interface ListTagsForResourceRequest { @@ -4952,10 +5115,20 @@ export namespace ListTagsForResourceResponse { /** *

The value that you provided for the specified parameter is invalid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; - message?: string; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } export interface PutComponentPolicyRequest { diff --git a/clients/client-imagebuilder/src/protocols/Aws_restJson1.ts b/clients/client-imagebuilder/src/protocols/Aws_restJson1.ts index 5a33f2a0e2457..9e5d7544c9e06 100644 --- a/clients/client-imagebuilder/src/protocols/Aws_restJson1.ts +++ b/clients/client-imagebuilder/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -144,6 +143,7 @@ import { UpdateInfrastructureConfigurationCommandInput, UpdateInfrastructureConfigurationCommandOutput, } from "../commands/UpdateInfrastructureConfigurationCommand"; +import { ImagebuilderServiceException as __BaseException } from "../models/ImagebuilderServiceException"; import { AdditionalInstanceConfiguration, Ami, @@ -1759,89 +1759,43 @@ const deserializeAws_restJson1CancelImageCreationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateComponentCommand = async ( @@ -1878,113 +1832,52 @@ const deserializeAws_restJson1CreateComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.imagebuilder#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidVersionNumberException": case "com.amazonaws.imagebuilder#InvalidVersionNumberException": - response = { - ...(await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateContainerRecipeCommand = async ( @@ -2021,113 +1914,52 @@ const deserializeAws_restJson1CreateContainerRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidVersionNumberException": case "com.amazonaws.imagebuilder#InvalidVersionNumberException": - response = { - ...(await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.imagebuilder#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDistributionConfigurationCommand = async ( @@ -2164,113 +1996,52 @@ const deserializeAws_restJson1CreateDistributionConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.imagebuilder#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.imagebuilder#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateImageCommand = async ( @@ -2307,97 +2078,46 @@ const deserializeAws_restJson1CreateImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateImagePipelineCommand = async ( @@ -2434,105 +2154,49 @@ const deserializeAws_restJson1CreateImagePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.imagebuilder#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateImageRecipeCommand = async ( @@ -2569,113 +2233,52 @@ const deserializeAws_restJson1CreateImageRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidVersionNumberException": case "com.amazonaws.imagebuilder#InvalidVersionNumberException": - response = { - ...(await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.imagebuilder#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInfrastructureConfigurationCommand = async ( @@ -2712,105 +2315,49 @@ const deserializeAws_restJson1CreateInfrastructureConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.imagebuilder#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.imagebuilder#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteComponentCommand = async ( @@ -2843,81 +2390,40 @@ const deserializeAws_restJson1DeleteComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteContainerRecipeCommand = async ( @@ -2950,81 +2456,40 @@ const deserializeAws_restJson1DeleteContainerRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDistributionConfigurationCommand = async ( @@ -3057,81 +2522,40 @@ const deserializeAws_restJson1DeleteDistributionConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteImageCommand = async ( @@ -3164,81 +2588,40 @@ const deserializeAws_restJson1DeleteImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteImagePipelineCommand = async ( @@ -3271,81 +2654,40 @@ const deserializeAws_restJson1DeleteImagePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteImageRecipeCommand = async ( @@ -3378,81 +2720,40 @@ const deserializeAws_restJson1DeleteImageRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInfrastructureConfigurationCommand = async ( @@ -3485,81 +2786,40 @@ const deserializeAws_restJson1DeleteInfrastructureConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceDependencyException": case "com.amazonaws.imagebuilder#ResourceDependencyException": - response = { - ...(await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceDependencyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetComponentCommand = async ( @@ -3592,73 +2852,37 @@ const deserializeAws_restJson1GetComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetComponentPolicyCommand = async ( @@ -3691,73 +2915,37 @@ const deserializeAws_restJson1GetComponentPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContainerRecipeCommand = async ( @@ -3790,73 +2978,37 @@ const deserializeAws_restJson1GetContainerRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContainerRecipePolicyCommand = async ( @@ -3889,73 +3041,37 @@ const deserializeAws_restJson1GetContainerRecipePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDistributionConfigurationCommand = async ( @@ -3991,73 +3107,37 @@ const deserializeAws_restJson1GetDistributionConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImageCommand = async ( @@ -4090,73 +3170,37 @@ const deserializeAws_restJson1GetImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImagePipelineCommand = async ( @@ -4189,73 +3233,37 @@ const deserializeAws_restJson1GetImagePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImagePolicyCommand = async ( @@ -4288,73 +3296,37 @@ const deserializeAws_restJson1GetImagePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImageRecipeCommand = async ( @@ -4387,73 +3359,37 @@ const deserializeAws_restJson1GetImageRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImageRecipePolicyCommand = async ( @@ -4486,73 +3422,37 @@ const deserializeAws_restJson1GetImageRecipePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInfrastructureConfigurationCommand = async ( @@ -4588,73 +3488,37 @@ const deserializeAws_restJson1GetInfrastructureConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportComponentCommand = async ( @@ -4691,105 +3555,49 @@ const deserializeAws_restJson1ImportComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.imagebuilder#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidVersionNumberException": case "com.amazonaws.imagebuilder#InvalidVersionNumberException": - response = { - ...(await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidVersionNumberExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportVmImageCommand = async ( @@ -4826,49 +3634,28 @@ const deserializeAws_restJson1ImportVmImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListComponentBuildVersionsCommand = async ( @@ -4905,81 +3692,40 @@ const deserializeAws_restJson1ListComponentBuildVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListComponentsCommand = async ( @@ -5016,81 +3762,40 @@ const deserializeAws_restJson1ListComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContainerRecipesCommand = async ( @@ -5130,81 +3835,40 @@ const deserializeAws_restJson1ListContainerRecipesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDistributionConfigurationsCommand = async ( @@ -5244,81 +3908,40 @@ const deserializeAws_restJson1ListDistributionConfigurationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImageBuildVersionsCommand = async ( @@ -5355,81 +3978,40 @@ const deserializeAws_restJson1ListImageBuildVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImagePackagesCommand = async ( @@ -5466,89 +4048,43 @@ const deserializeAws_restJson1ListImagePackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImagePipelineImagesCommand = async ( @@ -5585,89 +4121,43 @@ const deserializeAws_restJson1ListImagePipelineImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImagePipelinesCommand = async ( @@ -5704,81 +4194,40 @@ const deserializeAws_restJson1ListImagePipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImageRecipesCommand = async ( @@ -5818,81 +4267,40 @@ const deserializeAws_restJson1ListImageRecipesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImagesCommand = async ( @@ -5929,81 +4337,40 @@ const deserializeAws_restJson1ListImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInfrastructureConfigurationsCommand = async ( @@ -6046,81 +4413,40 @@ const deserializeAws_restJson1ListInfrastructureConfigurationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.imagebuilder#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -6149,49 +4475,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.imagebuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutComponentPolicyCommand = async ( @@ -6224,89 +4529,43 @@ const deserializeAws_restJson1PutComponentPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.imagebuilder#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutContainerRecipePolicyCommand = async ( @@ -6339,89 +4598,43 @@ const deserializeAws_restJson1PutContainerRecipePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.imagebuilder#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutImagePolicyCommand = async ( @@ -6454,89 +4667,43 @@ const deserializeAws_restJson1PutImagePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.imagebuilder#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutImageRecipePolicyCommand = async ( @@ -6569,89 +4736,43 @@ const deserializeAws_restJson1PutImageRecipePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.imagebuilder#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartImagePipelineExecutionCommand = async ( @@ -6688,97 +4809,46 @@ const deserializeAws_restJson1StartImagePipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -6803,49 +4873,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.imagebuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -6870,49 +4919,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.imagebuilder#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.imagebuilder#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDistributionConfigurationCommand = async ( @@ -6949,97 +4977,46 @@ const deserializeAws_restJson1UpdateDistributionConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.imagebuilder#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateImagePipelineCommand = async ( @@ -7076,89 +5053,43 @@ const deserializeAws_restJson1UpdateImagePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInfrastructureConfigurationCommand = async ( @@ -7195,378 +5126,315 @@ const deserializeAws_restJson1UpdateInfrastructureConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CallRateLimitExceededException": case "com.amazonaws.imagebuilder#CallRateLimitExceededException": - response = { - ...(await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CallRateLimitExceededExceptionResponse(parsedOutput, context); case "ClientException": case "com.amazonaws.imagebuilder#ClientException": - response = { - ...(await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.imagebuilder#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.imagebuilder#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.imagebuilder#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.imagebuilder#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.imagebuilder#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.imagebuilder#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1CallRateLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CallRateLimitExceededException = { - name: "CallRateLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new CallRateLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientException = { - name: "ClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new IdempotentParameterMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidPaginationTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidPaginationTokenException = { - name: "InvalidPaginationTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidPaginationTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterCombinationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterCombinationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidVersionNumberExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidVersionNumberException = { - name: "InvalidVersionNumberException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidVersionNumberException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceDependencyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceDependencyException = { - name: "ResourceDependencyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceDependencyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-inspector/src/index.ts b/clients/client-inspector/src/index.ts index 1b759d117f0b7..1db488c505fea 100644 --- a/clients/client-inspector/src/index.ts +++ b/clients/client-inspector/src/index.ts @@ -3,3 +3,4 @@ export * from "./InspectorClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { InspectorServiceException } from "./models/InspectorServiceException"; diff --git a/clients/client-inspector/src/models/InspectorServiceException.ts b/clients/client-inspector/src/models/InspectorServiceException.ts new file mode 100644 index 0000000000000..1f682913e78c2 --- /dev/null +++ b/clients/client-inspector/src/models/InspectorServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Inspector service. + */ +export class InspectorServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, InspectorServiceException.prototype); + } +} diff --git a/clients/client-inspector/src/models/models_0.ts b/clients/client-inspector/src/models/models_0.ts index 3f25c02fa194d..f558afa7f34ad 100644 --- a/clients/client-inspector/src/models/models_0.ts +++ b/clients/client-inspector/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { InspectorServiceException as __BaseException } from "./InspectorServiceException"; export enum AccessDeniedErrorCode { ACCESS_DENIED_TO_ASSESSMENT_RUN = "ACCESS_DENIED_TO_ASSESSMENT_RUN", @@ -14,14 +17,9 @@ export enum AccessDeniedErrorCode { /** *

You do not have required permissions to access the requested resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

Code that indicates the type of error that is generated.

*/ @@ -31,6 +29,20 @@ export interface AccessDeniedException extends __SmithyException, $MetadataBeare *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.errorCode = opts.errorCode; + this.canRetry = opts.canRetry; + } } /** @@ -133,18 +145,26 @@ export namespace AddAttributesToFindingsResponse { /** *

Internal server error.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; /** - *

Details of the exception error.

+ *

You can immediately retry your request.

*/ - message: string | undefined; + canRetry: boolean | undefined; /** - *

You can immediately retry your request.

+ * @internal */ - canRetry: boolean | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + this.canRetry = opts.canRetry; + } } export enum InvalidInputErrorCode { @@ -208,14 +228,9 @@ export enum InvalidInputErrorCode { *

The request was rejected because an invalid or out-of-range value was supplied for an * input parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; /** *

Code that indicates the type of error that is generated.

*/ @@ -225,6 +240,20 @@ export interface InvalidInputException extends __SmithyException, $MetadataBeare *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.errorCode = opts.errorCode; + this.canRetry = opts.canRetry; + } } export enum NoSuchEntityErrorCode { @@ -242,14 +271,9 @@ export enum NoSuchEntityErrorCode { *

The request was rejected because it referenced an entity that does not exist. The * error code describes the entity.

*/ -export interface NoSuchEntityException extends __SmithyException, $MetadataBearer { - name: "NoSuchEntityException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class NoSuchEntityException extends __BaseException { + readonly name: "NoSuchEntityException" = "NoSuchEntityException"; + readonly $fault: "client" = "client"; /** *

Code that indicates the type of error that is generated.

*/ @@ -259,23 +283,45 @@ export interface NoSuchEntityException extends __SmithyException, $MetadataBeare *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchEntityException.prototype); + this.errorCode = opts.errorCode; + this.canRetry = opts.canRetry; + } } /** *

The serice is temporary unavailable.

*/ -export interface ServiceTemporarilyUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceTemporarilyUnavailableException"; - $fault: "server"; +export class ServiceTemporarilyUnavailableException extends __BaseException { + readonly name: "ServiceTemporarilyUnavailableException" = "ServiceTemporarilyUnavailableException"; + readonly $fault: "server" = "server"; /** - *

Details of the exception error.

+ *

You can wait and then retry your request.

*/ - message: string | undefined; + canRetry: boolean | undefined; /** - *

You can wait and then retry your request.

+ * @internal */ - canRetry: boolean | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceTemporarilyUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceTemporarilyUnavailableException.prototype); + this.canRetry = opts.canRetry; + } } /** @@ -407,14 +453,9 @@ export namespace AgentPreview { *

You started an assessment run, but one of the instances is already participating in * another assessment run.

*/ -export interface AgentsAlreadyRunningAssessmentException extends __SmithyException, $MetadataBearer { - name: "AgentsAlreadyRunningAssessmentException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class AgentsAlreadyRunningAssessmentException extends __BaseException { + readonly name: "AgentsAlreadyRunningAssessmentException" = "AgentsAlreadyRunningAssessmentException"; + readonly $fault: "client" = "client"; /** *

*/ @@ -429,6 +470,21 @@ export interface AgentsAlreadyRunningAssessmentException extends __SmithyExcepti *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AgentsAlreadyRunningAssessmentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AgentsAlreadyRunningAssessmentException.prototype); + this.agents = opts.agents; + this.agentsTruncated = opts.agentsTruncated; + this.canRetry = opts.canRetry; + } } export enum Severity { @@ -839,14 +895,9 @@ export namespace AssessmentRunFilter { *

You cannot perform a specified action if an assessment run is currently in * progress.

*/ -export interface AssessmentRunInProgressException extends __SmithyException, $MetadataBearer { - name: "AssessmentRunInProgressException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class AssessmentRunInProgressException extends __BaseException { + readonly name: "AssessmentRunInProgressException" = "AssessmentRunInProgressException"; + readonly $fault: "client" = "client"; /** *

The ARNs of the assessment runs that are currently in progress.

*/ @@ -862,6 +913,21 @@ export interface AssessmentRunInProgressException extends __SmithyException, $Me *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssessmentRunInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssessmentRunInProgressException.prototype); + this.assessmentRunArns = opts.assessmentRunArns; + this.assessmentRunArnsTruncated = opts.assessmentRunArnsTruncated; + this.canRetry = opts.canRetry; + } } /** @@ -1285,14 +1351,9 @@ export enum InvalidCrossAccountRoleErrorCode { *

Amazon Inspector cannot assume the cross-account role that it needs to list your EC2 * instances during the assessment run.

*/ -export interface InvalidCrossAccountRoleException extends __SmithyException, $MetadataBearer { - name: "InvalidCrossAccountRoleException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class InvalidCrossAccountRoleException extends __BaseException { + readonly name: "InvalidCrossAccountRoleException" = "InvalidCrossAccountRoleException"; + readonly $fault: "client" = "client"; /** *

Code that indicates the type of error that is generated.

*/ @@ -1302,6 +1363,20 @@ export interface InvalidCrossAccountRoleException extends __SmithyException, $Me *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCrossAccountRoleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCrossAccountRoleException.prototype); + this.errorCode = opts.errorCode; + this.canRetry = opts.canRetry; + } } export enum LimitExceededErrorCode { @@ -1316,14 +1391,9 @@ export enum LimitExceededErrorCode { *

The request was rejected because it attempted to create resources beyond the current * AWS account limits. The error code describes the limit exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - /** - *

Details of the exception error.

- */ - message: string | undefined; - +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

Code that indicates the type of error that is generated.

*/ @@ -1333,6 +1403,20 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear *

You can immediately retry your request.

*/ canRetry: boolean | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.errorCode = opts.errorCode; + this.canRetry = opts.canRetry; + } } export interface CreateAssessmentTemplateRequest { @@ -1434,10 +1518,20 @@ export namespace CreateExclusionsPreviewResponse { *

The request is rejected. The specified assessment template is currently generating an * exclusions preview.

*/ -export interface PreviewGenerationInProgressException extends __SmithyException, $MetadataBearer { - name: "PreviewGenerationInProgressException"; - $fault: "client"; - message: string | undefined; +export class PreviewGenerationInProgressException extends __BaseException { + readonly name: "PreviewGenerationInProgressException" = "PreviewGenerationInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreviewGenerationInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreviewGenerationInProgressException.prototype); + } } /** @@ -2346,11 +2440,22 @@ export namespace GetAssessmentReportResponse { * took place or will take place after generating reports in Amazon Inspector became * available.

*/ -export interface UnsupportedFeatureException extends __SmithyException, $MetadataBearer { - name: "UnsupportedFeatureException"; - $fault: "client"; - message: string | undefined; +export class UnsupportedFeatureException extends __BaseException { + readonly name: "UnsupportedFeatureException" = "UnsupportedFeatureException"; + readonly $fault: "client" = "client"; canRetry: boolean | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedFeatureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedFeatureException.prototype); + this.canRetry = opts.canRetry; + } } export interface GetExclusionsPreviewRequest { diff --git a/clients/client-inspector/src/protocols/Aws_json1_1.ts b/clients/client-inspector/src/protocols/Aws_json1_1.ts index f8099be70161f..c73834d4c348f 100644 --- a/clients/client-inspector/src/protocols/Aws_json1_1.ts +++ b/clients/client-inspector/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -133,6 +132,7 @@ import { UpdateAssessmentTargetCommandInput, UpdateAssessmentTargetCommandOutput, } from "../commands/UpdateAssessmentTargetCommand"; +import { InspectorServiceException as __BaseException } from "../models/InspectorServiceException"; import { AccessDeniedException, AddAttributesToFindingsRequest, @@ -753,65 +753,34 @@ const deserializeAws_json1_1AddAttributesToFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAssessmentTargetCommand = async ( @@ -839,81 +808,40 @@ const deserializeAws_json1_1CreateAssessmentTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidCrossAccountRoleException": case "com.amazonaws.inspector#InvalidCrossAccountRoleException": - response = { - ...(await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.inspector#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAssessmentTemplateCommand = async ( @@ -941,73 +869,37 @@ const deserializeAws_json1_1CreateAssessmentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.inspector#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateExclusionsPreviewCommand = async ( @@ -1035,73 +927,37 @@ const deserializeAws_json1_1CreateExclusionsPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "PreviewGenerationInProgressException": case "com.amazonaws.inspector#PreviewGenerationInProgressException": - response = { - ...(await deserializeAws_json1_1PreviewGenerationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreviewGenerationInProgressExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResourceGroupCommand = async ( @@ -1129,65 +985,34 @@ const deserializeAws_json1_1CreateResourceGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.inspector#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAssessmentRunCommand = async ( @@ -1212,73 +1037,37 @@ const deserializeAws_json1_1DeleteAssessmentRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AssessmentRunInProgressException": case "com.amazonaws.inspector#AssessmentRunInProgressException": - response = { - ...(await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAssessmentTargetCommand = async ( @@ -1303,73 +1092,37 @@ const deserializeAws_json1_1DeleteAssessmentTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AssessmentRunInProgressException": case "com.amazonaws.inspector#AssessmentRunInProgressException": - response = { - ...(await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAssessmentTemplateCommand = async ( @@ -1394,73 +1147,37 @@ const deserializeAws_json1_1DeleteAssessmentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AssessmentRunInProgressException": case "com.amazonaws.inspector#AssessmentRunInProgressException": - response = { - ...(await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAssessmentRunsCommand = async ( @@ -1488,41 +1205,25 @@ const deserializeAws_json1_1DescribeAssessmentRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAssessmentTargetsCommand = async ( @@ -1550,41 +1251,25 @@ const deserializeAws_json1_1DescribeAssessmentTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAssessmentTemplatesCommand = async ( @@ -1612,41 +1297,25 @@ const deserializeAws_json1_1DescribeAssessmentTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCrossAccountAccessRoleCommand = async ( @@ -1674,33 +1343,22 @@ const deserializeAws_json1_1DescribeCrossAccountAccessRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExclusionsCommand = async ( @@ -1728,41 +1386,25 @@ const deserializeAws_json1_1DescribeExclusionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFindingsCommand = async ( @@ -1790,41 +1432,25 @@ const deserializeAws_json1_1DescribeFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeResourceGroupsCommand = async ( @@ -1852,41 +1478,25 @@ const deserializeAws_json1_1DescribeResourceGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRulesPackagesCommand = async ( @@ -1914,41 +1524,25 @@ const deserializeAws_json1_1DescribeRulesPackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAssessmentReportCommand = async ( @@ -1976,81 +1570,40 @@ const deserializeAws_json1_1GetAssessmentReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AssessmentRunInProgressException": case "com.amazonaws.inspector#AssessmentRunInProgressException": - response = { - ...(await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssessmentRunInProgressExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); case "UnsupportedFeatureException": case "com.amazonaws.inspector#UnsupportedFeatureException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetExclusionsPreviewCommand = async ( @@ -2078,57 +1631,31 @@ const deserializeAws_json1_1GetExclusionsPreviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTelemetryMetadataCommand = async ( @@ -2156,57 +1683,31 @@ const deserializeAws_json1_1GetTelemetryMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssessmentRunAgentsCommand = async ( @@ -2234,57 +1735,31 @@ const deserializeAws_json1_1ListAssessmentRunAgentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssessmentRunsCommand = async ( @@ -2312,57 +1787,31 @@ const deserializeAws_json1_1ListAssessmentRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssessmentTargetsCommand = async ( @@ -2390,49 +1839,28 @@ const deserializeAws_json1_1ListAssessmentTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssessmentTemplatesCommand = async ( @@ -2460,57 +1888,31 @@ const deserializeAws_json1_1ListAssessmentTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventSubscriptionsCommand = async ( @@ -2538,57 +1940,31 @@ const deserializeAws_json1_1ListEventSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExclusionsCommand = async ( @@ -2616,57 +1992,31 @@ const deserializeAws_json1_1ListExclusionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFindingsCommand = async ( @@ -2694,57 +2044,31 @@ const deserializeAws_json1_1ListFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRulesPackagesCommand = async ( @@ -2772,49 +2096,28 @@ const deserializeAws_json1_1ListRulesPackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2842,57 +2145,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PreviewAgentsCommand = async ( @@ -2920,65 +2197,34 @@ const deserializeAws_json1_1PreviewAgentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidCrossAccountRoleException": case "com.amazonaws.inspector#InvalidCrossAccountRoleException": - response = { - ...(await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterCrossAccountAccessRoleCommand = async ( @@ -3003,65 +2249,34 @@ const deserializeAws_json1_1RegisterCrossAccountAccessRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidCrossAccountRoleException": case "com.amazonaws.inspector#InvalidCrossAccountRoleException": - response = { - ...(await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveAttributesFromFindingsCommand = async ( @@ -3089,65 +2304,34 @@ const deserializeAws_json1_1RemoveAttributesFromFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetTagsForResourceCommand = async ( @@ -3172,65 +2356,34 @@ const deserializeAws_json1_1SetTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartAssessmentRunCommand = async ( @@ -3258,89 +2411,43 @@ const deserializeAws_json1_1StartAssessmentRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AgentsAlreadyRunningAssessmentException": case "com.amazonaws.inspector#AgentsAlreadyRunningAssessmentException": - response = { - ...(await deserializeAws_json1_1AgentsAlreadyRunningAssessmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AgentsAlreadyRunningAssessmentExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidCrossAccountRoleException": case "com.amazonaws.inspector#InvalidCrossAccountRoleException": - response = { - ...(await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.inspector#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopAssessmentRunCommand = async ( @@ -3365,65 +2472,34 @@ const deserializeAws_json1_1StopAssessmentRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SubscribeToEventCommand = async ( @@ -3448,73 +2524,37 @@ const deserializeAws_json1_1SubscribeToEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.inspector#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnsubscribeFromEventCommand = async ( @@ -3539,65 +2579,34 @@ const deserializeAws_json1_1UnsubscribeFromEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAssessmentTargetCommand = async ( @@ -3622,65 +2631,34 @@ const deserializeAws_json1_1UpdateAssessmentTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.inspector#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.inspector#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NoSuchEntityException": case "com.amazonaws.inspector#NoSuchEntityException": - response = { - ...(await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchEntityExceptionResponse(parsedOutput, context); case "ServiceTemporarilyUnavailableException": case "com.amazonaws.inspector#ServiceTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -3689,13 +2667,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AgentsAlreadyRunningAssessmentExceptionResponse = async ( @@ -3704,13 +2680,11 @@ const deserializeAws_json1_1AgentsAlreadyRunningAssessmentExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AgentsAlreadyRunningAssessmentException(body, context); - const contents: AgentsAlreadyRunningAssessmentException = { - name: "AgentsAlreadyRunningAssessmentException", - $fault: "client", + const exception = new AgentsAlreadyRunningAssessmentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssessmentRunInProgressExceptionResponse = async ( @@ -3719,13 +2693,11 @@ const deserializeAws_json1_1AssessmentRunInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssessmentRunInProgressException(body, context); - const contents: AssessmentRunInProgressException = { - name: "AssessmentRunInProgressException", - $fault: "client", + const exception = new AssessmentRunInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalExceptionResponse = async ( @@ -3734,13 +2706,11 @@ const deserializeAws_json1_1InternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalException(body, context); - const contents: InternalException = { - name: "InternalException", - $fault: "server", + const exception = new InternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse = async ( @@ -3749,13 +2719,11 @@ const deserializeAws_json1_1InvalidCrossAccountRoleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCrossAccountRoleException(body, context); - const contents: InvalidCrossAccountRoleException = { - name: "InvalidCrossAccountRoleException", - $fault: "client", + const exception = new InvalidCrossAccountRoleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -3764,13 +2732,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -3779,13 +2745,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchEntityExceptionResponse = async ( @@ -3794,13 +2758,11 @@ const deserializeAws_json1_1NoSuchEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchEntityException(body, context); - const contents: NoSuchEntityException = { - name: "NoSuchEntityException", - $fault: "client", + const exception = new NoSuchEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PreviewGenerationInProgressExceptionResponse = async ( @@ -3809,13 +2771,11 @@ const deserializeAws_json1_1PreviewGenerationInProgressExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PreviewGenerationInProgressException(body, context); - const contents: PreviewGenerationInProgressException = { - name: "PreviewGenerationInProgressException", - $fault: "client", + const exception = new PreviewGenerationInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse = async ( @@ -3824,13 +2784,11 @@ const deserializeAws_json1_1ServiceTemporarilyUnavailableExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceTemporarilyUnavailableException(body, context); - const contents: ServiceTemporarilyUnavailableException = { - name: "ServiceTemporarilyUnavailableException", - $fault: "server", + const exception = new ServiceTemporarilyUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedFeatureExceptionResponse = async ( @@ -3839,13 +2797,11 @@ const deserializeAws_json1_1UnsupportedFeatureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedFeatureException(body, context); - const contents: UnsupportedFeatureException = { - name: "UnsupportedFeatureException", - $fault: "client", + const exception = new UnsupportedFeatureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddAttributesToFindingsRequest = ( diff --git a/clients/client-inspector2/src/index.ts b/clients/client-inspector2/src/index.ts index 270dabdbb80ff..4a135d1ec568d 100644 --- a/clients/client-inspector2/src/index.ts +++ b/clients/client-inspector2/src/index.ts @@ -3,3 +3,4 @@ export * from "./Inspector2Client"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { Inspector2ServiceException } from "./models/Inspector2ServiceException"; diff --git a/clients/client-inspector2/src/models/Inspector2ServiceException.ts b/clients/client-inspector2/src/models/Inspector2ServiceException.ts new file mode 100644 index 0000000000000..dc40f4d34f9bc --- /dev/null +++ b/clients/client-inspector2/src/models/Inspector2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Inspector2 service. + */ +export class Inspector2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Inspector2ServiceException.prototype); + } +} diff --git a/clients/client-inspector2/src/models/models_0.ts b/clients/client-inspector2/src/models/models_0.ts index d1325d3184c95..9d5cb0449a95b 100644 --- a/clients/client-inspector2/src/models/models_0.ts +++ b/clients/client-inspector2/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Inspector2ServiceException as __BaseException } from "./Inspector2ServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum Status { @@ -1501,24 +1514,46 @@ export namespace AssociateMemberResponse { /** *

The request has failed due to an internal failure of the Amazon Inspector service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; /** *

The number of seconds to wait before retrying the request.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The limit on the number of requests per second was exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** @@ -1555,10 +1590,9 @@ export enum ValidationExceptionReason { *

The request has failed validation due to missing required fields or having invalid * inputs.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The reason for the validation failure.

*/ @@ -1568,6 +1602,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The fields that failed validation.

*/ fields?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fields = opts.fields; + } } /** @@ -1717,10 +1765,20 @@ export namespace AwsEcrContainerImageDetails { /** *

One or more tags submitted as part of the request is not valid.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message: string | undefined; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } export interface BatchGetAccountStatusRequest { @@ -1802,10 +1860,20 @@ export namespace BatchGetAccountStatusResponse { /** *

The operation tried to access an invalid resource. Make sure the resource is specified correctly.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface BatchGetFreeTrialInfoRequest { @@ -1983,10 +2051,9 @@ export namespace CancelFindingsReportResponse { /** *

A conflict occurred.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The ID of the conflicting resource.

*/ @@ -1996,6 +2063,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the conflicting resource.

*/ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } export enum GroupKey { @@ -2712,14 +2793,26 @@ export namespace CreateFilterResponse { *

You have exceeded your service quota. To perform the requested action, remove some of * the relevant resources, or use Service Quotas to request a service quota increase.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that exceeds a service quota.

*/ resourceId: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + } } export enum ReportFormat { diff --git a/clients/client-inspector2/src/protocols/Aws_restJson1.ts b/clients/client-inspector2/src/protocols/Aws_restJson1.ts index 2a2bf1fb5ebcb..5771a77d51640 100644 --- a/clients/client-inspector2/src/protocols/Aws_restJson1.ts +++ b/clients/client-inspector2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -16,10 +17,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -98,6 +97,7 @@ import { UpdateOrganizationConfigurationCommandInput, UpdateOrganizationConfigurationCommandOutput, } from "../commands/UpdateOrganizationConfigurationCommand"; +import { Inspector2ServiceException as __BaseException } from "../models/Inspector2ServiceException"; import { AccessDeniedException, Account, @@ -1038,57 +1038,31 @@ const deserializeAws_restJson1AssociateMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGetAccountStatusCommand = async ( @@ -1121,65 +1095,34 @@ const deserializeAws_restJson1BatchGetAccountStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGetFreeTrialInfoCommand = async ( @@ -1212,57 +1155,31 @@ const deserializeAws_restJson1BatchGetFreeTrialInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelFindingsReportCommand = async ( @@ -1291,65 +1208,34 @@ const deserializeAws_restJson1CancelFindingsReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFilterCommand = async ( @@ -1378,73 +1264,37 @@ const deserializeAws_restJson1CreateFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.inspector2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.inspector2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFindingsReportCommand = async ( @@ -1473,65 +1323,34 @@ const deserializeAws_restJson1CreateFindingsReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFilterCommand = async ( @@ -1560,65 +1379,34 @@ const deserializeAws_restJson1DeleteFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationConfigurationCommand = async ( @@ -1651,57 +1439,31 @@ const deserializeAws_restJson1DescribeOrganizationConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableCommand = async ( @@ -1734,65 +1496,34 @@ const deserializeAws_restJson1DisableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableDelegatedAdminAccountCommand = async ( @@ -1821,73 +1552,37 @@ const deserializeAws_restJson1DisableDelegatedAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.inspector2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateMemberCommand = async ( @@ -1916,57 +1611,31 @@ const deserializeAws_restJson1DisassociateMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableCommand = async ( @@ -1999,65 +1668,34 @@ const deserializeAws_restJson1EnableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableDelegatedAdminAccountCommand = async ( @@ -2086,73 +1724,37 @@ const deserializeAws_restJson1EnableDelegatedAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.inspector2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDelegatedAdminAccountCommand = async ( @@ -2181,65 +1783,34 @@ const deserializeAws_restJson1GetDelegatedAdminAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsReportStatusCommand = async ( @@ -2288,65 +1859,34 @@ const deserializeAws_restJson1GetFindingsReportStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMemberCommand = async ( @@ -2375,65 +1915,34 @@ const deserializeAws_restJson1GetMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccountPermissionsCommand = async ( @@ -2466,57 +1975,31 @@ const deserializeAws_restJson1ListAccountPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoverageCommand = async ( @@ -2549,49 +2032,28 @@ const deserializeAws_restJson1ListCoverageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoverageStatisticsCommand = async ( @@ -2628,49 +2090,28 @@ const deserializeAws_restJson1ListCoverageStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDelegatedAdminAccountsCommand = async ( @@ -2706,57 +2147,31 @@ const deserializeAws_restJson1ListDelegatedAdminAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFiltersCommand = async ( @@ -2789,57 +2204,31 @@ const deserializeAws_restJson1ListFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingAggregationsCommand = async ( @@ -2876,49 +2265,28 @@ const deserializeAws_restJson1ListFindingAggregationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingsCommand = async ( @@ -2951,49 +2319,28 @@ const deserializeAws_restJson1ListFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMembersCommand = async ( @@ -3026,57 +2373,31 @@ const deserializeAws_restJson1ListMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3105,57 +2426,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUsageTotalsCommand = async ( @@ -3188,57 +2483,31 @@ const deserializeAws_restJson1ListUsageTotalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3263,65 +2532,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.inspector2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3346,57 +2584,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFilterCommand = async ( @@ -3425,65 +2637,34 @@ const deserializeAws_restJson1UpdateFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.inspector2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOrganizationConfigurationCommand = async ( @@ -3512,105 +2693,70 @@ const deserializeAws_restJson1UpdateOrganizationConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.inspector2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.inspector2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.inspector2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.inspector2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3621,21 +2767,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3643,37 +2786,34 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3681,38 +2821,34 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.resourceId !== undefined && data.resourceId !== null) { contents.resourceId = __expectString(data.resourceId); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fields: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fields !== undefined && data.fields !== null) { contents.fields = deserializeAws_restJson1ValidationExceptionFields(data.fields, context); @@ -3723,7 +2859,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountAggregation = (input: AccountAggregation, context: __SerdeContext): any => { diff --git a/clients/client-iot-1click-devices-service/src/index.ts b/clients/client-iot-1click-devices-service/src/index.ts index b0c5e7556e2e5..a221e138e7c6b 100644 --- a/clients/client-iot-1click-devices-service/src/index.ts +++ b/clients/client-iot-1click-devices-service/src/index.ts @@ -2,3 +2,4 @@ export * from "./IoT1ClickDevicesService"; export * from "./IoT1ClickDevicesServiceClient"; export * from "./commands"; export * from "./models"; +export { IoT1ClickDevicesServiceServiceException } from "./models/IoT1ClickDevicesServiceServiceException"; diff --git a/clients/client-iot-1click-devices-service/src/models/IoT1ClickDevicesServiceServiceException.ts b/clients/client-iot-1click-devices-service/src/models/IoT1ClickDevicesServiceServiceException.ts new file mode 100644 index 0000000000000..c760c9ec904eb --- /dev/null +++ b/clients/client-iot-1click-devices-service/src/models/IoT1ClickDevicesServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoT1ClickDevicesService service. + */ +export class IoT1ClickDevicesServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoT1ClickDevicesServiceServiceException.prototype); + } +} diff --git a/clients/client-iot-1click-devices-service/src/models/models_0.ts b/clients/client-iot-1click-devices-service/src/models/models_0.ts index 2b730a1696c73..7f38ac2f9806d 100644 --- a/clients/client-iot-1click-devices-service/src/models/models_0.ts +++ b/clients/client-iot-1click-devices-service/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoT1ClickDevicesServiceServiceException as __BaseException } from "./IoT1ClickDevicesServiceServiceException"; export interface DeviceDescription { /** @@ -165,9 +168,9 @@ export namespace ClaimDevicesByClaimCodeResponse { }); } -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** *

403

*/ @@ -177,11 +180,24 @@ export interface ForbiddenException extends __SmithyException, $MetadataBearer { *

The 403 error message returned by the web server.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; /** *

500

*/ @@ -191,11 +207,24 @@ export interface InternalFailureException extends __SmithyException, $MetadataBe *

The 500 error message returned by the web server.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** *

400

*/ @@ -205,6 +234,19 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea *

The 400 error message returned by the web server.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface DescribeDeviceRequest { @@ -239,9 +281,9 @@ export namespace DescribeDeviceResponse { }); } -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

404

*/ @@ -251,6 +293,19 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The requested device could not be found.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface FinalizeDeviceClaimRequest { @@ -294,9 +349,9 @@ export namespace FinalizeDeviceClaimResponse { }); } -export interface PreconditionFailedException extends __SmithyException, $MetadataBearer { - name: "PreconditionFailedException"; - $fault: "client"; +export class PreconditionFailedException extends __BaseException { + readonly name: "PreconditionFailedException" = "PreconditionFailedException"; + readonly $fault: "client" = "client"; /** *

412

*/ @@ -306,11 +361,24 @@ export interface PreconditionFailedException extends __SmithyException, $Metadat *

An error message explaining the error or its remedy.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailedException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; /** *

409

*/ @@ -320,6 +388,19 @@ export interface ResourceConflictException extends __SmithyException, $MetadataB *

An error message explaining the error or its remedy.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface GetDeviceMethodsRequest { @@ -428,9 +509,9 @@ export namespace InvokeDeviceMethodResponse { }); } -export interface RangeNotSatisfiableException extends __SmithyException, $MetadataBearer { - name: "RangeNotSatisfiableException"; - $fault: "client"; +export class RangeNotSatisfiableException extends __BaseException { + readonly name: "RangeNotSatisfiableException" = "RangeNotSatisfiableException"; + readonly $fault: "client" = "client"; /** *

416

*/ @@ -441,6 +522,19 @@ export interface RangeNotSatisfiableException extends __SmithyException, $Metada * satisfied.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RangeNotSatisfiableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RangeNotSatisfiableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface ListDeviceEventsRequest { diff --git a/clients/client-iot-1click-devices-service/src/protocols/Aws_restJson1.ts b/clients/client-iot-1click-devices-service/src/protocols/Aws_restJson1.ts index 1fa4cd1dc6b4b..d0a334b24a7a3 100644 --- a/clients/client-iot-1click-devices-service/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-1click-devices-service/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -41,6 +40,7 @@ import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/T import { UnclaimDeviceCommandInput, UnclaimDeviceCommandOutput } from "../commands/UnclaimDeviceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateDeviceStateCommandInput, UpdateDeviceStateCommandOutput } from "../commands/UpdateDeviceStateCommand"; +import { IoT1ClickDevicesServiceServiceException as __BaseException } from "../models/IoT1ClickDevicesServiceServiceException"; import { Attributes, Device, @@ -494,49 +494,28 @@ const deserializeAws_restJson1ClaimDevicesByClaimCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.iot1clickdevicesservice#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeviceCommand = async ( @@ -565,49 +544,28 @@ const deserializeAws_restJson1DescribeDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1FinalizeDeviceClaimCommand = async ( @@ -636,65 +594,34 @@ const deserializeAws_restJson1FinalizeDeviceClaimCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.iot1clickdevicesservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.iot1clickdevicesservice#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeviceMethodsCommand = async ( @@ -723,49 +650,28 @@ const deserializeAws_restJson1GetDeviceMethodsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitiateDeviceClaimCommand = async ( @@ -794,57 +700,31 @@ const deserializeAws_restJson1InitiateDeviceClaimCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.iot1clickdevicesservice#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InvokeDeviceMethodCommand = async ( @@ -873,73 +753,37 @@ const deserializeAws_restJson1InvokeDeviceMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.iot1clickdevicesservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "RangeNotSatisfiableException": case "com.amazonaws.iot1clickdevicesservice#RangeNotSatisfiableException": - response = { - ...(await deserializeAws_restJson1RangeNotSatisfiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RangeNotSatisfiableExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.iot1clickdevicesservice#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeviceEventsCommand = async ( @@ -972,57 +816,31 @@ const deserializeAws_restJson1ListDeviceEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "RangeNotSatisfiableException": case "com.amazonaws.iot1clickdevicesservice#RangeNotSatisfiableException": - response = { - ...(await deserializeAws_restJson1RangeNotSatisfiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RangeNotSatisfiableExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevicesCommand = async ( @@ -1055,49 +873,28 @@ const deserializeAws_restJson1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "RangeNotSatisfiableException": case "com.amazonaws.iot1clickdevicesservice#RangeNotSatisfiableException": - response = { - ...(await deserializeAws_restJson1RangeNotSatisfiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RangeNotSatisfiableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1126,41 +923,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1185,49 +966,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnclaimDeviceCommand = async ( @@ -1256,49 +1016,28 @@ const deserializeAws_restJson1UnclaimDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1323,49 +1062,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeviceStateCommand = async ( @@ -1390,62 +1108,35 @@ const deserializeAws_restJson1UpdateDeviceStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickdevicesservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickdevicesservice#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickdevicesservice#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1453,20 +1144,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1474,20 +1163,18 @@ const deserializeAws_restJson1InternalFailureExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1495,20 +1182,18 @@ const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailedException = { - name: "PreconditionFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1516,20 +1201,18 @@ const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new PreconditionFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RangeNotSatisfiableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RangeNotSatisfiableException = { - name: "RangeNotSatisfiableException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1537,20 +1220,18 @@ const deserializeAws_restJson1RangeNotSatisfiableExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new RangeNotSatisfiableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1558,20 +1239,18 @@ const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.Code = __expectString(data.code); @@ -1579,7 +1258,11 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__mapOf__string = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-iot-1click-projects/src/index.ts b/clients/client-iot-1click-projects/src/index.ts index 3d86c5a72618f..800a5e0de6a97 100644 --- a/clients/client-iot-1click-projects/src/index.ts +++ b/clients/client-iot-1click-projects/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoT1ClickProjectsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoT1ClickProjectsServiceException } from "./models/IoT1ClickProjectsServiceException"; diff --git a/clients/client-iot-1click-projects/src/models/IoT1ClickProjectsServiceException.ts b/clients/client-iot-1click-projects/src/models/IoT1ClickProjectsServiceException.ts new file mode 100644 index 0000000000000..822271455f80e --- /dev/null +++ b/clients/client-iot-1click-projects/src/models/IoT1ClickProjectsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoT1ClickProjects service. + */ +export class IoT1ClickProjectsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoT1ClickProjectsServiceException.prototype); + } +} diff --git a/clients/client-iot-1click-projects/src/models/models_0.ts b/clients/client-iot-1click-projects/src/models/models_0.ts index e29950c0a874b..0bb76146c006c 100644 --- a/clients/client-iot-1click-projects/src/models/models_0.ts +++ b/clients/client-iot-1click-projects/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoT1ClickProjectsServiceException as __BaseException } from "./IoT1ClickProjectsServiceException"; export interface AssociateDeviceWithPlacementRequest { /** @@ -47,41 +50,85 @@ export namespace AssociateDeviceWithPlacementResponse { /** *

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; code: string | undefined; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + this.code = opts.code; + } } /** *

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; code: string | undefined; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.code = opts.code; + } } /** *

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; code: string | undefined; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + this.code = opts.code; + } } /** *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; code: string | undefined; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + } } export interface CreatePlacementRequest { @@ -255,11 +302,22 @@ export namespace DeletePlacementResponse { /** *

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; code: string | undefined; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.code = opts.code; + } } export interface DeleteProjectRequest { diff --git a/clients/client-iot-1click-projects/src/protocols/Aws_restJson1.ts b/clients/client-iot-1click-projects/src/protocols/Aws_restJson1.ts index aa3ec74fbedea..8893e1224f141 100644 --- a/clients/client-iot-1click-projects/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-1click-projects/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -43,6 +42,7 @@ import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/T import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdatePlacementCommandInput, UpdatePlacementCommandOutput } from "../commands/UpdatePlacementCommand"; import { UpdateProjectCommandInput, UpdateProjectCommandOutput } from "../commands/UpdateProjectCommand"; +import { IoT1ClickProjectsServiceException as __BaseException } from "../models/IoT1ClickProjectsServiceException"; import { DeviceTemplate, InternalFailureException, @@ -656,57 +656,31 @@ const deserializeAws_restJson1AssociateDeviceWithPlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.iot1clickprojects#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePlacementCommand = async ( @@ -731,57 +705,31 @@ const deserializeAws_restJson1CreatePlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.iot1clickprojects#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProjectCommand = async ( @@ -806,49 +754,28 @@ const deserializeAws_restJson1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.iot1clickprojects#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePlacementCommand = async ( @@ -873,57 +800,31 @@ const deserializeAws_restJson1DeletePlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.iot1clickprojects#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProjectCommand = async ( @@ -948,57 +849,31 @@ const deserializeAws_restJson1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.iot1clickprojects#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePlacementCommand = async ( @@ -1027,49 +902,28 @@ const deserializeAws_restJson1DescribePlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProjectCommand = async ( @@ -1098,49 +952,28 @@ const deserializeAws_restJson1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateDeviceFromPlacementCommand = async ( @@ -1165,57 +998,31 @@ const deserializeAws_restJson1DisassociateDeviceFromPlacementCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.iot1clickprojects#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDevicesInPlacementCommand = async ( @@ -1244,49 +1051,28 @@ const deserializeAws_restJson1GetDevicesInPlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPlacementsCommand = async ( @@ -1319,49 +1105,28 @@ const deserializeAws_restJson1ListPlacementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectsCommand = async ( @@ -1394,41 +1159,25 @@ const deserializeAws_restJson1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1457,49 +1206,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1524,49 +1252,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1591,49 +1298,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePlacementCommand = async ( @@ -1658,57 +1344,31 @@ const deserializeAws_restJson1UpdatePlacementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.iot1clickprojects#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProjectCommand = async ( @@ -1733,70 +1393,38 @@ const deserializeAws_restJson1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot1clickprojects#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot1clickprojects#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot1clickprojects#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.iot1clickprojects#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -1804,20 +1432,18 @@ const deserializeAws_restJson1InternalFailureExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -1825,20 +1451,18 @@ const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -1846,20 +1470,18 @@ const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -1867,20 +1489,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -1888,7 +1508,11 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DefaultPlacementAttributeMap = ( diff --git a/clients/client-iot-data-plane/src/index.ts b/clients/client-iot-data-plane/src/index.ts index b3c62ffa4da5e..5a74c43363a6b 100644 --- a/clients/client-iot-data-plane/src/index.ts +++ b/clients/client-iot-data-plane/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTDataPlaneClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTDataPlaneServiceException } from "./models/IoTDataPlaneServiceException"; diff --git a/clients/client-iot-data-plane/src/models/IoTDataPlaneServiceException.ts b/clients/client-iot-data-plane/src/models/IoTDataPlaneServiceException.ts new file mode 100644 index 0000000000000..557dba014532c --- /dev/null +++ b/clients/client-iot-data-plane/src/models/IoTDataPlaneServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTDataPlane service. + */ +export class IoTDataPlaneServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTDataPlaneServiceException.prototype); + } +} diff --git a/clients/client-iot-data-plane/src/models/models_0.ts b/clients/client-iot-data-plane/src/models/models_0.ts index 6a0cc4c215cb6..e894fe40f8468 100644 --- a/clients/client-iot-data-plane/src/models/models_0.ts +++ b/clients/client-iot-data-plane/src/models/models_0.ts @@ -1,15 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTDataPlaneServiceException as __BaseException } from "./IoTDataPlaneServiceException"; /** *

The specified version does not match the version of the document.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -58,97 +68,153 @@ export namespace DeleteThingShadowResponse { /** *

An unexpected error has occurred.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The specified combination of HTTP verb and URI is not supported.

*/ -export interface MethodNotAllowedException extends __SmithyException, $MetadataBearer { - name: "MethodNotAllowedException"; - $fault: "client"; +export class MethodNotAllowedException extends __BaseException { + readonly name: "MethodNotAllowedException" = "MethodNotAllowedException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MethodNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MethodNotAllowedException.prototype); + } } /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The service is temporarily unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The rate exceeds the limit.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

You are not authorized to perform this operation.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** *

The document encoding is not supported.

*/ -export interface UnsupportedDocumentEncodingException extends __SmithyException, $MetadataBearer { - name: "UnsupportedDocumentEncodingException"; - $fault: "client"; +export class UnsupportedDocumentEncodingException extends __BaseException { + readonly name: "UnsupportedDocumentEncodingException" = "UnsupportedDocumentEncodingException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedDocumentEncodingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedDocumentEncodingException.prototype); + } } /** @@ -422,13 +488,20 @@ export namespace PublishRequest { /** *

The payload exceeds the maximum size allowed.

*/ -export interface RequestEntityTooLargeException extends __SmithyException, $MetadataBearer { - name: "RequestEntityTooLargeException"; - $fault: "client"; +export class RequestEntityTooLargeException extends __BaseException { + readonly name: "RequestEntityTooLargeException" = "RequestEntityTooLargeException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestEntityTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestEntityTooLargeException.prototype); + } } /** diff --git a/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts b/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts index 88fea79b389a0..291bdc26d6fe9 100644 --- a/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-data-plane/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteThingShadowCommandInput, DeleteThingShadowCommandOutput } from "../commands/DeleteThingShadowCommand"; @@ -28,6 +27,7 @@ import { } from "../commands/ListRetainedMessagesCommand"; import { PublishCommandInput, PublishCommandOutput } from "../commands/PublishCommand"; import { UpdateThingShadowCommandInput, UpdateThingShadowCommandOutput } from "../commands/UpdateThingShadowCommand"; +import { IoTDataPlaneServiceException as __BaseException } from "../models/IoTDataPlaneServiceException"; import { ConflictException, InternalFailureException, @@ -295,89 +295,43 @@ const deserializeAws_restJson1DeleteThingShadowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedDocumentEncodingException": case "com.amazonaws.iotdataplane#UnsupportedDocumentEncodingException": - response = { - ...(await deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRetainedMessageCommand = async ( @@ -418,81 +372,40 @@ const deserializeAws_restJson1GetRetainedMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetThingShadowCommand = async ( @@ -519,89 +432,43 @@ const deserializeAws_restJson1GetThingShadowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedDocumentEncodingException": case "com.amazonaws.iotdataplane#UnsupportedDocumentEncodingException": - response = { - ...(await deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNamedShadowsForThingCommand = async ( @@ -638,81 +505,40 @@ const deserializeAws_restJson1ListNamedShadowsForThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRetainedMessagesCommand = async ( @@ -745,73 +571,37 @@ const deserializeAws_restJson1ListRetainedMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishCommand = async ( @@ -836,57 +626,31 @@ const deserializeAws_restJson1PublishCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThingShadowCommand = async ( @@ -913,267 +677,206 @@ const deserializeAws_restJson1UpdateThingShadowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iotdataplane#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotdataplane#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.iotdataplane#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "RequestEntityTooLargeException": case "com.amazonaws.iotdataplane#RequestEntityTooLargeException": - response = { - ...(await deserializeAws_restJson1RequestEntityTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestEntityTooLargeExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotdataplane#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "UnsupportedDocumentEncodingException": case "com.amazonaws.iotdataplane#UnsupportedDocumentEncodingException": - response = { - ...(await deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MethodNotAllowedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MethodNotAllowedException = { - name: "MethodNotAllowedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MethodNotAllowedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestEntityTooLargeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestEntityTooLargeException = { - name: "RequestEntityTooLargeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new RequestEntityTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedDocumentEncodingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedDocumentEncodingException = { - name: "UnsupportedDocumentEncodingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedDocumentEncodingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NamedShadowList = (output: any, context: __SerdeContext): string[] => { diff --git a/clients/client-iot-events-data/src/index.ts b/clients/client-iot-events-data/src/index.ts index 0161cdb2d4edb..c99f3a6e0b8f2 100644 --- a/clients/client-iot-events-data/src/index.ts +++ b/clients/client-iot-events-data/src/index.ts @@ -2,3 +2,4 @@ export * from "./IoTEventsData"; export * from "./IoTEventsDataClient"; export * from "./commands"; export * from "./models"; +export { IoTEventsDataServiceException } from "./models/IoTEventsDataServiceException"; diff --git a/clients/client-iot-events-data/src/models/IoTEventsDataServiceException.ts b/clients/client-iot-events-data/src/models/IoTEventsDataServiceException.ts new file mode 100644 index 0000000000000..67acb3a9ff896 --- /dev/null +++ b/clients/client-iot-events-data/src/models/IoTEventsDataServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTEventsData service. + */ +export class IoTEventsDataServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTEventsDataServiceException.prototype); + } +} diff --git a/clients/client-iot-events-data/src/models/models_0.ts b/clients/client-iot-events-data/src/models/models_0.ts index 8f351140bff20..48992a656b9ce 100644 --- a/clients/client-iot-events-data/src/models/models_0.ts +++ b/clients/client-iot-events-data/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTEventsDataServiceException as __BaseException } from "./IoTEventsDataServiceException"; /** *

Contains the configuration information of an acknowledge action.

@@ -628,49 +631,77 @@ export namespace BatchAcknowledgeAlarmResponse { /** *

An internal failure occurred.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request was invalid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The request could not be completed due to throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** @@ -1288,13 +1319,20 @@ export namespace DescribeAlarmResponse { /** *

The resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DescribeDetectorRequest { diff --git a/clients/client-iot-events-data/src/protocols/Aws_restJson1.ts b/clients/client-iot-events-data/src/protocols/Aws_restJson1.ts index 92ce8bfef1194..535d762a7a412 100644 --- a/clients/client-iot-events-data/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-events-data/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -33,6 +32,7 @@ import { DescribeAlarmCommandInput, DescribeAlarmCommandOutput } from "../comman import { DescribeDetectorCommandInput, DescribeDetectorCommandOutput } from "../commands/DescribeDetectorCommand"; import { ListAlarmsCommandInput, ListAlarmsCommandOutput } from "../commands/ListAlarmsCommand"; import { ListDetectorsCommandInput, ListDetectorsCommandOutput } from "../commands/ListDetectorsCommand"; +import { IoTEventsDataServiceException as __BaseException } from "../models/IoTEventsDataServiceException"; import { AcknowledgeActionConfiguration, AcknowledgeAlarmActionRequest, @@ -424,57 +424,31 @@ const deserializeAws_restJson1BatchAcknowledgeAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDisableAlarmCommand = async ( @@ -503,57 +477,31 @@ const deserializeAws_restJson1BatchDisableAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchEnableAlarmCommand = async ( @@ -582,57 +530,31 @@ const deserializeAws_restJson1BatchEnableAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchPutMessageCommand = async ( @@ -664,57 +586,31 @@ const deserializeAws_restJson1BatchPutMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchResetAlarmCommand = async ( @@ -743,57 +639,31 @@ const deserializeAws_restJson1BatchResetAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchSnoozeAlarmCommand = async ( @@ -822,57 +692,31 @@ const deserializeAws_restJson1BatchSnoozeAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdateDetectorCommand = async ( @@ -904,57 +748,31 @@ const deserializeAws_restJson1BatchUpdateDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAlarmCommand = async ( @@ -983,65 +801,34 @@ const deserializeAws_restJson1DescribeAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ioteventsdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDetectorCommand = async ( @@ -1070,65 +857,34 @@ const deserializeAws_restJson1DescribeDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ioteventsdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAlarmsCommand = async ( @@ -1161,65 +917,34 @@ const deserializeAws_restJson1ListAlarmsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ioteventsdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDetectorsCommand = async ( @@ -1252,150 +977,114 @@ const deserializeAws_restJson1ListDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.ioteventsdata#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ioteventsdata#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ioteventsdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ioteventsdata#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ioteventsdata#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AcknowledgeAlarmActionRequest = ( diff --git a/clients/client-iot-events/src/index.ts b/clients/client-iot-events/src/index.ts index a5534411b25cd..8a4793324c379 100644 --- a/clients/client-iot-events/src/index.ts +++ b/clients/client-iot-events/src/index.ts @@ -2,3 +2,4 @@ export * from "./IoTEvents"; export * from "./IoTEventsClient"; export * from "./commands"; export * from "./models"; +export { IoTEventsServiceException } from "./models/IoTEventsServiceException"; diff --git a/clients/client-iot-events/src/models/IoTEventsServiceException.ts b/clients/client-iot-events/src/models/IoTEventsServiceException.ts new file mode 100644 index 0000000000000..651a00cb0f660 --- /dev/null +++ b/clients/client-iot-events/src/models/IoTEventsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTEvents service. + */ +export class IoTEventsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTEventsServiceException.prototype); + } +} diff --git a/clients/client-iot-events/src/models/models_0.ts b/clients/client-iot-events/src/models/models_0.ts index a982189077ef4..53c07d39d00a0 100644 --- a/clients/client-iot-events/src/models/models_0.ts +++ b/clients/client-iot-events/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTEventsServiceException as __BaseException } from "./IoTEventsServiceException"; /** *

Specifies whether to get notified for alarm state changes.

@@ -1888,50 +1891,66 @@ export namespace CreateAlarmModelResponse { /** *

An internal failure occurred.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request was invalid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

A limit was exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - /** - *

The message for the exception.

- */ - message?: string; - +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource.

*/ @@ -1941,42 +1960,77 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

The ARN of the resource.

*/ resourceArn?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.resourceId = opts.resourceId; + this.resourceArn = opts.resourceArn; + } } /** *

The resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The request could not be completed due to throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** @@ -2479,13 +2533,20 @@ export namespace DeleteAlarmModelResponse { /** *

The resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DeleteDetectorModelRequest { @@ -2936,13 +2997,20 @@ export namespace DescribeLoggingOptionsResponse { /** *

The requested operation is not supported.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "server"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + } } /** diff --git a/clients/client-iot-events/src/protocols/Aws_restJson1.ts b/clients/client-iot-events/src/protocols/Aws_restJson1.ts index cd8f267cf2000..f809ba90928d2 100644 --- a/clients/client-iot-events/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-events/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateAlarmModelCommandInput, CreateAlarmModelCommandOutput } from "../commands/CreateAlarmModelCommand"; @@ -76,6 +75,7 @@ import { UpdateDetectorModelCommandOutput, } from "../commands/UpdateDetectorModelCommand"; import { UpdateInputCommandInput, UpdateInputCommandOutput } from "../commands/UpdateInputCommand"; +import { IoTEventsServiceException as __BaseException } from "../models/IoTEventsServiceException"; import { AcknowledgeFlow, Action, @@ -1001,81 +1001,40 @@ const deserializeAws_restJson1CreateAlarmModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotevents#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDetectorModelCommand = async ( @@ -1107,81 +1066,40 @@ const deserializeAws_restJson1CreateDetectorModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotevents#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInputCommand = async ( @@ -1210,65 +1128,34 @@ const deserializeAws_restJson1CreateInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotevents#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAlarmModelCommand = async ( @@ -1293,73 +1180,37 @@ const deserializeAws_restJson1DeleteAlarmModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDetectorModelCommand = async ( @@ -1384,73 +1235,37 @@ const deserializeAws_restJson1DeleteDetectorModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInputCommand = async ( @@ -1475,73 +1290,37 @@ const deserializeAws_restJson1DeleteInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAlarmModelCommand = async ( @@ -1626,65 +1405,34 @@ const deserializeAws_restJson1DescribeAlarmModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDetectorModelCommand = async ( @@ -1713,65 +1461,34 @@ const deserializeAws_restJson1DescribeDetectorModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDetectorModelAnalysisCommand = async ( @@ -1800,65 +1517,34 @@ const deserializeAws_restJson1DescribeDetectorModelAnalysisCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInputCommand = async ( @@ -1887,65 +1573,34 @@ const deserializeAws_restJson1DescribeInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeLoggingOptionsCommand = async ( @@ -1974,73 +1629,37 @@ const deserializeAws_restJson1DescribeLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.iotevents#UnsupportedOperationException": - response = { - ...(await deserializeAws_restJson1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDetectorModelAnalysisResultsCommand = async ( @@ -2073,65 +1692,34 @@ const deserializeAws_restJson1GetDetectorModelAnalysisResultsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAlarmModelsCommand = async ( @@ -2164,57 +1752,31 @@ const deserializeAws_restJson1ListAlarmModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAlarmModelVersionsCommand = async ( @@ -2250,65 +1812,34 @@ const deserializeAws_restJson1ListAlarmModelVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDetectorModelsCommand = async ( @@ -2344,57 +1875,31 @@ const deserializeAws_restJson1ListDetectorModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDetectorModelVersionsCommand = async ( @@ -2430,65 +1935,34 @@ const deserializeAws_restJson1ListDetectorModelVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInputRoutingsCommand = async ( @@ -2521,65 +1995,34 @@ const deserializeAws_restJson1ListInputRoutingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInputsCommand = async ( @@ -2612,57 +2055,31 @@ const deserializeAws_restJson1ListInputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2691,65 +2108,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutLoggingOptionsCommand = async ( @@ -2774,73 +2160,37 @@ const deserializeAws_restJson1PutLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.iotevents#UnsupportedOperationException": - response = { - ...(await deserializeAws_restJson1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartDetectorModelAnalysisCommand = async ( @@ -2869,65 +2219,34 @@ const deserializeAws_restJson1StartDetectorModelAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotevents#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2952,73 +2271,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotevents#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3043,65 +2326,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAlarmModelCommand = async ( @@ -3146,73 +2398,37 @@ const deserializeAws_restJson1UpdateAlarmModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDetectorModelCommand = async ( @@ -3244,73 +2460,37 @@ const deserializeAws_restJson1UpdateDetectorModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInputCommand = async ( @@ -3339,138 +2519,92 @@ const deserializeAws_restJson1UpdateInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotevents#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotevents#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotevents#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotevents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceArn: undefined, - resourceId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3481,92 +2615,91 @@ const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( if (data.resourceId !== undefined && data.resourceId !== null) { contents.resourceId = __expectString(data.resourceId); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AcknowledgeFlow = (input: AcknowledgeFlow, context: __SerdeContext): any => { diff --git a/clients/client-iot-jobs-data-plane/src/index.ts b/clients/client-iot-jobs-data-plane/src/index.ts index 06c31303e13c8..9d132e3f0d967 100644 --- a/clients/client-iot-jobs-data-plane/src/index.ts +++ b/clients/client-iot-jobs-data-plane/src/index.ts @@ -2,3 +2,4 @@ export * from "./IoTJobsDataPlane"; export * from "./IoTJobsDataPlaneClient"; export * from "./commands"; export * from "./models"; +export { IoTJobsDataPlaneServiceException } from "./models/IoTJobsDataPlaneServiceException"; diff --git a/clients/client-iot-jobs-data-plane/src/models/IoTJobsDataPlaneServiceException.ts b/clients/client-iot-jobs-data-plane/src/models/IoTJobsDataPlaneServiceException.ts new file mode 100644 index 0000000000000..11437b07a0542 --- /dev/null +++ b/clients/client-iot-jobs-data-plane/src/models/IoTJobsDataPlaneServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTJobsDataPlane service. + */ +export class IoTJobsDataPlaneServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTJobsDataPlaneServiceException.prototype); + } +} diff --git a/clients/client-iot-jobs-data-plane/src/models/models_0.ts b/clients/client-iot-jobs-data-plane/src/models/models_0.ts index dad749a07d64e..7f5c128279daa 100644 --- a/clients/client-iot-jobs-data-plane/src/models/models_0.ts +++ b/clients/client-iot-jobs-data-plane/src/models/models_0.ts @@ -1,15 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTJobsDataPlaneServiceException as __BaseException } from "./IoTJobsDataPlaneServiceException"; /** *

The certificate is invalid.

*/ -export interface CertificateValidationException extends __SmithyException, $MetadataBearer { - name: "CertificateValidationException"; - $fault: "client"; +export class CertificateValidationException extends __BaseException { + readonly name: "CertificateValidationException" = "CertificateValidationException"; + readonly $fault: "client" = "client"; /** - *

Additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateValidationException.prototype); + } } export interface DescribeJobExecutionRequest { @@ -147,63 +157,102 @@ export namespace DescribeJobExecutionResponse { /** *

The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The service is temporarily unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The job is in a terminal state.

*/ -export interface TerminalStateException extends __SmithyException, $MetadataBearer { - name: "TerminalStateException"; - $fault: "client"; - message?: string; +export class TerminalStateException extends __BaseException { + readonly name: "TerminalStateException" = "TerminalStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TerminalStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TerminalStateException.prototype); + } } /** *

The rate exceeds the limit.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The message associated with the exception.

+ *

The payload associated with the exception.

*/ - message?: string; + payload?: Uint8Array; /** - *

The payload associated with the exception.

+ * @internal */ - payload?: Uint8Array; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.payload = opts.payload; + } } export interface GetPendingJobExecutionsRequest { @@ -293,10 +342,20 @@ export namespace GetPendingJobExecutionsResponse { * current state (for example, an attempt to change a request in state SUCCESS to state IN_PROGRESS). In this * case, the body of the error message also contains the executionState field.

*/ -export interface InvalidStateTransitionException extends __SmithyException, $MetadataBearer { - name: "InvalidStateTransitionException"; - $fault: "client"; - message?: string; +export class InvalidStateTransitionException extends __BaseException { + readonly name: "InvalidStateTransitionException" = "InvalidStateTransitionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateTransitionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateTransitionException.prototype); + } } export interface StartNextPendingJobExecutionRequest { diff --git a/clients/client-iot-jobs-data-plane/src/protocols/Aws_restJson1.ts b/clients/client-iot-jobs-data-plane/src/protocols/Aws_restJson1.ts index 8798d109db83a..da37719b40da0 100644 --- a/clients/client-iot-jobs-data-plane/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-jobs-data-plane/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -27,6 +26,7 @@ import { StartNextPendingJobExecutionCommandOutput, } from "../commands/StartNextPendingJobExecutionCommand"; import { UpdateJobExecutionCommandInput, UpdateJobExecutionCommandOutput } from "../commands/UpdateJobExecutionCommand"; +import { IoTJobsDataPlaneServiceException as __BaseException } from "../models/IoTJobsDataPlaneServiceException"; import { CertificateValidationException, InvalidRequestException, @@ -233,73 +233,37 @@ const deserializeAws_restJson1DescribeJobExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iotjobsdataplane#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotjobsdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotjobsdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotjobsdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TerminalStateException": case "com.amazonaws.iotjobsdataplane#TerminalStateException": - response = { - ...(await deserializeAws_restJson1TerminalStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TerminalStateExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotjobsdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPendingJobExecutionsCommand = async ( @@ -332,65 +296,34 @@ const deserializeAws_restJson1GetPendingJobExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iotjobsdataplane#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotjobsdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotjobsdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotjobsdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotjobsdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartNextPendingJobExecutionCommand = async ( @@ -419,65 +352,34 @@ const deserializeAws_restJson1StartNextPendingJobExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iotjobsdataplane#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotjobsdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotjobsdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotjobsdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotjobsdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateJobExecutionCommand = async ( @@ -510,188 +412,140 @@ const deserializeAws_restJson1UpdateJobExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iotjobsdataplane#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotjobsdataplane#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.iotjobsdataplane#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotjobsdataplane#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotjobsdataplane#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotjobsdataplane#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1CertificateValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CertificateValidationException = { - name: "CertificateValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new CertificateValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidStateTransitionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidStateTransitionException = { - name: "InvalidStateTransitionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidStateTransitionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TerminalStateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TerminalStateException = { - name: "TerminalStateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TerminalStateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - payload: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -699,7 +553,11 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.payload !== undefined && data.payload !== null) { contents.payload = context.base64Decoder(data.payload); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DetailsMap = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-iot-wireless/src/index.ts b/clients/client-iot-wireless/src/index.ts index 34c0407b50dbf..629ada8d88c3f 100644 --- a/clients/client-iot-wireless/src/index.ts +++ b/clients/client-iot-wireless/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTWirelessClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTWirelessServiceException } from "./models/IoTWirelessServiceException"; diff --git a/clients/client-iot-wireless/src/models/IoTWirelessServiceException.ts b/clients/client-iot-wireless/src/models/IoTWirelessServiceException.ts new file mode 100644 index 0000000000000..f4fa282cc2725 --- /dev/null +++ b/clients/client-iot-wireless/src/models/IoTWirelessServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTWireless service. + */ +export class IoTWirelessServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTWirelessServiceException.prototype); + } +} diff --git a/clients/client-iot-wireless/src/models/models_0.ts b/clients/client-iot-wireless/src/models/models_0.ts index 1833a7794db6b..3cee2a6fb825b 100644 --- a/clients/client-iot-wireless/src/models/models_0.ts +++ b/clients/client-iot-wireless/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTWirelessServiceException as __BaseException } from "./IoTWirelessServiceException"; /** *

Session keys for ABP v1.1

@@ -110,10 +112,22 @@ export namespace AbpV1_1 { /** *

User does not have permission to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -217,9 +231,9 @@ export namespace AssociateAwsAccountWithPartnerAccountResponse { /** *

Adding, updating, or deleting the resource can cause an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; /** *

Id of the resource in the conflicting operation.

@@ -230,23 +244,49 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

Type of the resource in the conflicting operation.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

An unexpected error occurred while processing a request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

Resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

Id of the not found resource.

@@ -257,24 +297,62 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

Type of the font found resource.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request was denied because it exceeded the allowed API request rate.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The input did not meet the specified constraints.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface AssociateMulticastGroupWithFuotaTaskRequest { @@ -5149,14 +5227,27 @@ export namespace TagResourceResponse { /** *

The request was denied because the resource can't have any more tags.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

Name of the resource that exceeds maximum number of tags allowed.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export interface TestWirelessDeviceRequest { diff --git a/clients/client-iot-wireless/src/protocols/Aws_restJson1.ts b/clients/client-iot-wireless/src/protocols/Aws_restJson1.ts index e431f5aecde10..fc9682c9f74ba 100644 --- a/clients/client-iot-wireless/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot-wireless/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -300,6 +299,7 @@ import { UpdateWirelessGatewayCommandInput, UpdateWirelessGatewayCommandOutput, } from "../commands/UpdateWirelessGatewayCommand"; +import { IoTWirelessServiceException as __BaseException } from "../models/IoTWirelessServiceException"; import { AbpV1_0_x, AbpV1_1, @@ -3142,73 +3142,37 @@ const deserializeAws_restJson1AssociateAwsAccountWithPartnerAccountCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateMulticastGroupWithFuotaTaskCommand = async ( @@ -3233,73 +3197,37 @@ const deserializeAws_restJson1AssociateMulticastGroupWithFuotaTaskCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWirelessDeviceWithFuotaTaskCommand = async ( @@ -3324,73 +3252,37 @@ const deserializeAws_restJson1AssociateWirelessDeviceWithFuotaTaskCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWirelessDeviceWithMulticastGroupCommand = async ( @@ -3415,73 +3307,37 @@ const deserializeAws_restJson1AssociateWirelessDeviceWithMulticastGroupCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWirelessDeviceWithThingCommand = async ( @@ -3506,73 +3362,37 @@ const deserializeAws_restJson1AssociateWirelessDeviceWithThingCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWirelessGatewayWithCertificateCommand = async ( @@ -3601,73 +3421,37 @@ const deserializeAws_restJson1AssociateWirelessGatewayWithCertificateCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWirelessGatewayWithThingCommand = async ( @@ -3692,73 +3476,37 @@ const deserializeAws_restJson1AssociateWirelessGatewayWithThingCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelMulticastGroupSessionCommand = async ( @@ -3783,73 +3531,37 @@ const deserializeAws_restJson1CancelMulticastGroupSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDestinationCommand = async ( @@ -3882,73 +3594,37 @@ const deserializeAws_restJson1CreateDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeviceProfileCommand = async ( @@ -3981,65 +3657,34 @@ const deserializeAws_restJson1CreateDeviceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFuotaTaskCommand = async ( @@ -4072,73 +3717,37 @@ const deserializeAws_restJson1CreateFuotaTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMulticastGroupCommand = async ( @@ -4171,73 +3780,37 @@ const deserializeAws_restJson1CreateMulticastGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateServiceProfileCommand = async ( @@ -4270,65 +3843,34 @@ const deserializeAws_restJson1CreateServiceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWirelessDeviceCommand = async ( @@ -4361,73 +3903,37 @@ const deserializeAws_restJson1CreateWirelessDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWirelessGatewayCommand = async ( @@ -4460,65 +3966,34 @@ const deserializeAws_restJson1CreateWirelessGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWirelessGatewayTaskCommand = async ( @@ -4551,73 +4026,37 @@ const deserializeAws_restJson1CreateWirelessGatewayTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWirelessGatewayTaskDefinitionCommand = async ( @@ -4650,73 +4089,37 @@ const deserializeAws_restJson1CreateWirelessGatewayTaskDefinitionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDestinationCommand = async ( @@ -4741,73 +4144,37 @@ const deserializeAws_restJson1DeleteDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeviceProfileCommand = async ( @@ -4832,73 +4199,37 @@ const deserializeAws_restJson1DeleteDeviceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFuotaTaskCommand = async ( @@ -4923,65 +4254,34 @@ const deserializeAws_restJson1DeleteFuotaTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMulticastGroupCommand = async ( @@ -5006,73 +4306,37 @@ const deserializeAws_restJson1DeleteMulticastGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteQueuedMessagesCommand = async ( @@ -5097,65 +4361,34 @@ const deserializeAws_restJson1DeleteQueuedMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteServiceProfileCommand = async ( @@ -5180,73 +4413,37 @@ const deserializeAws_restJson1DeleteServiceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWirelessDeviceCommand = async ( @@ -5271,65 +4468,34 @@ const deserializeAws_restJson1DeleteWirelessDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWirelessGatewayCommand = async ( @@ -5354,65 +4520,34 @@ const deserializeAws_restJson1DeleteWirelessGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWirelessGatewayTaskCommand = async ( @@ -5437,65 +4572,34 @@ const deserializeAws_restJson1DeleteWirelessGatewayTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWirelessGatewayTaskDefinitionCommand = async ( @@ -5520,65 +4624,34 @@ const deserializeAws_restJson1DeleteWirelessGatewayTaskDefinitionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateAwsAccountFromPartnerAccountCommand = async ( @@ -5603,57 +4676,31 @@ const deserializeAws_restJson1DisassociateAwsAccountFromPartnerAccountCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateMulticastGroupFromFuotaTaskCommand = async ( @@ -5678,65 +4725,34 @@ const deserializeAws_restJson1DisassociateMulticastGroupFromFuotaTaskCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWirelessDeviceFromFuotaTaskCommand = async ( @@ -5761,73 +4777,37 @@ const deserializeAws_restJson1DisassociateWirelessDeviceFromFuotaTaskCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWirelessDeviceFromMulticastGroupCommand = async ( @@ -5852,65 +4832,34 @@ const deserializeAws_restJson1DisassociateWirelessDeviceFromMulticastGroupComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWirelessDeviceFromThingCommand = async ( @@ -5935,73 +4884,37 @@ const deserializeAws_restJson1DisassociateWirelessDeviceFromThingCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWirelessGatewayFromCertificateCommand = async ( @@ -6026,65 +4939,34 @@ const deserializeAws_restJson1DisassociateWirelessGatewayFromCertificateCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWirelessGatewayFromThingCommand = async ( @@ -6109,73 +4991,37 @@ const deserializeAws_restJson1DisassociateWirelessGatewayFromThingCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDestinationCommand = async ( @@ -6224,65 +5070,34 @@ const deserializeAws_restJson1GetDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeviceProfileCommand = async ( @@ -6323,65 +5138,34 @@ const deserializeAws_restJson1GetDeviceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFuotaTaskCommand = async ( @@ -6442,65 +5226,34 @@ const deserializeAws_restJson1GetFuotaTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLogLevelsByResourceTypesCommand = async ( @@ -6543,65 +5296,34 @@ const deserializeAws_restJson1GetLogLevelsByResourceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMulticastGroupCommand = async ( @@ -6654,65 +5376,34 @@ const deserializeAws_restJson1GetMulticastGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMulticastGroupSessionCommand = async ( @@ -6741,65 +5432,34 @@ const deserializeAws_restJson1GetMulticastGroupSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkAnalyzerConfigurationCommand = async ( @@ -6836,65 +5496,34 @@ const deserializeAws_restJson1GetNetworkAnalyzerConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPartnerAccountCommand = async ( @@ -6927,57 +5556,31 @@ const deserializeAws_restJson1GetPartnerAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceEventConfigurationCommand = async ( @@ -7013,65 +5616,34 @@ const deserializeAws_restJson1GetResourceEventConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceLogLevelCommand = async ( @@ -7100,65 +5672,34 @@ const deserializeAws_restJson1GetResourceLogLevelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServiceEndpointCommand = async ( @@ -7195,57 +5736,31 @@ const deserializeAws_restJson1GetServiceEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServiceProfileCommand = async ( @@ -7286,65 +5801,34 @@ const deserializeAws_restJson1GetServiceProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessDeviceCommand = async ( @@ -7409,65 +5893,34 @@ const deserializeAws_restJson1GetWirelessDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessDeviceStatisticsCommand = async ( @@ -7508,65 +5961,34 @@ const deserializeAws_restJson1GetWirelessDeviceStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessGatewayCommand = async ( @@ -7619,65 +6041,34 @@ const deserializeAws_restJson1GetWirelessGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessGatewayCertificateCommand = async ( @@ -7710,65 +6101,34 @@ const deserializeAws_restJson1GetWirelessGatewayCertificateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessGatewayFirmwareInformationCommand = async ( @@ -7797,65 +6157,34 @@ const deserializeAws_restJson1GetWirelessGatewayFirmwareInformationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessGatewayStatisticsCommand = async ( @@ -7892,65 +6221,34 @@ const deserializeAws_restJson1GetWirelessGatewayStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessGatewayTaskCommand = async ( @@ -7995,65 +6293,34 @@ const deserializeAws_restJson1GetWirelessGatewayTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWirelessGatewayTaskDefinitionCommand = async ( @@ -8094,65 +6361,34 @@ const deserializeAws_restJson1GetWirelessGatewayTaskDefinitionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDestinationsCommand = async ( @@ -8185,57 +6421,31 @@ const deserializeAws_restJson1ListDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeviceProfilesCommand = async ( @@ -8268,57 +6478,31 @@ const deserializeAws_restJson1ListDeviceProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFuotaTasksCommand = async ( @@ -8351,57 +6535,31 @@ const deserializeAws_restJson1ListFuotaTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMulticastGroupsCommand = async ( @@ -8434,57 +6592,31 @@ const deserializeAws_restJson1ListMulticastGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMulticastGroupsByFuotaTaskCommand = async ( @@ -8520,65 +6652,34 @@ const deserializeAws_restJson1ListMulticastGroupsByFuotaTaskCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPartnerAccountsCommand = async ( @@ -8611,57 +6712,31 @@ const deserializeAws_restJson1ListPartnerAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListQueuedMessagesCommand = async ( @@ -8697,65 +6772,34 @@ const deserializeAws_restJson1ListQueuedMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListServiceProfilesCommand = async ( @@ -8788,57 +6832,31 @@ const deserializeAws_restJson1ListServiceProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -8867,65 +6885,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWirelessDevicesCommand = async ( @@ -8961,57 +6948,31 @@ const deserializeAws_restJson1ListWirelessDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWirelessGatewaysCommand = async ( @@ -9047,57 +7008,31 @@ const deserializeAws_restJson1ListWirelessGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWirelessGatewayTaskDefinitionsCommand = async ( @@ -9130,57 +7065,31 @@ const deserializeAws_restJson1ListWirelessGatewayTaskDefinitionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutResourceLogLevelCommand = async ( @@ -9205,65 +7114,34 @@ const deserializeAws_restJson1PutResourceLogLevelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResetAllResourceLogLevelsCommand = async ( @@ -9288,65 +7166,34 @@ const deserializeAws_restJson1ResetAllResourceLogLevelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResetResourceLogLevelCommand = async ( @@ -9371,65 +7218,34 @@ const deserializeAws_restJson1ResetResourceLogLevelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendDataToMulticastGroupCommand = async ( @@ -9458,73 +7274,37 @@ const deserializeAws_restJson1SendDataToMulticastGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendDataToWirelessDeviceCommand = async ( @@ -9553,57 +7333,31 @@ const deserializeAws_restJson1SendDataToWirelessDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartBulkAssociateWirelessDeviceWithMulticastGroupCommand = async ( @@ -9628,65 +7382,34 @@ const deserializeAws_restJson1StartBulkAssociateWirelessDeviceWithMulticastGroup ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartBulkDisassociateWirelessDeviceFromMulticastGroupCommand = async ( @@ -9711,65 +7434,34 @@ const deserializeAws_restJson1StartBulkDisassociateWirelessDeviceFromMulticastGr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartFuotaTaskCommand = async ( @@ -9794,73 +7486,37 @@ const deserializeAws_restJson1StartFuotaTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMulticastGroupSessionCommand = async ( @@ -9885,73 +7541,37 @@ const deserializeAws_restJson1StartMulticastGroupSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -9976,73 +7596,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.iotwireless#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestWirelessDeviceCommand = async ( @@ -10071,57 +7655,31 @@ const deserializeAws_restJson1TestWirelessDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -10146,65 +7704,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDestinationCommand = async ( @@ -10229,65 +7756,34 @@ const deserializeAws_restJson1UpdateDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFuotaTaskCommand = async ( @@ -10312,73 +7808,37 @@ const deserializeAws_restJson1UpdateFuotaTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLogLevelsByResourceTypesCommand = async ( @@ -10403,73 +7863,37 @@ const deserializeAws_restJson1UpdateLogLevelsByResourceTypesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMulticastGroupCommand = async ( @@ -10494,73 +7918,37 @@ const deserializeAws_restJson1UpdateMulticastGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNetworkAnalyzerConfigurationCommand = async ( @@ -10585,65 +7973,34 @@ const deserializeAws_restJson1UpdateNetworkAnalyzerConfigurationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePartnerAccountCommand = async ( @@ -10668,57 +8025,31 @@ const deserializeAws_restJson1UpdatePartnerAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceEventConfigurationCommand = async ( @@ -10743,73 +8074,37 @@ const deserializeAws_restJson1UpdateResourceEventConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iotwireless#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWirelessDeviceCommand = async ( @@ -10834,65 +8129,34 @@ const deserializeAws_restJson1UpdateWirelessDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWirelessGatewayCommand = async ( @@ -10917,96 +8181,57 @@ const deserializeAws_restJson1UpdateWirelessGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iotwireless#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotwireless#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotwireless#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotwireless#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotwireless#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -11017,38 +8242,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -11059,37 +8280,34 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -11097,24 +8315,27 @@ const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( if (data.ResourceName !== undefined && data.ResourceName !== null) { contents.ResourceName = __expectString(data.ResourceName); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AbpV1_0_x = (input: AbpV1_0_x, context: __SerdeContext): any => { diff --git a/clients/client-iot/src/index.ts b/clients/client-iot/src/index.ts index e7d484127435e..1efc40d7408a1 100644 --- a/clients/client-iot/src/index.ts +++ b/clients/client-iot/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTServiceException } from "./models/IoTServiceException"; diff --git a/clients/client-iot/src/models/IoTServiceException.ts b/clients/client-iot/src/models/IoTServiceException.ts new file mode 100644 index 0000000000000..ae5b5f0c4823d --- /dev/null +++ b/clients/client-iot/src/models/IoTServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoT service. + */ +export class IoTServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTServiceException.prototype); + } +} diff --git a/clients/client-iot/src/models/models_0.ts b/clients/client-iot/src/models/models_0.ts index 6a22ef0f9128b..6a3dac8b8acf9 100644 --- a/clients/client-iot/src/models/models_0.ts +++ b/clients/client-iot/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTServiceException as __BaseException } from "./IoTServiceException"; export enum AbortAction { CANCEL = "CANCEL", @@ -95,86 +97,135 @@ export namespace AcceptCertificateTransferRequest { /** *

An unexpected error has occurred.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The service is temporarily unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The rate exceeds the limit.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

You can't revert the certificate transfer because the transfer is already * complete.

*/ -export interface TransferAlreadyCompletedException extends __SmithyException, $MetadataBearer { - name: "TransferAlreadyCompletedException"; - $fault: "client"; +export class TransferAlreadyCompletedException extends __BaseException { + readonly name: "TransferAlreadyCompletedException" = "TransferAlreadyCompletedException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransferAlreadyCompletedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransferAlreadyCompletedException.prototype); + } } /** *

You are not authorized to perform this operation.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** @@ -2209,13 +2260,20 @@ export namespace AssociateTargetsWithJobResponse { /** *

A limit has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export interface AttachPolicyRequest { @@ -2301,13 +2359,20 @@ export namespace AttachSecurityProfileResponse { * expectedVersion parameter does not match the latest version in the * system.

*/ -export interface VersionConflictException extends __SmithyException, $MetadataBearer { - name: "VersionConflictException"; - $fault: "client"; +export class VersionConflictException extends __BaseException { + readonly name: "VersionConflictException" = "VersionConflictException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "VersionConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VersionConflictException.prototype); + } } /** @@ -3474,13 +3539,20 @@ export namespace CancelJobExecutionRequest { * job execution which is "IN_PROGRESS" without setting the force * parameter.

*/ -export interface InvalidStateTransitionException extends __SmithyException, $MetadataBearer { - name: "InvalidStateTransitionException"; - $fault: "client"; +export class InvalidStateTransitionException extends __BaseException { + readonly name: "InvalidStateTransitionException" = "InvalidStateTransitionException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateTransitionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateTransitionException.prototype); + } } export interface ClearDefaultAuthorizerRequest {} @@ -3536,25 +3608,39 @@ export namespace ConfirmTopicRuleDestinationResponse { *

A conflicting resource update exception. This exception is thrown when two pending * updates cause a conflict.

*/ -export interface ConflictingResourceUpdateException extends __SmithyException, $MetadataBearer { - name: "ConflictingResourceUpdateException"; - $fault: "client"; +export class ConflictingResourceUpdateException extends __BaseException { + readonly name: "ConflictingResourceUpdateException" = "ConflictingResourceUpdateException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictingResourceUpdateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictingResourceUpdateException.prototype); + } } /** *

An unexpected error has occurred.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + } } export interface CreateAuditSuppressionRequest { @@ -3624,14 +3710,9 @@ export namespace CreateAuditSuppressionResponse { /** *

The resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - /** - *

The message for the exception.

- */ - message?: string; - +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that caused the exception.

*/ @@ -3641,6 +3722,20 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

The ARN of the resource that caused the exception.

*/ resourceArn?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.resourceId = opts.resourceId; + this.resourceArn = opts.resourceArn; + } } /** @@ -4030,13 +4125,20 @@ export namespace CreateDimensionResponse { /** *

The certificate is invalid.

*/ -export interface CertificateValidationException extends __SmithyException, $MetadataBearer { - name: "CertificateValidationException"; - $fault: "client"; +export class CertificateValidationException extends __BaseException { + readonly name: "CertificateValidationException" = "CertificateValidationException"; + readonly $fault: "client" = "client"; /** - *

Additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateValidationException.prototype); + } } export enum ServiceType { @@ -4241,13 +4343,20 @@ export namespace CreateDynamicThingGroupResponse { /** *

The query is invalid.

*/ -export interface InvalidQueryException extends __SmithyException, $MetadataBearer { - name: "InvalidQueryException"; - $fault: "client"; +export class InvalidQueryException extends __BaseException { + readonly name: "InvalidQueryException" = "InvalidQueryException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidQueryException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidQueryException.prototype); + } } export enum FleetMetricUnit { @@ -4366,22 +4475,39 @@ export namespace CreateFleetMetricResponse { /** *

The index is not ready.

*/ -export interface IndexNotReadyException extends __SmithyException, $MetadataBearer { - name: "IndexNotReadyException"; - $fault: "client"; +export class IndexNotReadyException extends __BaseException { + readonly name: "IndexNotReadyException" = "IndexNotReadyException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "IndexNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IndexNotReadyException.prototype); + } } /** *

The aggregation is invalid.

*/ -export interface InvalidAggregationException extends __SmithyException, $MetadataBearer { - name: "InvalidAggregationException"; - $fault: "client"; - message?: string; +export class InvalidAggregationException extends __BaseException { + readonly name: "InvalidAggregationException" = "InvalidAggregationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAggregationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAggregationException.prototype); + } } export enum RetryableFailureType { @@ -4712,10 +4838,20 @@ export namespace CreateJobResponse { /** *

A resource with the same name already exists.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface CreateJobTemplateRequest { @@ -5847,13 +5983,20 @@ export namespace CreatePolicyResponse { /** *

The policy documentation is not valid.

*/ -export interface MalformedPolicyException extends __SmithyException, $MetadataBearer { - name: "MalformedPolicyException"; - $fault: "client"; +export class MalformedPolicyException extends __BaseException { + readonly name: "MalformedPolicyException" = "MalformedPolicyException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedPolicyException.prototype); + } } /** @@ -5925,13 +6068,20 @@ export namespace CreatePolicyVersionResponse { /** *

The number of policy versions exceeds the limit.

*/ -export interface VersionsLimitExceededException extends __SmithyException, $MetadataBearer { - name: "VersionsLimitExceededException"; - $fault: "client"; +export class VersionsLimitExceededException extends __BaseException { + readonly name: "VersionsLimitExceededException" = "VersionsLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "VersionsLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VersionsLimitExceededException.prototype); + } } export interface CreateProvisioningClaimRequest { @@ -6756,13 +6906,20 @@ export namespace CreateTopicRuleRequest { /** *

The Rule-SQL expression can't be parsed correctly.

*/ -export interface SqlParseException extends __SmithyException, $MetadataBearer { - name: "SqlParseException"; - $fault: "client"; +export class SqlParseException extends __BaseException { + readonly name: "SqlParseException" = "SqlParseException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SqlParseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SqlParseException.prototype); + } } /** @@ -7110,13 +7267,20 @@ export namespace DeleteAuthorizerResponse { *

You can't delete the resource because it is attached to one or more * resources.

*/ -export interface DeleteConflictException extends __SmithyException, $MetadataBearer { - name: "DeleteConflictException"; - $fault: "client"; +export class DeleteConflictException extends __BaseException { + readonly name: "DeleteConflictException" = "DeleteConflictException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeleteConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeleteConflictException.prototype); + } } export interface DeleteBillingGroupRequest { @@ -7157,13 +7321,20 @@ export namespace DeleteBillingGroupResponse { /** *

The certificate operation is not allowed.

*/ -export interface CertificateStateException extends __SmithyException, $MetadataBearer { - name: "CertificateStateException"; - $fault: "client"; +export class CertificateStateException extends __BaseException { + readonly name: "CertificateStateException" = "CertificateStateException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateStateException.prototype); + } } /** diff --git a/clients/client-iot/src/models/models_1.ts b/clients/client-iot/src/models/models_1.ts index 2f97eb8d0d081..60da4489c030a 100644 --- a/clients/client-iot/src/models/models_1.ts +++ b/clients/client-iot/src/models/models_1.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { IoTServiceException as __BaseException } from "./IoTServiceException"; import { AbortConfig, Action, @@ -2566,10 +2568,20 @@ export namespace DescribeManagedJobTemplateResponse { *

Internal error from the service that indicates an unexpected error or that the service * is unavailable.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } export interface DescribeMitigationActionRequest { @@ -5002,13 +5014,20 @@ export namespace GetV2LoggingOptionsResponse { /** *

The resource is not configured.

*/ -export interface NotConfiguredException extends __SmithyException, $MetadataBearer { - name: "NotConfiguredException"; - $fault: "client"; +export class NotConfiguredException extends __BaseException { + readonly name: "NotConfiguredException" = "NotConfiguredException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotConfiguredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotConfiguredException.prototype); + } } export enum BehaviorCriteriaType { diff --git a/clients/client-iot/src/models/models_2.ts b/clients/client-iot/src/models/models_2.ts index 560732432cda7..fee1253e56449 100644 --- a/clients/client-iot/src/models/models_2.ts +++ b/clients/client-iot/src/models/models_2.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { IoTServiceException as __BaseException } from "./IoTServiceException"; import { AbortConfig, AggregationType, @@ -1119,13 +1121,20 @@ export namespace RegisterCACertificateResponse { /** *

The registration code is invalid.

*/ -export interface RegistrationCodeValidationException extends __SmithyException, $MetadataBearer { - name: "RegistrationCodeValidationException"; - $fault: "client"; +export class RegistrationCodeValidationException extends __BaseException { + readonly name: "RegistrationCodeValidationException" = "RegistrationCodeValidationException"; + readonly $fault: "client" = "client"; /** - *

Additional information about the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "RegistrationCodeValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RegistrationCodeValidationException.prototype); + } } /** @@ -1133,13 +1142,20 @@ export interface RegistrationCodeValidationException extends __SmithyException, * attempting to register. This is happens when you have registered more than one CA * certificate that has the same subject field and public key.

*/ -export interface CertificateConflictException extends __SmithyException, $MetadataBearer { - name: "CertificateConflictException"; - $fault: "client"; +export class CertificateConflictException extends __BaseException { + readonly name: "CertificateConflictException" = "CertificateConflictException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateConflictException.prototype); + } } /** @@ -1290,13 +1306,20 @@ export namespace RegisterThingResponse { /** *

The resource registration failed.

*/ -export interface ResourceRegistrationFailureException extends __SmithyException, $MetadataBearer { - name: "ResourceRegistrationFailureException"; - $fault: "client"; +export class ResourceRegistrationFailureException extends __BaseException { + readonly name: "ResourceRegistrationFailureException" = "ResourceRegistrationFailureException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceRegistrationFailureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceRegistrationFailureException.prototype); + } } /** @@ -1829,10 +1852,20 @@ export namespace StartAuditMitigationActionsTaskResponse { * This exception occurs if you attempt to start a task with the same task-id as an existing task but with a different clientRequestToken. *

*/ -export interface TaskAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "TaskAlreadyExistsException"; - $fault: "client"; - message?: string; +export class TaskAlreadyExistsException extends __BaseException { + readonly name: "TaskAlreadyExistsException" = "TaskAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TaskAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TaskAlreadyExistsException.prototype); + } } export interface StartDetectMitigationActionsTaskRequest { @@ -2119,13 +2152,20 @@ export namespace TestAuthorizationResponse { /** *

The response is invalid.

*/ -export interface InvalidResponseException extends __SmithyException, $MetadataBearer { - name: "InvalidResponseException"; - $fault: "client"; +export class InvalidResponseException extends __BaseException { + readonly name: "InvalidResponseException" = "InvalidResponseException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResponseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResponseException.prototype); + } } /** @@ -2331,13 +2371,20 @@ export namespace TransferCertificateResponse { *

You can't transfer the certificate because authorization policies are still * attached.

*/ -export interface TransferConflictException extends __SmithyException, $MetadataBearer { - name: "TransferConflictException"; - $fault: "client"; +export class TransferConflictException extends __BaseException { + readonly name: "TransferConflictException" = "TransferConflictException"; + readonly $fault: "client" = "client"; /** - *

The message for the exception.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransferConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransferConflictException.prototype); + } } export interface UntagResourceRequest { diff --git a/clients/client-iot/src/protocols/Aws_restJson1.ts b/clients/client-iot/src/protocols/Aws_restJson1.ts index 71b4852c71d66..1b9857dfcfff8 100644 --- a/clients/client-iot/src/protocols/Aws_restJson1.ts +++ b/clients/client-iot/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -15,10 +16,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -666,6 +665,7 @@ import { ValidateSecurityProfileBehaviorsCommandInput, ValidateSecurityProfileBehaviorsCommandOutput, } from "../commands/ValidateSecurityProfileBehaviorsCommand"; +import { IoTServiceException as __BaseException } from "../models/IoTServiceException"; import { _Stream, AbortConfig, @@ -8588,81 +8588,40 @@ const deserializeAws_restJson1AcceptCertificateTransferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TransferAlreadyCompletedException": case "com.amazonaws.iot#TransferAlreadyCompletedException": - response = { - ...(await deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddThingToBillingGroupCommand = async ( @@ -8687,57 +8646,31 @@ const deserializeAws_restJson1AddThingToBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddThingToThingGroupCommand = async ( @@ -8762,57 +8695,31 @@ const deserializeAws_restJson1AddThingToThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateTargetsWithJobCommand = async ( @@ -8849,65 +8756,34 @@ const deserializeAws_restJson1AssociateTargetsWithJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachPolicyCommand = async ( @@ -8932,81 +8808,40 @@ const deserializeAws_restJson1AttachPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachPrincipalPolicyCommand = async ( @@ -9031,81 +8866,40 @@ const deserializeAws_restJson1AttachPrincipalPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachSecurityProfileCommand = async ( @@ -9130,73 +8924,37 @@ const deserializeAws_restJson1AttachSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AttachThingPrincipalCommand = async ( @@ -9221,73 +8979,37 @@ const deserializeAws_restJson1AttachThingPrincipalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelAuditMitigationActionsTaskCommand = async ( @@ -9312,57 +9034,31 @@ const deserializeAws_restJson1CancelAuditMitigationActionsTaskCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelAuditTaskCommand = async ( @@ -9387,57 +9083,31 @@ const deserializeAws_restJson1CancelAuditTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelCertificateTransferCommand = async ( @@ -9462,81 +9132,40 @@ const deserializeAws_restJson1CancelCertificateTransferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TransferAlreadyCompletedException": case "com.amazonaws.iot#TransferAlreadyCompletedException": - response = { - ...(await deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelDetectMitigationActionsTaskCommand = async ( @@ -9561,57 +9190,31 @@ const deserializeAws_restJson1CancelDetectMitigationActionsTaskCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelJobCommand = async ( @@ -9648,57 +9251,31 @@ const deserializeAws_restJson1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelJobExecutionCommand = async ( @@ -9723,73 +9300,37 @@ const deserializeAws_restJson1CancelJobExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.iot#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ClearDefaultAuthorizerCommand = async ( @@ -9814,73 +9355,37 @@ const deserializeAws_restJson1ClearDefaultAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ConfirmTopicRuleDestinationCommand = async ( @@ -9905,65 +9410,34 @@ const deserializeAws_restJson1ConfirmTopicRuleDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAuditSuppressionCommand = async ( @@ -9988,65 +9462,34 @@ const deserializeAws_restJson1CreateAuditSuppressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAuthorizerCommand = async ( @@ -10079,81 +9522,40 @@ const deserializeAws_restJson1CreateAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBillingGroupCommand = async ( @@ -10190,57 +9592,31 @@ const deserializeAws_restJson1CreateBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCertificateFromCsrCommand = async ( @@ -10277,65 +9653,34 @@ const deserializeAws_restJson1CreateCertificateFromCsrCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCustomMetricCommand = async ( @@ -10368,65 +9713,34 @@ const deserializeAws_restJson1CreateCustomMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDimensionCommand = async ( @@ -10459,65 +9773,34 @@ const deserializeAws_restJson1CreateDimensionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainConfigurationCommand = async ( @@ -10550,89 +9833,43 @@ const deserializeAws_restJson1CreateDomainConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iot#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDynamicThingGroupCommand = async ( @@ -10681,81 +9918,40 @@ const deserializeAws_restJson1CreateDynamicThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFleetMetricCommand = async ( @@ -10788,113 +9984,52 @@ const deserializeAws_restJson1CreateFleetMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidAggregationException": case "com.amazonaws.iot#InvalidAggregationException": - response = { - ...(await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobCommand = async ( @@ -10931,73 +10066,37 @@ const deserializeAws_restJson1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobTemplateCommand = async ( @@ -11030,73 +10129,37 @@ const deserializeAws_restJson1CreateJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iot#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateKeysAndCertificateCommand = async ( @@ -11137,65 +10200,34 @@ const deserializeAws_restJson1CreateKeysAndCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMitigationActionCommand = async ( @@ -11228,65 +10260,34 @@ const deserializeAws_restJson1CreateMitigationActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateOTAUpdateCommand = async ( @@ -11331,89 +10332,43 @@ const deserializeAws_restJson1CreateOTAUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePolicyCommand = async ( @@ -11454,81 +10409,40 @@ const deserializeAws_restJson1CreatePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MalformedPolicyException": case "com.amazonaws.iot#MalformedPolicyException": - response = { - ...(await deserializeAws_restJson1MalformedPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedPolicyExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePolicyVersionCommand = async ( @@ -11569,89 +10483,43 @@ const deserializeAws_restJson1CreatePolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "MalformedPolicyException": case "com.amazonaws.iot#MalformedPolicyException": - response = { - ...(await deserializeAws_restJson1MalformedPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedPolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionsLimitExceededException": case "com.amazonaws.iot#VersionsLimitExceededException": - response = { - ...(await deserializeAws_restJson1VersionsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionsLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProvisioningClaimCommand = async ( @@ -11692,73 +10560,37 @@ const deserializeAws_restJson1CreateProvisioningClaimCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProvisioningTemplateCommand = async ( @@ -11795,73 +10627,37 @@ const deserializeAws_restJson1CreateProvisioningTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProvisioningTemplateVersionCommand = async ( @@ -11902,81 +10698,40 @@ const deserializeAws_restJson1CreateProvisioningTemplateVersionCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionsLimitExceededException": case "com.amazonaws.iot#VersionsLimitExceededException": - response = { - ...(await deserializeAws_restJson1VersionsLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionsLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRoleAliasCommand = async ( @@ -12009,81 +10764,40 @@ const deserializeAws_restJson1CreateRoleAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateScheduledAuditCommand = async ( @@ -12112,65 +10826,34 @@ const deserializeAws_restJson1CreateScheduledAuditCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSecurityProfileCommand = async ( @@ -12203,57 +10886,31 @@ const deserializeAws_restJson1CreateSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStreamCommand = async ( @@ -12294,89 +10951,43 @@ const deserializeAws_restJson1CreateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThingCommand = async ( @@ -12413,81 +11024,40 @@ const deserializeAws_restJson1CreateThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThingGroupCommand = async ( @@ -12524,57 +11094,31 @@ const deserializeAws_restJson1CreateThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThingTypeCommand = async ( @@ -12611,73 +11155,37 @@ const deserializeAws_restJson1CreateThingTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTopicRuleCommand = async ( @@ -12702,73 +11210,37 @@ const deserializeAws_restJson1CreateTopicRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "SqlParseException": case "com.amazonaws.iot#SqlParseException": - response = { - ...(await deserializeAws_restJson1SqlParseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SqlParseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTopicRuleDestinationCommand = async ( @@ -12797,65 +11269,34 @@ const deserializeAws_restJson1CreateTopicRuleDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAccountAuditConfigurationCommand = async ( @@ -12880,57 +11321,31 @@ const deserializeAws_restJson1DeleteAccountAuditConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAuditSuppressionCommand = async ( @@ -12955,49 +11370,28 @@ const deserializeAws_restJson1DeleteAuditSuppressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAuthorizerCommand = async ( @@ -13022,81 +11416,40 @@ const deserializeAws_restJson1DeleteAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBillingGroupCommand = async ( @@ -13121,57 +11474,31 @@ const deserializeAws_restJson1DeleteBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCACertificateCommand = async ( @@ -13196,81 +11523,40 @@ const deserializeAws_restJson1DeleteCACertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateStateException": case "com.amazonaws.iot#CertificateStateException": - response = { - ...(await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCertificateCommand = async ( @@ -13295,89 +11581,43 @@ const deserializeAws_restJson1DeleteCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateStateException": case "com.amazonaws.iot#CertificateStateException": - response = { - ...(await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context); case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCustomMetricCommand = async ( @@ -13402,49 +11642,28 @@ const deserializeAws_restJson1DeleteCustomMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDimensionCommand = async ( @@ -13469,49 +11688,28 @@ const deserializeAws_restJson1DeleteDimensionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainConfigurationCommand = async ( @@ -13536,73 +11734,37 @@ const deserializeAws_restJson1DeleteDomainConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDynamicThingGroupCommand = async ( @@ -13627,57 +11789,31 @@ const deserializeAws_restJson1DeleteDynamicThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFleetMetricCommand = async ( @@ -13702,73 +11838,37 @@ const deserializeAws_restJson1DeleteFleetMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobCommand = async ( @@ -13793,73 +11893,37 @@ const deserializeAws_restJson1DeleteJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.iot#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobExecutionCommand = async ( @@ -13884,65 +11948,34 @@ const deserializeAws_restJson1DeleteJobExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.iot#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobTemplateCommand = async ( @@ -13967,57 +12000,31 @@ const deserializeAws_restJson1DeleteJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMitigationActionCommand = async ( @@ -14042,49 +12049,28 @@ const deserializeAws_restJson1DeleteMitigationActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteOTAUpdateCommand = async ( @@ -14109,81 +12095,40 @@ const deserializeAws_restJson1DeleteOTAUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePolicyCommand = async ( @@ -14208,81 +12153,40 @@ const deserializeAws_restJson1DeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePolicyVersionCommand = async ( @@ -14307,81 +12211,40 @@ const deserializeAws_restJson1DeletePolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProvisioningTemplateCommand = async ( @@ -14406,81 +12269,40 @@ const deserializeAws_restJson1DeleteProvisioningTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProvisioningTemplateVersionCommand = async ( @@ -14505,81 +12327,40 @@ const deserializeAws_restJson1DeleteProvisioningTemplateVersionCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRegistrationCodeCommand = async ( @@ -14604,65 +12385,34 @@ const deserializeAws_restJson1DeleteRegistrationCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRoleAliasCommand = async ( @@ -14687,81 +12437,40 @@ const deserializeAws_restJson1DeleteRoleAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteScheduledAuditCommand = async ( @@ -14786,57 +12495,31 @@ const deserializeAws_restJson1DeleteScheduledAuditCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSecurityProfileCommand = async ( @@ -14861,57 +12544,31 @@ const deserializeAws_restJson1DeleteSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStreamCommand = async ( @@ -14936,81 +12593,40 @@ const deserializeAws_restJson1DeleteStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeleteConflictException": case "com.amazonaws.iot#DeleteConflictException": - response = { - ...(await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeleteConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThingCommand = async ( @@ -15035,81 +12651,40 @@ const deserializeAws_restJson1DeleteThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThingGroupCommand = async ( @@ -15134,57 +12709,31 @@ const deserializeAws_restJson1DeleteThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThingTypeCommand = async ( @@ -15209,73 +12758,37 @@ const deserializeAws_restJson1DeleteThingTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTopicRuleCommand = async ( @@ -15300,65 +12813,34 @@ const deserializeAws_restJson1DeleteTopicRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTopicRuleDestinationCommand = async ( @@ -15383,65 +12865,34 @@ const deserializeAws_restJson1DeleteTopicRuleDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteV2LoggingLevelCommand = async ( @@ -15466,49 +12917,28 @@ const deserializeAws_restJson1DeleteV2LoggingLevelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeprecateThingTypeCommand = async ( @@ -15533,73 +12963,37 @@ const deserializeAws_restJson1DeprecateThingTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccountAuditConfigurationCommand = async ( @@ -15642,41 +13036,25 @@ const deserializeAws_restJson1DescribeAccountAuditConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAuditFindingCommand = async ( @@ -15705,57 +13083,31 @@ const deserializeAws_restJson1DescribeAuditFindingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAuditMitigationActionsTaskCommand = async ( @@ -15814,57 +13166,31 @@ const deserializeAws_restJson1DescribeAuditMitigationActionsTaskCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAuditSuppressionCommand = async ( @@ -15909,57 +13235,31 @@ const deserializeAws_restJson1DescribeAuditSuppressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAuditTaskCommand = async ( @@ -16008,57 +13308,31 @@ const deserializeAws_restJson1DescribeAuditTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAuthorizerCommand = async ( @@ -16087,73 +13361,37 @@ const deserializeAws_restJson1DescribeAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBillingGroupCommand = async ( @@ -16205,57 +13443,31 @@ const deserializeAws_restJson1DescribeBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCACertificateCommand = async ( @@ -16291,73 +13503,37 @@ const deserializeAws_restJson1DescribeCACertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCertificateCommand = async ( @@ -16389,73 +13565,37 @@ const deserializeAws_restJson1DescribeCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCustomMetricCommand = async ( @@ -16504,57 +13644,31 @@ const deserializeAws_restJson1DescribeCustomMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDefaultAuthorizerCommand = async ( @@ -16583,73 +13697,37 @@ const deserializeAws_restJson1DescribeDefaultAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDetectMitigationActionsTaskCommand = async ( @@ -16678,57 +13756,31 @@ const deserializeAws_restJson1DescribeDetectMitigationActionsTaskCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDimensionCommand = async ( @@ -16777,57 +13829,31 @@ const deserializeAws_restJson1DescribeDimensionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainConfigurationCommand = async ( @@ -16888,73 +13914,37 @@ const deserializeAws_restJson1DescribeDomainConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeEndpointCommand = async ( @@ -16983,57 +13973,31 @@ const deserializeAws_restJson1DescribeEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeEventConfigurationsCommand = async ( @@ -17070,41 +14034,25 @@ const deserializeAws_restJson1DescribeEventConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFleetMetricCommand = async ( @@ -17181,73 +14129,37 @@ const deserializeAws_restJson1DescribeFleetMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIndexCommand = async ( @@ -17284,73 +14196,37 @@ const deserializeAws_restJson1DescribeIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobCommand = async ( @@ -17383,57 +14259,31 @@ const deserializeAws_restJson1DescribeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobExecutionCommand = async ( @@ -17462,57 +14312,31 @@ const deserializeAws_restJson1DescribeJobExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobTemplateCommand = async ( @@ -17587,57 +14411,31 @@ const deserializeAws_restJson1DescribeJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeManagedJobTemplateCommand = async ( @@ -17690,57 +14488,31 @@ const deserializeAws_restJson1DescribeManagedJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iot#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMitigationActionCommand = async ( @@ -17797,57 +14569,31 @@ const deserializeAws_restJson1DescribeMitigationActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProvisioningTemplateCommand = async ( @@ -17912,65 +14658,34 @@ const deserializeAws_restJson1DescribeProvisioningTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProvisioningTemplateVersionCommand = async ( @@ -18011,65 +14726,34 @@ const deserializeAws_restJson1DescribeProvisioningTemplateVersionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRoleAliasCommand = async ( @@ -18098,73 +14782,37 @@ const deserializeAws_restJson1DescribeRoleAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeScheduledAuditCommand = async ( @@ -18213,57 +14861,31 @@ const deserializeAws_restJson1DescribeScheduledAuditCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSecurityProfileCommand = async ( @@ -18334,57 +14956,31 @@ const deserializeAws_restJson1DescribeSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeStreamCommand = async ( @@ -18413,73 +15009,37 @@ const deserializeAws_restJson1DescribeStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThingCommand = async ( @@ -18536,73 +15096,37 @@ const deserializeAws_restJson1DescribeThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThingGroupCommand = async ( @@ -18667,57 +15191,31 @@ const deserializeAws_restJson1DescribeThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThingRegistrationTaskCommand = async ( @@ -18790,65 +15288,34 @@ const deserializeAws_restJson1DescribeThingRegistrationTaskCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThingTypeCommand = async ( @@ -18893,73 +15360,37 @@ const deserializeAws_restJson1DescribeThingTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachPolicyCommand = async ( @@ -18984,73 +15415,37 @@ const deserializeAws_restJson1DetachPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachPrincipalPolicyCommand = async ( @@ -19075,73 +15470,37 @@ const deserializeAws_restJson1DetachPrincipalPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachSecurityProfileCommand = async ( @@ -19166,57 +15525,31 @@ const deserializeAws_restJson1DetachSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetachThingPrincipalCommand = async ( @@ -19241,73 +15574,37 @@ const deserializeAws_restJson1DetachThingPrincipalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableTopicRuleCommand = async ( @@ -19332,65 +15629,34 @@ const deserializeAws_restJson1DisableTopicRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableTopicRuleCommand = async ( @@ -19415,65 +15681,34 @@ const deserializeAws_restJson1EnableTopicRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBehaviorModelTrainingSummariesCommand = async ( @@ -19506,57 +15741,31 @@ const deserializeAws_restJson1GetBehaviorModelTrainingSummariesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBucketsAggregationCommand = async ( @@ -19589,97 +15798,46 @@ const deserializeAws_restJson1GetBucketsAggregationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidAggregationException": case "com.amazonaws.iot#InvalidAggregationException": - response = { - ...(await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCardinalityCommand = async ( @@ -19708,97 +15866,46 @@ const deserializeAws_restJson1GetCardinalityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidAggregationException": case "com.amazonaws.iot#InvalidAggregationException": - response = { - ...(await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEffectivePoliciesCommand = async ( @@ -19827,81 +15934,40 @@ const deserializeAws_restJson1GetEffectivePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIndexingConfigurationCommand = async ( @@ -19940,65 +16006,34 @@ const deserializeAws_restJson1GetIndexingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobDocumentCommand = async ( @@ -20027,57 +16062,31 @@ const deserializeAws_restJson1GetJobDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLoggingOptionsCommand = async ( @@ -20110,49 +16119,28 @@ const deserializeAws_restJson1GetLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetOTAUpdateCommand = async ( @@ -20181,73 +16169,37 @@ const deserializeAws_restJson1GetOTAUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPercentilesCommand = async ( @@ -20276,97 +16228,46 @@ const deserializeAws_restJson1GetPercentilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidAggregationException": case "com.amazonaws.iot#InvalidAggregationException": - response = { - ...(await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPolicyCommand = async ( @@ -20419,73 +16320,37 @@ const deserializeAws_restJson1GetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPolicyVersionCommand = async ( @@ -20542,73 +16407,37 @@ const deserializeAws_restJson1GetPolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRegistrationCodeCommand = async ( @@ -20637,65 +16466,34 @@ const deserializeAws_restJson1GetRegistrationCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStatisticsCommand = async ( @@ -20724,97 +16522,46 @@ const deserializeAws_restJson1GetStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidAggregationException": case "com.amazonaws.iot#InvalidAggregationException": - response = { - ...(await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTopicRuleCommand = async ( @@ -20847,57 +16594,31 @@ const deserializeAws_restJson1GetTopicRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTopicRuleDestinationCommand = async ( @@ -20926,57 +16647,31 @@ const deserializeAws_restJson1GetTopicRuleDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetV2LoggingOptionsCommand = async ( @@ -21013,49 +16708,28 @@ const deserializeAws_restJson1GetV2LoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "NotConfiguredException": case "com.amazonaws.iot#NotConfiguredException": - response = { - ...(await deserializeAws_restJson1NotConfiguredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotConfiguredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListActiveViolationsCommand = async ( @@ -21088,57 +16762,31 @@ const deserializeAws_restJson1ListActiveViolationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttachedPoliciesCommand = async ( @@ -21171,81 +16819,40 @@ const deserializeAws_restJson1ListAttachedPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAuditFindingsCommand = async ( @@ -21278,49 +16885,28 @@ const deserializeAws_restJson1ListAuditFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAuditMitigationActionsExecutionsCommand = async ( @@ -21356,49 +16942,28 @@ const deserializeAws_restJson1ListAuditMitigationActionsExecutionsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAuditMitigationActionsTasksCommand = async ( @@ -21431,49 +16996,28 @@ const deserializeAws_restJson1ListAuditMitigationActionsTasksCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAuditSuppressionsCommand = async ( @@ -21506,49 +17050,28 @@ const deserializeAws_restJson1ListAuditSuppressionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAuditTasksCommand = async ( @@ -21581,49 +17104,28 @@ const deserializeAws_restJson1ListAuditTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAuthorizersCommand = async ( @@ -21656,65 +17158,34 @@ const deserializeAws_restJson1ListAuthorizersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBillingGroupsCommand = async ( @@ -21747,57 +17218,31 @@ const deserializeAws_restJson1ListBillingGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCACertificatesCommand = async ( @@ -21830,65 +17275,34 @@ const deserializeAws_restJson1ListCACertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCertificatesCommand = async ( @@ -21921,65 +17335,34 @@ const deserializeAws_restJson1ListCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCertificatesByCACommand = async ( @@ -22012,65 +17395,34 @@ const deserializeAws_restJson1ListCertificatesByCACommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCustomMetricsCommand = async ( @@ -22103,49 +17455,28 @@ const deserializeAws_restJson1ListCustomMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDetectMitigationActionsExecutionsCommand = async ( @@ -22181,49 +17512,28 @@ const deserializeAws_restJson1ListDetectMitigationActionsExecutionsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDetectMitigationActionsTasksCommand = async ( @@ -22256,49 +17566,28 @@ const deserializeAws_restJson1ListDetectMitigationActionsTasksCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDimensionsCommand = async ( @@ -22331,49 +17620,28 @@ const deserializeAws_restJson1ListDimensionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainConfigurationsCommand = async ( @@ -22406,65 +17674,34 @@ const deserializeAws_restJson1ListDomainConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFleetMetricsCommand = async ( @@ -22497,65 +17734,34 @@ const deserializeAws_restJson1ListFleetMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIndicesCommand = async ( @@ -22588,65 +17794,34 @@ const deserializeAws_restJson1ListIndicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobExecutionsForJobCommand = async ( @@ -22682,57 +17857,31 @@ const deserializeAws_restJson1ListJobExecutionsForJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobExecutionsForThingCommand = async ( @@ -22768,57 +17917,31 @@ const deserializeAws_restJson1ListJobExecutionsForThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -22851,57 +17974,31 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobTemplatesCommand = async ( @@ -22934,49 +18031,28 @@ const deserializeAws_restJson1ListJobTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListManagedJobTemplatesCommand = async ( @@ -23012,57 +18088,31 @@ const deserializeAws_restJson1ListManagedJobTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iot#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMitigationActionsCommand = async ( @@ -23098,49 +18148,28 @@ const deserializeAws_restJson1ListMitigationActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOTAUpdatesCommand = async ( @@ -23173,65 +18202,34 @@ const deserializeAws_restJson1ListOTAUpdatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOutgoingCertificatesCommand = async ( @@ -23264,65 +18262,34 @@ const deserializeAws_restJson1ListOutgoingCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPoliciesCommand = async ( @@ -23355,65 +18322,34 @@ const deserializeAws_restJson1ListPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPolicyPrincipalsCommand = async ( @@ -23446,73 +18382,37 @@ const deserializeAws_restJson1ListPolicyPrincipalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPolicyVersionsCommand = async ( @@ -23541,73 +18441,37 @@ const deserializeAws_restJson1ListPolicyVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPrincipalPoliciesCommand = async ( @@ -23640,73 +18504,37 @@ const deserializeAws_restJson1ListPrincipalPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPrincipalThingsCommand = async ( @@ -23739,73 +18567,37 @@ const deserializeAws_restJson1ListPrincipalThingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProvisioningTemplatesCommand = async ( @@ -23838,57 +18630,31 @@ const deserializeAws_restJson1ListProvisioningTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProvisioningTemplateVersionsCommand = async ( @@ -23921,65 +18687,34 @@ const deserializeAws_restJson1ListProvisioningTemplateVersionsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoleAliasesCommand = async ( @@ -24012,65 +18747,34 @@ const deserializeAws_restJson1ListRoleAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListScheduledAuditsCommand = async ( @@ -24103,49 +18807,28 @@ const deserializeAws_restJson1ListScheduledAuditsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSecurityProfilesCommand = async ( @@ -24181,57 +18864,31 @@ const deserializeAws_restJson1ListSecurityProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSecurityProfilesForTargetCommand = async ( @@ -24267,57 +18924,31 @@ const deserializeAws_restJson1ListSecurityProfilesForTargetCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamsCommand = async ( @@ -24350,65 +18981,34 @@ const deserializeAws_restJson1ListStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -24441,57 +19041,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTargetsForPolicyCommand = async ( @@ -24524,81 +19098,40 @@ const deserializeAws_restJson1ListTargetsForPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTargetsForSecurityProfileCommand = async ( @@ -24634,57 +19167,31 @@ const deserializeAws_restJson1ListTargetsForSecurityProfileCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingGroupsCommand = async ( @@ -24717,57 +19224,31 @@ const deserializeAws_restJson1ListThingGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingGroupsForThingCommand = async ( @@ -24800,57 +19281,31 @@ const deserializeAws_restJson1ListThingGroupsForThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingPrincipalsCommand = async ( @@ -24883,73 +19338,37 @@ const deserializeAws_restJson1ListThingPrincipalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingRegistrationTaskReportsCommand = async ( @@ -24986,57 +19405,31 @@ const deserializeAws_restJson1ListThingRegistrationTaskReportsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingRegistrationTasksCommand = async ( @@ -25069,57 +19462,31 @@ const deserializeAws_restJson1ListThingRegistrationTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingsCommand = async ( @@ -25152,65 +19519,34 @@ const deserializeAws_restJson1ListThingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingsInBillingGroupCommand = async ( @@ -25243,57 +19579,31 @@ const deserializeAws_restJson1ListThingsInBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingsInThingGroupCommand = async ( @@ -25326,57 +19636,31 @@ const deserializeAws_restJson1ListThingsInThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThingTypesCommand = async ( @@ -25409,65 +19693,34 @@ const deserializeAws_restJson1ListThingTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTopicRuleDestinationsCommand = async ( @@ -25503,57 +19756,31 @@ const deserializeAws_restJson1ListTopicRuleDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTopicRulesCommand = async ( @@ -25586,49 +19813,28 @@ const deserializeAws_restJson1ListTopicRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListV2LoggingLevelsCommand = async ( @@ -25664,57 +19870,31 @@ const deserializeAws_restJson1ListV2LoggingLevelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "NotConfiguredException": case "com.amazonaws.iot#NotConfiguredException": - response = { - ...(await deserializeAws_restJson1NotConfiguredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotConfiguredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListViolationEventsCommand = async ( @@ -25747,49 +19927,28 @@ const deserializeAws_restJson1ListViolationEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutVerificationStateOnViolationCommand = async ( @@ -25814,49 +19973,28 @@ const deserializeAws_restJson1PutVerificationStateOnViolationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterCACertificateCommand = async ( @@ -25889,97 +20027,46 @@ const deserializeAws_restJson1RegisterCACertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iot#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "RegistrationCodeValidationException": case "com.amazonaws.iot#RegistrationCodeValidationException": - response = { - ...(await deserializeAws_restJson1RegistrationCodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RegistrationCodeValidationExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterCertificateCommand = async ( @@ -26012,97 +20099,46 @@ const deserializeAws_restJson1RegisterCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateConflictException": case "com.amazonaws.iot#CertificateConflictException": - response = { - ...(await deserializeAws_restJson1CertificateConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateConflictExceptionResponse(parsedOutput, context); case "CertificateStateException": case "com.amazonaws.iot#CertificateStateException": - response = { - ...(await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context); case "CertificateValidationException": case "com.amazonaws.iot#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterCertificateWithoutCACommand = async ( @@ -26135,89 +20171,43 @@ const deserializeAws_restJson1RegisterCertificateWithoutCACommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateStateException": case "com.amazonaws.iot#CertificateStateException": - response = { - ...(await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context); case "CertificateValidationException": case "com.amazonaws.iot#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterThingCommand = async ( @@ -26250,81 +20240,40 @@ const deserializeAws_restJson1RegisterThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceRegistrationFailureException": case "com.amazonaws.iot#ResourceRegistrationFailureException": - response = { - ...(await deserializeAws_restJson1ResourceRegistrationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceRegistrationFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectCertificateTransferCommand = async ( @@ -26349,81 +20298,40 @@ const deserializeAws_restJson1RejectCertificateTransferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TransferAlreadyCompletedException": case "com.amazonaws.iot#TransferAlreadyCompletedException": - response = { - ...(await deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveThingFromBillingGroupCommand = async ( @@ -26448,57 +20356,31 @@ const deserializeAws_restJson1RemoveThingFromBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveThingFromThingGroupCommand = async ( @@ -26523,57 +20405,31 @@ const deserializeAws_restJson1RemoveThingFromThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ReplaceTopicRuleCommand = async ( @@ -26598,73 +20454,37 @@ const deserializeAws_restJson1ReplaceTopicRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "SqlParseException": case "com.amazonaws.iot#SqlParseException": - response = { - ...(await deserializeAws_restJson1SqlParseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SqlParseExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchIndexCommand = async ( @@ -26701,89 +20521,43 @@ const deserializeAws_restJson1SearchIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetDefaultAuthorizerCommand = async ( @@ -26816,81 +20590,40 @@ const deserializeAws_restJson1SetDefaultAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iot#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetDefaultPolicyVersionCommand = async ( @@ -26915,73 +20648,37 @@ const deserializeAws_restJson1SetDefaultPolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetLoggingOptionsCommand = async ( @@ -27006,49 +20703,28 @@ const deserializeAws_restJson1SetLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetV2LoggingLevelCommand = async ( @@ -27073,65 +20749,34 @@ const deserializeAws_restJson1SetV2LoggingLevelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotConfiguredException": case "com.amazonaws.iot#NotConfiguredException": - response = { - ...(await deserializeAws_restJson1NotConfiguredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotConfiguredExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SetV2LoggingOptionsCommand = async ( @@ -27156,49 +20801,28 @@ const deserializeAws_restJson1SetV2LoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartAuditMitigationActionsTaskCommand = async ( @@ -27227,65 +20851,34 @@ const deserializeAws_restJson1StartAuditMitigationActionsTaskCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TaskAlreadyExistsException": case "com.amazonaws.iot#TaskAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1TaskAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TaskAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartDetectMitigationActionsTaskCommand = async ( @@ -27314,65 +20907,34 @@ const deserializeAws_restJson1StartDetectMitigationActionsTaskCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TaskAlreadyExistsException": case "com.amazonaws.iot#TaskAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1TaskAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TaskAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartOnDemandAuditTaskCommand = async ( @@ -27401,57 +20963,31 @@ const deserializeAws_restJson1StartOnDemandAuditTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartThingRegistrationTaskCommand = async ( @@ -27480,57 +21016,31 @@ const deserializeAws_restJson1StartThingRegistrationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopThingRegistrationTaskCommand = async ( @@ -27555,65 +21065,34 @@ const deserializeAws_restJson1StopThingRegistrationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -27638,65 +21117,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestAuthorizationCommand = async ( @@ -27725,81 +21173,40 @@ const deserializeAws_restJson1TestAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestInvokeAuthorizerCommand = async ( @@ -27844,81 +21251,40 @@ const deserializeAws_restJson1TestInvokeAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidResponseException": case "com.amazonaws.iot#InvalidResponseException": - response = { - ...(await deserializeAws_restJson1InvalidResponseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResponseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TransferCertificateCommand = async ( @@ -27947,89 +21313,43 @@ const deserializeAws_restJson1TransferCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateStateException": case "com.amazonaws.iot#CertificateStateException": - response = { - ...(await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TransferConflictException": case "com.amazonaws.iot#TransferConflictException": - response = { - ...(await deserializeAws_restJson1TransferConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransferConflictExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -28054,57 +21374,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccountAuditConfigurationCommand = async ( @@ -28129,49 +21423,28 @@ const deserializeAws_restJson1UpdateAccountAuditConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAuditSuppressionCommand = async ( @@ -28196,57 +21469,31 @@ const deserializeAws_restJson1UpdateAuditSuppressionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAuthorizerCommand = async ( @@ -28279,81 +21526,40 @@ const deserializeAws_restJson1UpdateAuthorizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iot#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBillingGroupCommand = async ( @@ -28382,65 +21588,34 @@ const deserializeAws_restJson1UpdateBillingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCACertificateCommand = async ( @@ -28465,73 +21640,37 @@ const deserializeAws_restJson1UpdateCACertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCertificateCommand = async ( @@ -28556,81 +21695,40 @@ const deserializeAws_restJson1UpdateCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateStateException": case "com.amazonaws.iot#CertificateStateException": - response = { - ...(await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateStateExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCustomMetricCommand = async ( @@ -28679,57 +21777,31 @@ const deserializeAws_restJson1UpdateCustomMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDimensionCommand = async ( @@ -28778,57 +21850,31 @@ const deserializeAws_restJson1UpdateDimensionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainConfigurationCommand = async ( @@ -28861,81 +21907,40 @@ const deserializeAws_restJson1UpdateDomainConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateValidationException": case "com.amazonaws.iot#CertificateValidationException": - response = { - ...(await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CertificateValidationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDynamicThingGroupCommand = async ( @@ -28964,73 +21969,37 @@ const deserializeAws_restJson1UpdateDynamicThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEventConfigurationsCommand = async ( @@ -29055,49 +22024,28 @@ const deserializeAws_restJson1UpdateEventConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFleetMetricCommand = async ( @@ -29122,105 +22070,49 @@ const deserializeAws_restJson1UpdateFleetMetricCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IndexNotReadyException": case "com.amazonaws.iot#IndexNotReadyException": - response = { - ...(await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IndexNotReadyExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidAggregationException": case "com.amazonaws.iot#InvalidAggregationException": - response = { - ...(await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAggregationExceptionResponse(parsedOutput, context); case "InvalidQueryException": case "com.amazonaws.iot#InvalidQueryException": - response = { - ...(await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidQueryExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIndexingConfigurationCommand = async ( @@ -29245,65 +22137,34 @@ const deserializeAws_restJson1UpdateIndexingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateJobCommand = async ( @@ -29328,57 +22189,31 @@ const deserializeAws_restJson1UpdateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMitigationActionCommand = async ( @@ -29411,57 +22246,31 @@ const deserializeAws_restJson1UpdateMitigationActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProvisioningTemplateCommand = async ( @@ -29486,65 +22295,34 @@ const deserializeAws_restJson1UpdateProvisioningTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoleAliasCommand = async ( @@ -29577,73 +22355,37 @@ const deserializeAws_restJson1UpdateRoleAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateScheduledAuditCommand = async ( @@ -29672,57 +22414,31 @@ const deserializeAws_restJson1UpdateScheduledAuditCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSecurityProfileCommand = async ( @@ -29793,65 +22509,34 @@ const deserializeAws_restJson1UpdateSecurityProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStreamCommand = async ( @@ -29892,73 +22577,37 @@ const deserializeAws_restJson1UpdateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThingCommand = async ( @@ -29983,81 +22632,40 @@ const deserializeAws_restJson1UpdateThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThingGroupCommand = async ( @@ -30086,65 +22694,34 @@ const deserializeAws_restJson1UpdateThingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "VersionConflictException": case "com.amazonaws.iot#VersionConflictException": - response = { - ...(await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThingGroupsForThingCommand = async ( @@ -30169,57 +22746,31 @@ const deserializeAws_restJson1UpdateThingGroupsForThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iot#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTopicRuleDestinationCommand = async ( @@ -30244,65 +22795,34 @@ const deserializeAws_restJson1UpdateTopicRuleDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingResourceUpdateException": case "com.amazonaws.iot#ConflictingResourceUpdateException": - response = { - ...(await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.iot#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iot#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iot#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ValidateSecurityProfileBehaviorsCommand = async ( @@ -30335,386 +22855,339 @@ const deserializeAws_restJson1ValidateSecurityProfileBehaviorsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iot#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iot#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iot#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1CertificateConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CertificateConflictException = { - name: "CertificateConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new CertificateConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CertificateStateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CertificateStateException = { - name: "CertificateStateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new CertificateStateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CertificateValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CertificateValidationException = { - name: "CertificateValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new CertificateValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictingResourceUpdateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictingResourceUpdateException = { - name: "ConflictingResourceUpdateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictingResourceUpdateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DeleteConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DeleteConflictException = { - name: "DeleteConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DeleteConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IndexNotReadyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IndexNotReadyException = { - name: "IndexNotReadyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new IndexNotReadyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalException = { - name: "InternalException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidAggregationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidAggregationException = { - name: "InvalidAggregationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidAggregationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidQueryExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidQueryException = { - name: "InvalidQueryException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidQueryException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidResponseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidResponseException = { - name: "InvalidResponseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidResponseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidStateTransitionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidStateTransitionException = { - name: "InvalidStateTransitionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidStateTransitionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MalformedPolicyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MalformedPolicyException = { - name: "MalformedPolicyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MalformedPolicyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotConfiguredExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotConfiguredException = { - name: "NotConfiguredException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotConfiguredException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RegistrationCodeValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RegistrationCodeValidationException = { - name: "RegistrationCodeValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new RegistrationCodeValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceArn: undefined, - resourceId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -30725,194 +23198,187 @@ const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( if (data.resourceId !== undefined && data.resourceId !== null) { contents.resourceId = __expectString(data.resourceId); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceRegistrationFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceRegistrationFailureException = { - name: "ResourceRegistrationFailureException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceRegistrationFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SqlParseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SqlParseException = { - name: "SqlParseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SqlParseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TaskAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TaskAlreadyExistsException = { - name: "TaskAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TaskAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TransferAlreadyCompletedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TransferAlreadyCompletedException = { - name: "TransferAlreadyCompletedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TransferAlreadyCompletedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TransferConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TransferConflictException = { - name: "TransferConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TransferConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1VersionConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: VersionConflictException = { - name: "VersionConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new VersionConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1VersionsLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: VersionsLimitExceededException = { - name: "VersionsLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new VersionsLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AbortConfig = (input: AbortConfig, context: __SerdeContext): any => { diff --git a/clients/client-iotanalytics/src/index.ts b/clients/client-iotanalytics/src/index.ts index 33d08fec5de0d..83c3620142ddc 100644 --- a/clients/client-iotanalytics/src/index.ts +++ b/clients/client-iotanalytics/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTAnalyticsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTAnalyticsServiceException } from "./models/IoTAnalyticsServiceException"; diff --git a/clients/client-iotanalytics/src/models/IoTAnalyticsServiceException.ts b/clients/client-iotanalytics/src/models/IoTAnalyticsServiceException.ts new file mode 100644 index 0000000000000..b4517d6ba2858 --- /dev/null +++ b/clients/client-iotanalytics/src/models/IoTAnalyticsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTAnalytics service. + */ +export class IoTAnalyticsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTAnalyticsServiceException.prototype); + } +} diff --git a/clients/client-iotanalytics/src/models/models_0.ts b/clients/client-iotanalytics/src/models/models_0.ts index e9cd753454ae3..bb338a0a94ab4 100644 --- a/clients/client-iotanalytics/src/models/models_0.ts +++ b/clients/client-iotanalytics/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTAnalyticsServiceException as __BaseException } from "./IoTAnalyticsServiceException"; /** *

An activity that adds other attributes based on existing attributes in the message.

@@ -158,46 +161,96 @@ export namespace BatchPutMessageResponse { /** *

There was an internal failure.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request was not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

A resource with the specified name could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The service is temporarily unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export interface CancelPipelineReprocessingRequest { @@ -424,19 +477,28 @@ export namespace CreateChannelResponse { /** *

The command caused an internal limit to be exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

A resource with the same name already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource.

*/ @@ -446,6 +508,20 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

The ARN of the resource.

*/ resourceArn?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.resourceId = opts.resourceId; + this.resourceArn = opts.resourceArn; + } } export enum ComputeType { diff --git a/clients/client-iotanalytics/src/protocols/Aws_restJson1.ts b/clients/client-iotanalytics/src/protocols/Aws_restJson1.ts index 05b313c9187e1..c12d7cc95d9c3 100644 --- a/clients/client-iotanalytics/src/protocols/Aws_restJson1.ts +++ b/clients/client-iotanalytics/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchPutMessageCommandInput, BatchPutMessageCommandOutput } from "../commands/BatchPutMessageCommand"; @@ -78,6 +77,7 @@ import { UpdateChannelCommandInput, UpdateChannelCommandOutput } from "../comman import { UpdateDatasetCommandInput, UpdateDatasetCommandOutput } from "../commands/UpdateDatasetCommand"; import { UpdateDatastoreCommandInput, UpdateDatastoreCommandOutput } from "../commands/UpdateDatastoreCommand"; import { UpdatePipelineCommandInput, UpdatePipelineCommandOutput } from "../commands/UpdatePipelineCommand"; +import { IoTAnalyticsServiceException as __BaseException } from "../models/IoTAnalyticsServiceException"; import { AddAttributesActivity, BatchPutMessageErrorEntry, @@ -1290,65 +1290,34 @@ const deserializeAws_restJson1BatchPutMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelPipelineReprocessingCommand = async ( @@ -1373,65 +1342,34 @@ const deserializeAws_restJson1CancelPipelineReprocessingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -1468,73 +1406,37 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotanalytics#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDatasetCommand = async ( @@ -1571,73 +1473,37 @@ const deserializeAws_restJson1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotanalytics#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDatasetContentCommand = async ( @@ -1666,65 +1532,34 @@ const deserializeAws_restJson1CreateDatasetContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDatastoreCommand = async ( @@ -1761,73 +1596,37 @@ const deserializeAws_restJson1CreateDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotanalytics#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePipelineCommand = async ( @@ -1860,73 +1659,37 @@ const deserializeAws_restJson1CreatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotanalytics#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -1951,65 +1714,34 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatasetCommand = async ( @@ -2034,65 +1766,34 @@ const deserializeAws_restJson1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatasetContentCommand = async ( @@ -2117,65 +1818,34 @@ const deserializeAws_restJson1DeleteDatasetContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatastoreCommand = async ( @@ -2200,65 +1870,34 @@ const deserializeAws_restJson1DeleteDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePipelineCommand = async ( @@ -2283,65 +1922,34 @@ const deserializeAws_restJson1DeletePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelCommand = async ( @@ -2374,65 +1982,34 @@ const deserializeAws_restJson1DescribeChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDatasetCommand = async ( @@ -2461,65 +2038,34 @@ const deserializeAws_restJson1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDatastoreCommand = async ( @@ -2552,65 +2098,34 @@ const deserializeAws_restJson1DescribeDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeLoggingOptionsCommand = async ( @@ -2639,65 +2154,34 @@ const deserializeAws_restJson1DescribeLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePipelineCommand = async ( @@ -2726,65 +2210,34 @@ const deserializeAws_restJson1DescribePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDatasetContentCommand = async ( @@ -2821,65 +2274,34 @@ const deserializeAws_restJson1GetDatasetContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -2912,57 +2334,31 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatasetContentsCommand = async ( @@ -2998,65 +2394,34 @@ const deserializeAws_restJson1ListDatasetContentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatasetsCommand = async ( @@ -3089,57 +2454,31 @@ const deserializeAws_restJson1ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatastoresCommand = async ( @@ -3172,57 +2511,31 @@ const deserializeAws_restJson1ListDatastoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPipelinesCommand = async ( @@ -3255,57 +2568,31 @@ const deserializeAws_restJson1ListPipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3334,73 +2621,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutLoggingOptionsCommand = async ( @@ -3425,57 +2676,31 @@ const deserializeAws_restJson1PutLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RunPipelineActivityCommand = async ( @@ -3508,57 +2733,31 @@ const deserializeAws_restJson1RunPipelineActivityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SampleChannelDataCommand = async ( @@ -3587,65 +2786,34 @@ const deserializeAws_restJson1SampleChannelDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartPipelineReprocessingCommand = async ( @@ -3674,73 +2842,37 @@ const deserializeAws_restJson1StartPipelineReprocessingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotanalytics#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3765,73 +2897,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3856,73 +2952,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -3947,65 +3007,34 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDatasetCommand = async ( @@ -4030,65 +3059,34 @@ const deserializeAws_restJson1UpdateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDatastoreCommand = async ( @@ -4113,65 +3111,34 @@ const deserializeAws_restJson1UpdateDatastoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePipelineCommand = async ( @@ -4196,138 +3163,92 @@ const deserializeAws_restJson1UpdatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotanalytics#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotanalytics#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotanalytics#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotanalytics#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceArn: undefined, - resourceId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -4338,58 +3259,59 @@ const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( if (data.resourceId !== undefined && data.resourceId !== null) { contents.resourceId = __expectString(data.resourceId); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AddAttributesActivity = (input: AddAttributesActivity, context: __SerdeContext): any => { diff --git a/clients/client-iotdeviceadvisor/src/index.ts b/clients/client-iotdeviceadvisor/src/index.ts index 15d6c3e4a8dcf..7e72b9082cefa 100644 --- a/clients/client-iotdeviceadvisor/src/index.ts +++ b/clients/client-iotdeviceadvisor/src/index.ts @@ -3,3 +3,4 @@ export * from "./IotDeviceAdvisorClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IotDeviceAdvisorServiceException } from "./models/IotDeviceAdvisorServiceException"; diff --git a/clients/client-iotdeviceadvisor/src/models/IotDeviceAdvisorServiceException.ts b/clients/client-iotdeviceadvisor/src/models/IotDeviceAdvisorServiceException.ts new file mode 100644 index 0000000000000..9f9dbe5526ddc --- /dev/null +++ b/clients/client-iotdeviceadvisor/src/models/IotDeviceAdvisorServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IotDeviceAdvisor service. + */ +export class IotDeviceAdvisorServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IotDeviceAdvisorServiceException.prototype); + } +} diff --git a/clients/client-iotdeviceadvisor/src/models/models_0.ts b/clients/client-iotdeviceadvisor/src/models/models_0.ts index ef1122bc04b0b..660b8df6bdcc0 100644 --- a/clients/client-iotdeviceadvisor/src/models/models_0.ts +++ b/clients/client-iotdeviceadvisor/src/models/models_0.ts @@ -1,15 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IotDeviceAdvisorServiceException as __BaseException } from "./IotDeviceAdvisorServiceException"; /** *

Sends a Conflict Exception.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** - *

Sends a Conflict Exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -130,25 +140,39 @@ export namespace CreateSuiteDefinitionResponse { /** *

Sends an Internal Failure exception.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** - *

Sends an Internal Failure Exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

Sends a validation exception.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

Sends a Validation Exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface DeleteSuiteDefinitionRequest { @@ -218,13 +242,20 @@ export namespace GetEndpointResponse { /** *

Sends a Resource Not Found exception.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

Sends a Resource Not Found Exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface GetSuiteDefinitionRequest { diff --git a/clients/client-iotdeviceadvisor/src/protocols/Aws_restJson1.ts b/clients/client-iotdeviceadvisor/src/protocols/Aws_restJson1.ts index 1779cbf63056b..99087642a27d9 100644 --- a/clients/client-iotdeviceadvisor/src/protocols/Aws_restJson1.ts +++ b/clients/client-iotdeviceadvisor/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -46,6 +45,7 @@ import { UpdateSuiteDefinitionCommandInput, UpdateSuiteDefinitionCommandOutput, } from "../commands/UpdateSuiteDefinitionCommand"; +import { IotDeviceAdvisorServiceException as __BaseException } from "../models/IotDeviceAdvisorServiceException"; import { ConflictException, DeviceUnderTest, @@ -557,41 +557,25 @@ const deserializeAws_restJson1CreateSuiteDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSuiteDefinitionCommand = async ( @@ -616,41 +600,25 @@ const deserializeAws_restJson1DeleteSuiteDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEndpointCommand = async ( @@ -679,49 +647,28 @@ const deserializeAws_restJson1GetEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSuiteDefinitionCommand = async ( @@ -781,49 +728,28 @@ const deserializeAws_restJson1GetSuiteDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSuiteRunCommand = async ( @@ -892,49 +818,28 @@ const deserializeAws_restJson1GetSuiteRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSuiteRunReportCommand = async ( @@ -963,49 +868,28 @@ const deserializeAws_restJson1GetSuiteRunReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSuiteDefinitionsCommand = async ( @@ -1041,41 +925,25 @@ const deserializeAws_restJson1ListSuiteDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSuiteRunsCommand = async ( @@ -1108,41 +976,25 @@ const deserializeAws_restJson1ListSuiteRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1171,49 +1023,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartSuiteRunCommand = async ( @@ -1250,49 +1081,28 @@ const deserializeAws_restJson1StartSuiteRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iotdeviceadvisor#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopSuiteRunCommand = async ( @@ -1317,49 +1127,28 @@ const deserializeAws_restJson1StopSuiteRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1384,49 +1173,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1451,49 +1219,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotdeviceadvisor#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSuiteDefinitionCommand = async ( @@ -1542,109 +1289,89 @@ const deserializeAws_restJson1UpdateSuiteDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iotdeviceadvisor#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iotdeviceadvisor#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DeviceUnderTest = (input: DeviceUnderTest, context: __SerdeContext): any => { diff --git a/clients/client-iotfleethub/src/index.ts b/clients/client-iotfleethub/src/index.ts index 5e8df32b21be1..d0622a812b5a6 100644 --- a/clients/client-iotfleethub/src/index.ts +++ b/clients/client-iotfleethub/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTFleetHubClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTFleetHubServiceException } from "./models/IoTFleetHubServiceException"; diff --git a/clients/client-iotfleethub/src/models/IoTFleetHubServiceException.ts b/clients/client-iotfleethub/src/models/IoTFleetHubServiceException.ts new file mode 100644 index 0000000000000..e8cfbf67b43d2 --- /dev/null +++ b/clients/client-iotfleethub/src/models/IoTFleetHubServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTFleetHub service. + */ +export class IoTFleetHubServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTFleetHubServiceException.prototype); + } +} diff --git a/clients/client-iotfleethub/src/models/models_0.ts b/clients/client-iotfleethub/src/models/models_0.ts index 1d831d75d78c0..f8fcc4d557da5 100644 --- a/clients/client-iotfleethub/src/models/models_0.ts +++ b/clients/client-iotfleethub/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTFleetHubServiceException as __BaseException } from "./IoTFleetHubServiceException"; export enum ApplicationState { ACTIVE = "ACTIVE", @@ -125,37 +128,77 @@ export namespace CreateApplicationResponse { /** *

An unexpected error has occurred.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

A limit has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The rate exceeds the limit.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export interface DeleteApplicationRequest { @@ -194,10 +237,20 @@ export namespace DeleteApplicationResponse { /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DescribeApplicationRequest { @@ -423,10 +476,20 @@ export namespace UntagResourceResponse { /** *

The request conflicts with the current state of the resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface UpdateApplicationRequest { diff --git a/clients/client-iotfleethub/src/protocols/Aws_restJson1.ts b/clients/client-iotfleethub/src/protocols/Aws_restJson1.ts index 0633e11231b21..1eaecc0cb233d 100644 --- a/clients/client-iotfleethub/src/protocols/Aws_restJson1.ts +++ b/clients/client-iotfleethub/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -29,6 +28,7 @@ import { import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateApplicationCommandInput, UpdateApplicationCommandOutput } from "../commands/UpdateApplicationCommand"; +import { IoTFleetHubServiceException as __BaseException } from "../models/IoTFleetHubServiceException"; import { ApplicationSummary, ConflictException, @@ -315,57 +315,31 @@ const deserializeAws_restJson1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotfleethub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotfleethub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApplicationCommand = async ( @@ -390,57 +364,31 @@ const deserializeAws_restJson1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotfleethub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotfleethub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeApplicationCommand = async ( @@ -513,57 +461,31 @@ const deserializeAws_restJson1DescribeApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotfleethub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotfleethub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationsCommand = async ( @@ -596,49 +518,28 @@ const deserializeAws_restJson1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotfleethub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -667,49 +568,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotfleethub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -734,49 +614,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotfleethub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -801,49 +660,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotfleethub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApplicationCommand = async ( @@ -868,167 +706,130 @@ const deserializeAws_restJson1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.iotfleethub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotfleethub#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotfleethub#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotfleethub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotfleethub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1TagMap = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-iotsecuretunneling/src/index.ts b/clients/client-iotsecuretunneling/src/index.ts index a27fbae62a2ed..df8ffa15abdf5 100644 --- a/clients/client-iotsecuretunneling/src/index.ts +++ b/clients/client-iotsecuretunneling/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTSecureTunnelingClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTSecureTunnelingServiceException } from "./models/IoTSecureTunnelingServiceException"; diff --git a/clients/client-iotsecuretunneling/src/models/IoTSecureTunnelingServiceException.ts b/clients/client-iotsecuretunneling/src/models/IoTSecureTunnelingServiceException.ts new file mode 100644 index 0000000000000..d5845e8c885f6 --- /dev/null +++ b/clients/client-iotsecuretunneling/src/models/IoTSecureTunnelingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTSecureTunneling service. + */ +export class IoTSecureTunnelingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTSecureTunnelingServiceException.prototype); + } +} diff --git a/clients/client-iotsecuretunneling/src/models/models_0.ts b/clients/client-iotsecuretunneling/src/models/models_0.ts index 943a41b437343..50ce5f84bfef6 100644 --- a/clients/client-iotsecuretunneling/src/models/models_0.ts +++ b/clients/client-iotsecuretunneling/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTSecureTunnelingServiceException as __BaseException } from "./IoTSecureTunnelingServiceException"; export interface CloseTunnelRequest { /** @@ -37,10 +39,20 @@ export namespace CloseTunnelResponse { /** *

Thrown when an operation is attempted on a resource that does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum ConnectionStatus { @@ -384,10 +396,20 @@ export namespace ListTunnelsResponse { /** *

Thrown when a tunnel limit is exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export interface OpenTunnelRequest { diff --git a/clients/client-iotsecuretunneling/src/protocols/Aws_json1_1.ts b/clients/client-iotsecuretunneling/src/protocols/Aws_json1_1.ts index ee9b1abd26fee..64b852907d05e 100644 --- a/clients/client-iotsecuretunneling/src/protocols/Aws_json1_1.ts +++ b/clients/client-iotsecuretunneling/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CloseTunnelCommandInput, CloseTunnelCommandOutput } from "../commands/CloseTunnelCommand"; @@ -25,6 +24,7 @@ import { ListTunnelsCommandInput, ListTunnelsCommandOutput } from "../commands/L import { OpenTunnelCommandInput, OpenTunnelCommandOutput } from "../commands/OpenTunnelCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { IoTSecureTunnelingServiceException as __BaseException } from "../models/IoTSecureTunnelingServiceException"; import { CloseTunnelRequest, CloseTunnelResponse, @@ -166,33 +166,22 @@ const deserializeAws_json1_1CloseTunnelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.iotsecuretunneling#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTunnelCommand = async ( @@ -220,33 +209,22 @@ const deserializeAws_json1_1DescribeTunnelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.iotsecuretunneling#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -274,33 +252,22 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.iotsecuretunneling#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTunnelsCommand = async ( @@ -328,25 +295,19 @@ const deserializeAws_json1_1ListTunnelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1OpenTunnelCommand = async ( @@ -374,33 +335,22 @@ const deserializeAws_json1_1OpenTunnelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.iotsecuretunneling#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -428,33 +378,22 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.iotsecuretunneling#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -482,33 +421,22 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.iotsecuretunneling#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -517,13 +445,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -532,13 +458,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CloseTunnelRequest = (input: CloseTunnelRequest, context: __SerdeContext): any => { diff --git a/clients/client-iotsitewise/src/index.ts b/clients/client-iotsitewise/src/index.ts index cb4b15553f151..8aa8ce907f316 100644 --- a/clients/client-iotsitewise/src/index.ts +++ b/clients/client-iotsitewise/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { IoTSiteWiseServiceException } from "./models/IoTSiteWiseServiceException"; diff --git a/clients/client-iotsitewise/src/models/IoTSiteWiseServiceException.ts b/clients/client-iotsitewise/src/models/IoTSiteWiseServiceException.ts new file mode 100644 index 0000000000000..37cc79aad0a7d --- /dev/null +++ b/clients/client-iotsitewise/src/models/IoTSiteWiseServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTSiteWise service. + */ +export class IoTSiteWiseServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTSiteWiseServiceException.prototype); + } +} diff --git a/clients/client-iotsitewise/src/models/models_0.ts b/clients/client-iotsitewise/src/models/models_0.ts index be3fd2d5b141f..2c18269075e6f 100644 --- a/clients/client-iotsitewise/src/models/models_0.ts +++ b/clients/client-iotsitewise/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTSiteWiseServiceException as __BaseException } from "./IoTSiteWiseServiceException"; /** *

Contains information for a group identity in an access policy.

@@ -1633,10 +1636,9 @@ export namespace AssociateAssetsRequest { *

Your request has conflicting operations. This can occur if you're trying to perform more * than one operation on the same resource at the same time.

*/ -export interface ConflictingOperationException extends __SmithyException, $MetadataBearer { - name: "ConflictingOperationException"; - $fault: "client"; - message: string | undefined; +export class ConflictingOperationException extends __BaseException { + readonly name: "ConflictingOperationException" = "ConflictingOperationException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that conflicts with this operation.

*/ @@ -1646,25 +1648,59 @@ export interface ConflictingOperationException extends __SmithyException, $Metad *

The ARN of the resource that conflicts with this operation.

*/ resourceArn: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictingOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictingOperationException.prototype); + this.resourceId = opts.resourceId; + this.resourceArn = opts.resourceArn; + } } /** *

IoT SiteWise can't process your request right now. Try again later.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message: string | undefined; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request isn't valid. This can occur if your request contains malformed JSON or * unsupported characters. Check your request and try again.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message: string | undefined; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** @@ -1673,19 +1709,39 @@ export interface InvalidRequestException extends __SmithyException, $MetadataBea * allowed number of properties for an asset model.

*

For more information, see Quotas in the IoT SiteWise User Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message: string | undefined; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The requested resource can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -1694,10 +1750,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * on.

*

For more information, see Quotas in the IoT SiteWise User Guide.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** @@ -2026,10 +2092,20 @@ export namespace BatchPutAssetPropertyValueResponse { /** *

The requested service is unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message: string | undefined; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } export interface CreateAccessPolicyRequest { @@ -2161,10 +2237,9 @@ export namespace CreateAssetResponse { /** *

The resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message: string | undefined; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The ID of the resource that already exists.

*/ @@ -2174,6 +2249,20 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

The ARN of the resource that already exists.

*/ resourceArn: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.resourceId = opts.resourceId; + this.resourceArn = opts.resourceArn; + } } export interface CreateAssetModelRequest { @@ -5500,10 +5589,20 @@ export namespace ListTagsForResourceResponse { /** *

You are not authorized.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message: string | undefined; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } export enum ListTimeSeriesType { @@ -5883,14 +5982,26 @@ export namespace TagResourceResponse { * information, see Tag naming limits and * requirements in the Amazon Web Services General Reference.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; /** *

The name of the resource with too many tags.

*/ resourceName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.resourceName = opts.resourceName; + } } export interface UntagResourceRequest { diff --git a/clients/client-iotsitewise/src/protocols/Aws_restJson1.ts b/clients/client-iotsitewise/src/protocols/Aws_restJson1.ts index 7882f7a11a3ff..690bb14050a5b 100644 --- a/clients/client-iotsitewise/src/protocols/Aws_restJson1.ts +++ b/clients/client-iotsitewise/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -18,10 +19,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -156,6 +155,7 @@ import { import { UpdateGatewayCommandInput, UpdateGatewayCommandOutput } from "../commands/UpdateGatewayCommand"; import { UpdatePortalCommandInput, UpdatePortalCommandOutput } from "../commands/UpdatePortalCommand"; import { UpdateProjectCommandInput, UpdateProjectCommandOutput } from "../commands/UpdateProjectCommand"; +import { IoTSiteWiseServiceException as __BaseException } from "../models/IoTSiteWiseServiceException"; import { AccessPolicySummary, AggregatedValue, @@ -2789,73 +2789,37 @@ const deserializeAws_restJson1AssociateAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateTimeSeriesToAssetPropertyCommand = async ( @@ -2880,65 +2844,34 @@ const deserializeAws_restJson1AssociateTimeSeriesToAssetPropertyCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchAssociateProjectAssetsCommand = async ( @@ -2967,65 +2900,34 @@ const deserializeAws_restJson1BatchAssociateProjectAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDisassociateProjectAssetsCommand = async ( @@ -3054,57 +2956,31 @@ const deserializeAws_restJson1BatchDisassociateProjectAssetsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchPutAssetPropertyValueCommand = async ( @@ -3133,81 +3009,40 @@ const deserializeAws_restJson1BatchPutAssetPropertyValueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotsitewise#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAccessPolicyCommand = async ( @@ -3240,65 +3075,34 @@ const deserializeAws_restJson1CreateAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssetCommand = async ( @@ -3335,81 +3139,40 @@ const deserializeAws_restJson1CreateAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotsitewise#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssetModelCommand = async ( @@ -3446,81 +3209,40 @@ const deserializeAws_restJson1CreateAssetModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotsitewise#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDashboardCommand = async ( @@ -3553,65 +3275,34 @@ const deserializeAws_restJson1CreateDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGatewayCommand = async ( @@ -3644,65 +3335,34 @@ const deserializeAws_restJson1CreateGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotsitewise#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePortalCommand = async ( @@ -3747,65 +3407,34 @@ const deserializeAws_restJson1CreatePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProjectCommand = async ( @@ -3838,65 +3467,34 @@ const deserializeAws_restJson1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAccessPolicyCommand = async ( @@ -3921,57 +3519,31 @@ const deserializeAws_restJson1DeleteAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssetCommand = async ( @@ -4000,65 +3572,34 @@ const deserializeAws_restJson1DeleteAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssetModelCommand = async ( @@ -4087,65 +3628,34 @@ const deserializeAws_restJson1DeleteAssetModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDashboardCommand = async ( @@ -4170,57 +3680,31 @@ const deserializeAws_restJson1DeleteDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGatewayCommand = async ( @@ -4245,57 +3729,31 @@ const deserializeAws_restJson1DeleteGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePortalCommand = async ( @@ -4324,65 +3782,34 @@ const deserializeAws_restJson1DeletePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProjectCommand = async ( @@ -4407,57 +3834,31 @@ const deserializeAws_restJson1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTimeSeriesCommand = async ( @@ -4482,65 +3883,34 @@ const deserializeAws_restJson1DeleteTimeSeriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccessPolicyCommand = async ( @@ -4597,57 +3967,31 @@ const deserializeAws_restJson1DescribeAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAssetCommand = async ( @@ -4712,57 +4056,31 @@ const deserializeAws_restJson1DescribeAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAssetModelCommand = async ( @@ -4834,57 +4152,31 @@ const deserializeAws_restJson1DescribeAssetModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAssetPropertyCommand = async ( @@ -4929,57 +4221,31 @@ const deserializeAws_restJson1DescribeAssetPropertyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDashboardCommand = async ( @@ -5038,57 +4304,31 @@ const deserializeAws_restJson1DescribeDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDefaultEncryptionConfigurationCommand = async ( @@ -5125,49 +4365,28 @@ const deserializeAws_restJson1DescribeDefaultEncryptionConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGatewayCommand = async ( @@ -5223,57 +4442,31 @@ const deserializeAws_restJson1DescribeGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGatewayCapabilityConfigurationCommand = async ( @@ -5314,57 +4507,31 @@ const deserializeAws_restJson1DescribeGatewayCapabilityConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeLoggingOptionsCommand = async ( @@ -5393,57 +4560,31 @@ const deserializeAws_restJson1DescribeLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePortalCommand = async ( @@ -5528,57 +4669,31 @@ const deserializeAws_restJson1DescribePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProjectCommand = async ( @@ -5631,57 +4746,31 @@ const deserializeAws_restJson1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeStorageConfigurationCommand = async ( @@ -5730,73 +4819,37 @@ const deserializeAws_restJson1DescribeStorageConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTimeSeriesCommand = async ( @@ -5857,57 +4910,31 @@ const deserializeAws_restJson1DescribeTimeSeriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateAssetsCommand = async ( @@ -5932,65 +4959,34 @@ const deserializeAws_restJson1DisassociateAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateTimeSeriesFromAssetPropertyCommand = async ( @@ -6015,65 +5011,34 @@ const deserializeAws_restJson1DisassociateTimeSeriesFromAssetPropertyCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssetPropertyAggregatesCommand = async ( @@ -6106,65 +5071,34 @@ const deserializeAws_restJson1GetAssetPropertyAggregatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotsitewise#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssetPropertyValueCommand = async ( @@ -6193,65 +5127,34 @@ const deserializeAws_restJson1GetAssetPropertyValueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotsitewise#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssetPropertyValueHistoryCommand = async ( @@ -6287,65 +5190,34 @@ const deserializeAws_restJson1GetAssetPropertyValueHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotsitewise#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInterpolatedAssetPropertyValuesCommand = async ( @@ -6381,65 +5253,34 @@ const deserializeAws_restJson1GetInterpolatedAssetPropertyValuesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.iotsitewise#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccessPoliciesCommand = async ( @@ -6472,49 +5313,28 @@ const deserializeAws_restJson1ListAccessPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssetModelsCommand = async ( @@ -6547,49 +5367,28 @@ const deserializeAws_restJson1ListAssetModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssetRelationshipsCommand = async ( @@ -6625,57 +5424,31 @@ const deserializeAws_restJson1ListAssetRelationshipsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssetsCommand = async ( @@ -6708,57 +5481,31 @@ const deserializeAws_restJson1ListAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssociatedAssetsCommand = async ( @@ -6791,57 +5538,31 @@ const deserializeAws_restJson1ListAssociatedAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDashboardsCommand = async ( @@ -6874,49 +5595,28 @@ const deserializeAws_restJson1ListDashboardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGatewaysCommand = async ( @@ -6949,49 +5649,28 @@ const deserializeAws_restJson1ListGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPortalsCommand = async ( @@ -7024,49 +5703,28 @@ const deserializeAws_restJson1ListPortalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectAssetsCommand = async ( @@ -7099,49 +5757,28 @@ const deserializeAws_restJson1ListProjectAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectsCommand = async ( @@ -7174,49 +5811,28 @@ const deserializeAws_restJson1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -7245,81 +5861,40 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotsitewise#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTimeSeriesCommand = async ( @@ -7352,57 +5927,31 @@ const deserializeAws_restJson1ListTimeSeriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDefaultEncryptionConfigurationCommand = async ( @@ -7439,65 +5988,34 @@ const deserializeAws_restJson1PutDefaultEncryptionConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutLoggingOptionsCommand = async ( @@ -7522,65 +6040,34 @@ const deserializeAws_restJson1PutLoggingOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutStorageConfigurationCommand = async ( @@ -7625,81 +6112,40 @@ const deserializeAws_restJson1PutStorageConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotsitewise#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -7724,89 +6170,43 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.iotsitewise#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotsitewise#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -7831,81 +6231,40 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.iotsitewise#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccessPolicyCommand = async ( @@ -7930,57 +6289,31 @@ const deserializeAws_restJson1UpdateAccessPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssetCommand = async ( @@ -8009,73 +6342,37 @@ const deserializeAws_restJson1UpdateAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotsitewise#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssetModelCommand = async ( @@ -8104,81 +6401,40 @@ const deserializeAws_restJson1UpdateAssetModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotsitewise#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAssetPropertyCommand = async ( @@ -8203,65 +6459,34 @@ const deserializeAws_restJson1UpdateAssetPropertyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDashboardCommand = async ( @@ -8286,57 +6511,31 @@ const deserializeAws_restJson1UpdateDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGatewayCommand = async ( @@ -8361,65 +6560,34 @@ const deserializeAws_restJson1UpdateGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGatewayCapabilityConfigurationCommand = async ( @@ -8452,73 +6620,37 @@ const deserializeAws_restJson1UpdateGatewayCapabilityConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotsitewise#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePortalCommand = async ( @@ -8547,65 +6679,34 @@ const deserializeAws_restJson1UpdatePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.iotsitewise#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProjectCommand = async ( @@ -8630,71 +6731,38 @@ const deserializeAws_restJson1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotsitewise#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotsitewise#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotsitewise#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotsitewise#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictingOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictingOperationException = { - name: "ConflictingOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceArn: undefined, - resourceId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -8705,72 +6773,66 @@ const deserializeAws_restJson1ConflictingOperationExceptionResponse = async ( if (data.resourceId !== undefined && data.resourceId !== null) { contents.resourceId = __expectString(data.resourceId); } - return contents; + const exception = new ConflictingOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceArn: undefined, - resourceId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -8781,71 +6843,66 @@ const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( if (data.resourceId !== undefined && data.resourceId !== null) { contents.resourceId = __expectString(data.resourceId); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -8853,24 +6910,27 @@ const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( if (data.resourceName !== undefined && data.resourceName !== null) { contents.resourceName = __expectString(data.resourceName); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Alarms = (input: Alarms, context: __SerdeContext): any => { diff --git a/clients/client-iotthingsgraph/src/index.ts b/clients/client-iotthingsgraph/src/index.ts index 8e32752b466c3..7f0d9bebaa6f2 100644 --- a/clients/client-iotthingsgraph/src/index.ts +++ b/clients/client-iotthingsgraph/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTThingsGraphClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTThingsGraphServiceException } from "./models/IoTThingsGraphServiceException"; diff --git a/clients/client-iotthingsgraph/src/models/IoTThingsGraphServiceException.ts b/clients/client-iotthingsgraph/src/models/IoTThingsGraphServiceException.ts new file mode 100644 index 0000000000000..cdc976e63d1e3 --- /dev/null +++ b/clients/client-iotthingsgraph/src/models/IoTThingsGraphServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTThingsGraph service. + */ +export class IoTThingsGraphServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTThingsGraphServiceException.prototype); + } +} diff --git a/clients/client-iotthingsgraph/src/models/models_0.ts b/clients/client-iotthingsgraph/src/models/models_0.ts index 8363344e98bfe..4d9b1238efbd6 100644 --- a/clients/client-iotthingsgraph/src/models/models_0.ts +++ b/clients/client-iotthingsgraph/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTThingsGraphServiceException as __BaseException } from "./IoTThingsGraphServiceException"; export interface AssociateEntityToThingRequest { /** @@ -44,37 +47,77 @@ export namespace AssociateEntityToThingResponse { /** *

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export enum DefinitionLanguage { @@ -180,19 +223,39 @@ export namespace CreateFlowTemplateResponse { /** *

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** @@ -492,10 +555,20 @@ export namespace DeleteFlowTemplateResponse { /** *

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } export interface DeleteNamespaceRequest {} diff --git a/clients/client-iotthingsgraph/src/protocols/Aws_json1_1.ts b/clients/client-iotthingsgraph/src/protocols/Aws_json1_1.ts index 04e7d1dac69a6..8581e9acf5de6 100644 --- a/clients/client-iotthingsgraph/src/protocols/Aws_json1_1.ts +++ b/clients/client-iotthingsgraph/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -114,6 +113,7 @@ import { UploadEntityDefinitionsCommandInput, UploadEntityDefinitionsCommandOutput, } from "../commands/UploadEntityDefinitionsCommand"; +import { IoTThingsGraphServiceException as __BaseException } from "../models/IoTThingsGraphServiceException"; import { AssociateEntityToThingRequest, AssociateEntityToThingResponse, @@ -693,57 +693,31 @@ const deserializeAws_json1_1AssociateEntityToThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFlowTemplateCommand = async ( @@ -771,65 +745,34 @@ const deserializeAws_json1_1CreateFlowTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotthingsgraph#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotthingsgraph#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSystemInstanceCommand = async ( @@ -857,65 +800,34 @@ const deserializeAws_json1_1CreateSystemInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.iotthingsgraph#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotthingsgraph#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSystemTemplateCommand = async ( @@ -943,57 +855,31 @@ const deserializeAws_json1_1CreateSystemTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotthingsgraph#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFlowTemplateCommand = async ( @@ -1021,57 +907,31 @@ const deserializeAws_json1_1DeleteFlowTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotthingsgraph#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNamespaceCommand = async ( @@ -1099,41 +959,25 @@ const deserializeAws_json1_1DeleteNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSystemInstanceCommand = async ( @@ -1161,57 +1005,31 @@ const deserializeAws_json1_1DeleteSystemInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotthingsgraph#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSystemTemplateCommand = async ( @@ -1239,57 +1057,31 @@ const deserializeAws_json1_1DeleteSystemTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotthingsgraph#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeploySystemInstanceCommand = async ( @@ -1317,65 +1109,34 @@ const deserializeAws_json1_1DeploySystemInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotthingsgraph#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeprecateFlowTemplateCommand = async ( @@ -1403,57 +1164,31 @@ const deserializeAws_json1_1DeprecateFlowTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeprecateSystemTemplateCommand = async ( @@ -1481,57 +1216,31 @@ const deserializeAws_json1_1DeprecateSystemTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNamespaceCommand = async ( @@ -1559,57 +1268,31 @@ const deserializeAws_json1_1DescribeNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DissociateEntityFromThingCommand = async ( @@ -1637,57 +1320,31 @@ const deserializeAws_json1_1DissociateEntityFromThingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEntitiesCommand = async ( @@ -1715,57 +1372,31 @@ const deserializeAws_json1_1GetEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFlowTemplateCommand = async ( @@ -1793,57 +1424,31 @@ const deserializeAws_json1_1GetFlowTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFlowTemplateRevisionsCommand = async ( @@ -1871,57 +1476,31 @@ const deserializeAws_json1_1GetFlowTemplateRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetNamespaceDeletionStatusCommand = async ( @@ -1949,49 +1528,28 @@ const deserializeAws_json1_1GetNamespaceDeletionStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSystemInstanceCommand = async ( @@ -2019,57 +1577,31 @@ const deserializeAws_json1_1GetSystemInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSystemTemplateCommand = async ( @@ -2097,57 +1629,31 @@ const deserializeAws_json1_1GetSystemTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSystemTemplateRevisionsCommand = async ( @@ -2175,57 +1681,31 @@ const deserializeAws_json1_1GetSystemTemplateRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetUploadStatusCommand = async ( @@ -2253,57 +1733,31 @@ const deserializeAws_json1_1GetUploadStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFlowExecutionMessagesCommand = async ( @@ -2331,57 +1785,31 @@ const deserializeAws_json1_1ListFlowExecutionMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2409,57 +1837,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotthingsgraph#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchEntitiesCommand = async ( @@ -2487,49 +1889,28 @@ const deserializeAws_json1_1SearchEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchFlowExecutionsCommand = async ( @@ -2557,57 +1938,31 @@ const deserializeAws_json1_1SearchFlowExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchFlowTemplatesCommand = async ( @@ -2635,49 +1990,28 @@ const deserializeAws_json1_1SearchFlowTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchSystemInstancesCommand = async ( @@ -2705,49 +2039,28 @@ const deserializeAws_json1_1SearchSystemInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchSystemTemplatesCommand = async ( @@ -2775,49 +2088,28 @@ const deserializeAws_json1_1SearchSystemTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchThingsCommand = async ( @@ -2845,57 +2137,31 @@ const deserializeAws_json1_1SearchThingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2923,57 +2189,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotthingsgraph#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UndeploySystemInstanceCommand = async ( @@ -3001,65 +2241,34 @@ const deserializeAws_json1_1UndeploySystemInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.iotthingsgraph#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3087,57 +2296,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.iotthingsgraph#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFlowTemplateCommand = async ( @@ -3165,57 +2348,31 @@ const deserializeAws_json1_1UpdateFlowTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSystemTemplateCommand = async ( @@ -3243,57 +2400,31 @@ const deserializeAws_json1_1UpdateSystemTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iotthingsgraph#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UploadEntityDefinitionsCommand = async ( @@ -3321,49 +2452,28 @@ const deserializeAws_json1_1UploadEntityDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.iotthingsgraph#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.iotthingsgraph#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iotthingsgraph#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalFailureExceptionResponse = async ( @@ -3372,13 +2482,11 @@ const deserializeAws_json1_1InternalFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalFailureException(body, context); - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", + const exception = new InternalFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -3387,13 +2495,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -3402,13 +2508,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -3417,13 +2521,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -3432,13 +2534,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3447,13 +2547,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -3462,13 +2560,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateEntityToThingRequest = ( diff --git a/clients/client-iottwinmaker/src/index.ts b/clients/client-iottwinmaker/src/index.ts index 3f20e0608d27e..c7fccae1fa6da 100644 --- a/clients/client-iottwinmaker/src/index.ts +++ b/clients/client-iottwinmaker/src/index.ts @@ -3,3 +3,4 @@ export * from "./IoTTwinMakerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IoTTwinMakerServiceException } from "./models/IoTTwinMakerServiceException"; diff --git a/clients/client-iottwinmaker/src/models/IoTTwinMakerServiceException.ts b/clients/client-iottwinmaker/src/models/IoTTwinMakerServiceException.ts new file mode 100644 index 0000000000000..0b1954898a037 --- /dev/null +++ b/clients/client-iottwinmaker/src/models/IoTTwinMakerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from IoTTwinMaker service. + */ +export class IoTTwinMakerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IoTTwinMakerServiceException.prototype); + } +} diff --git a/clients/client-iottwinmaker/src/models/models_0.ts b/clients/client-iottwinmaker/src/models/models_0.ts index fa475054ffd22..774c51aed1880 100644 --- a/clients/client-iottwinmaker/src/models/models_0.ts +++ b/clients/client-iottwinmaker/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IoTTwinMakerServiceException as __BaseException } from "./IoTTwinMakerServiceException"; /** *

Access is denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -70,46 +83,96 @@ export namespace RelationshipValue { /** *

An unexpected error has occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The resource wasn't found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The rate exceeds the limit.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

Failed

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** *

A conflict occurred.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -261,10 +324,20 @@ export namespace CreateComponentTypeResponse { /** *

The service quota was exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export enum PropertyUpdateType { @@ -692,19 +765,39 @@ export namespace GetEntityRequest { /** *

The connector failed.

*/ -export interface ConnectorFailureException extends __SmithyException, $MetadataBearer { - name: "ConnectorFailureException"; - $fault: "client"; - message?: string; +export class ConnectorFailureException extends __BaseException { + readonly name: "ConnectorFailureException" = "ConnectorFailureException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConnectorFailureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConnectorFailureException.prototype); + } } /** *

The connector timed out.

*/ -export interface ConnectorTimeoutException extends __SmithyException, $MetadataBearer { - name: "ConnectorTimeoutException"; - $fault: "client"; - message?: string; +export class ConnectorTimeoutException extends __BaseException { + readonly name: "ConnectorTimeoutException" = "ConnectorTimeoutException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConnectorTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConnectorTimeoutException.prototype); + } } export interface GetPropertyValueRequest { @@ -1510,10 +1603,20 @@ export namespace TagResourceResponse { /** *

The number of tags exceeds the limit.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } export interface UntagResourceRequest { diff --git a/clients/client-iottwinmaker/src/protocols/Aws_restJson1.ts b/clients/client-iottwinmaker/src/protocols/Aws_restJson1.ts index ffe21106ae461..2460cc6f1695e 100644 --- a/clients/client-iottwinmaker/src/protocols/Aws_restJson1.ts +++ b/clients/client-iottwinmaker/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -18,10 +19,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -68,6 +67,7 @@ import { import { UpdateEntityCommandInput, UpdateEntityCommandOutput } from "../commands/UpdateEntityCommand"; import { UpdateSceneCommandInput, UpdateSceneCommandOutput } from "../commands/UpdateSceneCommand"; import { UpdateWorkspaceCommandInput, UpdateWorkspaceCommandOutput } from "../commands/UpdateWorkspaceCommand"; +import { IoTTwinMakerServiceException as __BaseException } from "../models/IoTTwinMakerServiceException"; import { AccessDeniedException, BatchPutPropertyError, @@ -1330,57 +1330,31 @@ const deserializeAws_restJson1BatchPutPropertyValuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateComponentTypeCommand = async ( @@ -1417,73 +1391,37 @@ const deserializeAws_restJson1CreateComponentTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iottwinmaker#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEntityCommand = async ( @@ -1524,73 +1462,37 @@ const deserializeAws_restJson1CreateEntityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iottwinmaker#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSceneCommand = async ( @@ -1623,73 +1525,37 @@ const deserializeAws_restJson1CreateSceneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iottwinmaker#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorkspaceCommand = async ( @@ -1722,73 +1588,37 @@ const deserializeAws_restJson1CreateWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iottwinmaker#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteComponentTypeCommand = async ( @@ -1817,65 +1647,34 @@ const deserializeAws_restJson1DeleteComponentTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEntityCommand = async ( @@ -1904,65 +1703,34 @@ const deserializeAws_restJson1DeleteEntityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSceneCommand = async ( @@ -1987,65 +1755,34 @@ const deserializeAws_restJson1DeleteSceneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWorkspaceCommand = async ( @@ -2070,65 +1807,34 @@ const deserializeAws_restJson1DeleteWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetComponentTypeCommand = async ( @@ -2208,57 +1914,31 @@ const deserializeAws_restJson1GetComponentTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEntityCommand = async ( @@ -2327,65 +2007,34 @@ const deserializeAws_restJson1GetEntityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPropertyValueCommand = async ( @@ -2414,81 +2063,40 @@ const deserializeAws_restJson1GetPropertyValueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConnectorFailureException": case "com.amazonaws.iottwinmaker#ConnectorFailureException": - response = { - ...(await deserializeAws_restJson1ConnectorFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorFailureExceptionResponse(parsedOutput, context); case "ConnectorTimeoutException": case "com.amazonaws.iottwinmaker#ConnectorTimeoutException": - response = { - ...(await deserializeAws_restJson1ConnectorTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorTimeoutExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPropertyValueHistoryCommand = async ( @@ -2521,81 +2129,40 @@ const deserializeAws_restJson1GetPropertyValueHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConnectorFailureException": case "com.amazonaws.iottwinmaker#ConnectorFailureException": - response = { - ...(await deserializeAws_restJson1ConnectorFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorFailureExceptionResponse(parsedOutput, context); case "ConnectorTimeoutException": case "com.amazonaws.iottwinmaker#ConnectorTimeoutException": - response = { - ...(await deserializeAws_restJson1ConnectorTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectorTimeoutExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSceneCommand = async ( @@ -2652,65 +2219,34 @@ const deserializeAws_restJson1GetSceneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWorkspaceCommand = async ( @@ -2763,65 +2299,34 @@ const deserializeAws_restJson1GetWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListComponentTypesCommand = async ( @@ -2865,57 +2370,31 @@ const deserializeAws_restJson1ListComponentTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEntitiesCommand = async ( @@ -2948,57 +2427,31 @@ const deserializeAws_restJson1ListEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListScenesCommand = async ( @@ -3031,57 +2484,31 @@ const deserializeAws_restJson1ListScenesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3114,41 +2541,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorkspacesCommand = async ( @@ -3181,57 +2592,31 @@ const deserializeAws_restJson1ListWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3256,49 +2641,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.iottwinmaker#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3323,41 +2687,25 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateComponentTypeCommand = async ( @@ -3398,73 +2746,37 @@ const deserializeAws_restJson1UpdateComponentTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEntityCommand = async ( @@ -3497,81 +2809,40 @@ const deserializeAws_restJson1UpdateEntityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.iottwinmaker#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSceneCommand = async ( @@ -3600,65 +2871,34 @@ const deserializeAws_restJson1UpdateSceneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorkspaceCommand = async ( @@ -3687,243 +2927,197 @@ const deserializeAws_restJson1UpdateWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.iottwinmaker#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.iottwinmaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.iottwinmaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.iottwinmaker#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.iottwinmaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.iottwinmaker#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConnectorFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConnectorFailureException = { - name: "ConnectorFailureException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConnectorFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConnectorTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConnectorTimeoutException = { - name: "ConnectorTimeoutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConnectorTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ComponentRequest = (input: ComponentRequest, context: __SerdeContext): any => { diff --git a/clients/client-ivs/src/index.ts b/clients/client-ivs/src/index.ts index 7c9789e5abb5f..dcd5eab4abfcc 100644 --- a/clients/client-ivs/src/index.ts +++ b/clients/client-ivs/src/index.ts @@ -3,3 +3,4 @@ export * from "./IvsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { IvsServiceException } from "./models/IvsServiceException"; diff --git a/clients/client-ivs/src/models/IvsServiceException.ts b/clients/client-ivs/src/models/IvsServiceException.ts new file mode 100644 index 0000000000000..850ff740a8c73 --- /dev/null +++ b/clients/client-ivs/src/models/IvsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Ivs service. + */ +export class IvsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, IvsServiceException.prototype); + } +} diff --git a/clients/client-ivs/src/models/models_0.ts b/clients/client-ivs/src/models/models_0.ts index abffeedaec573..3c63893a30486 100644 --- a/clients/client-ivs/src/models/models_0.ts +++ b/clients/client-ivs/src/models/models_0.ts @@ -1,16 +1,30 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { IvsServiceException as __BaseException } from "./IvsServiceException"; /** *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

User does not have sufficient access to perform this action.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } export interface BatchGetChannelRequest { @@ -331,61 +345,121 @@ export namespace CreateChannelResponse { /** *

*/ -export interface PendingVerification extends __SmithyException, $MetadataBearer { - name: "PendingVerification"; - $fault: "client"; +export class PendingVerification extends __BaseException { + readonly name: "PendingVerification" = "PendingVerification"; + readonly $fault: "client" = "client"; /** *

Your account is pending verification.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PendingVerification", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PendingVerification.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } /** *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Request references a resource which does not exist.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } /** *

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

Request would cause a service quota to be exceeded.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } /** *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The input fails to satisfy the constraints specified by an Amazon Web Services service.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } /** *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

Updating or deleting a resource can cause an inconsistent state.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } /** @@ -568,13 +642,25 @@ export namespace CreateRecordingConfigurationResponse { /** *

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

Unexpected error during processing of request.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } export interface CreateStreamKeyRequest { @@ -823,13 +909,25 @@ export namespace GetRecordingConfigurationResponse { /** *

*/ -export interface ChannelNotBroadcasting extends __SmithyException, $MetadataBearer { - name: "ChannelNotBroadcasting"; - $fault: "client"; +export class ChannelNotBroadcasting extends __BaseException { + readonly name: "ChannelNotBroadcasting" = "ChannelNotBroadcasting"; + readonly $fault: "client" = "client"; /** *

The stream is offline for the given channel ARN.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ChannelNotBroadcasting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ChannelNotBroadcasting.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } export interface GetStreamRequest { @@ -1835,13 +1933,25 @@ export namespace PutMetadataRequest { /** *

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

Request was denied due to request throttling.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } export interface StopStreamRequest { @@ -1874,13 +1984,25 @@ export namespace StopStreamResponse { /** *

*/ -export interface StreamUnavailable extends __SmithyException, $MetadataBearer { - name: "StreamUnavailable"; - $fault: "server"; +export class StreamUnavailable extends __BaseException { + readonly name: "StreamUnavailable" = "StreamUnavailable"; + readonly $fault: "server" = "server"; /** *

The stream is temporarily unavailable.

*/ exceptionMessage?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StreamUnavailable", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, StreamUnavailable.prototype); + this.exceptionMessage = opts.exceptionMessage; + } } export interface TagResourceRequest { diff --git a/clients/client-ivs/src/protocols/Aws_restJson1.ts b/clients/client-ivs/src/protocols/Aws_restJson1.ts index 316e86dd965e1..c1fc0ce2c4c25 100644 --- a/clients/client-ivs/src/protocols/Aws_restJson1.ts +++ b/clients/client-ivs/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchGetChannelCommandInput, BatchGetChannelCommandOutput } from "../commands/BatchGetChannelCommand"; @@ -68,6 +67,7 @@ import { StopStreamCommandInput, StopStreamCommandOutput } from "../commands/Sto import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateChannelCommandInput, UpdateChannelCommandOutput } from "../commands/UpdateChannelCommand"; +import { IvsServiceException as __BaseException } from "../models/IvsServiceException"; import { _Stream, AccessDeniedException, @@ -876,25 +876,19 @@ const deserializeAws_restJson1BatchGetChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGetStreamKeyCommand = async ( @@ -927,25 +921,19 @@ const deserializeAws_restJson1BatchGetStreamKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -978,65 +966,34 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ivs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRecordingConfigurationCommand = async ( @@ -1068,73 +1025,37 @@ const deserializeAws_restJson1CreateRecordingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ivs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ivs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStreamKeyCommand = async ( @@ -1163,65 +1084,34 @@ const deserializeAws_restJson1CreateStreamKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ivs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -1246,65 +1136,34 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ivs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePlaybackKeyPairCommand = async ( @@ -1329,57 +1188,31 @@ const deserializeAws_restJson1DeletePlaybackKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecordingConfigurationCommand = async ( @@ -1404,65 +1237,34 @@ const deserializeAws_restJson1DeleteRecordingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ivs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStreamKeyCommand = async ( @@ -1487,57 +1289,31 @@ const deserializeAws_restJson1DeleteStreamKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelCommand = async ( @@ -1566,49 +1342,28 @@ const deserializeAws_restJson1GetChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPlaybackKeyPairCommand = async ( @@ -1637,49 +1392,28 @@ const deserializeAws_restJson1GetPlaybackKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecordingConfigurationCommand = async ( @@ -1711,57 +1445,31 @@ const deserializeAws_restJson1GetRecordingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStreamCommand = async ( @@ -1790,57 +1498,31 @@ const deserializeAws_restJson1GetStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ChannelNotBroadcasting": case "com.amazonaws.ivs#ChannelNotBroadcasting": - response = { - ...(await deserializeAws_restJson1ChannelNotBroadcastingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ChannelNotBroadcastingResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStreamKeyCommand = async ( @@ -1869,49 +1551,28 @@ const deserializeAws_restJson1GetStreamKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStreamSessionCommand = async ( @@ -1940,49 +1601,28 @@ const deserializeAws_restJson1GetStreamSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportPlaybackKeyPairCommand = async ( @@ -2011,65 +1651,34 @@ const deserializeAws_restJson1ImportPlaybackKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ivs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ivs#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -2102,49 +1711,28 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ivs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPlaybackKeyPairsCommand = async ( @@ -2177,41 +1765,25 @@ const deserializeAws_restJson1ListPlaybackKeyPairsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecordingConfigurationsCommand = async ( @@ -2247,49 +1819,28 @@ const deserializeAws_restJson1ListRecordingConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamKeysCommand = async ( @@ -2322,49 +1873,28 @@ const deserializeAws_restJson1ListStreamKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamsCommand = async ( @@ -2397,41 +1927,25 @@ const deserializeAws_restJson1ListStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamSessionsCommand = async ( @@ -2464,49 +1978,28 @@ const deserializeAws_restJson1ListStreamSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2535,49 +2028,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutMetadataCommand = async ( @@ -2602,65 +2074,34 @@ const deserializeAws_restJson1PutMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ChannelNotBroadcasting": case "com.amazonaws.ivs#ChannelNotBroadcasting": - response = { - ...(await deserializeAws_restJson1ChannelNotBroadcastingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ChannelNotBroadcastingResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ivs#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopStreamCommand = async ( @@ -2685,65 +2126,34 @@ const deserializeAws_restJson1StopStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ChannelNotBroadcasting": case "com.amazonaws.ivs#ChannelNotBroadcasting": - response = { - ...(await deserializeAws_restJson1ChannelNotBroadcastingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ChannelNotBroadcastingResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "StreamUnavailable": case "com.amazonaws.ivs#StreamUnavailable": - response = { - ...(await deserializeAws_restJson1StreamUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StreamUnavailableResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2768,49 +2178,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2835,49 +2224,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.ivs#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -2906,235 +2274,194 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ivs#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ivs#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "PendingVerification": case "com.amazonaws.ivs#PendingVerification": - response = { - ...(await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PendingVerificationResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ivs#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ivs#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ChannelNotBroadcastingResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ChannelNotBroadcasting = { - name: "ChannelNotBroadcasting", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new ChannelNotBroadcasting({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PendingVerificationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PendingVerification = { - name: "PendingVerification", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new PendingVerification({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1StreamUnavailableResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StreamUnavailable = { - name: "StreamUnavailable", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new StreamUnavailable({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exceptionMessage: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exceptionMessage !== undefined && data.exceptionMessage !== null) { contents.exceptionMessage = __expectString(data.exceptionMessage); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ChannelArnList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-kafka/src/index.ts b/clients/client-kafka/src/index.ts index a1e59c10659c9..b34af242f1149 100644 --- a/clients/client-kafka/src/index.ts +++ b/clients/client-kafka/src/index.ts @@ -3,3 +3,4 @@ export * from "./KafkaClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { KafkaServiceException } from "./models/KafkaServiceException"; diff --git a/clients/client-kafka/src/models/KafkaServiceException.ts b/clients/client-kafka/src/models/KafkaServiceException.ts new file mode 100644 index 0000000000000..e2a4c3efaa23b --- /dev/null +++ b/clients/client-kafka/src/models/KafkaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Kafka service. + */ +export class KafkaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KafkaServiceException.prototype); + } +} diff --git a/clients/client-kafka/src/models/models_0.ts b/clients/client-kafka/src/models/models_0.ts index 16275ec42b851..85bd7df151ca0 100644 --- a/clients/client-kafka/src/models/models_0.ts +++ b/clients/client-kafka/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KafkaServiceException as __BaseException } from "./KafkaServiceException"; /** * Contains information about provisioned throughput for EBS storage volumes attached to kafka broker nodes. @@ -1529,9 +1532,9 @@ export namespace UnprocessedScramSecret { /** *

Returns information about an error.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

The parameter that caused the error.

*/ @@ -1541,6 +1544,19 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** @@ -1591,9 +1607,9 @@ export namespace BatchAssociateScramSecretResponse { /** *

Returns information about an error.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** *

The parameter that caused the error.

*/ @@ -1603,14 +1619,27 @@ export interface ForbiddenException extends __SmithyException, $MetadataBearer { *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** *

The parameter that caused the error.

*/ @@ -1620,14 +1649,27 @@ export interface InternalServerErrorException extends __SmithyException, $Metada *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

The parameter that caused the error.

*/ @@ -1637,14 +1679,27 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** *

The parameter that caused the error.

*/ @@ -1654,14 +1709,27 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

The parameter that caused the error.

*/ @@ -1671,14 +1739,27 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; /** *

The parameter that caused the error.

*/ @@ -1688,6 +1769,19 @@ export interface UnauthorizedException extends __SmithyException, $MetadataBeare *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } /** @@ -1738,9 +1832,9 @@ export namespace BatchDisassociateScramSecretResponse { /** *

Returns information about an error.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The parameter that caused the error.

*/ @@ -1750,6 +1844,19 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The description of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.InvalidParameter = opts.InvalidParameter; + this.Message = opts.Message; + } } export interface CreateClusterRequest { diff --git a/clients/client-kafka/src/protocols/Aws_restJson1.ts b/clients/client-kafka/src/protocols/Aws_restJson1.ts index b9b8285550c66..594ef09f9930d 100644 --- a/clients/client-kafka/src/protocols/Aws_restJson1.ts +++ b/clients/client-kafka/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -101,6 +100,7 @@ import { import { UpdateConnectivityCommandInput, UpdateConnectivityCommandOutput } from "../commands/UpdateConnectivityCommand"; import { UpdateMonitoringCommandInput, UpdateMonitoringCommandOutput } from "../commands/UpdateMonitoringCommand"; import { UpdateSecurityCommandInput, UpdateSecurityCommandOutput } from "../commands/UpdateSecurityCommand"; +import { KafkaServiceException as __BaseException } from "../models/KafkaServiceException"; import { BadRequestException, BrokerEBSVolumeInfo, @@ -1378,81 +1378,40 @@ const deserializeAws_restJson1BatchAssociateScramSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDisassociateScramSecretCommand = async ( @@ -1488,81 +1447,40 @@ const deserializeAws_restJson1BatchDisassociateScramSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateClusterCommand = async ( @@ -1599,81 +1517,40 @@ const deserializeAws_restJson1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafka#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateClusterV2Command = async ( @@ -1714,81 +1591,40 @@ const deserializeAws_restJson1CreateClusterV2CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafka#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigurationCommand = async ( @@ -1833,81 +1669,40 @@ const deserializeAws_restJson1CreateConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafka#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteClusterCommand = async ( @@ -1940,57 +1735,31 @@ const deserializeAws_restJson1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationCommand = async ( @@ -2023,57 +1792,31 @@ const deserializeAws_restJson1DeleteConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeClusterCommand = async ( @@ -2102,65 +1845,34 @@ const deserializeAws_restJson1DescribeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeClusterOperationCommand = async ( @@ -2189,65 +1901,34 @@ const deserializeAws_restJson1DescribeClusterOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeClusterV2Command = async ( @@ -2276,65 +1957,34 @@ const deserializeAws_restJson1DescribeClusterV2CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConfigurationCommand = async ( @@ -2387,73 +2037,37 @@ const deserializeAws_restJson1DescribeConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConfigurationRevisionCommand = async ( @@ -2498,73 +2112,37 @@ const deserializeAws_restJson1DescribeConfigurationRevisionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBootstrapBrokersCommand = async ( @@ -2617,65 +2195,34 @@ const deserializeAws_restJson1GetBootstrapBrokersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafka#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCompatibleKafkaVersionsCommand = async ( @@ -2707,81 +2254,40 @@ const deserializeAws_restJson1GetCompatibleKafkaVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClusterOperationsCommand = async ( @@ -2817,57 +2323,31 @@ const deserializeAws_restJson1ListClusterOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClustersCommand = async ( @@ -2900,57 +2380,31 @@ const deserializeAws_restJson1ListClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClustersV2Command = async ( @@ -2983,57 +2437,31 @@ const deserializeAws_restJson1ListClustersV2CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationRevisionsCommand = async ( @@ -3066,73 +2494,37 @@ const deserializeAws_restJson1ListConfigurationRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationsCommand = async ( @@ -3165,65 +2557,34 @@ const deserializeAws_restJson1ListConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListKafkaVersionsCommand = async ( @@ -3256,57 +2617,31 @@ const deserializeAws_restJson1ListKafkaVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNodesCommand = async ( @@ -3339,57 +2674,31 @@ const deserializeAws_restJson1ListNodesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListScramSecretsCommand = async ( @@ -3422,81 +2731,40 @@ const deserializeAws_restJson1ListScramSecretsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3525,49 +2793,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RebootBrokerCommand = async ( @@ -3600,81 +2847,40 @@ const deserializeAws_restJson1RebootBrokerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3699,49 +2905,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3766,49 +2951,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBrokerCountCommand = async ( @@ -3841,65 +3005,34 @@ const deserializeAws_restJson1UpdateBrokerCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBrokerStorageCommand = async ( @@ -3932,65 +3065,34 @@ const deserializeAws_restJson1UpdateBrokerStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBrokerTypeCommand = async ( @@ -4023,81 +3125,40 @@ const deserializeAws_restJson1UpdateBrokerTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateClusterConfigurationCommand = async ( @@ -4130,73 +3191,37 @@ const deserializeAws_restJson1UpdateClusterConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateClusterKafkaVersionCommand = async ( @@ -4229,81 +3254,40 @@ const deserializeAws_restJson1UpdateClusterKafkaVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigurationCommand = async ( @@ -4336,73 +3320,37 @@ const deserializeAws_restJson1UpdateConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectivityCommand = async ( @@ -4435,73 +3383,37 @@ const deserializeAws_restJson1UpdateConnectivityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMonitoringCommand = async ( @@ -4534,65 +3446,34 @@ const deserializeAws_restJson1UpdateMonitoringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSecurityCommand = async ( @@ -4625,94 +3506,47 @@ const deserializeAws_restJson1UpdateSecurityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafka#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafka#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafka#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafka#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafka#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafka#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafka#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4720,20 +3554,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4741,20 +3573,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4762,20 +3592,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4783,20 +3611,18 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4804,20 +3630,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4825,20 +3649,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4846,20 +3668,18 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - InvalidParameter: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.invalidParameter !== undefined && data.invalidParameter !== null) { contents.InvalidParameter = __expectString(data.invalidParameter); @@ -4867,7 +3687,11 @@ const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-kafkaconnect/src/index.ts b/clients/client-kafkaconnect/src/index.ts index 61a19f22fa351..d6387de6e3c3b 100644 --- a/clients/client-kafkaconnect/src/index.ts +++ b/clients/client-kafkaconnect/src/index.ts @@ -3,3 +3,4 @@ export * from "./KafkaConnectClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { KafkaConnectServiceException } from "./models/KafkaConnectServiceException"; diff --git a/clients/client-kafkaconnect/src/models/KafkaConnectServiceException.ts b/clients/client-kafkaconnect/src/models/KafkaConnectServiceException.ts new file mode 100644 index 0000000000000..600b201a7b283 --- /dev/null +++ b/clients/client-kafkaconnect/src/models/KafkaConnectServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KafkaConnect service. + */ +export class KafkaConnectServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KafkaConnectServiceException.prototype); + } +} diff --git a/clients/client-kafkaconnect/src/models/models_0.ts b/clients/client-kafkaconnect/src/models/models_0.ts index 19a02f1e315b9..2098c0c7f27e2 100644 --- a/clients/client-kafkaconnect/src/models/models_0.ts +++ b/clients/client-kafkaconnect/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KafkaConnectServiceException as __BaseException } from "./KafkaConnectServiceException"; /** *

The description of the scale-in policy for the connector.

@@ -1019,10 +1022,20 @@ export namespace AutoScalingUpdate { /** *

HTTP Status Code 400: Bad request due to incorrect input. Correct your request and then retry it.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** @@ -1148,10 +1161,20 @@ export namespace CloudWatchLogsLogDelivery { /** *

HTTP Status Code 409: Conflict. A resource with this name already exists. Retry your request with another name.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -1436,55 +1459,115 @@ export namespace CreateConnectorResponse { /** *

HTTP Status Code 403: Access forbidden. Correct your credentials and then retry your request.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; - message?: string; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + } } /** *

HTTP Status Code 500: Unexpected internal server error. Retrying your request might resolve the issue.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; - message?: string; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + } } /** *

HTTP Status Code 404: Resource not found due to incorrect input. Correct your request and then retry it.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** *

HTTP Status Code 503: Service Unavailable. Retrying your request in some time might resolve the issue.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

HTTP Status Code 429: Limit exceeded. Resource limit reached.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - message?: string; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** *

HTTP Status Code 401: Unauthorized request. The provided credentials couldn't be validated.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message?: string; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** diff --git a/clients/client-kafkaconnect/src/protocols/Aws_restJson1.ts b/clients/client-kafkaconnect/src/protocols/Aws_restJson1.ts index 231d18499ac3a..3ccc948b8a39b 100644 --- a/clients/client-kafkaconnect/src/protocols/Aws_restJson1.ts +++ b/clients/client-kafkaconnect/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateConnectorCommandInput, CreateConnectorCommandOutput } from "../commands/CreateConnectorCommand"; @@ -40,6 +39,7 @@ import { ListWorkerConfigurationsCommandOutput, } from "../commands/ListWorkerConfigurationsCommand"; import { UpdateConnectorCommandInput, UpdateConnectorCommandOutput } from "../commands/UpdateConnectorCommand"; +import { KafkaConnectServiceException as __BaseException } from "../models/KafkaConnectServiceException"; import { ApacheKafkaCluster, ApacheKafkaClusterDescription, @@ -487,89 +487,43 @@ const deserializeAws_restJson1CreateConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafkaconnect#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCustomPluginCommand = async ( @@ -610,89 +564,43 @@ const deserializeAws_restJson1CreateCustomPluginCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafkaconnect#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorkerConfigurationCommand = async ( @@ -733,89 +641,43 @@ const deserializeAws_restJson1CreateWorkerConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kafkaconnect#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConnectorCommand = async ( @@ -848,81 +710,40 @@ const deserializeAws_restJson1DeleteConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConnectorCommand = async ( @@ -1020,81 +841,40 @@ const deserializeAws_restJson1DescribeConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCustomPluginCommand = async ( @@ -1143,81 +923,40 @@ const deserializeAws_restJson1DescribeCustomPluginCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorkerConfigurationCommand = async ( @@ -1265,81 +1004,40 @@ const deserializeAws_restJson1DescribeWorkerConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConnectorsCommand = async ( @@ -1372,81 +1070,40 @@ const deserializeAws_restJson1ListConnectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCustomPluginsCommand = async ( @@ -1479,81 +1136,40 @@ const deserializeAws_restJson1ListCustomPluginsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorkerConfigurationsCommand = async ( @@ -1589,81 +1205,40 @@ const deserializeAws_restJson1ListWorkerConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectorCommand = async ( @@ -1696,217 +1271,168 @@ const deserializeAws_restJson1UpdateConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.kafkaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.kafkaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.kafkaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kafkaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kafkaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.kafkaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.kafkaconnect#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-kendra/src/index.ts b/clients/client-kendra/src/index.ts index 9ffe4f958a3ab..6a493c518bf2c 100644 --- a/clients/client-kendra/src/index.ts +++ b/clients/client-kendra/src/index.ts @@ -3,3 +3,4 @@ export * from "./KendraClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { KendraServiceException } from "./models/KendraServiceException"; diff --git a/clients/client-kendra/src/models/KendraServiceException.ts b/clients/client-kendra/src/models/KendraServiceException.ts new file mode 100644 index 0000000000000..8f715a0f31966 --- /dev/null +++ b/clients/client-kendra/src/models/KendraServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Kendra service. + */ +export class KendraServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KendraServiceException.prototype); + } +} diff --git a/clients/client-kendra/src/models/models_0.ts b/clients/client-kendra/src/models/models_0.ts index b1aea373bdeb3..8875d44190476 100644 --- a/clients/client-kendra/src/models/models_0.ts +++ b/clients/client-kendra/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KendraServiceException as __BaseException } from "./KendraServiceException"; /** *

Access Control List files for the documents in a data source. For @@ -25,10 +27,22 @@ export namespace AccessControlListConfiguration { /** *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -284,46 +298,106 @@ export namespace AssociateEntitiesToExperienceResponse { /** *

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface ResourceAlreadyExistException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistException"; - $fault: "client"; +export class ResourceAlreadyExistException extends __BaseException { + readonly name: "ResourceAlreadyExistException" = "ResourceAlreadyExistException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum Persona { @@ -657,10 +731,22 @@ export namespace BatchDeleteDocumentResponse { /** *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -1380,10 +1466,22 @@ export namespace BatchPutDocumentResponse { /** *

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export interface ClearQuerySuggestionsRequest { @@ -6187,10 +6285,22 @@ export namespace GetSnapshotsResponse { /** *

The input to the request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } export interface ListDataSourcesRequest { @@ -7274,10 +7384,22 @@ export namespace ListTagsForResourceResponse { /** *

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "client"; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + this.Message = opts.Message; + } } export interface ListThesauriRequest { @@ -7987,10 +8109,22 @@ export namespace QueryResult { /** *

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } export interface StartDataSourceSyncJobRequest { diff --git a/clients/client-kendra/src/protocols/Aws_json1_1.ts b/clients/client-kendra/src/protocols/Aws_json1_1.ts index 6a0c41b093dab..cb79d28e400e6 100644 --- a/clients/client-kendra/src/protocols/Aws_json1_1.ts +++ b/clients/client-kendra/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -147,6 +146,7 @@ import { UpdateQuerySuggestionsConfigCommandOutput, } from "../commands/UpdateQuerySuggestionsConfigCommand"; import { UpdateThesaurusCommandInput, UpdateThesaurusCommandOutput } from "../commands/UpdateThesaurusCommand"; +import { KendraServiceException as __BaseException } from "../models/KendraServiceException"; import { AccessControlListConfiguration, AccessDeniedException, @@ -1114,73 +1114,37 @@ const deserializeAws_json1_1AssociateEntitiesToExperienceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistException": case "com.amazonaws.kendra#ResourceAlreadyExistException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociatePersonasToEntitiesCommand = async ( @@ -1208,73 +1172,37 @@ const deserializeAws_json1_1AssociatePersonasToEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistException": case "com.amazonaws.kendra#ResourceAlreadyExistException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDeleteDocumentCommand = async ( @@ -1302,73 +1230,37 @@ const deserializeAws_json1_1BatchDeleteDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchGetDocumentStatusCommand = async ( @@ -1396,73 +1288,37 @@ const deserializeAws_json1_1BatchGetDocumentStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchPutDocumentCommand = async ( @@ -1490,81 +1346,40 @@ const deserializeAws_json1_1BatchPutDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ClearQuerySuggestionsCommand = async ( @@ -1589,73 +1404,37 @@ const deserializeAws_json1_1ClearQuerySuggestionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataSourceCommand = async ( @@ -1683,89 +1462,43 @@ const deserializeAws_json1_1CreateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistException": case "com.amazonaws.kendra#ResourceAlreadyExistException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateExperienceCommand = async ( @@ -1793,81 +1526,40 @@ const deserializeAws_json1_1CreateExperienceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFaqCommand = async ( @@ -1895,81 +1587,40 @@ const deserializeAws_json1_1CreateFaqCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateIndexCommand = async ( @@ -1997,81 +1648,40 @@ const deserializeAws_json1_1CreateIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistException": case "com.amazonaws.kendra#ResourceAlreadyExistException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateQuerySuggestionsBlockListCommand = async ( @@ -2099,81 +1709,40 @@ const deserializeAws_json1_1CreateQuerySuggestionsBlockListCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateThesaurusCommand = async ( @@ -2201,81 +1770,40 @@ const deserializeAws_json1_1CreateThesaurusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDataSourceCommand = async ( @@ -2300,73 +1828,37 @@ const deserializeAws_json1_1DeleteDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteExperienceCommand = async ( @@ -2394,73 +1886,37 @@ const deserializeAws_json1_1DeleteExperienceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFaqCommand = async ( @@ -2485,73 +1941,37 @@ const deserializeAws_json1_1DeleteFaqCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIndexCommand = async ( @@ -2576,73 +1996,37 @@ const deserializeAws_json1_1DeleteIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePrincipalMappingCommand = async ( @@ -2667,73 +2051,37 @@ const deserializeAws_json1_1DeletePrincipalMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteQuerySuggestionsBlockListCommand = async ( @@ -2758,73 +2106,37 @@ const deserializeAws_json1_1DeleteQuerySuggestionsBlockListCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteThesaurusCommand = async ( @@ -2849,73 +2161,37 @@ const deserializeAws_json1_1DeleteThesaurusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDataSourceCommand = async ( @@ -2943,65 +2219,34 @@ const deserializeAws_json1_1DescribeDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExperienceCommand = async ( @@ -3029,65 +2274,34 @@ const deserializeAws_json1_1DescribeExperienceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFaqCommand = async ( @@ -3115,65 +2329,34 @@ const deserializeAws_json1_1DescribeFaqCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeIndexCommand = async ( @@ -3201,65 +2384,34 @@ const deserializeAws_json1_1DescribeIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePrincipalMappingCommand = async ( @@ -3287,65 +2439,34 @@ const deserializeAws_json1_1DescribePrincipalMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeQuerySuggestionsBlockListCommand = async ( @@ -3373,65 +2494,34 @@ const deserializeAws_json1_1DescribeQuerySuggestionsBlockListCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeQuerySuggestionsConfigCommand = async ( @@ -3459,65 +2549,34 @@ const deserializeAws_json1_1DescribeQuerySuggestionsConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeThesaurusCommand = async ( @@ -3545,65 +2604,34 @@ const deserializeAws_json1_1DescribeThesaurusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateEntitiesFromExperienceCommand = async ( @@ -3631,65 +2659,34 @@ const deserializeAws_json1_1DisassociateEntitiesFromExperienceCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociatePersonasFromEntitiesCommand = async ( @@ -3717,65 +2714,34 @@ const deserializeAws_json1_1DisassociatePersonasFromEntitiesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQuerySuggestionsCommand = async ( @@ -3803,81 +2769,40 @@ const deserializeAws_json1_1GetQuerySuggestionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSnapshotsCommand = async ( @@ -3905,57 +2830,31 @@ const deserializeAws_json1_1GetSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kendra#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDataSourcesCommand = async ( @@ -3983,65 +2882,34 @@ const deserializeAws_json1_1ListDataSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDataSourceSyncJobsCommand = async ( @@ -4069,73 +2937,37 @@ const deserializeAws_json1_1ListDataSourceSyncJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEntityPersonasCommand = async ( @@ -4163,65 +2995,34 @@ const deserializeAws_json1_1ListEntityPersonasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExperienceEntitiesCommand = async ( @@ -4249,65 +3050,34 @@ const deserializeAws_json1_1ListExperienceEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExperiencesCommand = async ( @@ -4335,65 +3105,34 @@ const deserializeAws_json1_1ListExperiencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFaqsCommand = async ( @@ -4421,65 +3160,34 @@ const deserializeAws_json1_1ListFaqsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGroupsOlderThanOrderingIdCommand = async ( @@ -4507,73 +3215,37 @@ const deserializeAws_json1_1ListGroupsOlderThanOrderingIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIndicesCommand = async ( @@ -4601,57 +3273,31 @@ const deserializeAws_json1_1ListIndicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListQuerySuggestionsBlockListsCommand = async ( @@ -4679,65 +3325,34 @@ const deserializeAws_json1_1ListQuerySuggestionsBlockListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -4765,65 +3380,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.kendra#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListThesauriCommand = async ( @@ -4851,65 +3435,34 @@ const deserializeAws_json1_1ListThesauriCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPrincipalMappingCommand = async ( @@ -4934,81 +3487,40 @@ const deserializeAws_json1_1PutPrincipalMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1QueryCommand = async ( @@ -5036,81 +3548,40 @@ const deserializeAws_json1_1QueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDataSourceSyncJobCommand = async ( @@ -5138,81 +3609,40 @@ const deserializeAws_json1_1StartDataSourceSyncJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kendra#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopDataSourceSyncJobCommand = async ( @@ -5237,65 +3667,34 @@ const deserializeAws_json1_1StopDataSourceSyncJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SubmitFeedbackCommand = async ( @@ -5320,73 +3719,37 @@ const deserializeAws_json1_1SubmitFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.kendra#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -5414,65 +3777,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.kendra#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -5500,65 +3832,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.kendra#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDataSourceCommand = async ( @@ -5583,73 +3884,37 @@ const deserializeAws_json1_1UpdateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateExperienceCommand = async ( @@ -5674,73 +3939,37 @@ const deserializeAws_json1_1UpdateExperienceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateIndexCommand = async ( @@ -5765,81 +3994,40 @@ const deserializeAws_json1_1UpdateIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.kendra#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateQuerySuggestionsBlockListCommand = async ( @@ -5864,73 +4052,37 @@ const deserializeAws_json1_1UpdateQuerySuggestionsBlockListCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateQuerySuggestionsConfigCommand = async ( @@ -5955,73 +4107,37 @@ const deserializeAws_json1_1UpdateQuerySuggestionsConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateThesaurusCommand = async ( @@ -6046,73 +4162,37 @@ const deserializeAws_json1_1UpdateThesaurusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kendra#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.kendra#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.kendra#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kendra#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.kendra#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kendra#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -6121,13 +4201,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -6136,13 +4214,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -6151,13 +4227,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -6166,13 +4240,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistExceptionResponse = async ( @@ -6181,13 +4253,11 @@ const deserializeAws_json1_1ResourceAlreadyExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistException(body, context); - const contents: ResourceAlreadyExistException = { - name: "ResourceAlreadyExistException", - $fault: "client", + const exception = new ResourceAlreadyExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -6196,13 +4266,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -6211,13 +4279,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( @@ -6226,13 +4292,11 @@ const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceUnavailableException(body, context); - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "client", + const exception = new ResourceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( @@ -6241,13 +4305,11 @@ const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -6256,13 +4318,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -6271,13 +4331,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccessControlListConfiguration = ( diff --git a/clients/client-kinesis-analytics-v2/src/index.ts b/clients/client-kinesis-analytics-v2/src/index.ts index 5c669071c8c22..d5d3113cbbdd0 100644 --- a/clients/client-kinesis-analytics-v2/src/index.ts +++ b/clients/client-kinesis-analytics-v2/src/index.ts @@ -2,3 +2,4 @@ export * from "./KinesisAnalyticsV2"; export * from "./KinesisAnalyticsV2Client"; export * from "./commands"; export * from "./models"; +export { KinesisAnalyticsV2ServiceException } from "./models/KinesisAnalyticsV2ServiceException"; diff --git a/clients/client-kinesis-analytics-v2/src/models/KinesisAnalyticsV2ServiceException.ts b/clients/client-kinesis-analytics-v2/src/models/KinesisAnalyticsV2ServiceException.ts new file mode 100644 index 0000000000000..90dc4b4d2efa5 --- /dev/null +++ b/clients/client-kinesis-analytics-v2/src/models/KinesisAnalyticsV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KinesisAnalyticsV2 service. + */ +export class KinesisAnalyticsV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisAnalyticsV2ServiceException.prototype); + } +} diff --git a/clients/client-kinesis-analytics-v2/src/models/models_0.ts b/clients/client-kinesis-analytics-v2/src/models/models_0.ts index 20dff121adb35..708237ed7c69d 100644 --- a/clients/client-kinesis-analytics-v2/src/models/models_0.ts +++ b/clients/client-kinesis-analytics-v2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KinesisAnalyticsV2ServiceException as __BaseException } from "./KinesisAnalyticsV2ServiceException"; /** *

Provides a description of Amazon CloudWatch logging options, including the log stream @@ -126,55 +129,127 @@ export namespace AddApplicationCloudWatchLoggingOptionResponse { * be the result of attempting to modify an application without using the current application * ID.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

The user-provided application configuration is not valid.

*/ -export interface InvalidApplicationConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidApplicationConfigurationException"; - $fault: "client"; +export class InvalidApplicationConfigurationException extends __BaseException { + readonly name: "InvalidApplicationConfigurationException" = "InvalidApplicationConfigurationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApplicationConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApplicationConfigurationException.prototype); + this.Message = opts.Message; + } } /** *

The specified input parameter value is not valid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** *

The request JSON is not valid for the operation.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The application is not available for this operation.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

Specified application can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -806,10 +881,22 @@ export namespace AddApplicationInputResponse { *

The user-provided application code (query) is not valid. This can be a simple syntax * error.

*/ -export interface CodeValidationException extends __SmithyException, $MetadataBearer { - name: "CodeValidationException"; - $fault: "client"; +export class CodeValidationException extends __BaseException { + readonly name: "CodeValidationException" = "CodeValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeValidationException.prototype); + this.Message = opts.Message; + } } export interface AddApplicationInputProcessingConfigurationRequest { @@ -4139,30 +4226,64 @@ export namespace CreateApplicationResponse { /** *

The number of allowed resources has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Application created with too many tags, or too many tags added to an application. Note that the maximum * number of application tags includes system tags. The maximum number of user-defined application tags is 50.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** *

The request was rejected because a specified parameter is not supported or a specified resource is not valid for this * operation.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + } } export enum UrlType { @@ -4861,28 +4982,52 @@ export namespace DiscoverInputSchemaResponse { *

Discovery failed to get a record from the streaming source because of the Kinesis * Streams ProvisionedThroughputExceededException. For more information, see GetRecords in the Amazon Kinesis Streams API Reference.

*/ -export interface ResourceProvisionedThroughputExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceProvisionedThroughputExceededException"; - $fault: "client"; +export class ResourceProvisionedThroughputExceededException extends __BaseException { + readonly name: "ResourceProvisionedThroughputExceededException" = "ResourceProvisionedThroughputExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceProvisionedThroughputExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceProvisionedThroughputExceededException.prototype); + this.Message = opts.Message; + } } /** *

The service cannot complete the request.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The data format is not valid. Kinesis Data Analytics cannot detect the schema for * the given streaming source.

*/ -export interface UnableToDetectSchemaException extends __SmithyException, $MetadataBearer { - name: "UnableToDetectSchemaException"; - $fault: "client"; +export class UnableToDetectSchemaException extends __BaseException { + readonly name: "UnableToDetectSchemaException" = "UnableToDetectSchemaException"; + readonly $fault: "client" = "client"; Message?: string; /** *

Raw stream data that was sampled to infer the schema.

@@ -4893,6 +5038,20 @@ export interface UnableToDetectSchemaException extends __SmithyException, $Metad *

Stream data that was modified by the processor specified in the InputProcessingConfiguration parameter.

*/ ProcessedInputRecords?: string[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnableToDetectSchemaException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnableToDetectSchemaException.prototype); + this.Message = opts.Message; + this.RawInputRecords = opts.RawInputRecords; + this.ProcessedInputRecords = opts.ProcessedInputRecords; + } } export interface ListApplicationsRequest { diff --git a/clients/client-kinesis-analytics-v2/src/protocols/Aws_json1_1.ts b/clients/client-kinesis-analytics-v2/src/protocols/Aws_json1_1.ts index 66eee46c2db42..89e21fe86255b 100644 --- a/clients/client-kinesis-analytics-v2/src/protocols/Aws_json1_1.ts +++ b/clients/client-kinesis-analytics-v2/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -117,6 +116,7 @@ import { UpdateApplicationMaintenanceConfigurationCommandInput, UpdateApplicationMaintenanceConfigurationCommandOutput, } from "../commands/UpdateApplicationMaintenanceConfigurationCommand"; +import { KinesisAnalyticsV2ServiceException as __BaseException } from "../models/KinesisAnalyticsV2ServiceException"; import { AddApplicationCloudWatchLoggingOptionRequest, AddApplicationCloudWatchLoggingOptionResponse, @@ -742,73 +742,37 @@ const deserializeAws_json1_1AddApplicationCloudWatchLoggingOptionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationInputCommand = async ( @@ -836,73 +800,37 @@ const deserializeAws_json1_1AddApplicationInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeValidationException": case "com.amazonaws.kinesisanalyticsv2#CodeValidationException": - response = { - ...(await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationInputProcessingConfigurationCommand = async ( @@ -930,65 +858,34 @@ const deserializeAws_json1_1AddApplicationInputProcessingConfigurationCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationOutputCommand = async ( @@ -1016,65 +913,34 @@ const deserializeAws_json1_1AddApplicationOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationReferenceDataSourceCommand = async ( @@ -1102,65 +968,34 @@ const deserializeAws_json1_1AddApplicationReferenceDataSourceCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationVpcConfigurationCommand = async ( @@ -1188,65 +1023,34 @@ const deserializeAws_json1_1AddApplicationVpcConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationCommand = async ( @@ -1274,89 +1078,43 @@ const deserializeAws_json1_1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeValidationException": case "com.amazonaws.kinesisanalyticsv2#CodeValidationException": - response = { - ...(await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesisanalyticsv2#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.kinesisanalyticsv2#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationPresignedUrlCommand = async ( @@ -1384,49 +1142,28 @@ const deserializeAws_json1_1CreateApplicationPresignedUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationSnapshotCommand = async ( @@ -1454,81 +1191,40 @@ const deserializeAws_json1_1CreateApplicationSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesisanalyticsv2#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCommand = async ( @@ -1556,73 +1252,37 @@ const deserializeAws_json1_1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCloudWatchLoggingOptionCommand = async ( @@ -1650,73 +1310,37 @@ const deserializeAws_json1_1DeleteApplicationCloudWatchLoggingOptionCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationInputProcessingConfigurationCommand = async ( @@ -1744,65 +1368,34 @@ const deserializeAws_json1_1DeleteApplicationInputProcessingConfigurationCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationOutputCommand = async ( @@ -1830,65 +1423,34 @@ const deserializeAws_json1_1DeleteApplicationOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationReferenceDataSourceCommand = async ( @@ -1916,65 +1478,34 @@ const deserializeAws_json1_1DeleteApplicationReferenceDataSourceCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationSnapshotCommand = async ( @@ -2002,65 +1533,34 @@ const deserializeAws_json1_1DeleteApplicationSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationVpcConfigurationCommand = async ( @@ -2088,65 +1588,34 @@ const deserializeAws_json1_1DeleteApplicationVpcConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationCommand = async ( @@ -2174,49 +1643,28 @@ const deserializeAws_json1_1DescribeApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationSnapshotCommand = async ( @@ -2244,49 +1692,28 @@ const deserializeAws_json1_1DescribeApplicationSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationVersionCommand = async ( @@ -2314,49 +1741,28 @@ const deserializeAws_json1_1DescribeApplicationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DiscoverInputSchemaCommand = async ( @@ -2384,73 +1790,37 @@ const deserializeAws_json1_1DiscoverInputSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceProvisionedThroughputExceededException": case "com.amazonaws.kinesisanalyticsv2#ResourceProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kinesisanalyticsv2#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnableToDetectSchemaException": case "com.amazonaws.kinesisanalyticsv2#UnableToDetectSchemaException": - response = { - ...(await deserializeAws_json1_1UnableToDetectSchemaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnableToDetectSchemaExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationsCommand = async ( @@ -2478,33 +1848,22 @@ const deserializeAws_json1_1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationSnapshotsCommand = async ( @@ -2532,41 +1891,25 @@ const deserializeAws_json1_1ListApplicationSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationVersionsCommand = async ( @@ -2594,49 +1937,28 @@ const deserializeAws_json1_1ListApplicationVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2664,49 +1986,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RollbackApplicationCommand = async ( @@ -2734,73 +2035,37 @@ const deserializeAws_json1_1RollbackApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartApplicationCommand = async ( @@ -2828,65 +2093,34 @@ const deserializeAws_json1_1StartApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopApplicationCommand = async ( @@ -2914,73 +2148,37 @@ const deserializeAws_json1_1StopApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3008,65 +2206,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.kinesisanalyticsv2#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3094,65 +2261,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.kinesisanalyticsv2#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationCommand = async ( @@ -3180,89 +2316,43 @@ const deserializeAws_json1_1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeValidationException": case "com.amazonaws.kinesisanalyticsv2#CodeValidationException": - response = { - ...(await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalyticsv2#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.kinesisanalyticsv2#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesisanalyticsv2#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationMaintenanceConfigurationCommand = async ( @@ -3290,65 +2380,34 @@ const deserializeAws_json1_1UpdateApplicationMaintenanceConfigurationCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalyticsv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalyticsv2#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalyticsv2#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalyticsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalyticsv2#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CodeValidationExceptionResponse = async ( @@ -3357,13 +2416,11 @@ const deserializeAws_json1_1CodeValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CodeValidationException(body, context); - const contents: CodeValidationException = { - name: "CodeValidationException", - $fault: "client", + const exception = new CodeValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -3372,13 +2429,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse = async ( @@ -3387,13 +2442,11 @@ const deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApplicationConfigurationException(body, context); - const contents: InvalidApplicationConfigurationException = { - name: "InvalidApplicationConfigurationException", - $fault: "client", + const exception = new InvalidApplicationConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( @@ -3402,13 +2455,11 @@ const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgumentException(body, context); - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", + const exception = new InvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -3417,13 +2468,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -3432,13 +2481,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -3447,13 +2494,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3462,13 +2507,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionResponse = async ( @@ -3477,13 +2520,11 @@ const deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceProvisionedThroughputExceededException(body, context); - const contents: ResourceProvisionedThroughputExceededException = { - name: "ResourceProvisionedThroughputExceededException", - $fault: "client", + const exception = new ResourceProvisionedThroughputExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -3492,13 +2533,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -3507,13 +2546,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnableToDetectSchemaExceptionResponse = async ( @@ -3522,13 +2559,11 @@ const deserializeAws_json1_1UnableToDetectSchemaExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnableToDetectSchemaException(body, context); - const contents: UnableToDetectSchemaException = { - name: "UnableToDetectSchemaException", - $fault: "client", + const exception = new UnableToDetectSchemaException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -3537,13 +2572,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddApplicationCloudWatchLoggingOptionRequest = ( diff --git a/clients/client-kinesis-analytics/src/index.ts b/clients/client-kinesis-analytics/src/index.ts index 612fc8f568daf..c9b061f700430 100644 --- a/clients/client-kinesis-analytics/src/index.ts +++ b/clients/client-kinesis-analytics/src/index.ts @@ -2,3 +2,4 @@ export * from "./KinesisAnalytics"; export * from "./KinesisAnalyticsClient"; export * from "./commands"; export * from "./models"; +export { KinesisAnalyticsServiceException } from "./models/KinesisAnalyticsServiceException"; diff --git a/clients/client-kinesis-analytics/src/models/KinesisAnalyticsServiceException.ts b/clients/client-kinesis-analytics/src/models/KinesisAnalyticsServiceException.ts new file mode 100644 index 0000000000000..2fd824de45f68 --- /dev/null +++ b/clients/client-kinesis-analytics/src/models/KinesisAnalyticsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KinesisAnalytics service. + */ +export class KinesisAnalyticsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisAnalyticsServiceException.prototype); + } +} diff --git a/clients/client-kinesis-analytics/src/models/models_0.ts b/clients/client-kinesis-analytics/src/models/models_0.ts index f8fbc2fc5d3f3..8ff5cdd64a1f3 100644 --- a/clients/client-kinesis-analytics/src/models/models_0.ts +++ b/clients/client-kinesis-analytics/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KinesisAnalyticsServiceException as __BaseException } from "./KinesisAnalyticsServiceException"; /** *

Provides a description of CloudWatch logging options, including the log stream @@ -69,58 +72,96 @@ export namespace AddApplicationCloudWatchLoggingOptionResponse { /** *

Exception thrown as a result of concurrent modification to an application. For example, two individuals attempting to edit the same application at the same time.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** *

Specified input parameter value is invalid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + } } /** *

Application is not available for this operation.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

Specified application can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The request was rejected because a specified parameter is not supported or a specified resource is not valid for this operation.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; - message?: string; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + } } /** @@ -539,13 +580,20 @@ export namespace AddApplicationInputResponse { /** *

User-provided application code (query) is invalid. This can be a simple syntax error.

*/ -export interface CodeValidationException extends __SmithyException, $MetadataBearer { - name: "CodeValidationException"; - $fault: "client"; +export class CodeValidationException extends __BaseException { + readonly name: "CodeValidationException" = "CodeValidationException"; + readonly $fault: "client" = "client"; /** - *

Test

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeValidationException.prototype); + } } export interface AddApplicationInputProcessingConfigurationRequest { @@ -2091,22 +2139,39 @@ export namespace CreateApplicationResponse { /** *

Exceeded the number of applications allowed.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

Application created with too many tags, or too many tags added to an application. Note that the maximum number of application tags includes system tags. The maximum number of user-defined application tags is 50.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + } } /** @@ -2470,31 +2535,63 @@ export namespace DiscoverInputSchemaResponse { * see GetRecords * in the Amazon Kinesis Streams API Reference.

*/ -export interface ResourceProvisionedThroughputExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceProvisionedThroughputExceededException"; - $fault: "client"; - message?: string; +export class ResourceProvisionedThroughputExceededException extends __BaseException { + readonly name: "ResourceProvisionedThroughputExceededException" = "ResourceProvisionedThroughputExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceProvisionedThroughputExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceProvisionedThroughputExceededException.prototype); + } } /** *

The service is unavailable. Back off and retry the operation.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** *

Data format is not valid. Amazon Kinesis Analytics is not able to detect schema for * the given streaming source.

*/ -export interface UnableToDetectSchemaException extends __SmithyException, $MetadataBearer { - name: "UnableToDetectSchemaException"; - $fault: "client"; - message?: string; +export class UnableToDetectSchemaException extends __BaseException { + readonly name: "UnableToDetectSchemaException" = "UnableToDetectSchemaException"; + readonly $fault: "client" = "client"; RawInputRecords?: string[]; ProcessedInputRecords?: string[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnableToDetectSchemaException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnableToDetectSchemaException.prototype); + this.RawInputRecords = opts.RawInputRecords; + this.ProcessedInputRecords = opts.ProcessedInputRecords; + } } /** @@ -2528,13 +2625,20 @@ export namespace InputConfiguration { /** *

User-provided application configuration is not valid.

*/ -export interface InvalidApplicationConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidApplicationConfigurationException"; - $fault: "client"; +export class InvalidApplicationConfigurationException extends __BaseException { + readonly name: "InvalidApplicationConfigurationException" = "InvalidApplicationConfigurationException"; + readonly $fault: "client" = "client"; /** - *

test

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidApplicationConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidApplicationConfigurationException.prototype); + } } /** diff --git a/clients/client-kinesis-analytics/src/protocols/Aws_json1_1.ts b/clients/client-kinesis-analytics/src/protocols/Aws_json1_1.ts index 9c9fd587f4ed5..f3b543cf4bdd0 100644 --- a/clients/client-kinesis-analytics/src/protocols/Aws_json1_1.ts +++ b/clients/client-kinesis-analytics/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -73,6 +72,7 @@ import { StopApplicationCommandInput, StopApplicationCommandOutput } from "../co import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateApplicationCommandInput, UpdateApplicationCommandOutput } from "../commands/UpdateApplicationCommand"; +import { KinesisAnalyticsServiceException as __BaseException } from "../models/KinesisAnalyticsServiceException"; import { AddApplicationCloudWatchLoggingOptionRequest, AddApplicationCloudWatchLoggingOptionResponse, @@ -466,65 +466,34 @@ const deserializeAws_json1_1AddApplicationCloudWatchLoggingOptionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationInputCommand = async ( @@ -552,73 +521,37 @@ const deserializeAws_json1_1AddApplicationInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeValidationException": case "com.amazonaws.kinesisanalytics#CodeValidationException": - response = { - ...(await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationInputProcessingConfigurationCommand = async ( @@ -646,65 +579,34 @@ const deserializeAws_json1_1AddApplicationInputProcessingConfigurationCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationOutputCommand = async ( @@ -732,65 +634,34 @@ const deserializeAws_json1_1AddApplicationOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddApplicationReferenceDataSourceCommand = async ( @@ -818,65 +689,34 @@ const deserializeAws_json1_1AddApplicationReferenceDataSourceCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateApplicationCommand = async ( @@ -904,73 +744,37 @@ const deserializeAws_json1_1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeValidationException": case "com.amazonaws.kinesisanalytics#CodeValidationException": - response = { - ...(await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesisanalytics#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.kinesisanalytics#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCommand = async ( @@ -998,57 +802,31 @@ const deserializeAws_json1_1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationCloudWatchLoggingOptionCommand = async ( @@ -1076,65 +854,34 @@ const deserializeAws_json1_1DeleteApplicationCloudWatchLoggingOptionCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationInputProcessingConfigurationCommand = async ( @@ -1162,65 +909,34 @@ const deserializeAws_json1_1DeleteApplicationInputProcessingConfigurationCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationOutputCommand = async ( @@ -1248,65 +964,34 @@ const deserializeAws_json1_1DeleteApplicationOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteApplicationReferenceDataSourceCommand = async ( @@ -1334,65 +1019,34 @@ const deserializeAws_json1_1DeleteApplicationReferenceDataSourceCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationCommand = async ( @@ -1420,41 +1074,25 @@ const deserializeAws_json1_1DescribeApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DiscoverInputSchemaCommand = async ( @@ -1482,57 +1120,31 @@ const deserializeAws_json1_1DiscoverInputSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceProvisionedThroughputExceededException": case "com.amazonaws.kinesisanalytics#ResourceProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.kinesisanalytics#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnableToDetectSchemaException": case "com.amazonaws.kinesisanalytics#UnableToDetectSchemaException": - response = { - ...(await deserializeAws_json1_1UnableToDetectSchemaExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnableToDetectSchemaExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationsCommand = async ( @@ -1560,25 +1172,19 @@ const deserializeAws_json1_1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1606,49 +1212,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartApplicationCommand = async ( @@ -1676,65 +1261,34 @@ const deserializeAws_json1_1StartApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidApplicationConfigurationException": case "com.amazonaws.kinesisanalytics#InvalidApplicationConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopApplicationCommand = async ( @@ -1762,49 +1316,28 @@ const deserializeAws_json1_1StopApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1832,65 +1365,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.kinesisanalytics#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1918,65 +1420,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.kinesisanalytics#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationCommand = async ( @@ -2004,73 +1475,37 @@ const deserializeAws_json1_1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeValidationException": case "com.amazonaws.kinesisanalytics#CodeValidationException": - response = { - ...(await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CodeValidationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.kinesisanalytics#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisanalytics#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisanalytics#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisanalytics#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kinesisanalytics#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CodeValidationExceptionResponse = async ( @@ -2079,13 +1514,11 @@ const deserializeAws_json1_1CodeValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CodeValidationException(body, context); - const contents: CodeValidationException = { - name: "CodeValidationException", - $fault: "client", + const exception = new CodeValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -2094,13 +1527,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse = async ( @@ -2109,13 +1540,11 @@ const deserializeAws_json1_1InvalidApplicationConfigurationExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidApplicationConfigurationException(body, context); - const contents: InvalidApplicationConfigurationException = { - name: "InvalidApplicationConfigurationException", - $fault: "client", + const exception = new InvalidApplicationConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( @@ -2124,13 +1553,11 @@ const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgumentException(body, context); - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", + const exception = new InvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2139,13 +1566,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -2154,13 +1579,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2169,13 +1592,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionResponse = async ( @@ -2184,13 +1605,11 @@ const deserializeAws_json1_1ResourceProvisionedThroughputExceededExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceProvisionedThroughputExceededException(body, context); - const contents: ResourceProvisionedThroughputExceededException = { - name: "ResourceProvisionedThroughputExceededException", - $fault: "client", + const exception = new ResourceProvisionedThroughputExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -2199,13 +1618,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -2214,13 +1631,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnableToDetectSchemaExceptionResponse = async ( @@ -2229,13 +1644,11 @@ const deserializeAws_json1_1UnableToDetectSchemaExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnableToDetectSchemaException(body, context); - const contents: UnableToDetectSchemaException = { - name: "UnableToDetectSchemaException", - $fault: "client", + const exception = new UnableToDetectSchemaException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -2244,13 +1657,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddApplicationCloudWatchLoggingOptionRequest = ( diff --git a/clients/client-kinesis-video-archived-media/src/index.ts b/clients/client-kinesis-video-archived-media/src/index.ts index 3b9736e73171e..842e7a11374ea 100644 --- a/clients/client-kinesis-video-archived-media/src/index.ts +++ b/clients/client-kinesis-video-archived-media/src/index.ts @@ -2,3 +2,4 @@ export * from "./KinesisVideoArchivedMedia"; export * from "./KinesisVideoArchivedMediaClient"; export * from "./commands"; export * from "./models"; +export { KinesisVideoArchivedMediaServiceException } from "./models/KinesisVideoArchivedMediaServiceException"; diff --git a/clients/client-kinesis-video-archived-media/src/models/KinesisVideoArchivedMediaServiceException.ts b/clients/client-kinesis-video-archived-media/src/models/KinesisVideoArchivedMediaServiceException.ts new file mode 100644 index 0000000000000..9d329ab7f3873 --- /dev/null +++ b/clients/client-kinesis-video-archived-media/src/models/KinesisVideoArchivedMediaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KinesisVideoArchivedMedia service. + */ +export class KinesisVideoArchivedMediaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisVideoArchivedMediaServiceException.prototype); + } +} diff --git a/clients/client-kinesis-video-archived-media/src/models/models_0.ts b/clients/client-kinesis-video-archived-media/src/models/models_0.ts index b94015b7f600e..6791e3151f0b5 100644 --- a/clients/client-kinesis-video-archived-media/src/models/models_0.ts +++ b/clients/client-kinesis-video-archived-media/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { KinesisVideoArchivedMediaServiceException as __BaseException } from "./KinesisVideoArchivedMediaServiceException"; + /** *

Kinesis Video Streams has throttled the request because you have exceeded a limit. Try making the call later. For information about limits, see Kinesis Video Streams Limits.

*/ -export interface ClientLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ClientLimitExceededException"; - $fault: "client"; +export class ClientLimitExceededException extends __BaseException { + readonly name: "ClientLimitExceededException" = "ClientLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientLimitExceededException.prototype); + this.Message = opts.Message; + } } export enum ClipFragmentSelectorType { @@ -137,59 +152,131 @@ export namespace GetClipOutput { *

A specified parameter exceeds its restrictions, is not supported, or can't be * used.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** *

The codec private data in at least one of the tracks of the video stream is not valid * for this operation.

*/ -export interface InvalidCodecPrivateDataException extends __SmithyException, $MetadataBearer { - name: "InvalidCodecPrivateDataException"; - $fault: "client"; +export class InvalidCodecPrivateDataException extends __BaseException { + readonly name: "InvalidCodecPrivateDataException" = "InvalidCodecPrivateDataException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCodecPrivateDataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCodecPrivateDataException.prototype); + this.Message = opts.Message; + } } /** *

One or more frames in the requested clip could not be parsed based on the specified * codec.

*/ -export interface InvalidMediaFrameException extends __SmithyException, $MetadataBearer { - name: "InvalidMediaFrameException"; - $fault: "client"; +export class InvalidMediaFrameException extends __BaseException { + readonly name: "InvalidMediaFrameException" = "InvalidMediaFrameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMediaFrameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMediaFrameException.prototype); + this.Message = opts.Message; + } } /** *

No codec private data was found in at least one of tracks of the video stream.

*/ -export interface MissingCodecPrivateDataException extends __SmithyException, $MetadataBearer { - name: "MissingCodecPrivateDataException"; - $fault: "client"; +export class MissingCodecPrivateDataException extends __BaseException { + readonly name: "MissingCodecPrivateDataException" = "MissingCodecPrivateDataException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingCodecPrivateDataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingCodecPrivateDataException.prototype); + this.Message = opts.Message; + } } /** *

A streaming session was requested for a stream that does not retain data (that is, has * a DataRetentionInHours of 0).

*/ -export interface NoDataRetentionException extends __SmithyException, $MetadataBearer { - name: "NoDataRetentionException"; - $fault: "client"; +export class NoDataRetentionException extends __BaseException { + readonly name: "NoDataRetentionException" = "NoDataRetentionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoDataRetentionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoDataRetentionException.prototype); + this.Message = opts.Message; + } } /** *

Status Code: 403, The caller is not authorized to perform an operation on the given * stream, or the token has expired.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + this.Message = opts.Message; + } } /** @@ -204,10 +291,22 @@ export interface NotAuthorizedException extends __SmithyException, $MetadataBear * LIVE is requested for a stream that has no fragments within the last 30 * seconds.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -216,10 +315,22 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * session. The codec ID for track 1 should be V_MPEG/ISO/AVC and, optionally, * the codec ID for track 2 should be A_AAC.

*/ -export interface UnsupportedStreamMediaTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedStreamMediaTypeException"; - $fault: "client"; +export class UnsupportedStreamMediaTypeException extends __BaseException { + readonly name: "UnsupportedStreamMediaTypeException" = "UnsupportedStreamMediaTypeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedStreamMediaTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedStreamMediaTypeException.prototype); + this.Message = opts.Message; + } } export enum DASHFragmentSelectorType { diff --git a/clients/client-kinesis-video-archived-media/src/protocols/Aws_restJson1.ts b/clients/client-kinesis-video-archived-media/src/protocols/Aws_restJson1.ts index 1bb2ec62a3a33..69f6caf950a44 100644 --- a/clients/client-kinesis-video-archived-media/src/protocols/Aws_restJson1.ts +++ b/clients/client-kinesis-video-archived-media/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { GetClipCommandInput, GetClipCommandOutput } from "../commands/GetClipCommand"; @@ -29,6 +28,7 @@ import { GetMediaForFragmentListCommandOutput, } from "../commands/GetMediaForFragmentListCommand"; import { ListFragmentsCommandInput, ListFragmentsCommandOutput } from "../commands/ListFragmentsCommand"; +import { KinesisVideoArchivedMediaServiceException as __BaseException } from "../models/KinesisVideoArchivedMediaServiceException"; import { ClientLimitExceededException, ClipFragmentSelector, @@ -246,97 +246,46 @@ const deserializeAws_restJson1GetClipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideoarchivedmedia#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidCodecPrivateDataException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidCodecPrivateDataException": - response = { - ...(await deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse(parsedOutput, context); case "InvalidMediaFrameException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidMediaFrameException": - response = { - ...(await deserializeAws_restJson1InvalidMediaFrameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidMediaFrameExceptionResponse(parsedOutput, context); case "MissingCodecPrivateDataException": case "com.amazonaws.kinesisvideoarchivedmedia#MissingCodecPrivateDataException": - response = { - ...(await deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse(parsedOutput, context); case "NoDataRetentionException": case "com.amazonaws.kinesisvideoarchivedmedia#NoDataRetentionException": - response = { - ...(await deserializeAws_restJson1NoDataRetentionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NoDataRetentionExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideoarchivedmedia#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideoarchivedmedia#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedStreamMediaTypeException": case "com.amazonaws.kinesisvideoarchivedmedia#UnsupportedStreamMediaTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDASHStreamingSessionURLCommand = async ( @@ -365,89 +314,43 @@ const deserializeAws_restJson1GetDASHStreamingSessionURLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideoarchivedmedia#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidCodecPrivateDataException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidCodecPrivateDataException": - response = { - ...(await deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse(parsedOutput, context); case "MissingCodecPrivateDataException": case "com.amazonaws.kinesisvideoarchivedmedia#MissingCodecPrivateDataException": - response = { - ...(await deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse(parsedOutput, context); case "NoDataRetentionException": case "com.amazonaws.kinesisvideoarchivedmedia#NoDataRetentionException": - response = { - ...(await deserializeAws_restJson1NoDataRetentionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NoDataRetentionExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideoarchivedmedia#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideoarchivedmedia#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedStreamMediaTypeException": case "com.amazonaws.kinesisvideoarchivedmedia#UnsupportedStreamMediaTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetHLSStreamingSessionURLCommand = async ( @@ -476,89 +379,43 @@ const deserializeAws_restJson1GetHLSStreamingSessionURLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideoarchivedmedia#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidCodecPrivateDataException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidCodecPrivateDataException": - response = { - ...(await deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse(parsedOutput, context); case "MissingCodecPrivateDataException": case "com.amazonaws.kinesisvideoarchivedmedia#MissingCodecPrivateDataException": - response = { - ...(await deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse(parsedOutput, context); case "NoDataRetentionException": case "com.amazonaws.kinesisvideoarchivedmedia#NoDataRetentionException": - response = { - ...(await deserializeAws_restJson1NoDataRetentionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NoDataRetentionExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideoarchivedmedia#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideoarchivedmedia#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedStreamMediaTypeException": case "com.amazonaws.kinesisvideoarchivedmedia#UnsupportedStreamMediaTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMediaForFragmentListCommand = async ( @@ -589,57 +446,31 @@ const deserializeAws_restJson1GetMediaForFragmentListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideoarchivedmedia#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideoarchivedmedia#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideoarchivedmedia#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFragmentsCommand = async ( @@ -672,210 +503,175 @@ const deserializeAws_restJson1ListFragmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideoarchivedmedia#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideoarchivedmedia#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideoarchivedmedia#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideoarchivedmedia#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ClientLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientLimitExceededException = { - name: "ClientLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ClientLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidArgumentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidArgumentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidCodecPrivateDataExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidCodecPrivateDataException = { - name: "InvalidCodecPrivateDataException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidCodecPrivateDataException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidMediaFrameExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidMediaFrameException = { - name: "InvalidMediaFrameException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidMediaFrameException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MissingCodecPrivateDataExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MissingCodecPrivateDataException = { - name: "MissingCodecPrivateDataException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new MissingCodecPrivateDataException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NoDataRetentionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoDataRetentionException = { - name: "NoDataRetentionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NoDataRetentionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotAuthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotAuthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedStreamMediaTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedStreamMediaTypeException = { - name: "UnsupportedStreamMediaTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnsupportedStreamMediaTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ClipFragmentSelector = (input: ClipFragmentSelector, context: __SerdeContext): any => { diff --git a/clients/client-kinesis-video-media/src/index.ts b/clients/client-kinesis-video-media/src/index.ts index 2aa84bed8fd49..658a356fffb66 100644 --- a/clients/client-kinesis-video-media/src/index.ts +++ b/clients/client-kinesis-video-media/src/index.ts @@ -2,3 +2,4 @@ export * from "./KinesisVideoMedia"; export * from "./KinesisVideoMediaClient"; export * from "./commands"; export * from "./models"; +export { KinesisVideoMediaServiceException } from "./models/KinesisVideoMediaServiceException"; diff --git a/clients/client-kinesis-video-media/src/models/KinesisVideoMediaServiceException.ts b/clients/client-kinesis-video-media/src/models/KinesisVideoMediaServiceException.ts new file mode 100644 index 0000000000000..a0bd36ea9ad08 --- /dev/null +++ b/clients/client-kinesis-video-media/src/models/KinesisVideoMediaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KinesisVideoMedia service. + */ +export class KinesisVideoMediaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisVideoMediaServiceException.prototype); + } +} diff --git a/clients/client-kinesis-video-media/src/models/models_0.ts b/clients/client-kinesis-video-media/src/models/models_0.ts index 505ada6ec0048..a3d586d477ff7 100644 --- a/clients/client-kinesis-video-media/src/models/models_0.ts +++ b/clients/client-kinesis-video-media/src/models/models_0.ts @@ -1,24 +1,51 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { KinesisVideoMediaServiceException as __BaseException } from "./KinesisVideoMediaServiceException"; + /** *

Kinesis Video Streams has throttled the request because you have exceeded the limit of * allowed client calls. Try making the call later.

*/ -export interface ClientLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ClientLimitExceededException"; - $fault: "client"; +export class ClientLimitExceededException extends __BaseException { + readonly name: "ClientLimitExceededException" = "ClientLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Kinesis Video Streams has throttled the request because you have exceeded the limit of * allowed client connections.

*/ -export interface ConnectionLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ConnectionLimitExceededException"; - $fault: "client"; +export class ConnectionLimitExceededException extends __BaseException { + readonly name: "ConnectionLimitExceededException" = "ConnectionLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConnectionLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConnectionLimitExceededException.prototype); + this.Message = opts.Message; + } } export enum StartSelectorType { @@ -233,10 +260,22 @@ export namespace GetMediaOutput { /** *

The value for this input parameter is invalid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** @@ -245,27 +284,63 @@ export interface InvalidArgumentException extends __SmithyException, $MetadataBe * AccessMode set to "READ" and use the endpoint Kinesis Video returns in the next * GetMedia call.

*/ -export interface InvalidEndpointException extends __SmithyException, $MetadataBearer { - name: "InvalidEndpointException"; - $fault: "client"; +export class InvalidEndpointException extends __BaseException { + readonly name: "InvalidEndpointException" = "InvalidEndpointException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndpointException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndpointException.prototype); + this.Message = opts.Message; + } } /** *

Status Code: 403, The caller is not authorized to perform an operation on the given * stream, or the token has expired.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + this.Message = opts.Message; + } } /** *

Status Code: 404, The stream with the given name does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } diff --git a/clients/client-kinesis-video-media/src/protocols/Aws_restJson1.ts b/clients/client-kinesis-video-media/src/protocols/Aws_restJson1.ts index 2e837e713ac16..818c0343735e2 100644 --- a/clients/client-kinesis-video-media/src/protocols/Aws_restJson1.ts +++ b/clients/client-kinesis-video-media/src/protocols/Aws_restJson1.ts @@ -1,14 +1,16 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { GetMediaCommandInput, GetMediaCommandOutput } from "../commands/GetMediaCommand"; +import { KinesisVideoMediaServiceException as __BaseException } from "../models/KinesisVideoMediaServiceException"; import { ClientLimitExceededException, ConnectionLimitExceededException, @@ -76,175 +78,133 @@ const deserializeAws_restJson1GetMediaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideomedia#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "ConnectionLimitExceededException": case "com.amazonaws.kinesisvideomedia#ConnectionLimitExceededException": - response = { - ...(await deserializeAws_restJson1ConnectionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConnectionLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideomedia#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.kinesisvideomedia#InvalidEndpointException": - response = { - ...(await deserializeAws_restJson1InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidEndpointExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideomedia#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideomedia#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ClientLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientLimitExceededException = { - name: "ClientLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ClientLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConnectionLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConnectionLimitExceededException = { - name: "ConnectionLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConnectionLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidArgumentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidArgumentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidEndpointExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidEndpointException = { - name: "InvalidEndpointException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidEndpointException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotAuthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotAuthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1StartSelector = (input: StartSelector, context: __SerdeContext): any => { diff --git a/clients/client-kinesis-video-signaling/src/index.ts b/clients/client-kinesis-video-signaling/src/index.ts index 263c7f09da42d..7b3d521c2c1d9 100644 --- a/clients/client-kinesis-video-signaling/src/index.ts +++ b/clients/client-kinesis-video-signaling/src/index.ts @@ -2,3 +2,4 @@ export * from "./KinesisVideoSignaling"; export * from "./KinesisVideoSignalingClient"; export * from "./commands"; export * from "./models"; +export { KinesisVideoSignalingServiceException } from "./models/KinesisVideoSignalingServiceException"; diff --git a/clients/client-kinesis-video-signaling/src/models/KinesisVideoSignalingServiceException.ts b/clients/client-kinesis-video-signaling/src/models/KinesisVideoSignalingServiceException.ts new file mode 100644 index 0000000000000..be64aec1367a4 --- /dev/null +++ b/clients/client-kinesis-video-signaling/src/models/KinesisVideoSignalingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KinesisVideoSignaling service. + */ +export class KinesisVideoSignalingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisVideoSignalingServiceException.prototype); + } +} diff --git a/clients/client-kinesis-video-signaling/src/models/models_0.ts b/clients/client-kinesis-video-signaling/src/models/models_0.ts index 03d8ed589c2ad..38f42f9114eab 100644 --- a/clients/client-kinesis-video-signaling/src/models/models_0.ts +++ b/clients/client-kinesis-video-signaling/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KinesisVideoSignalingServiceException as __BaseException } from "./KinesisVideoSignalingServiceException"; /** *

Your request was throttled because you have exceeded the limit of allowed client * calls. Try making the call later.

*/ -export interface ClientLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ClientLimitExceededException"; - $fault: "client"; +export class ClientLimitExceededException extends __BaseException { + readonly name: "ClientLimitExceededException" = "ClientLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientLimitExceededException.prototype); + this.Message = opts.Message; + } } export enum Service { @@ -102,37 +117,83 @@ export namespace GetIceServerConfigResponse { /** *

The value for this input parameter is invalid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** *

The specified client is invalid.

*/ -export interface InvalidClientException extends __SmithyException, $MetadataBearer { - name: "InvalidClientException"; - $fault: "client"; - message?: string; +export class InvalidClientException extends __BaseException { + readonly name: "InvalidClientException" = "InvalidClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientException.prototype); + } } /** *

The caller is not authorized to perform this operation.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -140,10 +201,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * for 45 minutes. Client should reconnect to the channel to continue sending/receiving * messages.

*/ -export interface SessionExpiredException extends __SmithyException, $MetadataBearer { - name: "SessionExpiredException"; - $fault: "client"; - message?: string; +export class SessionExpiredException extends __BaseException { + readonly name: "SessionExpiredException" = "SessionExpiredException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SessionExpiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SessionExpiredException.prototype); + } } export interface SendAlexaOfferToMasterRequest { diff --git a/clients/client-kinesis-video-signaling/src/protocols/Aws_restJson1.ts b/clients/client-kinesis-video-signaling/src/protocols/Aws_restJson1.ts index 5329c12afcfd4..943e9034006d3 100644 --- a/clients/client-kinesis-video-signaling/src/protocols/Aws_restJson1.ts +++ b/clients/client-kinesis-video-signaling/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { GetIceServerConfigCommandInput, GetIceServerConfigCommandOutput } from "../commands/GetIceServerConfigCommand"; @@ -18,6 +17,7 @@ import { SendAlexaOfferToMasterCommandInput, SendAlexaOfferToMasterCommandOutput, } from "../commands/SendAlexaOfferToMasterCommand"; +import { KinesisVideoSignalingServiceException as __BaseException } from "../models/KinesisVideoSignalingServiceException"; import { ClientLimitExceededException, IceServer, @@ -111,73 +111,37 @@ const deserializeAws_restJson1GetIceServerConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideosignaling#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideosignaling#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidClientException": case "com.amazonaws.kinesisvideosignaling#InvalidClientException": - response = { - ...(await deserializeAws_restJson1InvalidClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideosignaling#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideosignaling#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SessionExpiredException": case "com.amazonaws.kinesisvideosignaling#SessionExpiredException": - response = { - ...(await deserializeAws_restJson1SessionExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SessionExpiredExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendAlexaOfferToMasterCommand = async ( @@ -206,159 +170,127 @@ const deserializeAws_restJson1SendAlexaOfferToMasterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideosignaling#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideosignaling#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideosignaling#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideosignaling#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ClientLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientLimitExceededException = { - name: "ClientLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ClientLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidArgumentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidArgumentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidClientException = { - name: "InvalidClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotAuthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotAuthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SessionExpiredExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SessionExpiredException = { - name: "SessionExpiredException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SessionExpiredException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IceServer = (output: any, context: __SerdeContext): IceServer => { diff --git a/clients/client-kinesis-video/src/index.ts b/clients/client-kinesis-video/src/index.ts index 90111b3537264..f25bf44b74438 100644 --- a/clients/client-kinesis-video/src/index.ts +++ b/clients/client-kinesis-video/src/index.ts @@ -3,3 +3,4 @@ export * from "./KinesisVideoClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { KinesisVideoServiceException } from "./models/KinesisVideoServiceException"; diff --git a/clients/client-kinesis-video/src/models/KinesisVideoServiceException.ts b/clients/client-kinesis-video/src/models/KinesisVideoServiceException.ts new file mode 100644 index 0000000000000..d4a3fe1998d63 --- /dev/null +++ b/clients/client-kinesis-video/src/models/KinesisVideoServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KinesisVideo service. + */ +export class KinesisVideoServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisVideoServiceException.prototype); + } +} diff --git a/clients/client-kinesis-video/src/models/models_0.ts b/clients/client-kinesis-video/src/models/models_0.ts index 92d6648a28d1d..b4fc60af1a3cb 100644 --- a/clients/client-kinesis-video/src/models/models_0.ts +++ b/clients/client-kinesis-video/src/models/models_0.ts @@ -1,31 +1,70 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KinesisVideoServiceException as __BaseException } from "./KinesisVideoServiceException"; /** *

You do not have required permissions to perform this operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

You have reached the maximum limit of active signaling channels for this AWS account * in this region.

*/ -export interface AccountChannelLimitExceededException extends __SmithyException, $MetadataBearer { - name: "AccountChannelLimitExceededException"; - $fault: "client"; +export class AccountChannelLimitExceededException extends __BaseException { + readonly name: "AccountChannelLimitExceededException" = "AccountChannelLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountChannelLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountChannelLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The number of streams created for the account is too high.

*/ -export interface AccountStreamLimitExceededException extends __SmithyException, $MetadataBearer { - name: "AccountStreamLimitExceededException"; - $fault: "client"; +export class AccountStreamLimitExceededException extends __BaseException { + readonly name: "AccountStreamLimitExceededException" = "AccountStreamLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountStreamLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountStreamLimitExceededException.prototype); + this.Message = opts.Message; + } } export enum APIName { @@ -166,10 +205,22 @@ export enum ChannelRole { *

Kinesis Video Streams has throttled the request because you have exceeded the limit of * allowed client calls. Try making the call later.

*/ -export interface ClientLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ClientLimitExceededException"; - $fault: "client"; +export class ClientLimitExceededException extends __BaseException { + readonly name: "ClientLimitExceededException" = "ClientLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClientLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClientLimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -249,29 +300,65 @@ export namespace CreateSignalingChannelOutput { /** *

The value for this input parameter is invalid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** *

The signaling channel is currently not available for this operation.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

You have exceeded the limit of tags that you can associate with the resource. * Kinesis video streams support up to 50 tags.

*/ -export interface TagsPerResourceExceededLimitException extends __SmithyException, $MetadataBearer { - name: "TagsPerResourceExceededLimitException"; - $fault: "client"; +export class TagsPerResourceExceededLimitException extends __BaseException { + readonly name: "TagsPerResourceExceededLimitException" = "TagsPerResourceExceededLimitException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagsPerResourceExceededLimitException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagsPerResourceExceededLimitException.prototype); + this.Message = opts.Message; + } } export interface CreateStreamInput { @@ -359,19 +446,43 @@ export namespace CreateStreamOutput { *

Not implemented. *

*/ -export interface DeviceStreamLimitExceededException extends __SmithyException, $MetadataBearer { - name: "DeviceStreamLimitExceededException"; - $fault: "client"; +export class DeviceStreamLimitExceededException extends __BaseException { + readonly name: "DeviceStreamLimitExceededException" = "DeviceStreamLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeviceStreamLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeviceStreamLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Not implemented.

*/ -export interface InvalidDeviceException extends __SmithyException, $MetadataBearer { - name: "InvalidDeviceException"; - $fault: "client"; +export class InvalidDeviceException extends __BaseException { + readonly name: "InvalidDeviceException" = "InvalidDeviceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeviceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeviceException.prototype); + this.Message = opts.Message; + } } export interface DeleteSignalingChannelInput { @@ -412,10 +523,22 @@ export namespace DeleteSignalingChannelOutput { /** *

Amazon Kinesis Video Streams can't find the stream that you specified.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -423,10 +546,22 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * version, use the DescribeStream * API.

*/ -export interface VersionMismatchException extends __SmithyException, $MetadataBearer { - name: "VersionMismatchException"; - $fault: "client"; +export class VersionMismatchException extends __BaseException { + readonly name: "VersionMismatchException" = "VersionMismatchException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "VersionMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VersionMismatchException.prototype); + this.Message = opts.Message; + } } export interface DeleteStreamInput { @@ -468,10 +603,22 @@ export namespace DeleteStreamOutput { /** *

The caller is not authorized to perform this operation.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + this.Message = opts.Message; + } } export interface DescribeSignalingChannelInput { @@ -757,10 +904,22 @@ export namespace GetSignalingChannelEndpointOutput { /** *

The format of the StreamARN is invalid.

*/ -export interface InvalidResourceFormatException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceFormatException"; - $fault: "client"; +export class InvalidResourceFormatException extends __BaseException { + readonly name: "InvalidResourceFormatException" = "InvalidResourceFormatException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceFormatException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceFormatException.prototype); + this.Message = opts.Message; + } } export interface ListSignalingChannelsInput { diff --git a/clients/client-kinesis-video/src/protocols/Aws_restJson1.ts b/clients/client-kinesis-video/src/protocols/Aws_restJson1.ts index a2b2b265ab19e..7180c0d60b432 100644 --- a/clients/client-kinesis-video/src/protocols/Aws_restJson1.ts +++ b/clients/client-kinesis-video/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -58,6 +57,7 @@ import { UpdateSignalingChannelCommandOutput, } from "../commands/UpdateSignalingChannelCommand"; import { UpdateStreamCommandInput, UpdateStreamCommandOutput } from "../commands/UpdateStreamCommand"; +import { KinesisVideoServiceException as __BaseException } from "../models/KinesisVideoServiceException"; import { AccessDeniedException, AccountChannelLimitExceededException, @@ -645,73 +645,37 @@ const deserializeAws_restJson1CreateSignalingChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountChannelLimitExceededException": case "com.amazonaws.kinesisvideo#AccountChannelLimitExceededException": - response = { - ...(await deserializeAws_restJson1AccountChannelLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountChannelLimitExceededExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "TagsPerResourceExceededLimitException": case "com.amazonaws.kinesisvideo#TagsPerResourceExceededLimitException": - response = { - ...(await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStreamCommand = async ( @@ -740,81 +704,40 @@ const deserializeAws_restJson1CreateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountStreamLimitExceededException": case "com.amazonaws.kinesisvideo#AccountStreamLimitExceededException": - response = { - ...(await deserializeAws_restJson1AccountStreamLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountStreamLimitExceededExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "DeviceStreamLimitExceededException": case "com.amazonaws.kinesisvideo#DeviceStreamLimitExceededException": - response = { - ...(await deserializeAws_restJson1DeviceStreamLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeviceStreamLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidDeviceException": case "com.amazonaws.kinesisvideo#InvalidDeviceException": - response = { - ...(await deserializeAws_restJson1InvalidDeviceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidDeviceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "TagsPerResourceExceededLimitException": case "com.amazonaws.kinesisvideo#TagsPerResourceExceededLimitException": - response = { - ...(await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSignalingChannelCommand = async ( @@ -839,73 +762,37 @@ const deserializeAws_restJson1DeleteSignalingChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.kinesisvideo#VersionMismatchException": - response = { - ...(await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStreamCommand = async ( @@ -930,73 +817,37 @@ const deserializeAws_restJson1DeleteStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.kinesisvideo#VersionMismatchException": - response = { - ...(await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSignalingChannelCommand = async ( @@ -1025,57 +876,31 @@ const deserializeAws_restJson1DescribeSignalingChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeStreamCommand = async ( @@ -1104,57 +929,31 @@ const deserializeAws_restJson1DescribeStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataEndpointCommand = async ( @@ -1183,57 +982,31 @@ const deserializeAws_restJson1GetDataEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSignalingChannelEndpointCommand = async ( @@ -1262,65 +1035,34 @@ const deserializeAws_restJson1GetSignalingChannelEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSignalingChannelsCommand = async ( @@ -1353,49 +1095,28 @@ const deserializeAws_restJson1ListSignalingChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamsCommand = async ( @@ -1428,41 +1149,25 @@ const deserializeAws_restJson1ListStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1495,57 +1200,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForStreamCommand = async ( @@ -1578,65 +1257,34 @@ const deserializeAws_restJson1ListTagsForStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidResourceFormatException": case "com.amazonaws.kinesisvideo#InvalidResourceFormatException": - response = { - ...(await deserializeAws_restJson1InvalidResourceFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourceFormatExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1661,65 +1309,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagsPerResourceExceededLimitException": case "com.amazonaws.kinesisvideo#TagsPerResourceExceededLimitException": - response = { - ...(await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagStreamCommand = async ( @@ -1744,73 +1361,37 @@ const deserializeAws_restJson1TagStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidResourceFormatException": case "com.amazonaws.kinesisvideo#InvalidResourceFormatException": - response = { - ...(await deserializeAws_restJson1InvalidResourceFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourceFormatExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagsPerResourceExceededLimitException": case "com.amazonaws.kinesisvideo#TagsPerResourceExceededLimitException": - response = { - ...(await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1835,57 +1416,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagStreamCommand = async ( @@ -1910,65 +1465,34 @@ const deserializeAws_restJson1UntagStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidResourceFormatException": case "com.amazonaws.kinesisvideo#InvalidResourceFormatException": - response = { - ...(await deserializeAws_restJson1InvalidResourceFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourceFormatExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataRetentionCommand = async ( @@ -1993,73 +1517,37 @@ const deserializeAws_restJson1UpdateDataRetentionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.kinesisvideo#VersionMismatchException": - response = { - ...(await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSignalingChannelCommand = async ( @@ -2084,73 +1572,37 @@ const deserializeAws_restJson1UpdateSignalingChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.kinesisvideo#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.kinesisvideo#VersionMismatchException": - response = { - ...(await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStreamCommand = async ( @@ -2175,294 +1627,245 @@ const deserializeAws_restJson1UpdateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClientLimitExceededException": case "com.amazonaws.kinesisvideo#ClientLimitExceededException": - response = { - ...(await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ClientLimitExceededExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesisvideo#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.kinesisvideo#NotAuthorizedException": - response = { - ...(await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAuthorizedExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesisvideo#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesisvideo#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "VersionMismatchException": case "com.amazonaws.kinesisvideo#VersionMismatchException": - response = { - ...(await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1VersionMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AccountChannelLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccountChannelLimitExceededException = { - name: "AccountChannelLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccountChannelLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AccountStreamLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccountStreamLimitExceededException = { - name: "AccountStreamLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccountStreamLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ClientLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ClientLimitExceededException = { - name: "ClientLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ClientLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DeviceStreamLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DeviceStreamLimitExceededException = { - name: "DeviceStreamLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DeviceStreamLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidArgumentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidArgumentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidDeviceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidDeviceException = { - name: "InvalidDeviceException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidDeviceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidResourceFormatExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidResourceFormatException = { - name: "InvalidResourceFormatException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidResourceFormatException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotAuthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotAuthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TagsPerResourceExceededLimitExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TagsPerResourceExceededLimitException = { - name: "TagsPerResourceExceededLimitException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TagsPerResourceExceededLimitException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1VersionMismatchExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: VersionMismatchException = { - name: "VersionMismatchException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new VersionMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ChannelNameCondition = (input: ChannelNameCondition, context: __SerdeContext): any => { diff --git a/clients/client-kinesis/src/index.ts b/clients/client-kinesis/src/index.ts index bdfc31fdacf4e..f5419498fa51b 100644 --- a/clients/client-kinesis/src/index.ts +++ b/clients/client-kinesis/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { KinesisServiceException } from "./models/KinesisServiceException"; diff --git a/clients/client-kinesis/src/models/KinesisServiceException.ts b/clients/client-kinesis/src/models/KinesisServiceException.ts new file mode 100644 index 0000000000000..0de88bc524e4e --- /dev/null +++ b/clients/client-kinesis/src/models/KinesisServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Kinesis service. + */ +export class KinesisServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KinesisServiceException.prototype); + } +} diff --git a/clients/client-kinesis/src/models/models_0.ts b/clients/client-kinesis/src/models/models_0.ts index 0c3459ad8cfc1..e3438d5921955 100644 --- a/clients/client-kinesis/src/models/models_0.ts +++ b/clients/client-kinesis/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KinesisServiceException as __BaseException } from "./KinesisServiceException"; /** *

Represents the input for AddTagsToStream.

@@ -28,52 +31,80 @@ export namespace AddTagsToStreamInput { *

A specified parameter exceeds its restrictions, is not supported, or can't be used. * For more information, see the returned message.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + } } /** *

The requested resource exceeds the maximum number allowed, or the number of concurrent * stream requests exceeds the maximum number allowed.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource is not available for this operation. For successful operation, the * resource must be in the ACTIVE state.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

The requested resource could not be found. The stream might not be specified * correctly.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -1155,22 +1186,39 @@ export namespace EnableEnhancedMonitoringInput { /** *

The provided iterator exceeds the maximum age allowed.

*/ -export interface ExpiredIteratorException extends __SmithyException, $MetadataBearer { - name: "ExpiredIteratorException"; - $fault: "client"; +export class ExpiredIteratorException extends __BaseException { + readonly name: "ExpiredIteratorException" = "ExpiredIteratorException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredIteratorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredIteratorException.prototype); + } } /** *

The pagination token passed to the operation is expired.

*/ -export interface ExpiredNextTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredNextTokenException"; - $fault: "client"; - message?: string; +export class ExpiredNextTokenException extends __BaseException { + readonly name: "ExpiredNextTokenException" = "ExpiredNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredNextTokenException.prototype); + } } /** @@ -1300,26 +1348,40 @@ export namespace GetRecordsOutput { *

The ciphertext references a key that doesn't exist or that you don't have access * to.

*/ -export interface KMSAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "KMSAccessDeniedException"; - $fault: "client"; +export class KMSAccessDeniedException extends __BaseException { + readonly name: "KMSAccessDeniedException" = "KMSAccessDeniedException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSAccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSAccessDeniedException.prototype); + } } /** *

The request was rejected because the specified customer master key (CMK) isn't * enabled.

*/ -export interface KMSDisabledException extends __SmithyException, $MetadataBearer { - name: "KMSDisabledException"; - $fault: "client"; +export class KMSDisabledException extends __BaseException { + readonly name: "KMSDisabledException" = "KMSDisabledException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSDisabledException.prototype); + } } /** @@ -1328,38 +1390,59 @@ export interface KMSDisabledException extends __SmithyException, $MetadataBearer * Customer Master Key in the Amazon Web Services Key Management * Service Developer Guide.

*/ -export interface KMSInvalidStateException extends __SmithyException, $MetadataBearer { - name: "KMSInvalidStateException"; - $fault: "client"; +export class KMSInvalidStateException extends __BaseException { + readonly name: "KMSInvalidStateException" = "KMSInvalidStateException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSInvalidStateException.prototype); + } } /** *

The request was rejected because the specified entity or resource can't be * found.

*/ -export interface KMSNotFoundException extends __SmithyException, $MetadataBearer { - name: "KMSNotFoundException"; - $fault: "client"; +export class KMSNotFoundException extends __BaseException { + readonly name: "KMSNotFoundException" = "KMSNotFoundException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSNotFoundException.prototype); + } } /** *

The Amazon Web Services access key ID needs a subscription for the service.

*/ -export interface KMSOptInRequired extends __SmithyException, $MetadataBearer { - name: "KMSOptInRequired"; - $fault: "client"; +export class KMSOptInRequired extends __BaseException { + readonly name: "KMSOptInRequired" = "KMSOptInRequired"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSOptInRequired", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSOptInRequired.prototype); + } } /** @@ -1368,13 +1451,20 @@ export interface KMSOptInRequired extends __SmithyException, $MetadataBearer { * the Amazon Web Services Key Management Service Developer * Guide.

*/ -export interface KMSThrottlingException extends __SmithyException, $MetadataBearer { - name: "KMSThrottlingException"; - $fault: "client"; +export class KMSThrottlingException extends __BaseException { + readonly name: "KMSThrottlingException" = "KMSThrottlingException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSThrottlingException.prototype); + } } /** @@ -1384,13 +1474,20 @@ export interface KMSThrottlingException extends __SmithyException, $MetadataBear * Amazon Kinesis Data Streams Developer Guide, and Error Retries and * Exponential Backoff in Amazon Web Services in the Amazon Web Services General Reference.

*/ -export interface ProvisionedThroughputExceededException extends __SmithyException, $MetadataBearer { - name: "ProvisionedThroughputExceededException"; - $fault: "client"; +export class ProvisionedThroughputExceededException extends __BaseException { + readonly name: "ProvisionedThroughputExceededException" = "ProvisionedThroughputExceededException"; + readonly $fault: "client" = "client"; /** - *

A message that provides information about the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedThroughputExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedThroughputExceededException.prototype); + } } export enum ShardIteratorType { @@ -1528,10 +1625,20 @@ export namespace IncreaseStreamRetentionPeriodInput { *

The processing of the request failed because of an unknown error, exception, or * failure.

*/ -export interface InternalFailureException extends __SmithyException { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } export enum ShardFilterType { @@ -2018,10 +2125,20 @@ export namespace MergeShardsInput { * *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** diff --git a/clients/client-kinesis/src/protocols/Aws_json1_1.ts b/clients/client-kinesis/src/protocols/Aws_json1_1.ts index 35334cee2d37a..b3ec3b5e3639b 100644 --- a/clients/client-kinesis/src/protocols/Aws_json1_1.ts +++ b/clients/client-kinesis/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddTagsToStreamCommandInput, AddTagsToStreamCommandOutput } from "../commands/AddTagsToStreamCommand"; @@ -83,6 +82,7 @@ import { import { SubscribeToShardCommandInput, SubscribeToShardCommandOutput } from "../commands/SubscribeToShardCommand"; import { UpdateShardCountCommandInput, UpdateShardCountCommandOutput } from "../commands/UpdateShardCountCommand"; import { UpdateStreamModeCommandInput, UpdateStreamModeCommandOutput } from "../commands/UpdateStreamModeCommand"; +import { KinesisServiceException as __BaseException } from "../models/KinesisServiceException"; import { _Record, AddTagsToStreamInput, @@ -564,57 +564,31 @@ const deserializeAws_json1_1AddTagsToStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStreamCommand = async ( @@ -639,49 +613,28 @@ const deserializeAws_json1_1CreateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DecreaseStreamRetentionPeriodCommand = async ( @@ -706,57 +659,31 @@ const deserializeAws_json1_1DecreaseStreamRetentionPeriodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStreamCommand = async ( @@ -781,49 +708,28 @@ const deserializeAws_json1_1DeleteStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterStreamConsumerCommand = async ( @@ -848,49 +754,28 @@ const deserializeAws_json1_1DeregisterStreamConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLimitsCommand = async ( @@ -918,33 +803,22 @@ const deserializeAws_json1_1DescribeLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStreamCommand = async ( @@ -972,41 +846,25 @@ const deserializeAws_json1_1DescribeStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStreamConsumerCommand = async ( @@ -1034,49 +892,28 @@ const deserializeAws_json1_1DescribeStreamConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStreamSummaryCommand = async ( @@ -1104,41 +941,25 @@ const deserializeAws_json1_1DescribeStreamSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableEnhancedMonitoringCommand = async ( @@ -1166,57 +987,31 @@ const deserializeAws_json1_1DisableEnhancedMonitoringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableEnhancedMonitoringCommand = async ( @@ -1244,57 +1039,31 @@ const deserializeAws_json1_1EnableEnhancedMonitoringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRecordsCommand = async ( @@ -1322,105 +1091,49 @@ const deserializeAws_json1_1GetRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredIteratorException": case "com.amazonaws.kinesis#ExpiredIteratorException": - response = { - ...(await deserializeAws_json1_1ExpiredIteratorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredIteratorExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.kinesis#KMSAccessDeniedException": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.kinesis#KMSDisabledException": - response = { - ...(await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kinesis#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.kinesis#KMSNotFoundException": - response = { - ...(await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context); case "KMSOptInRequired": case "com.amazonaws.kinesis#KMSOptInRequired": - response = { - ...(await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context); case "KMSThrottlingException": case "com.amazonaws.kinesis#KMSThrottlingException": - response = { - ...(await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.kinesis#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetShardIteratorCommand = async ( @@ -1448,49 +1161,28 @@ const deserializeAws_json1_1GetShardIteratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.kinesis#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1IncreaseStreamRetentionPeriodCommand = async ( @@ -1515,57 +1207,31 @@ const deserializeAws_json1_1IncreaseStreamRetentionPeriodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListShardsCommand = async ( @@ -1593,65 +1259,34 @@ const deserializeAws_json1_1ListShardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredNextTokenException": case "com.amazonaws.kinesis#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStreamConsumersCommand = async ( @@ -1679,65 +1314,34 @@ const deserializeAws_json1_1ListStreamConsumersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredNextTokenException": case "com.amazonaws.kinesis#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStreamsCommand = async ( @@ -1765,33 +1369,22 @@ const deserializeAws_json1_1ListStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForStreamCommand = async ( @@ -1819,49 +1412,28 @@ const deserializeAws_json1_1ListTagsForStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MergeShardsCommand = async ( @@ -1886,65 +1458,34 @@ const deserializeAws_json1_1MergeShardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kinesis#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRecordCommand = async ( @@ -1972,97 +1513,46 @@ const deserializeAws_json1_1PutRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.kinesis#KMSAccessDeniedException": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.kinesis#KMSDisabledException": - response = { - ...(await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kinesis#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.kinesis#KMSNotFoundException": - response = { - ...(await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context); case "KMSOptInRequired": case "com.amazonaws.kinesis#KMSOptInRequired": - response = { - ...(await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context); case "KMSThrottlingException": case "com.amazonaws.kinesis#KMSThrottlingException": - response = { - ...(await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.kinesis#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRecordsCommand = async ( @@ -2090,97 +1580,46 @@ const deserializeAws_json1_1PutRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.kinesis#KMSAccessDeniedException": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.kinesis#KMSDisabledException": - response = { - ...(await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kinesis#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.kinesis#KMSNotFoundException": - response = { - ...(await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context); case "KMSOptInRequired": case "com.amazonaws.kinesis#KMSOptInRequired": - response = { - ...(await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context); case "KMSThrottlingException": case "com.amazonaws.kinesis#KMSThrottlingException": - response = { - ...(await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.kinesis#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterStreamConsumerCommand = async ( @@ -2208,57 +1647,31 @@ const deserializeAws_json1_1RegisterStreamConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromStreamCommand = async ( @@ -2283,57 +1696,31 @@ const deserializeAws_json1_1RemoveTagsFromStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SplitShardCommand = async ( @@ -2358,65 +1745,34 @@ const deserializeAws_json1_1SplitShardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kinesis#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartStreamEncryptionCommand = async ( @@ -2441,105 +1797,49 @@ const deserializeAws_json1_1StartStreamEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.kinesis#KMSAccessDeniedException": - response = { - ...(await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.kinesis#KMSDisabledException": - response = { - ...(await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kinesis#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.kinesis#KMSNotFoundException": - response = { - ...(await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSNotFoundExceptionResponse(parsedOutput, context); case "KMSOptInRequired": case "com.amazonaws.kinesis#KMSOptInRequired": - response = { - ...(await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSOptInRequiredResponse(parsedOutput, context); case "KMSThrottlingException": case "com.amazonaws.kinesis#KMSThrottlingException": - response = { - ...(await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSThrottlingExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopStreamEncryptionCommand = async ( @@ -2564,57 +1864,31 @@ const deserializeAws_json1_1StopStreamEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SubscribeToShardCommand = async ( @@ -2642,57 +1916,31 @@ const deserializeAws_json1_1SubscribeToShardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateShardCountCommand = async ( @@ -2720,65 +1968,34 @@ const deserializeAws_json1_1UpdateShardCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.kinesis#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateStreamModeCommand = async ( @@ -2803,57 +2020,31 @@ const deserializeAws_json1_1UpdateStreamModeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgumentException": case "com.amazonaws.kinesis#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kinesis#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.kinesis#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.kinesis#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ExpiredIteratorExceptionResponse = async ( @@ -2862,13 +2053,11 @@ const deserializeAws_json1_1ExpiredIteratorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredIteratorException(body, context); - const contents: ExpiredIteratorException = { - name: "ExpiredIteratorException", - $fault: "client", + const exception = new ExpiredIteratorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExpiredNextTokenExceptionResponse = async ( @@ -2877,13 +2066,11 @@ const deserializeAws_json1_1ExpiredNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredNextTokenException(body, context); - const contents: ExpiredNextTokenException = { - name: "ExpiredNextTokenException", - $fault: "client", + const exception = new ExpiredNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( @@ -2892,13 +2079,11 @@ const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgumentException(body, context); - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", + const exception = new InvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSAccessDeniedExceptionResponse = async ( @@ -2907,13 +2092,11 @@ const deserializeAws_json1_1KMSAccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSAccessDeniedException(body, context); - const contents: KMSAccessDeniedException = { - name: "KMSAccessDeniedException", - $fault: "client", + const exception = new KMSAccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSDisabledExceptionResponse = async ( @@ -2922,13 +2105,11 @@ const deserializeAws_json1_1KMSDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSDisabledException(body, context); - const contents: KMSDisabledException = { - name: "KMSDisabledException", - $fault: "client", + const exception = new KMSDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSInvalidStateExceptionResponse = async ( @@ -2937,13 +2118,11 @@ const deserializeAws_json1_1KMSInvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSInvalidStateException(body, context); - const contents: KMSInvalidStateException = { - name: "KMSInvalidStateException", - $fault: "client", + const exception = new KMSInvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSNotFoundExceptionResponse = async ( @@ -2952,13 +2131,11 @@ const deserializeAws_json1_1KMSNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSNotFoundException(body, context); - const contents: KMSNotFoundException = { - name: "KMSNotFoundException", - $fault: "client", + const exception = new KMSNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSOptInRequiredResponse = async ( @@ -2967,13 +2144,11 @@ const deserializeAws_json1_1KMSOptInRequiredResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSOptInRequired(body, context); - const contents: KMSOptInRequired = { - name: "KMSOptInRequired", - $fault: "client", + const exception = new KMSOptInRequired({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSThrottlingExceptionResponse = async ( @@ -2982,13 +2157,11 @@ const deserializeAws_json1_1KMSThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSThrottlingException(body, context); - const contents: KMSThrottlingException = { - name: "KMSThrottlingException", - $fault: "client", + const exception = new KMSThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2997,13 +2170,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse = async ( @@ -3012,13 +2183,11 @@ const deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProvisionedThroughputExceededException(body, context); - const contents: ProvisionedThroughputExceededException = { - name: "ProvisionedThroughputExceededException", - $fault: "client", + const exception = new ProvisionedThroughputExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -3027,13 +2196,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3042,13 +2209,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -3057,13 +2222,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsToStreamInput = (input: AddTagsToStreamInput, context: __SerdeContext): any => { diff --git a/clients/client-kms/src/index.ts b/clients/client-kms/src/index.ts index a4fb37a55fa6d..bc3501ba7c45a 100644 --- a/clients/client-kms/src/index.ts +++ b/clients/client-kms/src/index.ts @@ -3,3 +3,4 @@ export * from "./KMSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { KMSServiceException } from "./models/KMSServiceException"; diff --git a/clients/client-kms/src/models/KMSServiceException.ts b/clients/client-kms/src/models/KMSServiceException.ts new file mode 100644 index 0000000000000..0504f31ff6dda --- /dev/null +++ b/clients/client-kms/src/models/KMSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from KMS service. + */ +export class KMSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, KMSServiceException.prototype); + } +} diff --git a/clients/client-kms/src/models/models_0.ts b/clients/client-kms/src/models/models_0.ts index 4855045dec6dc..0c5063bb7becb 100644 --- a/clients/client-kms/src/models/models_0.ts +++ b/clients/client-kms/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { KMSServiceException as __BaseException } from "./KMSServiceException"; export enum AlgorithmSpec { RSAES_OAEP_SHA_1 = "RSAES_OAEP_SHA_1", @@ -52,10 +54,20 @@ export namespace AliasListEntry { *

The request was rejected because it attempted to create a resource that already * exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; - message?: string; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + } } export interface CancelKeyDeletionRequest { @@ -108,30 +120,60 @@ export namespace CancelKeyDeletionResponse { *

The system timed out while trying to fulfill the request. The request can be * retried.

*/ -export interface DependencyTimeoutException extends __SmithyException, $MetadataBearer { - name: "DependencyTimeoutException"; - $fault: "server"; - message?: string; +export class DependencyTimeoutException extends __BaseException { + readonly name: "DependencyTimeoutException" = "DependencyTimeoutException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyTimeoutException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DependencyTimeoutException.prototype); + } } /** *

The request was rejected because a specified ARN, or an ARN in a key policy, is not * valid.

*/ -export interface InvalidArnException extends __SmithyException, $MetadataBearer { - name: "InvalidArnException"; - $fault: "client"; - message?: string; +export class InvalidArnException extends __BaseException { + readonly name: "InvalidArnException" = "InvalidArnException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArnException.prototype); + } } /** *

The request was rejected because an internal exception occurred. The request can be * retried.

*/ -export interface KMSInternalException extends __SmithyException, $MetadataBearer { - name: "KMSInternalException"; - $fault: "server"; - message?: string; +export class KMSInternalException extends __BaseException { + readonly name: "KMSInternalException" = "KMSInternalException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, KMSInternalException.prototype); + } } /** @@ -142,20 +184,40 @@ export interface KMSInternalException extends __SmithyException, $MetadataBearer * Key Management Service Developer Guide * .

*/ -export interface KMSInvalidStateException extends __SmithyException, $MetadataBearer { - name: "KMSInvalidStateException"; - $fault: "client"; - message?: string; +export class KMSInvalidStateException extends __BaseException { + readonly name: "KMSInvalidStateException" = "KMSInvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSInvalidStateException.prototype); + } } /** *

The request was rejected because the specified entity or resource could not be * found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** @@ -165,10 +227,20 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

Clusters that share a backup history have the same cluster certificate. To view the * cluster certificate of a cluster, use the DescribeClusters operation.

*/ -export interface CloudHsmClusterInUseException extends __SmithyException, $MetadataBearer { - name: "CloudHsmClusterInUseException"; - $fault: "client"; - message?: string; +export class CloudHsmClusterInUseException extends __BaseException { + readonly name: "CloudHsmClusterInUseException" = "CloudHsmClusterInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmClusterInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmClusterInUseException.prototype); + } } /** @@ -206,10 +278,20 @@ export interface CloudHsmClusterInUseException extends __SmithyException, $Metad * CloudHSM User Guide * .

*/ -export interface CloudHsmClusterInvalidConfigurationException extends __SmithyException, $MetadataBearer { - name: "CloudHsmClusterInvalidConfigurationException"; - $fault: "client"; - message?: string; +export class CloudHsmClusterInvalidConfigurationException extends __BaseException { + readonly name: "CloudHsmClusterInvalidConfigurationException" = "CloudHsmClusterInvalidConfigurationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmClusterInvalidConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmClusterInvalidConfigurationException.prototype); + } } /** @@ -217,20 +299,40 @@ export interface CloudHsmClusterInvalidConfigurationException extends __SmithyEx * store is not active. Initialize and activate the cluster and try the command again. For * detailed instructions, see Getting Started in the CloudHSM User Guide.

*/ -export interface CloudHsmClusterNotActiveException extends __SmithyException, $MetadataBearer { - name: "CloudHsmClusterNotActiveException"; - $fault: "client"; - message?: string; +export class CloudHsmClusterNotActiveException extends __BaseException { + readonly name: "CloudHsmClusterNotActiveException" = "CloudHsmClusterNotActiveException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmClusterNotActiveException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmClusterNotActiveException.prototype); + } } /** *

The request was rejected because KMS cannot find the CloudHSM cluster with the specified * cluster ID. Retry the request with a different cluster ID.

*/ -export interface CloudHsmClusterNotFoundException extends __SmithyException, $MetadataBearer { - name: "CloudHsmClusterNotFoundException"; - $fault: "client"; - message?: string; +export class CloudHsmClusterNotFoundException extends __BaseException { + readonly name: "CloudHsmClusterNotFoundException" = "CloudHsmClusterNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmClusterNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmClusterNotFoundException.prototype); + } } /** @@ -243,10 +345,20 @@ export interface CloudHsmClusterNotFoundException extends __SmithyException, $Me *

Clusters that share a backup history have the same cluster certificate. To view the * cluster certificate of a cluster, use the DescribeClusters operation.

*/ -export interface CloudHsmClusterNotRelatedException extends __SmithyException, $MetadataBearer { - name: "CloudHsmClusterNotRelatedException"; - $fault: "client"; - message?: string; +export class CloudHsmClusterNotRelatedException extends __BaseException { + readonly name: "CloudHsmClusterNotRelatedException" = "CloudHsmClusterNotRelatedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CloudHsmClusterNotRelatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CloudHsmClusterNotRelatedException.prototype); + } } export interface ConnectCustomKeyStoreRequest { @@ -300,20 +412,40 @@ export namespace ConnectCustomKeyStoreResponse { * * */ -export interface CustomKeyStoreInvalidStateException extends __SmithyException, $MetadataBearer { - name: "CustomKeyStoreInvalidStateException"; - $fault: "client"; - message?: string; +export class CustomKeyStoreInvalidStateException extends __BaseException { + readonly name: "CustomKeyStoreInvalidStateException" = "CustomKeyStoreInvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomKeyStoreInvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomKeyStoreInvalidStateException.prototype); + } } /** *

The request was rejected because KMS cannot find a custom key store with the specified * key store name or ID.

*/ -export interface CustomKeyStoreNotFoundException extends __SmithyException, $MetadataBearer { - name: "CustomKeyStoreNotFoundException"; - $fault: "client"; - message?: string; +export class CustomKeyStoreNotFoundException extends __BaseException { + readonly name: "CustomKeyStoreNotFoundException" = "CustomKeyStoreNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomKeyStoreNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomKeyStoreNotFoundException.prototype); + } } export enum ConnectionErrorCodeType { @@ -386,20 +518,40 @@ export namespace CreateAliasRequest { /** *

The request was rejected because the specified alias name is not valid.

*/ -export interface InvalidAliasNameException extends __SmithyException, $MetadataBearer { - name: "InvalidAliasNameException"; - $fault: "client"; - message?: string; +export class InvalidAliasNameException extends __BaseException { + readonly name: "InvalidAliasNameException" = "InvalidAliasNameException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAliasNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAliasNameException.prototype); + } } /** *

The request was rejected because a quota was exceeded. For more information, see Quotas in the * Key Management Service Developer Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export interface CreateCustomKeyStoreRequest { @@ -465,10 +617,20 @@ export namespace CreateCustomKeyStoreResponse { * to another custom key store in the account. Try again with a custom key store name that is * unique in the account.

*/ -export interface CustomKeyStoreNameInUseException extends __SmithyException, $MetadataBearer { - name: "CustomKeyStoreNameInUseException"; - $fault: "client"; - message?: string; +export class CustomKeyStoreNameInUseException extends __BaseException { + readonly name: "CustomKeyStoreNameInUseException" = "CustomKeyStoreNameInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomKeyStoreNameInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomKeyStoreNameInUseException.prototype); + } } /** @@ -477,10 +639,20 @@ export interface CustomKeyStoreNameInUseException extends __SmithyException, $Me *

When you initialize the cluster, you create the trust anchor certificate and save it in the * customerCA.crt file.

*/ -export interface IncorrectTrustAnchorException extends __SmithyException, $MetadataBearer { - name: "IncorrectTrustAnchorException"; - $fault: "client"; - message?: string; +export class IncorrectTrustAnchorException extends __BaseException { + readonly name: "IncorrectTrustAnchorException" = "IncorrectTrustAnchorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncorrectTrustAnchorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncorrectTrustAnchorException.prototype); + } } /** @@ -684,19 +856,39 @@ export namespace CreateGrantResponse { /** *

The request was rejected because the specified KMS key is not enabled.

*/ -export interface DisabledException extends __SmithyException, $MetadataBearer { - name: "DisabledException"; - $fault: "client"; - message?: string; +export class DisabledException extends __BaseException { + readonly name: "DisabledException" = "DisabledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DisabledException.prototype); + } } /** *

The request was rejected because the specified grant token is not valid.

*/ -export interface InvalidGrantTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidGrantTokenException"; - $fault: "client"; - message?: string; +export class InvalidGrantTokenException extends __BaseException { + readonly name: "InvalidGrantTokenException" = "InvalidGrantTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGrantTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGrantTokenException.prototype); + } } export enum CustomerMasterKeySpec { @@ -1323,29 +1515,59 @@ export namespace CreateKeyResponse { *

The request was rejected because the specified policy is not syntactically or semantically * correct.

*/ -export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer { - name: "MalformedPolicyDocumentException"; - $fault: "client"; - message?: string; +export class MalformedPolicyDocumentException extends __BaseException { + readonly name: "MalformedPolicyDocumentException" = "MalformedPolicyDocumentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedPolicyDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype); + } } /** *

The request was rejected because one or more tags are not valid.

*/ -export interface TagException extends __SmithyException, $MetadataBearer { - name: "TagException"; - $fault: "client"; - message?: string; +export class TagException extends __BaseException { + readonly name: "TagException" = "TagException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagException.prototype); + } } /** *

The request was rejected because a specified parameter is not supported or a specified * resource is not valid for this operation.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; - message?: string; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + } } /** @@ -1354,10 +1576,20 @@ export interface UnsupportedOperationException extends __SmithyException, $Metad * operation to delete the KMS keys. After they are deleted, you can delete the custom key * store.

*/ -export interface CustomKeyStoreHasCMKsException extends __SmithyException, $MetadataBearer { - name: "CustomKeyStoreHasCMKsException"; - $fault: "client"; - message?: string; +export class CustomKeyStoreHasCMKsException extends __BaseException { + readonly name: "CustomKeyStoreHasCMKsException" = "CustomKeyStoreHasCMKsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomKeyStoreHasCMKsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomKeyStoreHasCMKsException.prototype); + } } /** @@ -1616,10 +1848,20 @@ export namespace DecryptResponse { * in a ReEncrypt request must identify the same KMS key that was used to * encrypt the ciphertext.

*/ -export interface IncorrectKeyException extends __SmithyException, $MetadataBearer { - name: "IncorrectKeyException"; - $fault: "client"; - message?: string; +export class IncorrectKeyException extends __BaseException { + readonly name: "IncorrectKeyException" = "IncorrectKeyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncorrectKeyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncorrectKeyException.prototype); + } } /** @@ -1630,10 +1872,20 @@ export interface IncorrectKeyException extends __SmithyException, $MetadataBeare *

From the ImportKeyMaterial operation, the request was rejected because * KMS could not decrypt the encrypted (wrapped) key material.

*/ -export interface InvalidCiphertextException extends __SmithyException, $MetadataBearer { - name: "InvalidCiphertextException"; - $fault: "client"; - message?: string; +export class InvalidCiphertextException extends __BaseException { + readonly name: "InvalidCiphertextException" = "InvalidCiphertextException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCiphertextException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCiphertextException.prototype); + } } /** @@ -1655,20 +1907,40 @@ export interface InvalidCiphertextException extends __SmithyException, $Metadata *

To find the encryption or signing algorithms supported for a particular KMS key, use the * DescribeKey operation.

*/ -export interface InvalidKeyUsageException extends __SmithyException, $MetadataBearer { - name: "InvalidKeyUsageException"; - $fault: "client"; - message?: string; +export class InvalidKeyUsageException extends __BaseException { + readonly name: "InvalidKeyUsageException" = "InvalidKeyUsageException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKeyUsageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKeyUsageException.prototype); + } } /** *

The request was rejected because the specified KMS key was not available. You can retry * the request.

*/ -export interface KeyUnavailableException extends __SmithyException, $MetadataBearer { - name: "KeyUnavailableException"; - $fault: "server"; - message?: string; +export class KeyUnavailableException extends __BaseException { + readonly name: "KeyUnavailableException" = "KeyUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeyUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, KeyUnavailableException.prototype); + } } export interface DeleteAliasRequest { @@ -1824,10 +2096,20 @@ export namespace DescribeCustomKeyStoresResponse { *

The request was rejected because the marker that specifies where pagination should next * begin is not valid.

*/ -export interface InvalidMarkerException extends __SmithyException, $MetadataBearer { - name: "InvalidMarkerException"; - $fault: "client"; - message?: string; +export class InvalidMarkerException extends __BaseException { + readonly name: "InvalidMarkerException" = "InvalidMarkerException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMarkerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMarkerException.prototype); + } } export interface DescribeKeyRequest { @@ -2139,10 +2421,20 @@ export namespace EncryptResponse { *

The request was rejected because the specified import token is expired. Use GetParametersForImport to get a new import token and public key, use the new * public key to encrypt the key material, and then try the request again.

*/ -export interface ExpiredImportTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredImportTokenException"; - $fault: "client"; - message?: string; +export class ExpiredImportTokenException extends __BaseException { + readonly name: "ExpiredImportTokenException" = "ExpiredImportTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredImportTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredImportTokenException.prototype); + } } export interface GenerateDataKeyRequest { @@ -2996,29 +3288,59 @@ export namespace ImportKeyMaterialResponse { *

The request was rejected because the key material in the request is, expired, invalid, or * is not the same key material that was previously imported into this KMS key.

*/ -export interface IncorrectKeyMaterialException extends __SmithyException, $MetadataBearer { - name: "IncorrectKeyMaterialException"; - $fault: "client"; - message?: string; +export class IncorrectKeyMaterialException extends __BaseException { + readonly name: "IncorrectKeyMaterialException" = "IncorrectKeyMaterialException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncorrectKeyMaterialException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncorrectKeyMaterialException.prototype); + } } /** *

The request was rejected because the provided import token is invalid or is associated * with a different KMS key.

*/ -export interface InvalidImportTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidImportTokenException"; - $fault: "client"; - message?: string; +export class InvalidImportTokenException extends __BaseException { + readonly name: "InvalidImportTokenException" = "InvalidImportTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidImportTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidImportTokenException.prototype); + } } /** *

The request was rejected because the specified GrantId is not valid.

*/ -export interface InvalidGrantIdException extends __SmithyException, $MetadataBearer { - name: "InvalidGrantIdException"; - $fault: "client"; - message?: string; +export class InvalidGrantIdException extends __BaseException { + readonly name: "InvalidGrantIdException" = "InvalidGrantIdException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGrantIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGrantIdException.prototype); + } } /** @@ -3050,10 +3372,20 @@ export namespace KeyListEntry { * fails when it cannot confirm that signature was produced by signing the specified message with * the specified KMS key and signing algorithm.

*/ -export interface KMSInvalidSignatureException extends __SmithyException, $MetadataBearer { - name: "KMSInvalidSignatureException"; - $fault: "client"; - message?: string; +export class KMSInvalidSignatureException extends __BaseException { + readonly name: "KMSInvalidSignatureException" = "KMSInvalidSignatureException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInvalidSignatureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSInvalidSignatureException.prototype); + } } export interface ListAliasesRequest { diff --git a/clients/client-kms/src/protocols/Aws_json1_1.ts b/clients/client-kms/src/protocols/Aws_json1_1.ts index ab6f352804425..0a23a2f87b30c 100644 --- a/clients/client-kms/src/protocols/Aws_json1_1.ts +++ b/clients/client-kms/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelKeyDeletionCommandInput, CancelKeyDeletionCommandOutput } from "../commands/CancelKeyDeletionCommand"; @@ -112,6 +111,7 @@ import { UpdatePrimaryRegionCommandOutput, } from "../commands/UpdatePrimaryRegionCommand"; import { VerifyCommandInput, VerifyCommandOutput } from "../commands/VerifyCommand"; +import { KMSServiceException as __BaseException } from "../models/KMSServiceException"; import { AliasListEntry, AlreadyExistsException, @@ -889,65 +889,34 @@ const deserializeAws_json1_1CancelKeyDeletionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ConnectCustomKeyStoreCommand = async ( @@ -975,65 +944,34 @@ const deserializeAws_json1_1ConnectCustomKeyStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmClusterInvalidConfigurationException": case "com.amazonaws.kms#CloudHsmClusterInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context); case "CloudHsmClusterNotActiveException": case "com.amazonaws.kms#CloudHsmClusterNotActiveException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse(parsedOutput, context); case "CustomKeyStoreInvalidStateException": case "com.amazonaws.kms#CustomKeyStoreInvalidStateException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context); case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAliasCommand = async ( @@ -1058,81 +996,40 @@ const deserializeAws_json1_1CreateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.kms#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidAliasNameException": case "com.amazonaws.kms#InvalidAliasNameException": - response = { - ...(await deserializeAws_json1_1InvalidAliasNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAliasNameExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCustomKeyStoreCommand = async ( @@ -1160,81 +1057,40 @@ const deserializeAws_json1_1CreateCustomKeyStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmClusterInUseException": case "com.amazonaws.kms#CloudHsmClusterInUseException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterInUseExceptionResponse(parsedOutput, context); case "CloudHsmClusterInvalidConfigurationException": case "com.amazonaws.kms#CloudHsmClusterInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context); case "CloudHsmClusterNotActiveException": case "com.amazonaws.kms#CloudHsmClusterNotActiveException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse(parsedOutput, context); case "CloudHsmClusterNotFoundException": case "com.amazonaws.kms#CloudHsmClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterNotFoundExceptionResponse(parsedOutput, context); case "CustomKeyStoreNameInUseException": case "com.amazonaws.kms#CustomKeyStoreNameInUseException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNameInUseExceptionResponse(parsedOutput, context); case "IncorrectTrustAnchorException": case "com.amazonaws.kms#IncorrectTrustAnchorException": - response = { - ...(await deserializeAws_json1_1IncorrectTrustAnchorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectTrustAnchorExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGrantCommand = async ( @@ -1262,89 +1118,43 @@ const deserializeAws_json1_1CreateGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateKeyCommand = async ( @@ -1372,105 +1182,49 @@ const deserializeAws_json1_1CreateKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmClusterInvalidConfigurationException": case "com.amazonaws.kms#CloudHsmClusterInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context); case "CustomKeyStoreInvalidStateException": case "com.amazonaws.kms#CustomKeyStoreInvalidStateException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context); case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.kms#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "TagException": case "com.amazonaws.kms#TagException": - response = { - ...(await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DecryptCommand = async ( @@ -1498,105 +1252,49 @@ const deserializeAws_json1_1DecryptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "IncorrectKeyException": case "com.amazonaws.kms#IncorrectKeyException": - response = { - ...(await deserializeAws_json1_1IncorrectKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectKeyExceptionResponse(parsedOutput, context); case "InvalidCiphertextException": case "com.amazonaws.kms#InvalidCiphertextException": - response = { - ...(await deserializeAws_json1_1InvalidCiphertextExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCiphertextExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAliasCommand = async ( @@ -1621,57 +1319,31 @@ const deserializeAws_json1_1DeleteAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCustomKeyStoreCommand = async ( @@ -1699,57 +1371,31 @@ const deserializeAws_json1_1DeleteCustomKeyStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomKeyStoreHasCMKsException": case "com.amazonaws.kms#CustomKeyStoreHasCMKsException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreHasCMKsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreHasCMKsExceptionResponse(parsedOutput, context); case "CustomKeyStoreInvalidStateException": case "com.amazonaws.kms#CustomKeyStoreInvalidStateException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context); case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteImportedKeyMaterialCommand = async ( @@ -1774,73 +1420,37 @@ const deserializeAws_json1_1DeleteImportedKeyMaterialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCustomKeyStoresCommand = async ( @@ -1868,49 +1478,28 @@ const deserializeAws_json1_1DescribeCustomKeyStoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "InvalidMarkerException": case "com.amazonaws.kms#InvalidMarkerException": - response = { - ...(await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeKeyCommand = async ( @@ -1938,57 +1527,31 @@ const deserializeAws_json1_1DescribeKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableKeyCommand = async ( @@ -2013,65 +1576,34 @@ const deserializeAws_json1_1DisableKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableKeyRotationCommand = async ( @@ -2096,81 +1628,40 @@ const deserializeAws_json1_1DisableKeyRotationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisconnectCustomKeyStoreCommand = async ( @@ -2198,49 +1689,28 @@ const deserializeAws_json1_1DisconnectCustomKeyStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomKeyStoreInvalidStateException": case "com.amazonaws.kms#CustomKeyStoreInvalidStateException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context); case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableKeyCommand = async ( @@ -2265,73 +1735,37 @@ const deserializeAws_json1_1EnableKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableKeyRotationCommand = async ( @@ -2356,81 +1790,40 @@ const deserializeAws_json1_1EnableKeyRotationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EncryptCommand = async ( @@ -2458,89 +1851,43 @@ const deserializeAws_json1_1EncryptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateDataKeyCommand = async ( @@ -2568,89 +1915,43 @@ const deserializeAws_json1_1GenerateDataKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateDataKeyPairCommand = async ( @@ -2678,97 +1979,46 @@ const deserializeAws_json1_1GenerateDataKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateDataKeyPairWithoutPlaintextCommand = async ( @@ -2796,97 +2046,46 @@ const deserializeAws_json1_1GenerateDataKeyPairWithoutPlaintextCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateDataKeyWithoutPlaintextCommand = async ( @@ -2914,89 +2113,43 @@ const deserializeAws_json1_1GenerateDataKeyWithoutPlaintextCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateRandomCommand = async ( @@ -3024,57 +2177,31 @@ const deserializeAws_json1_1GenerateRandomCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomKeyStoreInvalidStateException": case "com.amazonaws.kms#CustomKeyStoreInvalidStateException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context); case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetKeyPolicyCommand = async ( @@ -3102,65 +2229,34 @@ const deserializeAws_json1_1GetKeyPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetKeyRotationStatusCommand = async ( @@ -3188,73 +2284,37 @@ const deserializeAws_json1_1GetKeyRotationStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetParametersForImportCommand = async ( @@ -3282,73 +2342,37 @@ const deserializeAws_json1_1GetParametersForImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPublicKeyCommand = async ( @@ -3376,105 +2400,49 @@ const deserializeAws_json1_1GetPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportKeyMaterialCommand = async ( @@ -3502,105 +2470,49 @@ const deserializeAws_json1_1ImportKeyMaterialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "ExpiredImportTokenException": case "com.amazonaws.kms#ExpiredImportTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredImportTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredImportTokenExceptionResponse(parsedOutput, context); case "IncorrectKeyMaterialException": case "com.amazonaws.kms#IncorrectKeyMaterialException": - response = { - ...(await deserializeAws_json1_1IncorrectKeyMaterialExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectKeyMaterialExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidCiphertextException": case "com.amazonaws.kms#InvalidCiphertextException": - response = { - ...(await deserializeAws_json1_1InvalidCiphertextExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCiphertextExceptionResponse(parsedOutput, context); case "InvalidImportTokenException": case "com.amazonaws.kms#InvalidImportTokenException": - response = { - ...(await deserializeAws_json1_1InvalidImportTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImportTokenExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAliasesCommand = async ( @@ -3628,65 +2540,34 @@ const deserializeAws_json1_1ListAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidMarkerException": case "com.amazonaws.kms#InvalidMarkerException": - response = { - ...(await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGrantsCommand = async ( @@ -3714,81 +2595,40 @@ const deserializeAws_json1_1ListGrantsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidGrantIdException": case "com.amazonaws.kms#InvalidGrantIdException": - response = { - ...(await deserializeAws_json1_1InvalidGrantIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantIdExceptionResponse(parsedOutput, context); case "InvalidMarkerException": case "com.amazonaws.kms#InvalidMarkerException": - response = { - ...(await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListKeyPoliciesCommand = async ( @@ -3816,65 +2656,34 @@ const deserializeAws_json1_1ListKeyPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListKeysCommand = async ( @@ -3902,49 +2711,28 @@ const deserializeAws_json1_1ListKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidMarkerException": case "com.amazonaws.kms#InvalidMarkerException": - response = { - ...(await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourceTagsCommand = async ( @@ -3972,57 +2760,31 @@ const deserializeAws_json1_1ListResourceTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidMarkerException": case "com.amazonaws.kms#InvalidMarkerException": - response = { - ...(await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRetirableGrantsCommand = async ( @@ -4050,65 +2812,34 @@ const deserializeAws_json1_1ListRetirableGrantsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidMarkerException": case "com.amazonaws.kms#InvalidMarkerException": - response = { - ...(await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidMarkerExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutKeyPolicyCommand = async ( @@ -4133,89 +2864,43 @@ const deserializeAws_json1_1PutKeyPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.kms#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReEncryptCommand = async ( @@ -4243,105 +2928,49 @@ const deserializeAws_json1_1ReEncryptCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "IncorrectKeyException": case "com.amazonaws.kms#IncorrectKeyException": - response = { - ...(await deserializeAws_json1_1IncorrectKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncorrectKeyExceptionResponse(parsedOutput, context); case "InvalidCiphertextException": case "com.amazonaws.kms#InvalidCiphertextException": - response = { - ...(await deserializeAws_json1_1InvalidCiphertextExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCiphertextExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReplicateKeyCommand = async ( @@ -4369,105 +2998,49 @@ const deserializeAws_json1_1ReplicateKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.kms#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.kms#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TagException": case "com.amazonaws.kms#TagException": - response = { - ...(await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetireGrantCommand = async ( @@ -4492,81 +3065,40 @@ const deserializeAws_json1_1RetireGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidGrantIdException": case "com.amazonaws.kms#InvalidGrantIdException": - response = { - ...(await deserializeAws_json1_1InvalidGrantIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantIdExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RevokeGrantCommand = async ( @@ -4591,73 +3123,37 @@ const deserializeAws_json1_1RevokeGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "InvalidGrantIdException": case "com.amazonaws.kms#InvalidGrantIdException": - response = { - ...(await deserializeAws_json1_1InvalidGrantIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantIdExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ScheduleKeyDeletionCommand = async ( @@ -4685,65 +3181,34 @@ const deserializeAws_json1_1ScheduleKeyDeletionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SignCommand = async ( @@ -4771,89 +3236,43 @@ const deserializeAws_json1_1SignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4878,73 +3297,37 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TagException": case "com.amazonaws.kms#TagException": - response = { - ...(await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -4969,65 +3352,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "TagException": case "com.amazonaws.kms#TagException": - response = { - ...(await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAliasCommand = async ( @@ -5052,65 +3404,34 @@ const deserializeAws_json1_1UpdateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.kms#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCustomKeyStoreCommand = async ( @@ -5138,89 +3459,43 @@ const deserializeAws_json1_1UpdateCustomKeyStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CloudHsmClusterInvalidConfigurationException": case "com.amazonaws.kms#CloudHsmClusterInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse(parsedOutput, context); case "CloudHsmClusterNotActiveException": case "com.amazonaws.kms#CloudHsmClusterNotActiveException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse(parsedOutput, context); case "CloudHsmClusterNotFoundException": case "com.amazonaws.kms#CloudHsmClusterNotFoundException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterNotFoundExceptionResponse(parsedOutput, context); case "CloudHsmClusterNotRelatedException": case "com.amazonaws.kms#CloudHsmClusterNotRelatedException": - response = { - ...(await deserializeAws_json1_1CloudHsmClusterNotRelatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CloudHsmClusterNotRelatedExceptionResponse(parsedOutput, context); case "CustomKeyStoreInvalidStateException": case "com.amazonaws.kms#CustomKeyStoreInvalidStateException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse(parsedOutput, context); case "CustomKeyStoreNameInUseException": case "com.amazonaws.kms#CustomKeyStoreNameInUseException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNameInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNameInUseExceptionResponse(parsedOutput, context); case "CustomKeyStoreNotFoundException": case "com.amazonaws.kms#CustomKeyStoreNotFoundException": - response = { - ...(await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateKeyDescriptionCommand = async ( @@ -5245,65 +3520,34 @@ const deserializeAws_json1_1UpdateKeyDescriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePrimaryRegionCommand = async ( @@ -5328,73 +3572,37 @@ const deserializeAws_json1_1UpdatePrimaryRegionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidArnException": case "com.amazonaws.kms#InvalidArnException": - response = { - ...(await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArnExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.kms#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1VerifyCommand = async ( @@ -5422,97 +3630,46 @@ const deserializeAws_json1_1VerifyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependencyTimeoutException": case "com.amazonaws.kms#DependencyTimeoutException": - response = { - ...(await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyTimeoutExceptionResponse(parsedOutput, context); case "DisabledException": case "com.amazonaws.kms#DisabledException": - response = { - ...(await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledExceptionResponse(parsedOutput, context); case "InvalidGrantTokenException": case "com.amazonaws.kms#InvalidGrantTokenException": - response = { - ...(await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGrantTokenExceptionResponse(parsedOutput, context); case "InvalidKeyUsageException": case "com.amazonaws.kms#InvalidKeyUsageException": - response = { - ...(await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyUsageExceptionResponse(parsedOutput, context); case "KeyUnavailableException": case "com.amazonaws.kms#KeyUnavailableException": - response = { - ...(await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KeyUnavailableExceptionResponse(parsedOutput, context); case "KMSInternalException": case "com.amazonaws.kms#KMSInternalException": - response = { - ...(await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInternalExceptionResponse(parsedOutput, context); case "KMSInvalidSignatureException": case "com.amazonaws.kms#KMSInvalidSignatureException": - response = { - ...(await deserializeAws_json1_1KMSInvalidSignatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidSignatureExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.kms#KMSInvalidStateException": - response = { - ...(await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSInvalidStateExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.kms#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( @@ -5521,13 +3678,11 @@ const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AlreadyExistsException(body, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmClusterInUseExceptionResponse = async ( @@ -5536,13 +3691,11 @@ const deserializeAws_json1_1CloudHsmClusterInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmClusterInUseException(body, context); - const contents: CloudHsmClusterInUseException = { - name: "CloudHsmClusterInUseException", - $fault: "client", + const exception = new CloudHsmClusterInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse = async ( @@ -5551,13 +3704,11 @@ const deserializeAws_json1_1CloudHsmClusterInvalidConfigurationExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmClusterInvalidConfigurationException(body, context); - const contents: CloudHsmClusterInvalidConfigurationException = { - name: "CloudHsmClusterInvalidConfigurationException", - $fault: "client", + const exception = new CloudHsmClusterInvalidConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse = async ( @@ -5566,13 +3717,11 @@ const deserializeAws_json1_1CloudHsmClusterNotActiveExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmClusterNotActiveException(body, context); - const contents: CloudHsmClusterNotActiveException = { - name: "CloudHsmClusterNotActiveException", - $fault: "client", + const exception = new CloudHsmClusterNotActiveException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmClusterNotFoundExceptionResponse = async ( @@ -5581,13 +3730,11 @@ const deserializeAws_json1_1CloudHsmClusterNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmClusterNotFoundException(body, context); - const contents: CloudHsmClusterNotFoundException = { - name: "CloudHsmClusterNotFoundException", - $fault: "client", + const exception = new CloudHsmClusterNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CloudHsmClusterNotRelatedExceptionResponse = async ( @@ -5596,13 +3743,11 @@ const deserializeAws_json1_1CloudHsmClusterNotRelatedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CloudHsmClusterNotRelatedException(body, context); - const contents: CloudHsmClusterNotRelatedException = { - name: "CloudHsmClusterNotRelatedException", - $fault: "client", + const exception = new CloudHsmClusterNotRelatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CustomKeyStoreHasCMKsExceptionResponse = async ( @@ -5611,13 +3756,11 @@ const deserializeAws_json1_1CustomKeyStoreHasCMKsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomKeyStoreHasCMKsException(body, context); - const contents: CustomKeyStoreHasCMKsException = { - name: "CustomKeyStoreHasCMKsException", - $fault: "client", + const exception = new CustomKeyStoreHasCMKsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse = async ( @@ -5626,13 +3769,11 @@ const deserializeAws_json1_1CustomKeyStoreInvalidStateExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomKeyStoreInvalidStateException(body, context); - const contents: CustomKeyStoreInvalidStateException = { - name: "CustomKeyStoreInvalidStateException", - $fault: "client", + const exception = new CustomKeyStoreInvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CustomKeyStoreNameInUseExceptionResponse = async ( @@ -5641,13 +3782,11 @@ const deserializeAws_json1_1CustomKeyStoreNameInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomKeyStoreNameInUseException(body, context); - const contents: CustomKeyStoreNameInUseException = { - name: "CustomKeyStoreNameInUseException", - $fault: "client", + const exception = new CustomKeyStoreNameInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse = async ( @@ -5656,13 +3795,11 @@ const deserializeAws_json1_1CustomKeyStoreNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomKeyStoreNotFoundException(body, context); - const contents: CustomKeyStoreNotFoundException = { - name: "CustomKeyStoreNotFoundException", - $fault: "client", + const exception = new CustomKeyStoreNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DependencyTimeoutExceptionResponse = async ( @@ -5671,13 +3808,11 @@ const deserializeAws_json1_1DependencyTimeoutExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DependencyTimeoutException(body, context); - const contents: DependencyTimeoutException = { - name: "DependencyTimeoutException", - $fault: "server", + const exception = new DependencyTimeoutException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DisabledExceptionResponse = async ( @@ -5686,13 +3821,11 @@ const deserializeAws_json1_1DisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DisabledException(body, context); - const contents: DisabledException = { - name: "DisabledException", - $fault: "client", + const exception = new DisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExpiredImportTokenExceptionResponse = async ( @@ -5701,13 +3834,11 @@ const deserializeAws_json1_1ExpiredImportTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredImportTokenException(body, context); - const contents: ExpiredImportTokenException = { - name: "ExpiredImportTokenException", - $fault: "client", + const exception = new ExpiredImportTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncorrectKeyExceptionResponse = async ( @@ -5716,13 +3847,11 @@ const deserializeAws_json1_1IncorrectKeyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncorrectKeyException(body, context); - const contents: IncorrectKeyException = { - name: "IncorrectKeyException", - $fault: "client", + const exception = new IncorrectKeyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncorrectKeyMaterialExceptionResponse = async ( @@ -5731,13 +3860,11 @@ const deserializeAws_json1_1IncorrectKeyMaterialExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncorrectKeyMaterialException(body, context); - const contents: IncorrectKeyMaterialException = { - name: "IncorrectKeyMaterialException", - $fault: "client", + const exception = new IncorrectKeyMaterialException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncorrectTrustAnchorExceptionResponse = async ( @@ -5746,13 +3873,11 @@ const deserializeAws_json1_1IncorrectTrustAnchorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncorrectTrustAnchorException(body, context); - const contents: IncorrectTrustAnchorException = { - name: "IncorrectTrustAnchorException", - $fault: "client", + const exception = new IncorrectTrustAnchorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAliasNameExceptionResponse = async ( @@ -5761,13 +3886,11 @@ const deserializeAws_json1_1InvalidAliasNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAliasNameException(body, context); - const contents: InvalidAliasNameException = { - name: "InvalidAliasNameException", - $fault: "client", + const exception = new InvalidAliasNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArnExceptionResponse = async ( @@ -5776,13 +3899,11 @@ const deserializeAws_json1_1InvalidArnExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArnException(body, context); - const contents: InvalidArnException = { - name: "InvalidArnException", - $fault: "client", + const exception = new InvalidArnException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCiphertextExceptionResponse = async ( @@ -5791,13 +3912,11 @@ const deserializeAws_json1_1InvalidCiphertextExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCiphertextException(body, context); - const contents: InvalidCiphertextException = { - name: "InvalidCiphertextException", - $fault: "client", + const exception = new InvalidCiphertextException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGrantIdExceptionResponse = async ( @@ -5806,13 +3925,11 @@ const deserializeAws_json1_1InvalidGrantIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGrantIdException(body, context); - const contents: InvalidGrantIdException = { - name: "InvalidGrantIdException", - $fault: "client", + const exception = new InvalidGrantIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGrantTokenExceptionResponse = async ( @@ -5821,13 +3938,11 @@ const deserializeAws_json1_1InvalidGrantTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGrantTokenException(body, context); - const contents: InvalidGrantTokenException = { - name: "InvalidGrantTokenException", - $fault: "client", + const exception = new InvalidGrantTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidImportTokenExceptionResponse = async ( @@ -5836,13 +3951,11 @@ const deserializeAws_json1_1InvalidImportTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidImportTokenException(body, context); - const contents: InvalidImportTokenException = { - name: "InvalidImportTokenException", - $fault: "client", + const exception = new InvalidImportTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKeyUsageExceptionResponse = async ( @@ -5851,13 +3964,11 @@ const deserializeAws_json1_1InvalidKeyUsageExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKeyUsageException(body, context); - const contents: InvalidKeyUsageException = { - name: "InvalidKeyUsageException", - $fault: "client", + const exception = new InvalidKeyUsageException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidMarkerExceptionResponse = async ( @@ -5866,13 +3977,11 @@ const deserializeAws_json1_1InvalidMarkerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidMarkerException(body, context); - const contents: InvalidMarkerException = { - name: "InvalidMarkerException", - $fault: "client", + const exception = new InvalidMarkerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KeyUnavailableExceptionResponse = async ( @@ -5881,13 +3990,11 @@ const deserializeAws_json1_1KeyUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KeyUnavailableException(body, context); - const contents: KeyUnavailableException = { - name: "KeyUnavailableException", - $fault: "server", + const exception = new KeyUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSInternalExceptionResponse = async ( @@ -5896,13 +4003,11 @@ const deserializeAws_json1_1KMSInternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSInternalException(body, context); - const contents: KMSInternalException = { - name: "KMSInternalException", - $fault: "server", + const exception = new KMSInternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSInvalidSignatureExceptionResponse = async ( @@ -5911,13 +4016,11 @@ const deserializeAws_json1_1KMSInvalidSignatureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSInvalidSignatureException(body, context); - const contents: KMSInvalidSignatureException = { - name: "KMSInvalidSignatureException", - $fault: "client", + const exception = new KMSInvalidSignatureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSInvalidStateExceptionResponse = async ( @@ -5926,13 +4029,11 @@ const deserializeAws_json1_1KMSInvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSInvalidStateException(body, context); - const contents: KMSInvalidStateException = { - name: "KMSInvalidStateException", - $fault: "client", + const exception = new KMSInvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -5941,13 +4042,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse = async ( @@ -5956,13 +4055,11 @@ const deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MalformedPolicyDocumentException(body, context); - const contents: MalformedPolicyDocumentException = { - name: "MalformedPolicyDocumentException", - $fault: "client", + const exception = new MalformedPolicyDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -5971,13 +4068,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagExceptionResponse = async ( @@ -5986,13 +4081,11 @@ const deserializeAws_json1_1TagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagException(body, context); - const contents: TagException = { - name: "TagException", - $fault: "client", + const exception = new TagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -6001,13 +4094,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CancelKeyDeletionRequest = ( diff --git a/clients/client-lakeformation/src/index.ts b/clients/client-lakeformation/src/index.ts index e7e292e845d90..ef6ba505085ab 100644 --- a/clients/client-lakeformation/src/index.ts +++ b/clients/client-lakeformation/src/index.ts @@ -3,3 +3,4 @@ export * from "./LakeFormationClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { LakeFormationServiceException } from "./models/LakeFormationServiceException"; diff --git a/clients/client-lakeformation/src/models/LakeFormationServiceException.ts b/clients/client-lakeformation/src/models/LakeFormationServiceException.ts new file mode 100644 index 0000000000000..73256b15a27dc --- /dev/null +++ b/clients/client-lakeformation/src/models/LakeFormationServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LakeFormation service. + */ +export class LakeFormationServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LakeFormationServiceException.prototype); + } +} diff --git a/clients/client-lakeformation/src/models/models_0.ts b/clients/client-lakeformation/src/models/models_0.ts index ca7ead0a83f75..f16e67343cb44 100644 --- a/clients/client-lakeformation/src/models/models_0.ts +++ b/clients/client-lakeformation/src/models/models_0.ts @@ -1,17 +1,31 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { LakeFormationServiceException as __BaseException } from "./LakeFormationServiceException"; + /** *

Access to a resource was denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -482,61 +496,121 @@ export namespace AddLFTagsToResourceResponse { /** *

Two processes are trying to modify a resource simultaneously.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

A specified entity does not exist

*/ -export interface EntityNotFoundException extends __SmithyException, $MetadataBearer { - name: "EntityNotFoundException"; - $fault: "client"; +export class EntityNotFoundException extends __BaseException { + readonly name: "EntityNotFoundException" = "EntityNotFoundException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

An internal service error occurred.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

The input provided was not valid.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** *

The operation timed out.

*/ -export interface OperationTimeoutException extends __SmithyException, $MetadataBearer { - name: "OperationTimeoutException"; - $fault: "client"; +export class OperationTimeoutException extends __BaseException { + readonly name: "OperationTimeoutException" = "OperationTimeoutException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationTimeoutException.prototype); + this.Message = opts.Message; + } } /** @@ -591,13 +665,25 @@ export namespace AllRowsWildcard { /** *

A resource to be created or added already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** @@ -824,25 +910,49 @@ export namespace CancelTransactionResponse { /** *

Contains details about an error related to a transaction commit that was in progress.

*/ -export interface TransactionCommitInProgressException extends __SmithyException, $MetadataBearer { - name: "TransactionCommitInProgressException"; - $fault: "client"; +export class TransactionCommitInProgressException extends __BaseException { + readonly name: "TransactionCommitInProgressException" = "TransactionCommitInProgressException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransactionCommitInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransactionCommitInProgressException.prototype); + this.Message = opts.Message; + } } /** *

Contains details about an error where the specified transaction has already been committed and cannot be used for UpdateTableObjects.

*/ -export interface TransactionCommittedException extends __SmithyException, $MetadataBearer { - name: "TransactionCommittedException"; - $fault: "client"; +export class TransactionCommittedException extends __BaseException { + readonly name: "TransactionCommittedException" = "TransactionCommittedException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransactionCommittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransactionCommittedException.prototype); + this.Message = opts.Message; + } } export interface CommitTransactionRequest { @@ -887,13 +997,25 @@ export namespace CommitTransactionResponse { /** *

Contains details about an error related to a transaction that was cancelled.

*/ -export interface TransactionCanceledException extends __SmithyException, $MetadataBearer { - name: "TransactionCanceledException"; - $fault: "client"; +export class TransactionCanceledException extends __BaseException { + readonly name: "TransactionCanceledException" = "TransactionCanceledException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TransactionCanceledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TransactionCanceledException.prototype); + this.Message = opts.Message; + } } /** @@ -1002,13 +1124,25 @@ export namespace CreateDataCellsFilterResponse { /** *

A resource numerical limit was exceeded.

*/ -export interface ResourceNumberLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceNumberLimitExceededException"; - $fault: "client"; +export class ResourceNumberLimitExceededException extends __BaseException { + readonly name: "ResourceNumberLimitExceededException" = "ResourceNumberLimitExceededException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNumberLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNumberLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface CreateLFTagRequest { @@ -1197,13 +1331,25 @@ export namespace DeleteObjectsOnCancelResponse { /** *

Contains details about an error related to a resource which is not ready for a transaction.

*/ -export interface ResourceNotReadyException extends __SmithyException, $MetadataBearer { - name: "ResourceNotReadyException"; - $fault: "client"; +export class ResourceNotReadyException extends __BaseException { + readonly name: "ResourceNotReadyException" = "ResourceNotReadyException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotReadyException.prototype); + this.Message = opts.Message; + } } export interface DeregisterResourceRequest { @@ -1737,13 +1883,25 @@ export namespace GetQueryStateResponse { /** *

Contains details about an error where the query request expired.

*/ -export interface ExpiredException extends __SmithyException, $MetadataBearer { - name: "ExpiredException"; - $fault: "client"; +export class ExpiredException extends __BaseException { + readonly name: "ExpiredException" = "ExpiredException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredException.prototype); + this.Message = opts.Message; + } } export interface GetQueryStatisticsRequest { @@ -1854,28 +2012,52 @@ export namespace GetQueryStatisticsResponse { /** *

Contains details about an error related to statistics not being ready.

*/ -export interface StatisticsNotReadyYetException extends __SmithyException, $MetadataBearer { - name: "StatisticsNotReadyYetException"; - $fault: "client"; +export class StatisticsNotReadyYetException extends __BaseException { + readonly name: "StatisticsNotReadyYetException" = "StatisticsNotReadyYetException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StatisticsNotReadyYetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StatisticsNotReadyYetException.prototype); + this.Message = opts.Message; + } } /** *

Contains details about an error where the query request was throttled.

*/ -export interface ThrottledException extends __SmithyException, $MetadataBearer { - name: "ThrottledException"; - $fault: "client"; - $retryable: { - throttling: true; +export class ThrottledException extends __BaseException { + readonly name: "ThrottledException" = "ThrottledException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledException.prototype); + this.Message = opts.Message; + } } export interface GetResourceLFTagsRequest { @@ -1957,13 +2139,25 @@ export namespace GetResourceLFTagsResponse { /** *

An encryption operation failed.

*/ -export interface GlueEncryptionException extends __SmithyException, $MetadataBearer { - name: "GlueEncryptionException"; - $fault: "client"; +export class GlueEncryptionException extends __BaseException { + readonly name: "GlueEncryptionException" = "GlueEncryptionException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlueEncryptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlueEncryptionException.prototype); + this.Message = opts.Message; + } } export interface GetTableObjectsRequest { @@ -2201,13 +2395,25 @@ export namespace GetTemporaryGluePartitionCredentialsResponse { /** *

The engine does not support filtering data based on the enforced permissions. For example, if you call the GetTemporaryGlueTableCredentials operation with SupportedPermissionType equal to ColumnPermission, but cell-level permissions exist on the table, this exception is thrown.

*/ -export interface PermissionTypeMismatchException extends __SmithyException, $MetadataBearer { - name: "PermissionTypeMismatchException"; - $fault: "client"; +export class PermissionTypeMismatchException extends __BaseException { + readonly name: "PermissionTypeMismatchException" = "PermissionTypeMismatchException"; + readonly $fault: "client" = "client"; /** *

A message describing the problem.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PermissionTypeMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PermissionTypeMismatchException.prototype); + this.Message = opts.Message; + } } export interface GetTemporaryGlueTableCredentialsRequest { @@ -2410,13 +2616,25 @@ export namespace GetWorkUnitsResponse { /** *

Contains details about an error related to work units not being ready.

*/ -export interface WorkUnitsNotReadyYetException extends __SmithyException, $MetadataBearer { - name: "WorkUnitsNotReadyYetException"; - $fault: "client"; +export class WorkUnitsNotReadyYetException extends __BaseException { + readonly name: "WorkUnitsNotReadyYetException" = "WorkUnitsNotReadyYetException"; + readonly $fault: "client" = "client"; /** *

A message describing the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WorkUnitsNotReadyYetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WorkUnitsNotReadyYetException.prototype); + this.Message = opts.Message; + } } export interface GrantPermissionsRequest { diff --git a/clients/client-lakeformation/src/protocols/Aws_restJson1.ts b/clients/client-lakeformation/src/protocols/Aws_restJson1.ts index e37e7f6d39131..3d822d453cab6 100644 --- a/clients/client-lakeformation/src/protocols/Aws_restJson1.ts +++ b/clients/client-lakeformation/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -15,10 +16,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -119,6 +118,7 @@ import { UpdateTableStorageOptimizerCommandInput, UpdateTableStorageOptimizerCommandOutput, } from "../commands/UpdateTableStorageOptimizerCommand"; +import { LakeFormationServiceException as __BaseException } from "../models/LakeFormationServiceException"; import { AccessDeniedException, AddObjectInput, @@ -1478,73 +1478,37 @@ const deserializeAws_restJson1AddLFTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGrantPermissionsCommand = async ( @@ -1573,41 +1537,25 @@ const deserializeAws_restJson1BatchGrantPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchRevokePermissionsCommand = async ( @@ -1636,41 +1584,25 @@ const deserializeAws_restJson1BatchRevokePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelTransactionCommand = async ( @@ -1695,81 +1627,40 @@ const deserializeAws_restJson1CancelTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "TransactionCommitInProgressException": case "com.amazonaws.lakeformation#TransactionCommitInProgressException": - response = { - ...(await deserializeAws_restJson1TransactionCommitInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommitInProgressExceptionResponse(parsedOutput, context); case "TransactionCommittedException": case "com.amazonaws.lakeformation#TransactionCommittedException": - response = { - ...(await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CommitTransactionCommand = async ( @@ -1798,73 +1689,37 @@ const deserializeAws_restJson1CommitTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.lakeformation#TransactionCanceledException": - response = { - ...(await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataCellsFilterCommand = async ( @@ -1889,81 +1744,40 @@ const deserializeAws_restJson1CreateDataCellsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.lakeformation#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.lakeformation#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLFTagCommand = async ( @@ -1988,73 +1802,37 @@ const deserializeAws_restJson1CreateLFTagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.lakeformation#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataCellsFilterCommand = async ( @@ -2079,65 +1857,34 @@ const deserializeAws_restJson1DeleteDataCellsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLFTagCommand = async ( @@ -2162,65 +1909,34 @@ const deserializeAws_restJson1DeleteLFTagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteObjectsOnCancelCommand = async ( @@ -2245,89 +1961,43 @@ const deserializeAws_restJson1DeleteObjectsOnCancelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.lakeformation#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.lakeformation#TransactionCanceledException": - response = { - ...(await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context); case "TransactionCommittedException": case "com.amazonaws.lakeformation#TransactionCommittedException": - response = { - ...(await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterResourceCommand = async ( @@ -2352,57 +2022,31 @@ const deserializeAws_restJson1DeregisterResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeResourceCommand = async ( @@ -2431,57 +2075,31 @@ const deserializeAws_restJson1DescribeResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTransactionCommand = async ( @@ -2513,57 +2131,31 @@ const deserializeAws_restJson1DescribeTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExtendTransactionCommand = async ( @@ -2588,81 +2180,40 @@ const deserializeAws_restJson1ExtendTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.lakeformation#TransactionCanceledException": - response = { - ...(await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context); case "TransactionCommitInProgressException": case "com.amazonaws.lakeformation#TransactionCommitInProgressException": - response = { - ...(await deserializeAws_restJson1TransactionCommitInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommitInProgressExceptionResponse(parsedOutput, context); case "TransactionCommittedException": case "com.amazonaws.lakeformation#TransactionCommittedException": - response = { - ...(await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDataLakeSettingsCommand = async ( @@ -2691,49 +2242,28 @@ const deserializeAws_restJson1GetDataLakeSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEffectivePermissionsForPathCommand = async ( @@ -2766,57 +2296,31 @@ const deserializeAws_restJson1GetEffectivePermissionsForPathCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLFTagCommand = async ( @@ -2853,65 +2357,34 @@ const deserializeAws_restJson1GetLFTagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetQueryStateCommand = async ( @@ -2944,49 +2417,28 @@ const deserializeAws_restJson1GetQueryStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetQueryStatisticsCommand = async ( @@ -3023,73 +2475,37 @@ const deserializeAws_restJson1GetQueryStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredException": case "com.amazonaws.lakeformation#ExpiredException": - response = { - ...(await deserializeAws_restJson1ExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ExpiredExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "StatisticsNotReadyYetException": case "com.amazonaws.lakeformation#StatisticsNotReadyYetException": - response = { - ...(await deserializeAws_restJson1StatisticsNotReadyYetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StatisticsNotReadyYetExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.lakeformation#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceLFTagsCommand = async ( @@ -3126,73 +2542,37 @@ const deserializeAws_restJson1GetResourceLFTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.lakeformation#GlueEncryptionException": - response = { - ...(await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTableObjectsCommand = async ( @@ -3225,81 +2605,40 @@ const deserializeAws_restJson1GetTableObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.lakeformation#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.lakeformation#TransactionCanceledException": - response = { - ...(await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context); case "TransactionCommittedException": case "com.amazonaws.lakeformation#TransactionCommittedException": - response = { - ...(await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTemporaryGluePartitionCredentialsCommand = async ( @@ -3340,73 +2679,37 @@ const deserializeAws_restJson1GetTemporaryGluePartitionCredentialsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "PermissionTypeMismatchException": case "com.amazonaws.lakeformation#PermissionTypeMismatchException": - response = { - ...(await deserializeAws_restJson1PermissionTypeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PermissionTypeMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTemporaryGlueTableCredentialsCommand = async ( @@ -3447,73 +2750,37 @@ const deserializeAws_restJson1GetTemporaryGlueTableCredentialsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "PermissionTypeMismatchException": case "com.amazonaws.lakeformation#PermissionTypeMismatchException": - response = { - ...(await deserializeAws_restJson1PermissionTypeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PermissionTypeMismatchExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWorkUnitResultsCommand = async ( @@ -3540,65 +2807,34 @@ const deserializeAws_restJson1GetWorkUnitResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredException": case "com.amazonaws.lakeformation#ExpiredException": - response = { - ...(await deserializeAws_restJson1ExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ExpiredExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.lakeformation#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWorkUnitsCommand = async ( @@ -3635,65 +2871,34 @@ const deserializeAws_restJson1GetWorkUnitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ExpiredException": case "com.amazonaws.lakeformation#ExpiredException": - response = { - ...(await deserializeAws_restJson1ExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ExpiredExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "WorkUnitsNotReadyYetException": case "com.amazonaws.lakeformation#WorkUnitsNotReadyYetException": - response = { - ...(await deserializeAws_restJson1WorkUnitsNotReadyYetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1WorkUnitsNotReadyYetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GrantPermissionsCommand = async ( @@ -3718,49 +2923,28 @@ const deserializeAws_restJson1GrantPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataCellsFilterCommand = async ( @@ -3793,57 +2977,31 @@ const deserializeAws_restJson1ListDataCellsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLFTagsCommand = async ( @@ -3876,65 +3034,34 @@ const deserializeAws_restJson1ListLFTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPermissionsCommand = async ( @@ -3970,49 +3097,28 @@ const deserializeAws_restJson1ListPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourcesCommand = async ( @@ -4045,49 +3151,28 @@ const deserializeAws_restJson1ListResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTableStorageOptimizersCommand = async ( @@ -4120,57 +3205,31 @@ const deserializeAws_restJson1ListTableStorageOptimizersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTransactionsCommand = async ( @@ -4203,49 +3262,28 @@ const deserializeAws_restJson1ListTransactionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDataLakeSettingsCommand = async ( @@ -4270,41 +3308,25 @@ const deserializeAws_restJson1PutDataLakeSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterResourceCommand = async ( @@ -4329,81 +3351,40 @@ const deserializeAws_restJson1RegisterResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "AlreadyExistsException": case "com.amazonaws.lakeformation#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNumberLimitExceededException": case "com.amazonaws.lakeformation#ResourceNumberLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveLFTagsFromResourceCommand = async ( @@ -4432,81 +3413,40 @@ const deserializeAws_restJson1RemoveLFTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.lakeformation#GlueEncryptionException": - response = { - ...(await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RevokePermissionsCommand = async ( @@ -4531,49 +3471,28 @@ const deserializeAws_restJson1RevokePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchDatabasesByLFTagsCommand = async ( @@ -4606,73 +3525,37 @@ const deserializeAws_restJson1SearchDatabasesByLFTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.lakeformation#GlueEncryptionException": - response = { - ...(await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchTablesByLFTagsCommand = async ( @@ -4705,73 +3588,37 @@ const deserializeAws_restJson1SearchTablesByLFTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "GlueEncryptionException": case "com.amazonaws.lakeformation#GlueEncryptionException": - response = { - ...(await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GlueEncryptionExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartQueryPlanningCommand = async ( @@ -4800,57 +3647,31 @@ const deserializeAws_restJson1StartQueryPlanningCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.lakeformation#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartTransactionCommand = async ( @@ -4879,41 +3700,25 @@ const deserializeAws_restJson1StartTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLFTagCommand = async ( @@ -4938,73 +3743,37 @@ const deserializeAws_restJson1UpdateLFTagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceCommand = async ( @@ -5029,57 +3798,31 @@ const deserializeAws_restJson1UpdateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTableObjectsCommand = async ( @@ -5104,97 +3847,46 @@ const deserializeAws_restJson1UpdateTableObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.lakeformation#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "OperationTimeoutException": case "com.amazonaws.lakeformation#OperationTimeoutException": - response = { - ...(await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationTimeoutExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.lakeformation#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "TransactionCanceledException": case "com.amazonaws.lakeformation#TransactionCanceledException": - response = { - ...(await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCanceledExceptionResponse(parsedOutput, context); case "TransactionCommitInProgressException": case "com.amazonaws.lakeformation#TransactionCommitInProgressException": - response = { - ...(await deserializeAws_restJson1TransactionCommitInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommitInProgressExceptionResponse(parsedOutput, context); case "TransactionCommittedException": case "com.amazonaws.lakeformation#TransactionCommittedException": - response = { - ...(await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TransactionCommittedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTableStorageOptimizerCommand = async ( @@ -5223,366 +3915,319 @@ const deserializeAws_restJson1UpdateTableStorageOptimizerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lakeformation#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.lakeformation#EntityNotFoundException": - response = { - ...(await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotFoundExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.lakeformation#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lakeformation#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EntityNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EntityNotFoundException = { - name: "EntityNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new EntityNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ExpiredExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ExpiredException = { - name: "ExpiredException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ExpiredException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GlueEncryptionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GlueEncryptionException = { - name: "GlueEncryptionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new GlueEncryptionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidInputExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidInputException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1OperationTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: OperationTimeoutException = { - name: "OperationTimeoutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new OperationTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PermissionTypeMismatchExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PermissionTypeMismatchException = { - name: "PermissionTypeMismatchException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new PermissionTypeMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotReadyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotReadyException = { - name: "ResourceNotReadyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotReadyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNumberLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNumberLimitExceededException = { - name: "ResourceNumberLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNumberLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1StatisticsNotReadyYetExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StatisticsNotReadyYetException = { - name: "StatisticsNotReadyYetException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new StatisticsNotReadyYetException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottledException = { - name: "ThrottledException", - $fault: "client", - $retryable: { - throttling: true, - }, - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TransactionCanceledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TransactionCanceledException = { - name: "TransactionCanceledException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TransactionCanceledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TransactionCommitInProgressExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TransactionCommitInProgressException = { - name: "TransactionCommitInProgressException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TransactionCommitInProgressException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TransactionCommittedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TransactionCommittedException = { - name: "TransactionCommittedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TransactionCommittedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1WorkUnitsNotReadyYetExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: WorkUnitsNotReadyYetException = { - name: "WorkUnitsNotReadyYetException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new WorkUnitsNotReadyYetException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AddObjectInput = (input: AddObjectInput, context: __SerdeContext): any => { diff --git a/clients/client-lambda/src/index.ts b/clients/client-lambda/src/index.ts index b0eaf2bacb746..fd7129ff979bd 100644 --- a/clients/client-lambda/src/index.ts +++ b/clients/client-lambda/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { LambdaServiceException } from "./models/LambdaServiceException"; diff --git a/clients/client-lambda/src/models/LambdaServiceException.ts b/clients/client-lambda/src/models/LambdaServiceException.ts new file mode 100644 index 0000000000000..5d900c462c066 --- /dev/null +++ b/clients/client-lambda/src/models/LambdaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Lambda service. + */ +export class LambdaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LambdaServiceException.prototype); + } +} diff --git a/clients/client-lambda/src/models/models_0.ts b/clients/client-lambda/src/models/models_0.ts index ee85ccf1a6027..c0a03ee108c6f 100644 --- a/clients/client-lambda/src/models/models_0.ts +++ b/clients/client-lambda/src/models/models_0.ts @@ -1,7 +1,9 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { LambdaServiceException as __BaseException } from "./LambdaServiceException"; + /** *

Limits that are related to concurrency and storage. All file and storage sizes are in bytes.

*/ @@ -142,29 +144,48 @@ export namespace AddLayerVersionPermissionResponse { /** *

One of the parameters in the request is invalid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; /** *

The exception type.

*/ Type?: string; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + this.Type = opts.Type; + } } /** *

The permissions policy for the resource is too large. Learn more *

*/ -export interface PolicyLengthExceededException extends __SmithyException, $MetadataBearer { - name: "PolicyLengthExceededException"; - $fault: "client"; +export class PolicyLengthExceededException extends __BaseException { + readonly name: "PolicyLengthExceededException" = "PolicyLengthExceededException"; + readonly $fault: "client" = "client"; Type?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyLengthExceededException.prototype); + this.Type = opts.Type; + } } /** @@ -172,55 +193,97 @@ export interface PolicyLengthExceededException extends __SmithyException, $Metad * GetFunction or the GetAlias API to retrieve the latest RevisionId for your * resource.

*/ -export interface PreconditionFailedException extends __SmithyException, $MetadataBearer { - name: "PreconditionFailedException"; - $fault: "client"; +export class PreconditionFailedException extends __BaseException { + readonly name: "PreconditionFailedException" = "PreconditionFailedException"; + readonly $fault: "client" = "client"; /** *

The exception type.

*/ Type?: string; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailedException.prototype); + this.Type = opts.Type; + } } /** *

The resource already exists, or another operation is in progress.

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; /** *

The exception type.

*/ Type?: string; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + this.Type = opts.Type; + } } /** *

The resource specified in the request does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The Lambda service encountered an internal error.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } export enum ThrottleReason { @@ -234,17 +297,30 @@ export enum ThrottleReason { /** *

The request throughput limit was exceeded.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

The number of seconds the caller should wait before retrying.

*/ retryAfterSeconds?: string; Type?: string; - message?: string; Reason?: ThrottleReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + this.Type = opts.Type; + this.Reason = opts.Reason; + } } export interface AddPermissionRequest { @@ -1148,37 +1224,74 @@ export namespace EventSourceMappingConfiguration { /** *

The specified code signing configuration does not exist.

*/ -export interface CodeSigningConfigNotFoundException extends __SmithyException, $MetadataBearer { - name: "CodeSigningConfigNotFoundException"; - $fault: "client"; +export class CodeSigningConfigNotFoundException extends __BaseException { + readonly name: "CodeSigningConfigNotFoundException" = "CodeSigningConfigNotFoundException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeSigningConfigNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeSigningConfigNotFoundException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

You have exceeded your maximum total code size per account. Learn more *

*/ -export interface CodeStorageExceededException extends __SmithyException, $MetadataBearer { - name: "CodeStorageExceededException"; - $fault: "client"; +export class CodeStorageExceededException extends __BaseException { + readonly name: "CodeStorageExceededException" = "CodeStorageExceededException"; + readonly $fault: "client" = "client"; /** *

The exception type.

*/ Type?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeStorageExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeStorageExceededException.prototype); + this.Type = opts.Type; + } } /** *

The code signature failed one or more of the validation checks for signature mismatch or expiry, and the code signing policy * is set to ENFORCE. Lambda blocks the deployment.

*/ -export interface CodeVerificationFailedException extends __SmithyException, $MetadataBearer { - name: "CodeVerificationFailedException"; - $fault: "client"; +export class CodeVerificationFailedException extends __BaseException { + readonly name: "CodeVerificationFailedException" = "CodeVerificationFailedException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CodeVerificationFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CodeVerificationFailedException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** @@ -1972,11 +2085,24 @@ export namespace FunctionConfiguration { *

The code signature failed the integrity check. Lambda always blocks deployment if the integrity check * fails, even if code signing policy is set to WARN.

*/ -export interface InvalidCodeSignatureException extends __SmithyException, $MetadataBearer { - name: "InvalidCodeSignatureException"; - $fault: "client"; +export class InvalidCodeSignatureException extends __BaseException { + readonly name: "InvalidCodeSignatureException" = "InvalidCodeSignatureException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCodeSignatureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCodeSignatureException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } export interface DeleteAliasRequest { @@ -2066,11 +2192,24 @@ export namespace DeleteEventSourceMappingRequest { *

The operation conflicts with the resource's availability. For example, you attempted to update an EventSource * Mapping in CREATING, or tried to delete a EventSource mapping currently in the UPDATING state.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } export interface DeleteFunctionRequest { @@ -3117,152 +3256,328 @@ export namespace GetProvisionedConcurrencyConfigResponse { /** *

The specified configuration does not exist.

*/ -export interface ProvisionedConcurrencyConfigNotFoundException extends __SmithyException, $MetadataBearer { - name: "ProvisionedConcurrencyConfigNotFoundException"; - $fault: "client"; +export class ProvisionedConcurrencyConfigNotFoundException extends __BaseException { + readonly name: "ProvisionedConcurrencyConfigNotFoundException" = "ProvisionedConcurrencyConfigNotFoundException"; + readonly $fault: "client" = "client"; Type?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedConcurrencyConfigNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedConcurrencyConfigNotFoundException.prototype); + this.Type = opts.Type; + } } /** *

Need additional permissions to configure VPC settings.

*/ -export interface EC2AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "EC2AccessDeniedException"; - $fault: "server"; +export class EC2AccessDeniedException extends __BaseException { + readonly name: "EC2AccessDeniedException" = "EC2AccessDeniedException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EC2AccessDeniedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, EC2AccessDeniedException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda was throttled by Amazon EC2 during Lambda function initialization using the execution role provided * for the Lambda function.

*/ -export interface EC2ThrottledException extends __SmithyException, $MetadataBearer { - name: "EC2ThrottledException"; - $fault: "server"; +export class EC2ThrottledException extends __BaseException { + readonly name: "EC2ThrottledException" = "EC2ThrottledException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EC2ThrottledException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, EC2ThrottledException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda received an unexpected EC2 client exception while setting up for the Lambda function.

*/ -export interface EC2UnexpectedException extends __SmithyException, $MetadataBearer { - name: "EC2UnexpectedException"; - $fault: "server"; +export class EC2UnexpectedException extends __BaseException { + readonly name: "EC2UnexpectedException" = "EC2UnexpectedException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; EC2ErrorCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EC2UnexpectedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, EC2UnexpectedException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + this.EC2ErrorCode = opts.EC2ErrorCode; + } } /** *

An error occurred when reading from or writing to a connected file system.

*/ -export interface EFSIOException extends __SmithyException, $MetadataBearer { - name: "EFSIOException"; - $fault: "client"; +export class EFSIOException extends __BaseException { + readonly name: "EFSIOException" = "EFSIOException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EFSIOException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EFSIOException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The function couldn't make a network connection to the configured file system.

*/ -export interface EFSMountConnectivityException extends __SmithyException, $MetadataBearer { - name: "EFSMountConnectivityException"; - $fault: "client"; +export class EFSMountConnectivityException extends __BaseException { + readonly name: "EFSMountConnectivityException" = "EFSMountConnectivityException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EFSMountConnectivityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EFSMountConnectivityException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The function couldn't mount the configured file system due to a permission or configuration issue.

*/ -export interface EFSMountFailureException extends __SmithyException, $MetadataBearer { - name: "EFSMountFailureException"; - $fault: "client"; +export class EFSMountFailureException extends __BaseException { + readonly name: "EFSMountFailureException" = "EFSMountFailureException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EFSMountFailureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EFSMountFailureException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The function was able to make a network connection to the configured file system, but the mount operation * timed out.

*/ -export interface EFSMountTimeoutException extends __SmithyException, $MetadataBearer { - name: "EFSMountTimeoutException"; - $fault: "client"; +export class EFSMountTimeoutException extends __BaseException { + readonly name: "EFSMountTimeoutException" = "EFSMountTimeoutException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EFSMountTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EFSMountTimeoutException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda was not able to create an elastic network interface in the VPC, specified as part of Lambda * function configuration, because the limit for network interfaces has been reached.

*/ -export interface ENILimitReachedException extends __SmithyException, $MetadataBearer { - name: "ENILimitReachedException"; - $fault: "server"; +export class ENILimitReachedException extends __BaseException { + readonly name: "ENILimitReachedException" = "ENILimitReachedException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ENILimitReachedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ENILimitReachedException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The request body could not be parsed as JSON.

*/ -export interface InvalidRequestContentException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestContentException"; - $fault: "client"; +export class InvalidRequestContentException extends __BaseException { + readonly name: "InvalidRequestContentException" = "InvalidRequestContentException"; + readonly $fault: "client" = "client"; /** *

The exception type.

*/ Type?: string; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestContentException.prototype); + this.Type = opts.Type; + } } /** *

The runtime or runtime version specified is not supported.

*/ -export interface InvalidRuntimeException extends __SmithyException, $MetadataBearer { - name: "InvalidRuntimeException"; - $fault: "server"; +export class InvalidRuntimeException extends __BaseException { + readonly name: "InvalidRuntimeException" = "InvalidRuntimeException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRuntimeException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRuntimeException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The Security Group ID provided in the Lambda function VPC configuration is invalid.

*/ -export interface InvalidSecurityGroupIDException extends __SmithyException, $MetadataBearer { - name: "InvalidSecurityGroupIDException"; - $fault: "server"; +export class InvalidSecurityGroupIDException extends __BaseException { + readonly name: "InvalidSecurityGroupIDException" = "InvalidSecurityGroupIDException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSecurityGroupIDException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSecurityGroupIDException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The Subnet ID provided in the Lambda function VPC configuration is invalid.

*/ -export interface InvalidSubnetIDException extends __SmithyException, $MetadataBearer { - name: "InvalidSubnetIDException"; - $fault: "server"; +export class InvalidSubnetIDException extends __BaseException { + readonly name: "InvalidSubnetIDException" = "InvalidSubnetIDException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnetIDException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnetIDException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda could not unzip the deployment package.

*/ -export interface InvalidZipFileException extends __SmithyException, $MetadataBearer { - name: "InvalidZipFileException"; - $fault: "server"; +export class InvalidZipFileException extends __BaseException { + readonly name: "InvalidZipFileException" = "InvalidZipFileException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidZipFileException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InvalidZipFileException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } export enum InvocationType { @@ -3404,94 +3719,189 @@ export namespace InvocationResponse { *

Lambda was unable to decrypt the environment variables because KMS access was denied. Check the Lambda * function's KMS permissions.

*/ -export interface KMSAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "KMSAccessDeniedException"; - $fault: "server"; +export class KMSAccessDeniedException extends __BaseException { + readonly name: "KMSAccessDeniedException" = "KMSAccessDeniedException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSAccessDeniedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, KMSAccessDeniedException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda was unable to decrypt the environment variables because the KMS key used is disabled. Check the Lambda * function's KMS key settings.

*/ -export interface KMSDisabledException extends __SmithyException, $MetadataBearer { - name: "KMSDisabledException"; - $fault: "server"; +export class KMSDisabledException extends __BaseException { + readonly name: "KMSDisabledException" = "KMSDisabledException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSDisabledException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, KMSDisabledException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda was unable to decrypt the environment variables because the KMS key used is in an invalid state for * Decrypt. Check the function's KMS key settings.

*/ -export interface KMSInvalidStateException extends __SmithyException, $MetadataBearer { - name: "KMSInvalidStateException"; - $fault: "server"; +export class KMSInvalidStateException extends __BaseException { + readonly name: "KMSInvalidStateException" = "KMSInvalidStateException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInvalidStateException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, KMSInvalidStateException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

Lambda was unable to decrypt the environment variables because the KMS key was not found. Check the function's * KMS key settings.

*/ -export interface KMSNotFoundException extends __SmithyException, $MetadataBearer { - name: "KMSNotFoundException"; - $fault: "server"; +export class KMSNotFoundException extends __BaseException { + readonly name: "KMSNotFoundException" = "KMSNotFoundException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSNotFoundException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, KMSNotFoundException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The request payload exceeded the Invoke request body JSON input limit. For more information, see * Limits.

*/ -export interface RequestTooLargeException extends __SmithyException, $MetadataBearer { - name: "RequestTooLargeException"; - $fault: "client"; +export class RequestTooLargeException extends __BaseException { + readonly name: "RequestTooLargeException" = "RequestTooLargeException"; + readonly $fault: "client" = "client"; Type?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestTooLargeException.prototype); + this.Type = opts.Type; + } } /** *

The function is inactive and its VPC connection is no longer available. Wait for the VPC connection to * reestablish and try again.

*/ -export interface ResourceNotReadyException extends __SmithyException, $MetadataBearer { - name: "ResourceNotReadyException"; - $fault: "server"; +export class ResourceNotReadyException extends __BaseException { + readonly name: "ResourceNotReadyException" = "ResourceNotReadyException"; + readonly $fault: "server" = "server"; /** *

The exception type.

*/ Type?: string; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotReadyException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotReadyException.prototype); + this.Type = opts.Type; + } } /** *

Lambda was not able to set up VPC access for the Lambda function because one or more configured subnets * has no available IP addresses.

*/ -export interface SubnetIPAddressLimitReachedException extends __SmithyException, $MetadataBearer { - name: "SubnetIPAddressLimitReachedException"; - $fault: "server"; +export class SubnetIPAddressLimitReachedException extends __BaseException { + readonly name: "SubnetIPAddressLimitReachedException" = "SubnetIPAddressLimitReachedException"; + readonly $fault: "server" = "server"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetIPAddressLimitReachedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, SubnetIPAddressLimitReachedException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } /** *

The content type of the Invoke request body is not JSON.

*/ -export interface UnsupportedMediaTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedMediaTypeException"; - $fault: "client"; +export class UnsupportedMediaTypeException extends __BaseException { + readonly name: "UnsupportedMediaTypeException" = "UnsupportedMediaTypeException"; + readonly $fault: "client" = "client"; Type?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedMediaTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedMediaTypeException.prototype); + this.Type = opts.Type; + } } export interface InvokeAsyncRequest { diff --git a/clients/client-lambda/src/protocols/Aws_restJson1.ts b/clients/client-lambda/src/protocols/Aws_restJson1.ts index 48b4fd173e1ea..0fd496da1ce5d 100644 --- a/clients/client-lambda/src/protocols/Aws_restJson1.ts +++ b/clients/client-lambda/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -180,6 +179,7 @@ import { UpdateFunctionEventInvokeConfigCommandInput, UpdateFunctionEventInvokeConfigCommandOutput, } from "../commands/UpdateFunctionEventInvokeConfigCommand"; +import { LambdaServiceException as __BaseException } from "../models/LambdaServiceException"; import { AccountLimit, AccountUsage, @@ -2497,81 +2497,40 @@ const deserializeAws_restJson1AddLayerVersionPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PolicyLengthExceededException": case "com.amazonaws.lambda#PolicyLengthExceededException": - response = { - ...(await deserializeAws_restJson1PolicyLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PolicyLengthExceededExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddPermissionCommand = async ( @@ -2600,81 +2559,40 @@ const deserializeAws_restJson1AddPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PolicyLengthExceededException": case "com.amazonaws.lambda#PolicyLengthExceededException": - response = { - ...(await deserializeAws_restJson1PolicyLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PolicyLengthExceededExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAliasCommand = async ( @@ -2723,65 +2641,34 @@ const deserializeAws_restJson1CreateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCodeSigningConfigCommand = async ( @@ -2810,41 +2697,25 @@ const deserializeAws_restJson1CreateCodeSigningConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEventSourceMappingCommand = async ( @@ -2972,65 +2843,34 @@ const deserializeAws_restJson1CreateEventSourceMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFunctionCommand = async ( @@ -3183,97 +3023,46 @@ const deserializeAws_restJson1CreateFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeSigningConfigNotFoundException": case "com.amazonaws.lambda#CodeSigningConfigNotFoundException": - response = { - ...(await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context); case "CodeStorageExceededException": case "com.amazonaws.lambda#CodeStorageExceededException": - response = { - ...(await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context); case "CodeVerificationFailedException": case "com.amazonaws.lambda#CodeVerificationFailedException": - response = { - ...(await deserializeAws_restJson1CodeVerificationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeVerificationFailedExceptionResponse(parsedOutput, context); case "InvalidCodeSignatureException": case "com.amazonaws.lambda#InvalidCodeSignatureException": - response = { - ...(await deserializeAws_restJson1InvalidCodeSignatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCodeSignatureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAliasCommand = async ( @@ -3298,57 +3087,31 @@ const deserializeAws_restJson1DeleteAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCodeSigningConfigCommand = async ( @@ -3373,57 +3136,31 @@ const deserializeAws_restJson1DeleteCodeSigningConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEventSourceMappingCommand = async ( @@ -3551,65 +3288,34 @@ const deserializeAws_restJson1DeleteEventSourceMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lambda#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFunctionCommand = async ( @@ -3634,65 +3340,34 @@ const deserializeAws_restJson1DeleteFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFunctionCodeSigningConfigCommand = async ( @@ -3717,73 +3392,37 @@ const deserializeAws_restJson1DeleteFunctionCodeSigningConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeSigningConfigNotFoundException": case "com.amazonaws.lambda#CodeSigningConfigNotFoundException": - response = { - ...(await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFunctionConcurrencyCommand = async ( @@ -3808,65 +3447,34 @@ const deserializeAws_restJson1DeleteFunctionConcurrencyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFunctionEventInvokeConfigCommand = async ( @@ -3891,65 +3499,34 @@ const deserializeAws_restJson1DeleteFunctionEventInvokeConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLayerVersionCommand = async ( @@ -3974,41 +3551,25 @@ const deserializeAws_restJson1DeleteLayerVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProvisionedConcurrencyConfigCommand = async ( @@ -4033,65 +3594,34 @@ const deserializeAws_restJson1DeleteProvisionedConcurrencyConfigCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountSettingsCommand = async ( @@ -4124,41 +3654,25 @@ const deserializeAws_restJson1GetAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAliasCommand = async ( @@ -4207,57 +3721,31 @@ const deserializeAws_restJson1GetAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCodeSigningConfigCommand = async ( @@ -4286,49 +3774,28 @@ const deserializeAws_restJson1GetCodeSigningConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEventSourceMappingCommand = async ( @@ -4456,57 +3923,31 @@ const deserializeAws_restJson1GetEventSourceMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionCommand = async ( @@ -4547,57 +3988,31 @@ const deserializeAws_restJson1GetFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionCodeSigningConfigCommand = async ( @@ -4630,57 +4045,31 @@ const deserializeAws_restJson1GetFunctionCodeSigningConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionConcurrencyCommand = async ( @@ -4709,57 +4098,31 @@ const deserializeAws_restJson1GetFunctionConcurrencyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionConfigurationCommand = async ( @@ -4912,57 +4275,31 @@ const deserializeAws_restJson1GetFunctionConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFunctionEventInvokeConfigCommand = async ( @@ -5007,57 +4344,31 @@ const deserializeAws_restJson1GetFunctionEventInvokeConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLayerVersionCommand = async ( @@ -5121,57 +4432,31 @@ const deserializeAws_restJson1GetLayerVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLayerVersionByArnCommand = async ( @@ -5235,57 +4520,31 @@ const deserializeAws_restJson1GetLayerVersionByArnCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLayerVersionPolicyCommand = async ( @@ -5318,57 +4577,31 @@ const deserializeAws_restJson1GetLayerVersionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPolicyCommand = async ( @@ -5401,57 +4634,31 @@ const deserializeAws_restJson1GetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProvisionedConcurrencyConfigCommand = async ( @@ -5509,65 +4716,34 @@ const deserializeAws_restJson1GetProvisionedConcurrencyConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ProvisionedConcurrencyConfigNotFoundException": case "com.amazonaws.lambda#ProvisionedConcurrencyConfigNotFoundException": - response = { - ...(await deserializeAws_restJson1ProvisionedConcurrencyConfigNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProvisionedConcurrencyConfigNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InvokeCommand = async ( @@ -5610,233 +4786,97 @@ const deserializeAws_restJson1InvokeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EC2AccessDeniedException": case "com.amazonaws.lambda#EC2AccessDeniedException": - response = { - ...(await deserializeAws_restJson1EC2AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EC2AccessDeniedExceptionResponse(parsedOutput, context); case "EC2ThrottledException": case "com.amazonaws.lambda#EC2ThrottledException": - response = { - ...(await deserializeAws_restJson1EC2ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EC2ThrottledExceptionResponse(parsedOutput, context); case "EC2UnexpectedException": case "com.amazonaws.lambda#EC2UnexpectedException": - response = { - ...(await deserializeAws_restJson1EC2UnexpectedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EC2UnexpectedExceptionResponse(parsedOutput, context); case "EFSIOException": case "com.amazonaws.lambda#EFSIOException": - response = { - ...(await deserializeAws_restJson1EFSIOExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EFSIOExceptionResponse(parsedOutput, context); case "EFSMountConnectivityException": case "com.amazonaws.lambda#EFSMountConnectivityException": - response = { - ...(await deserializeAws_restJson1EFSMountConnectivityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EFSMountConnectivityExceptionResponse(parsedOutput, context); case "EFSMountFailureException": case "com.amazonaws.lambda#EFSMountFailureException": - response = { - ...(await deserializeAws_restJson1EFSMountFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EFSMountFailureExceptionResponse(parsedOutput, context); case "EFSMountTimeoutException": case "com.amazonaws.lambda#EFSMountTimeoutException": - response = { - ...(await deserializeAws_restJson1EFSMountTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EFSMountTimeoutExceptionResponse(parsedOutput, context); case "ENILimitReachedException": case "com.amazonaws.lambda#ENILimitReachedException": - response = { - ...(await deserializeAws_restJson1ENILimitReachedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ENILimitReachedExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestContentException": case "com.amazonaws.lambda#InvalidRequestContentException": - response = { - ...(await deserializeAws_restJson1InvalidRequestContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestContentExceptionResponse(parsedOutput, context); case "InvalidRuntimeException": case "com.amazonaws.lambda#InvalidRuntimeException": - response = { - ...(await deserializeAws_restJson1InvalidRuntimeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuntimeExceptionResponse(parsedOutput, context); case "InvalidSecurityGroupIDException": case "com.amazonaws.lambda#InvalidSecurityGroupIDException": - response = { - ...(await deserializeAws_restJson1InvalidSecurityGroupIDExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSecurityGroupIDExceptionResponse(parsedOutput, context); case "InvalidSubnetIDException": case "com.amazonaws.lambda#InvalidSubnetIDException": - response = { - ...(await deserializeAws_restJson1InvalidSubnetIDExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSubnetIDExceptionResponse(parsedOutput, context); case "InvalidZipFileException": case "com.amazonaws.lambda#InvalidZipFileException": - response = { - ...(await deserializeAws_restJson1InvalidZipFileExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidZipFileExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.lambda#KMSAccessDeniedException": - response = { - ...(await deserializeAws_restJson1KMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1KMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.lambda#KMSDisabledException": - response = { - ...(await deserializeAws_restJson1KMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1KMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.lambda#KMSInvalidStateException": - response = { - ...(await deserializeAws_restJson1KMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1KMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.lambda#KMSNotFoundException": - response = { - ...(await deserializeAws_restJson1KMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1KMSNotFoundExceptionResponse(parsedOutput, context); case "RequestTooLargeException": case "com.amazonaws.lambda#RequestTooLargeException": - response = { - ...(await deserializeAws_restJson1RequestTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTooLargeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.lambda#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "SubnetIPAddressLimitReachedException": case "com.amazonaws.lambda#SubnetIPAddressLimitReachedException": - response = { - ...(await deserializeAws_restJson1SubnetIPAddressLimitReachedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SubnetIPAddressLimitReachedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedMediaTypeException": case "com.amazonaws.lambda#UnsupportedMediaTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InvokeAsyncCommand = async ( @@ -5865,65 +4905,34 @@ const deserializeAws_restJson1InvokeAsyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestContentException": case "com.amazonaws.lambda#InvalidRequestContentException": - response = { - ...(await deserializeAws_restJson1InvalidRequestContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestContentExceptionResponse(parsedOutput, context); case "InvalidRuntimeException": case "com.amazonaws.lambda#InvalidRuntimeException": - response = { - ...(await deserializeAws_restJson1InvalidRuntimeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRuntimeExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAliasesCommand = async ( @@ -5956,57 +4965,31 @@ const deserializeAws_restJson1ListAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCodeSigningConfigsCommand = async ( @@ -6039,41 +5022,25 @@ const deserializeAws_restJson1ListCodeSigningConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEventSourceMappingsCommand = async ( @@ -6106,57 +5073,31 @@ const deserializeAws_restJson1ListEventSourceMappingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFunctionEventInvokeConfigsCommand = async ( @@ -6192,57 +5133,31 @@ const deserializeAws_restJson1ListFunctionEventInvokeConfigsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFunctionsCommand = async ( @@ -6275,49 +5190,28 @@ const deserializeAws_restJson1ListFunctionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFunctionsByCodeSigningConfigCommand = async ( @@ -6350,49 +5244,28 @@ const deserializeAws_restJson1ListFunctionsByCodeSigningConfigCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLayersCommand = async ( @@ -6425,49 +5298,28 @@ const deserializeAws_restJson1ListLayersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLayerVersionsCommand = async ( @@ -6500,57 +5352,31 @@ const deserializeAws_restJson1ListLayerVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProvisionedConcurrencyConfigsCommand = async ( @@ -6586,57 +5412,31 @@ const deserializeAws_restJson1ListProvisionedConcurrencyConfigsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsCommand = async ( @@ -6665,57 +5465,31 @@ const deserializeAws_restJson1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVersionsByFunctionCommand = async ( @@ -6748,57 +5522,31 @@ const deserializeAws_restJson1ListVersionsByFunctionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishLayerVersionCommand = async ( @@ -6862,65 +5610,34 @@ const deserializeAws_restJson1PublishLayerVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeStorageExceededException": case "com.amazonaws.lambda#CodeStorageExceededException": - response = { - ...(await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishVersionCommand = async ( @@ -7073,81 +5790,40 @@ const deserializeAws_restJson1PublishVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeStorageExceededException": case "com.amazonaws.lambda#CodeStorageExceededException": - response = { - ...(await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFunctionCodeSigningConfigCommand = async ( @@ -7180,73 +5856,37 @@ const deserializeAws_restJson1PutFunctionCodeSigningConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeSigningConfigNotFoundException": case "com.amazonaws.lambda#CodeSigningConfigNotFoundException": - response = { - ...(await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFunctionConcurrencyCommand = async ( @@ -7275,65 +5915,34 @@ const deserializeAws_restJson1PutFunctionConcurrencyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFunctionEventInvokeConfigCommand = async ( @@ -7378,65 +5987,34 @@ const deserializeAws_restJson1PutFunctionEventInvokeConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutProvisionedConcurrencyConfigCommand = async ( @@ -7494,65 +6072,34 @@ const deserializeAws_restJson1PutProvisionedConcurrencyConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveLayerVersionPermissionCommand = async ( @@ -7577,65 +6124,34 @@ const deserializeAws_restJson1RemoveLayerVersionPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemovePermissionCommand = async ( @@ -7660,65 +6176,34 @@ const deserializeAws_restJson1RemovePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -7743,65 +6228,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -7826,65 +6280,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAliasCommand = async ( @@ -7933,73 +6356,37 @@ const deserializeAws_restJson1UpdateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCodeSigningConfigCommand = async ( @@ -8028,49 +6415,28 @@ const deserializeAws_restJson1UpdateCodeSigningConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEventSourceMappingCommand = async ( @@ -8198,73 +6564,37 @@ const deserializeAws_restJson1UpdateEventSourceMappingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lambda#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFunctionCodeCommand = async ( @@ -8417,105 +6747,49 @@ const deserializeAws_restJson1UpdateFunctionCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeSigningConfigNotFoundException": case "com.amazonaws.lambda#CodeSigningConfigNotFoundException": - response = { - ...(await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context); case "CodeStorageExceededException": case "com.amazonaws.lambda#CodeStorageExceededException": - response = { - ...(await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeStorageExceededExceptionResponse(parsedOutput, context); case "CodeVerificationFailedException": case "com.amazonaws.lambda#CodeVerificationFailedException": - response = { - ...(await deserializeAws_restJson1CodeVerificationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeVerificationFailedExceptionResponse(parsedOutput, context); case "InvalidCodeSignatureException": case "com.amazonaws.lambda#InvalidCodeSignatureException": - response = { - ...(await deserializeAws_restJson1InvalidCodeSignatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCodeSignatureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFunctionConfigurationCommand = async ( @@ -8668,97 +6942,46 @@ const deserializeAws_restJson1UpdateFunctionConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CodeSigningConfigNotFoundException": case "com.amazonaws.lambda#CodeSigningConfigNotFoundException": - response = { - ...(await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse(parsedOutput, context); case "CodeVerificationFailedException": case "com.amazonaws.lambda#CodeVerificationFailedException": - response = { - ...(await deserializeAws_restJson1CodeVerificationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CodeVerificationFailedExceptionResponse(parsedOutput, context); case "InvalidCodeSignatureException": case "com.amazonaws.lambda#InvalidCodeSignatureException": - response = { - ...(await deserializeAws_restJson1InvalidCodeSignatureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCodeSignatureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lambda#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFunctionEventInvokeConfigCommand = async ( @@ -8803,78 +7026,41 @@ const deserializeAws_restJson1UpdateFunctionEventInvokeConfigCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.lambda#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.lambda#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lambda#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lambda#ServiceException": - response = { - ...(await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lambda#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CodeSigningConfigNotFoundException = { - name: "CodeSigningConfigNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -8882,20 +7068,18 @@ const deserializeAws_restJson1CodeSigningConfigNotFoundExceptionResponse = async if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new CodeSigningConfigNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CodeStorageExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CodeStorageExceededException = { - name: "CodeStorageExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -8903,20 +7087,18 @@ const deserializeAws_restJson1CodeStorageExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new CodeStorageExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CodeVerificationFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CodeVerificationFailedException = { - name: "CodeVerificationFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -8924,20 +7106,18 @@ const deserializeAws_restJson1CodeVerificationFailedExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new CodeVerificationFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EC2AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EC2AccessDeniedException = { - name: "EC2AccessDeniedException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -8945,20 +7125,18 @@ const deserializeAws_restJson1EC2AccessDeniedExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EC2AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EC2ThrottledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EC2ThrottledException = { - name: "EC2ThrottledException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -8966,21 +7144,18 @@ const deserializeAws_restJson1EC2ThrottledExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EC2ThrottledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EC2UnexpectedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EC2UnexpectedException = { - name: "EC2UnexpectedException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - EC2ErrorCode: undefined, - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.EC2ErrorCode !== undefined && data.EC2ErrorCode !== null) { contents.EC2ErrorCode = __expectString(data.EC2ErrorCode); @@ -8991,20 +7166,18 @@ const deserializeAws_restJson1EC2UnexpectedExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EC2UnexpectedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EFSIOExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EFSIOException = { - name: "EFSIOException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9012,20 +7185,18 @@ const deserializeAws_restJson1EFSIOExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EFSIOException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EFSMountConnectivityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EFSMountConnectivityException = { - name: "EFSMountConnectivityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9033,20 +7204,18 @@ const deserializeAws_restJson1EFSMountConnectivityExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EFSMountConnectivityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EFSMountFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EFSMountFailureException = { - name: "EFSMountFailureException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9054,20 +7223,18 @@ const deserializeAws_restJson1EFSMountFailureExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EFSMountFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EFSMountTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EFSMountTimeoutException = { - name: "EFSMountTimeoutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9075,20 +7242,18 @@ const deserializeAws_restJson1EFSMountTimeoutExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new EFSMountTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ENILimitReachedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ENILimitReachedException = { - name: "ENILimitReachedException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9096,20 +7261,18 @@ const deserializeAws_restJson1ENILimitReachedExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ENILimitReachedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidCodeSignatureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidCodeSignatureException = { - name: "InvalidCodeSignatureException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9117,20 +7280,18 @@ const deserializeAws_restJson1InvalidCodeSignatureExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidCodeSignatureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9138,20 +7299,18 @@ const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestContentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestContentException = { - name: "InvalidRequestContentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9159,20 +7318,18 @@ const deserializeAws_restJson1InvalidRequestContentExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestContentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRuntimeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRuntimeException = { - name: "InvalidRuntimeException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9180,20 +7337,18 @@ const deserializeAws_restJson1InvalidRuntimeExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidRuntimeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidSecurityGroupIDExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSecurityGroupIDException = { - name: "InvalidSecurityGroupIDException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9201,20 +7356,18 @@ const deserializeAws_restJson1InvalidSecurityGroupIDExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidSecurityGroupIDException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidSubnetIDExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSubnetIDException = { - name: "InvalidSubnetIDException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9222,20 +7375,18 @@ const deserializeAws_restJson1InvalidSubnetIDExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidSubnetIDException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidZipFileExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidZipFileException = { - name: "InvalidZipFileException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9243,20 +7394,18 @@ const deserializeAws_restJson1InvalidZipFileExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new InvalidZipFileException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1KMSAccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KMSAccessDeniedException = { - name: "KMSAccessDeniedException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9264,20 +7413,18 @@ const deserializeAws_restJson1KMSAccessDeniedExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new KMSAccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1KMSDisabledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KMSDisabledException = { - name: "KMSDisabledException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9285,20 +7432,18 @@ const deserializeAws_restJson1KMSDisabledExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new KMSDisabledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1KMSInvalidStateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KMSInvalidStateException = { - name: "KMSInvalidStateException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9306,20 +7451,18 @@ const deserializeAws_restJson1KMSInvalidStateExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new KMSInvalidStateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1KMSNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KMSNotFoundException = { - name: "KMSNotFoundException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9327,20 +7470,18 @@ const deserializeAws_restJson1KMSNotFoundExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new KMSNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PolicyLengthExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PolicyLengthExceededException = { - name: "PolicyLengthExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9348,20 +7489,18 @@ const deserializeAws_restJson1PolicyLengthExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new PolicyLengthExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailedException = { - name: "PreconditionFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9369,20 +7508,18 @@ const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new PreconditionFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ProvisionedConcurrencyConfigNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ProvisionedConcurrencyConfigNotFoundException = { - name: "ProvisionedConcurrencyConfigNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9390,20 +7527,18 @@ const deserializeAws_restJson1ProvisionedConcurrencyConfigNotFoundExceptionRespo if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ProvisionedConcurrencyConfigNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestTooLargeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestTooLargeException = { - name: "RequestTooLargeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9411,20 +7546,18 @@ const deserializeAws_restJson1RequestTooLargeExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new RequestTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9432,20 +7565,18 @@ const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9453,20 +7584,18 @@ const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9474,20 +7603,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotReadyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotReadyException = { - name: "ResourceNotReadyException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9495,20 +7622,18 @@ const deserializeAws_restJson1ResourceNotReadyExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotReadyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9516,20 +7641,18 @@ const deserializeAws_restJson1ServiceExceptionResponse = async ( if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new ServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SubnetIPAddressLimitReachedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SubnetIPAddressLimitReachedException = { - name: "SubnetIPAddressLimitReachedException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Type: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -9537,22 +7660,18 @@ const deserializeAws_restJson1SubnetIPAddressLimitReachedExceptionResponse = asy if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); } - return contents; + const exception = new SubnetIPAddressLimitReachedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Reason: undefined, - Type: undefined, - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -9566,20 +7685,18 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedMediaTypeException = { - name: "UnsupportedMediaTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Type: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Type !== undefined && data.Type !== null) { contents.Type = __expectString(data.Type); @@ -9587,7 +7704,11 @@ const deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedMediaTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdditionalVersionWeights = ( diff --git a/clients/client-lex-model-building-service/src/index.ts b/clients/client-lex-model-building-service/src/index.ts index 9edc784197cc1..6837436eae981 100644 --- a/clients/client-lex-model-building-service/src/index.ts +++ b/clients/client-lex-model-building-service/src/index.ts @@ -3,3 +3,4 @@ export * from "./LexModelBuildingServiceClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { LexModelBuildingServiceServiceException } from "./models/LexModelBuildingServiceServiceException"; diff --git a/clients/client-lex-model-building-service/src/models/LexModelBuildingServiceServiceException.ts b/clients/client-lex-model-building-service/src/models/LexModelBuildingServiceServiceException.ts new file mode 100644 index 0000000000000..adb268f7941a7 --- /dev/null +++ b/clients/client-lex-model-building-service/src/models/LexModelBuildingServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LexModelBuildingService service. + */ +export class LexModelBuildingServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LexModelBuildingServiceServiceException.prototype); + } +} diff --git a/clients/client-lex-model-building-service/src/models/models_0.ts b/clients/client-lex-model-building-service/src/models/models_0.ts index 5c48931007c03..8c3d79c976cb3 100644 --- a/clients/client-lex-model-building-service/src/models/models_0.ts +++ b/clients/client-lex-model-building-service/src/models/models_0.ts @@ -1,14 +1,26 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LexModelBuildingServiceServiceException as __BaseException } from "./LexModelBuildingServiceServiceException"; /** *

Your IAM user or role does not have permission to call the Amazon Lex V2 APIs * required to migrate your bot.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -16,20 +28,40 @@ export interface AccessDeniedException extends __SmithyException, $MetadataBeare * a required field is missing. Check the field values, and try * again.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** *

There was a conflict processing the request. Try your request * again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface CreateBotVersionRequest { @@ -349,30 +381,61 @@ export namespace CreateBotVersionResponse { /** *

An internal Amazon Lex error occurred. Try your request again.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

The request exceeded a limit. Try your request again.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; retryAfterSeconds?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The resource specified in the request was not found. Check the * resource and try again.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** @@ -380,10 +443,20 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { * not match the checksum in the request. Check the resource's checksum and * try again.

*/ -export interface PreconditionFailedException extends __SmithyException, $MetadataBearer { - name: "PreconditionFailedException"; - $fault: "client"; - message?: string; +export class PreconditionFailedException extends __BaseException { + readonly name: "PreconditionFailedException" = "PreconditionFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailedException.prototype); + } } export interface CreateIntentVersionRequest { @@ -1165,9 +1238,9 @@ export enum ReferenceType { * string } } *

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; referenceType?: ReferenceType | string; /** *

Describes the resource that refers to the resource that you are @@ -1175,6 +1248,19 @@ export interface ResourceInUseException extends __SmithyException, $MetadataBear * ResourceInUseException exception.

*/ exampleReference?: ResourceReference; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.referenceType = opts.referenceType; + this.exampleReference = opts.exampleReference; + } } export interface DeleteBotAliasRequest { diff --git a/clients/client-lex-model-building-service/src/protocols/Aws_restJson1.ts b/clients/client-lex-model-building-service/src/protocols/Aws_restJson1.ts index f5ae2c8e3ef1b..a04358a5c8e6e 100644 --- a/clients/client-lex-model-building-service/src/protocols/Aws_restJson1.ts +++ b/clients/client-lex-model-building-service/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateBotVersionCommandInput, CreateBotVersionCommandOutput } from "../commands/CreateBotVersionCommand"; @@ -91,6 +90,7 @@ import { StartImportCommandInput, StartImportCommandOutput } from "../commands/S import { StartMigrationCommandInput, StartMigrationCommandOutput } from "../commands/StartMigrationCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { LexModelBuildingServiceServiceException as __BaseException } from "../models/LexModelBuildingServiceServiceException"; import { AccessDeniedException, BadRequestException, @@ -1723,73 +1723,37 @@ const deserializeAws_restJson1CreateBotVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIntentVersionCommand = async ( @@ -1886,73 +1850,37 @@ const deserializeAws_restJson1CreateIntentVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSlotTypeVersionCommand = async ( @@ -2020,73 +1948,37 @@ const deserializeAws_restJson1CreateSlotTypeVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotCommand = async ( @@ -2111,73 +2003,37 @@ const deserializeAws_restJson1DeleteBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotAliasCommand = async ( @@ -2202,73 +2058,37 @@ const deserializeAws_restJson1DeleteBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotChannelAssociationCommand = async ( @@ -2293,65 +2113,34 @@ const deserializeAws_restJson1DeleteBotChannelAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotVersionCommand = async ( @@ -2376,73 +2165,37 @@ const deserializeAws_restJson1DeleteBotVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntentCommand = async ( @@ -2467,73 +2220,37 @@ const deserializeAws_restJson1DeleteIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntentVersionCommand = async ( @@ -2558,73 +2275,37 @@ const deserializeAws_restJson1DeleteIntentVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSlotTypeCommand = async ( @@ -2649,73 +2330,37 @@ const deserializeAws_restJson1DeleteSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSlotTypeVersionCommand = async ( @@ -2740,73 +2385,37 @@ const deserializeAws_restJson1DeleteSlotTypeVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.lexmodelbuildingservice#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUtterancesCommand = async ( @@ -2831,57 +2440,31 @@ const deserializeAws_restJson1DeleteUtterancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotCommand = async ( @@ -2978,57 +2561,31 @@ const deserializeAws_restJson1GetBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotAliasCommand = async ( @@ -3085,57 +2642,31 @@ const deserializeAws_restJson1GetBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotAliasesCommand = async ( @@ -3168,49 +2699,28 @@ const deserializeAws_restJson1GetBotAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotChannelAssociationCommand = async ( @@ -3271,57 +2781,31 @@ const deserializeAws_restJson1GetBotChannelAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotChannelAssociationsCommand = async ( @@ -3357,49 +2841,28 @@ const deserializeAws_restJson1GetBotChannelAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotsCommand = async ( @@ -3432,57 +2895,31 @@ const deserializeAws_restJson1GetBotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBotVersionsCommand = async ( @@ -3515,57 +2952,31 @@ const deserializeAws_restJson1GetBotVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBuiltinIntentCommand = async ( @@ -3602,57 +3013,31 @@ const deserializeAws_restJson1GetBuiltinIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBuiltinIntentsCommand = async ( @@ -3685,49 +3070,28 @@ const deserializeAws_restJson1GetBuiltinIntentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBuiltinSlotTypesCommand = async ( @@ -3760,49 +3124,28 @@ const deserializeAws_restJson1GetBuiltinSlotTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExportCommand = async ( @@ -3855,57 +3198,31 @@ const deserializeAws_restJson1GetExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImportCommand = async ( @@ -3958,57 +3275,31 @@ const deserializeAws_restJson1GetImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntentCommand = async ( @@ -4105,57 +3396,31 @@ const deserializeAws_restJson1GetIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntentsCommand = async ( @@ -4188,57 +3453,31 @@ const deserializeAws_restJson1GetIntentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIntentVersionsCommand = async ( @@ -4271,57 +3510,31 @@ const deserializeAws_restJson1GetIntentVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMigrationCommand = async ( @@ -4386,57 +3599,31 @@ const deserializeAws_restJson1GetMigrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMigrationsCommand = async ( @@ -4469,49 +3656,28 @@ const deserializeAws_restJson1GetMigrationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSlotTypeCommand = async ( @@ -4579,57 +3745,31 @@ const deserializeAws_restJson1GetSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSlotTypesCommand = async ( @@ -4662,57 +3802,31 @@ const deserializeAws_restJson1GetSlotTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSlotTypeVersionsCommand = async ( @@ -4745,57 +3859,31 @@ const deserializeAws_restJson1GetSlotTypeVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUtterancesViewCommand = async ( @@ -4828,49 +3916,28 @@ const deserializeAws_restJson1GetUtterancesViewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -4899,57 +3966,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutBotCommand = async ( @@ -5054,65 +4095,34 @@ const deserializeAws_restJson1PutBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutBotAliasCommand = async ( @@ -5173,65 +4183,34 @@ const deserializeAws_restJson1PutBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutIntentCommand = async ( @@ -5332,65 +4311,34 @@ const deserializeAws_restJson1PutIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSlotTypeCommand = async ( @@ -5462,65 +4410,34 @@ const deserializeAws_restJson1PutSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelbuildingservice#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartImportCommand = async ( @@ -5573,49 +4490,28 @@ const deserializeAws_restJson1StartImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMigrationCommand = async ( @@ -5672,65 +4568,34 @@ const deserializeAws_restJson1StartMigrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexmodelbuildingservice#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -5755,65 +4620,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -5838,146 +4672,105 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexmodelbuildingservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexmodelbuildingservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexmodelbuildingservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexmodelbuildingservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexmodelbuildingservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -5985,54 +4778,50 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailedException = { - name: "PreconditionFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new PreconditionFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - exampleReference: undefined, - referenceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.exampleReference !== undefined && data.exampleReference !== null) { contents.exampleReference = deserializeAws_restJson1ResourceReference(data.exampleReference, context); @@ -6040,7 +4829,11 @@ const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( if (data.referenceType !== undefined && data.referenceType !== null) { contents.referenceType = __expectString(data.referenceType); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CodeHook = (input: CodeHook, context: __SerdeContext): any => { diff --git a/clients/client-lex-models-v2/src/index.ts b/clients/client-lex-models-v2/src/index.ts index 1893f3d38280c..ab819f9c0b6ac 100644 --- a/clients/client-lex-models-v2/src/index.ts +++ b/clients/client-lex-models-v2/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { LexModelsV2ServiceException } from "./models/LexModelsV2ServiceException"; diff --git a/clients/client-lex-models-v2/src/models/LexModelsV2ServiceException.ts b/clients/client-lex-models-v2/src/models/LexModelsV2ServiceException.ts new file mode 100644 index 0000000000000..8e0fd8dc56b53 --- /dev/null +++ b/clients/client-lex-models-v2/src/models/LexModelsV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LexModelsV2 service. + */ +export class LexModelsV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LexModelsV2ServiceException.prototype); + } +} diff --git a/clients/client-lex-models-v2/src/models/models_0.ts b/clients/client-lex-models-v2/src/models/models_0.ts index 6afe47e07f5c0..2568e3f4a3003 100644 --- a/clients/client-lex-models-v2/src/models/models_0.ts +++ b/clients/client-lex-models-v2/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LexModelsV2ServiceException as __BaseException } from "./LexModelsV2ServiceException"; export enum AudioRecognitionStrategy { UseSlotValuesAsCustomVocabulary = "UseSlotValuesAsCustomVocabulary", @@ -1335,20 +1337,40 @@ export namespace BuildBotLocaleResponse { * the resource is in a conflicting state. For example, deleting a bot * that is in the CREATING state. Try your request again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** *

The service encountered an unexpected condition. Try your request * again.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** @@ -1356,40 +1378,81 @@ export interface InternalServerException extends __SmithyException, $MetadataBea * fields aren't valid. Check the fields in your request and try * again.

*/ -export interface PreconditionFailedException extends __SmithyException, $MetadataBearer { - name: "PreconditionFailedException"; - $fault: "client"; - message?: string; +export class PreconditionFailedException extends __BaseException { + readonly name: "PreconditionFailedException" = "PreconditionFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailedException.prototype); + } } /** *

You have reached a quota for your bot.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

Your request rate is too high. Reduce the frequency of * requests.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; retryAfterSeconds?: number; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

One of the input parameters in your request isn't valid. Check the * parameters and try your request again.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export enum BuiltInIntentSortAttribute { @@ -2276,10 +2339,20 @@ export namespace CreateExportResponse { *

You asked to describe a resource that doesn't exist. Check the * resource that you are requesting and try again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** diff --git a/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts b/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts index 625ed7aa84cea..8608f9ebc8812 100644 --- a/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts +++ b/clients/client-lex-models-v2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BuildBotLocaleCommandInput, BuildBotLocaleCommandOutput } from "../commands/BuildBotLocaleCommand"; @@ -137,6 +136,7 @@ import { } from "../commands/UpdateResourcePolicyCommand"; import { UpdateSlotCommandInput, UpdateSlotCommandOutput } from "../commands/UpdateSlotCommand"; import { UpdateSlotTypeCommandInput, UpdateSlotTypeCommandOutput } from "../commands/UpdateSlotTypeCommand"; +import { LexModelsV2ServiceException as __BaseException } from "../models/LexModelsV2ServiceException"; import { AdvancedRecognitionSetting, AggregatedUtterancesFilter, @@ -3432,73 +3432,37 @@ const deserializeAws_restJson1BuildBotLocaleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBotCommand = async ( @@ -3563,73 +3527,37 @@ const deserializeAws_restJson1CreateBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBotAliasCommand = async ( @@ -3707,73 +3635,37 @@ const deserializeAws_restJson1CreateBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBotLocaleCommand = async ( @@ -3834,73 +3726,37 @@ const deserializeAws_restJson1CreateBotLocaleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBotVersionCommand = async ( @@ -3952,73 +3808,37 @@ const deserializeAws_restJson1CreateBotVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateExportCommand = async ( @@ -4066,73 +3886,37 @@ const deserializeAws_restJson1CreateExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIntentCommand = async ( @@ -4227,73 +4011,37 @@ const deserializeAws_restJson1CreateIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourcePolicyCommand = async ( @@ -4326,73 +4074,37 @@ const deserializeAws_restJson1CreateResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourcePolicyStatementCommand = async ( @@ -4425,81 +4137,40 @@ const deserializeAws_restJson1CreateResourcePolicyStatementCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSlotCommand = async ( @@ -4575,73 +4246,37 @@ const deserializeAws_restJson1CreateSlotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSlotTypeCommand = async ( @@ -4713,73 +4348,37 @@ const deserializeAws_restJson1CreateSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUploadUrlCommand = async ( @@ -4812,65 +4411,34 @@ const deserializeAws_restJson1CreateUploadUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotCommand = async ( @@ -4903,73 +4471,37 @@ const deserializeAws_restJson1DeleteBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotAliasCommand = async ( @@ -5006,73 +4538,37 @@ const deserializeAws_restJson1DeleteBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotLocaleCommand = async ( @@ -5113,73 +4609,37 @@ const deserializeAws_restJson1DeleteBotLocaleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBotVersionCommand = async ( @@ -5216,73 +4676,37 @@ const deserializeAws_restJson1DeleteBotVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCustomVocabularyCommand = async ( @@ -5323,73 +4747,37 @@ const deserializeAws_restJson1DeleteCustomVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteExportCommand = async ( @@ -5422,65 +4810,34 @@ const deserializeAws_restJson1DeleteExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteImportCommand = async ( @@ -5513,65 +4870,34 @@ const deserializeAws_restJson1DeleteImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIntentCommand = async ( @@ -5596,73 +4922,37 @@ const deserializeAws_restJson1DeleteIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourcePolicyCommand = async ( @@ -5695,57 +4985,31 @@ const deserializeAws_restJson1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourcePolicyStatementCommand = async ( @@ -5778,57 +5042,31 @@ const deserializeAws_restJson1DeleteResourcePolicyStatementCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSlotCommand = async ( @@ -5853,73 +5091,37 @@ const deserializeAws_restJson1DeleteSlotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSlotTypeCommand = async ( @@ -5944,73 +5146,37 @@ const deserializeAws_restJson1DeleteSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUtterancesCommand = async ( @@ -6035,49 +5201,28 @@ const deserializeAws_restJson1DeleteUtterancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBotCommand = async ( @@ -6138,65 +5283,34 @@ const deserializeAws_restJson1DescribeBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBotAliasCommand = async ( @@ -6281,65 +5395,34 @@ const deserializeAws_restJson1DescribeBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBotLocaleCommand = async ( @@ -6433,65 +5516,34 @@ const deserializeAws_restJson1DescribeBotLocaleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBotRecommendationCommand = async ( @@ -6566,57 +5618,31 @@ const deserializeAws_restJson1DescribeBotRecommendationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBotVersionCommand = async ( @@ -6681,65 +5707,34 @@ const deserializeAws_restJson1DescribeBotVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCustomVocabularyMetadataCommand = async ( @@ -6788,65 +5783,34 @@ const deserializeAws_restJson1DescribeCustomVocabularyMetadataCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeExportCommand = async ( @@ -6906,57 +5870,31 @@ const deserializeAws_restJson1DescribeExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeImportCommand = async ( @@ -7020,57 +5958,31 @@ const deserializeAws_restJson1DescribeImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIntentCommand = async ( @@ -7173,65 +6085,34 @@ const deserializeAws_restJson1DescribeIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeResourcePolicyCommand = async ( @@ -7268,49 +6149,28 @@ const deserializeAws_restJson1DescribeResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSlotCommand = async ( @@ -7390,65 +6250,34 @@ const deserializeAws_restJson1DescribeSlotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSlotTypeCommand = async ( @@ -7524,65 +6353,34 @@ const deserializeAws_restJson1DescribeSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAggregatedUtterancesCommand = async ( @@ -7659,57 +6457,31 @@ const deserializeAws_restJson1ListAggregatedUtterancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotAliasesCommand = async ( @@ -7746,57 +6518,31 @@ const deserializeAws_restJson1ListBotAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotLocalesCommand = async ( @@ -7837,57 +6583,31 @@ const deserializeAws_restJson1ListBotLocalesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotRecommendationsCommand = async ( @@ -7935,57 +6655,31 @@ const deserializeAws_restJson1ListBotRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotsCommand = async ( @@ -8018,57 +6712,31 @@ const deserializeAws_restJson1ListBotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBotVersionsCommand = async ( @@ -8105,57 +6773,31 @@ const deserializeAws_restJson1ListBotVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBuiltInIntentsCommand = async ( @@ -8195,57 +6837,31 @@ const deserializeAws_restJson1ListBuiltInIntentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBuiltInSlotTypesCommand = async ( @@ -8285,57 +6901,31 @@ const deserializeAws_restJson1ListBuiltInSlotTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListExportsCommand = async ( @@ -8380,49 +6970,28 @@ const deserializeAws_restJson1ListExportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImportsCommand = async ( @@ -8467,49 +7036,28 @@ const deserializeAws_restJson1ListImportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIntentsCommand = async ( @@ -8554,57 +7102,31 @@ const deserializeAws_restJson1ListIntentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecommendedIntentsCommand = async ( @@ -8653,65 +7175,34 @@ const deserializeAws_restJson1ListRecommendedIntentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSlotsCommand = async ( @@ -8760,57 +7251,31 @@ const deserializeAws_restJson1ListSlotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSlotTypesCommand = async ( @@ -8855,57 +7320,31 @@ const deserializeAws_restJson1ListSlotTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -8934,57 +7373,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchAssociatedTranscriptsCommand = async ( @@ -9040,65 +7453,34 @@ const deserializeAws_restJson1SearchAssociatedTranscriptsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartBotRecommendationCommand = async ( @@ -9158,81 +7540,40 @@ const deserializeAws_restJson1StartBotRecommendationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartImportCommand = async ( @@ -9280,73 +7621,37 @@ const deserializeAws_restJson1StartImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -9371,57 +7676,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -9446,57 +7725,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBotCommand = async ( @@ -9557,73 +7810,37 @@ const deserializeAws_restJson1UpdateBotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBotAliasCommand = async ( @@ -9701,73 +7918,37 @@ const deserializeAws_restJson1UpdateBotAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBotLocaleCommand = async ( @@ -9840,73 +8021,37 @@ const deserializeAws_restJson1UpdateBotLocaleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBotRecommendationCommand = async ( @@ -9970,81 +8115,40 @@ const deserializeAws_restJson1UpdateBotRecommendationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateExportCommand = async ( @@ -10096,73 +8200,37 @@ const deserializeAws_restJson1UpdateExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIntentCommand = async ( @@ -10265,73 +8333,37 @@ const deserializeAws_restJson1UpdateIntentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourcePolicyCommand = async ( @@ -10364,73 +8396,37 @@ const deserializeAws_restJson1UpdateResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexmodelsv2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSlotCommand = async ( @@ -10510,73 +8506,37 @@ const deserializeAws_restJson1UpdateSlotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSlotTypeCommand = async ( @@ -10652,171 +8612,124 @@ const deserializeAws_restJson1UpdateSlotTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.lexmodelsv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexmodelsv2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.lexmodelsv2#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexmodelsv2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexmodelsv2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailedException = { - name: "PreconditionFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new PreconditionFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -10824,24 +8737,27 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdvancedRecognitionSetting = ( diff --git a/clients/client-lex-runtime-service/src/index.ts b/clients/client-lex-runtime-service/src/index.ts index 37c9dce273a03..c1707214da223 100644 --- a/clients/client-lex-runtime-service/src/index.ts +++ b/clients/client-lex-runtime-service/src/index.ts @@ -2,3 +2,4 @@ export * from "./LexRuntimeService"; export * from "./LexRuntimeServiceClient"; export * from "./commands"; export * from "./models"; +export { LexRuntimeServiceServiceException } from "./models/LexRuntimeServiceServiceException"; diff --git a/clients/client-lex-runtime-service/src/models/LexRuntimeServiceServiceException.ts b/clients/client-lex-runtime-service/src/models/LexRuntimeServiceServiceException.ts new file mode 100644 index 0000000000000..6b332e8fd8ba2 --- /dev/null +++ b/clients/client-lex-runtime-service/src/models/LexRuntimeServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LexRuntimeService service. + */ +export class LexRuntimeServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LexRuntimeServiceServiceException.prototype); + } +} diff --git a/clients/client-lex-runtime-service/src/models/models_0.ts b/clients/client-lex-runtime-service/src/models/models_0.ts index bf2db75bfa35e..407873d89ba77 100644 --- a/clients/client-lex-runtime-service/src/models/models_0.ts +++ b/clients/client-lex-runtime-service/src/models/models_0.ts @@ -1,7 +1,13 @@ -import { LazyJsonString as __LazyJsonString, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, + SENSITIVE_STRING, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { LexRuntimeServiceServiceException as __BaseException } from "./LexRuntimeServiceServiceException"; + /** *

The length of time or number of turns that a context remains * active.

@@ -73,20 +79,40 @@ export namespace ActiveContext { * or the bot build failed, is still in progress, or contains unbuilt * changes.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** *

Two clients are using the same AWS account, Amazon Lex bot, and user * ID.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface DeleteSessionRequest { @@ -149,30 +175,61 @@ export namespace DeleteSessionResponse { /** *

Internal service error. Retry the call.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; - message?: string; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** *

Exceeded a limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; retryAfterSeconds?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The resource (such as the Amazon Lex bot or an alias) that is referred * to is not found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } export interface GetSessionRequest { @@ -546,10 +603,22 @@ export namespace GetSessionResponse { * services (Amazon Polly, AWS Lambda) failed with an internal service * error.

*/ -export interface BadGatewayException extends __SmithyException, $MetadataBearer { - name: "BadGatewayException"; - $fault: "server"; +export class BadGatewayException extends __BaseException { + readonly name: "BadGatewayException" = "BadGatewayException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadGatewayException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, BadGatewayException.prototype); + this.Message = opts.Message; + } } /** @@ -570,28 +639,62 @@ export interface BadGatewayException extends __SmithyException, $MetadataBearer * * */ -export interface DependencyFailedException extends __SmithyException, $MetadataBearer { - name: "DependencyFailedException"; - $fault: "client"; +export class DependencyFailedException extends __BaseException { + readonly name: "DependencyFailedException" = "DependencyFailedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DependencyFailedException.prototype); + this.Message = opts.Message; + } } /** *

This exception is not used.

*/ -export interface LoopDetectedException extends __SmithyException, $MetadataBearer { - name: "LoopDetectedException"; - $fault: "server"; +export class LoopDetectedException extends __BaseException { + readonly name: "LoopDetectedException" = "LoopDetectedException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LoopDetectedException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, LoopDetectedException.prototype); + this.Message = opts.Message; + } } /** *

The accept header in the request does not have a valid value.

*/ -export interface NotAcceptableException extends __SmithyException, $MetadataBearer { - name: "NotAcceptableException"; - $fault: "client"; - message?: string; +export class NotAcceptableException extends __BaseException { + readonly name: "NotAcceptableException" = "NotAcceptableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAcceptableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAcceptableException.prototype); + } } export interface PostContentRequest { @@ -1074,20 +1177,40 @@ export namespace PostContentResponse { /** *

The input speech is too long.

*/ -export interface RequestTimeoutException extends __SmithyException, $MetadataBearer { - name: "RequestTimeoutException"; - $fault: "client"; - message?: string; +export class RequestTimeoutException extends __BaseException { + readonly name: "RequestTimeoutException" = "RequestTimeoutException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestTimeoutException.prototype); + } } /** *

The Content-Type header (PostContent API) has an invalid * value.

*/ -export interface UnsupportedMediaTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedMediaTypeException"; - $fault: "client"; - message?: string; +export class UnsupportedMediaTypeException extends __BaseException { + readonly name: "UnsupportedMediaTypeException" = "UnsupportedMediaTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedMediaTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedMediaTypeException.prototype); + } } export interface PostTextRequest { diff --git a/clients/client-lex-runtime-service/src/protocols/Aws_restJson1.ts b/clients/client-lex-runtime-service/src/protocols/Aws_restJson1.ts index 73f510e016825..d6dad82bc932c 100644 --- a/clients/client-lex-runtime-service/src/protocols/Aws_restJson1.ts +++ b/clients/client-lex-runtime-service/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteSessionCommandInput, DeleteSessionCommandOutput } from "../commands/DeleteSessionCommand"; @@ -21,6 +20,7 @@ import { GetSessionCommandInput, GetSessionCommandOutput } from "../commands/Get import { PostContentCommandInput, PostContentCommandOutput } from "../commands/PostContentCommand"; import { PostTextCommandInput, PostTextCommandOutput } from "../commands/PostTextCommand"; import { PutSessionCommandInput, PutSessionCommandOutput } from "../commands/PutSessionCommand"; +import { LexRuntimeServiceServiceException as __BaseException } from "../models/LexRuntimeServiceServiceException"; import { ActiveContext, ActiveContextTimeToLive, @@ -386,65 +386,34 @@ const deserializeAws_restJson1DeleteSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexruntimeservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimeservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexruntimeservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexruntimeservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexruntimeservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSessionCommand = async ( @@ -489,57 +458,31 @@ const deserializeAws_restJson1GetSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.lexruntimeservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexruntimeservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexruntimeservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexruntimeservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PostContentCommand = async ( @@ -644,113 +587,52 @@ const deserializeAws_restJson1PostContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.lexruntimeservice#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.lexruntimeservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimeservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DependencyFailedException": case "com.amazonaws.lexruntimeservice#DependencyFailedException": - response = { - ...(await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexruntimeservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexruntimeservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LoopDetectedException": case "com.amazonaws.lexruntimeservice#LoopDetectedException": - response = { - ...(await deserializeAws_restJson1LoopDetectedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LoopDetectedExceptionResponse(parsedOutput, context); case "NotAcceptableException": case "com.amazonaws.lexruntimeservice#NotAcceptableException": - response = { - ...(await deserializeAws_restJson1NotAcceptableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAcceptableExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexruntimeservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "RequestTimeoutException": case "com.amazonaws.lexruntimeservice#RequestTimeoutException": - response = { - ...(await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestTimeoutExceptionResponse(parsedOutput, context); case "UnsupportedMediaTypeException": case "com.amazonaws.lexruntimeservice#UnsupportedMediaTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PostTextCommand = async ( @@ -831,89 +713,43 @@ const deserializeAws_restJson1PostTextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.lexruntimeservice#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.lexruntimeservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimeservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DependencyFailedException": case "com.amazonaws.lexruntimeservice#DependencyFailedException": - response = { - ...(await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexruntimeservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexruntimeservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "LoopDetectedException": case "com.amazonaws.lexruntimeservice#LoopDetectedException": - response = { - ...(await deserializeAws_restJson1LoopDetectedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LoopDetectedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexruntimeservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSessionCommand = async ( @@ -990,187 +826,130 @@ const deserializeAws_restJson1PutSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.lexruntimeservice#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.lexruntimeservice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimeservice#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DependencyFailedException": case "com.amazonaws.lexruntimeservice#DependencyFailedException": - response = { - ...(await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.lexruntimeservice#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.lexruntimeservice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotAcceptableException": case "com.amazonaws.lexruntimeservice#NotAcceptableException": - response = { - ...(await deserializeAws_restJson1NotAcceptableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotAcceptableExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lexruntimeservice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadGatewayExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadGatewayException = { - name: "BadGatewayException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadGatewayException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DependencyFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DependencyFailedException = { - name: "DependencyFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DependencyFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -1178,92 +957,91 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LoopDetectedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LoopDetectedException = { - name: "LoopDetectedException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LoopDetectedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotAcceptableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAcceptableException = { - name: "NotAcceptableException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotAcceptableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestTimeoutException = { - name: "RequestTimeoutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new RequestTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedMediaTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedMediaTypeException = { - name: "UnsupportedMediaTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedMediaTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ActiveContext = (input: ActiveContext, context: __SerdeContext): any => { diff --git a/clients/client-lex-runtime-v2/src/index.ts b/clients/client-lex-runtime-v2/src/index.ts index bc58bdf964387..61fddee5f4009 100644 --- a/clients/client-lex-runtime-v2/src/index.ts +++ b/clients/client-lex-runtime-v2/src/index.ts @@ -2,3 +2,4 @@ export * from "./LexRuntimeV2"; export * from "./LexRuntimeV2Client"; export * from "./commands"; export * from "./models"; +export { LexRuntimeV2ServiceException } from "./models/LexRuntimeV2ServiceException"; diff --git a/clients/client-lex-runtime-v2/src/models/LexRuntimeV2ServiceException.ts b/clients/client-lex-runtime-v2/src/models/LexRuntimeV2ServiceException.ts new file mode 100644 index 0000000000000..8f3b8771e19ec --- /dev/null +++ b/clients/client-lex-runtime-v2/src/models/LexRuntimeV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LexRuntimeV2 service. + */ +export class LexRuntimeV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LexRuntimeV2ServiceException.prototype); + } +} diff --git a/clients/client-lex-runtime-v2/src/models/models_0.ts b/clients/client-lex-runtime-v2/src/models/models_0.ts index a393d94b22517..e273e21d9de77 100644 --- a/clients/client-lex-runtime-v2/src/models/models_0.ts +++ b/clients/client-lex-runtime-v2/src/models/models_0.ts @@ -1,14 +1,26 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { LexRuntimeV2ServiceException as __BaseException } from "./LexRuntimeV2ServiceException"; + /** *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -165,10 +177,20 @@ export namespace AudioResponseEvent { /** *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface DeleteSessionRequest { @@ -238,37 +260,77 @@ export namespace DeleteSessionResponse { /** *

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface GetSessionRequest { @@ -725,19 +787,39 @@ export namespace RuntimeHints { /** *

*/ -export interface BadGatewayException extends __SmithyException, $MetadataBearer { - name: "BadGatewayException"; - $fault: "server"; - message: string | undefined; +export class BadGatewayException extends __BaseException { + readonly name: "BadGatewayException" = "BadGatewayException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadGatewayException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, BadGatewayException.prototype); + } } /** *

*/ -export interface DependencyFailedException extends __SmithyException, $MetadataBearer { - name: "DependencyFailedException"; - $fault: "client"; - message: string | undefined; +export class DependencyFailedException extends __BaseException { + readonly name: "DependencyFailedException" = "DependencyFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DependencyFailedException.prototype); + } } export interface PutSessionResponse { diff --git a/clients/client-lex-runtime-v2/src/protocols/Aws_restJson1.ts b/clients/client-lex-runtime-v2/src/protocols/Aws_restJson1.ts index cb9e5644bb733..548c98f4f72ff 100644 --- a/clients/client-lex-runtime-v2/src/protocols/Aws_restJson1.ts +++ b/clients/client-lex-runtime-v2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -11,10 +12,8 @@ import { Endpoint as __Endpoint, EventStreamSerdeContext as __EventStreamSerdeContext, Message as __Message, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteSessionCommandInput, DeleteSessionCommandOutput } from "../commands/DeleteSessionCommand"; @@ -23,6 +22,7 @@ import { PutSessionCommandInput, PutSessionCommandOutput } from "../commands/Put import { RecognizeTextCommandInput, RecognizeTextCommandOutput } from "../commands/RecognizeTextCommand"; import { RecognizeUtteranceCommandInput, RecognizeUtteranceCommandOutput } from "../commands/RecognizeUtteranceCommand"; import { StartConversationCommandInput, StartConversationCommandOutput } from "../commands/StartConversationCommand"; +import { LexRuntimeV2ServiceException as __BaseException } from "../models/LexRuntimeV2ServiceException"; import { AccessDeniedException, ActiveContext, @@ -492,73 +492,37 @@ const deserializeAws_restJson1DeleteSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexruntimev2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimev2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexruntimev2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexruntimev2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexruntimev2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexruntimev2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSessionCommand = async ( @@ -599,65 +563,34 @@ const deserializeAws_restJson1GetSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexruntimev2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexruntimev2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexruntimev2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexruntimev2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexruntimev2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSessionCommand = async ( @@ -704,89 +637,43 @@ const deserializeAws_restJson1PutSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexruntimev2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadGatewayException": case "com.amazonaws.lexruntimev2#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimev2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DependencyFailedException": case "com.amazonaws.lexruntimev2#DependencyFailedException": - response = { - ...(await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexruntimev2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexruntimev2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexruntimev2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexruntimev2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RecognizeTextCommand = async ( @@ -831,89 +718,43 @@ const deserializeAws_restJson1RecognizeTextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexruntimev2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadGatewayException": case "com.amazonaws.lexruntimev2#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimev2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DependencyFailedException": case "com.amazonaws.lexruntimev2#DependencyFailedException": - response = { - ...(await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexruntimev2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexruntimev2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexruntimev2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexruntimev2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RecognizeUtteranceCommand = async ( @@ -972,89 +813,43 @@ const deserializeAws_restJson1RecognizeUtteranceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexruntimev2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BadGatewayException": case "com.amazonaws.lexruntimev2#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lexruntimev2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "DependencyFailedException": case "com.amazonaws.lexruntimev2#DependencyFailedException": - response = { - ...(await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DependencyFailedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexruntimev2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lexruntimev2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexruntimev2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexruntimev2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartConversationCommand = async ( @@ -1095,57 +890,31 @@ const deserializeAws_restJson1StartConversationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lexruntimev2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lexruntimev2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lexruntimev2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lexruntimev2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const serializeAws_restJson1StartConversationRequestEventStream_event = ( @@ -1493,136 +1262,128 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadGatewayExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadGatewayException = { - name: "BadGatewayException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadGatewayException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DependencyFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DependencyFailedException = { - name: "DependencyFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DependencyFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ActiveContext = (input: ActiveContext, context: __SerdeContext): any => { diff --git a/clients/client-license-manager/src/index.ts b/clients/client-license-manager/src/index.ts index d52fa65c11c14..218b8a303ddab 100644 --- a/clients/client-license-manager/src/index.ts +++ b/clients/client-license-manager/src/index.ts @@ -2,3 +2,4 @@ export * from "./LicenseManager"; export * from "./LicenseManagerClient"; export * from "./commands"; export * from "./models"; +export { LicenseManagerServiceException } from "./models/LicenseManagerServiceException"; diff --git a/clients/client-license-manager/src/models/LicenseManagerServiceException.ts b/clients/client-license-manager/src/models/LicenseManagerServiceException.ts new file mode 100644 index 0000000000000..727e90b743884 --- /dev/null +++ b/clients/client-license-manager/src/models/LicenseManagerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LicenseManager service. + */ +export class LicenseManagerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LicenseManagerServiceException.prototype); + } +} diff --git a/clients/client-license-manager/src/models/models_0.ts b/clients/client-license-manager/src/models/models_0.ts index a2ca1fffae739..ddd40503252e0 100644 --- a/clients/client-license-manager/src/models/models_0.ts +++ b/clients/client-license-manager/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LicenseManagerServiceException as __BaseException } from "./LicenseManagerServiceException"; export interface AcceptGrantRequest { /** @@ -57,65 +60,149 @@ export namespace AcceptGrantResponse { /** *

Access to resource denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

The Amazon Web Services user account does not have permission to perform the action. Check the IAM * policy associated with this account.

*/ -export interface AuthorizationException extends __SmithyException, $MetadataBearer { - name: "AuthorizationException"; - $fault: "client"; +export class AuthorizationException extends __BaseException { + readonly name: "AuthorizationException" = "AuthorizationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationException.prototype); + this.Message = opts.Message; + } } /** *

One or more parameter values are not valid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + this.Message = opts.Message; + } } /** *

Too many requests have been submitted. Try again after a brief wait.

*/ -export interface RateLimitExceededException extends __SmithyException, $MetadataBearer { - name: "RateLimitExceededException"; - $fault: "client"; +export class RateLimitExceededException extends __BaseException { + readonly name: "RateLimitExceededException" = "RateLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RateLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RateLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Your resource limits have been exceeded.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The server experienced an internal error. Try again.

*/ -export interface ServerInternalException extends __SmithyException, $MetadataBearer { - name: "ServerInternalException"; - $fault: "server"; +export class ServerInternalException extends __BaseException { + readonly name: "ServerInternalException" = "ServerInternalException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerInternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerInternalException.prototype); + this.Message = opts.Message; + } } /** *

The provided input is not valid. Try your request again.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum AllowedOperation { @@ -182,19 +269,43 @@ export namespace CheckInLicenseResponse { /** *

There was a conflict processing the request. Try your request again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The resource cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -380,38 +491,87 @@ export namespace CheckoutBorrowLicenseResponse { /** *

The entitlement is not allowed.

*/ -export interface EntitlementNotAllowedException extends __SmithyException, $MetadataBearer { - name: "EntitlementNotAllowedException"; - $fault: "client"; +export class EntitlementNotAllowedException extends __BaseException { + readonly name: "EntitlementNotAllowedException" = "EntitlementNotAllowedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntitlementNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntitlementNotAllowedException.prototype); + this.Message = opts.Message; + } } /** *

There are no entitlements found for this license, or the entitlement maximum count is reached.

*/ -export interface NoEntitlementsAllowedException extends __SmithyException, $MetadataBearer { - name: "NoEntitlementsAllowedException"; - $fault: "client"; +export class NoEntitlementsAllowedException extends __BaseException { + readonly name: "NoEntitlementsAllowedException" = "NoEntitlementsAllowedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoEntitlementsAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoEntitlementsAllowedException.prototype); + this.Message = opts.Message; + } } /** *

This is not the correct Region for the resource. Try again.

*/ -export interface RedirectException extends __SmithyException, $MetadataBearer { - name: "RedirectException"; - $fault: "client"; +export class RedirectException extends __BaseException { + readonly name: "RedirectException" = "RedirectException"; + readonly $fault: "client" = "client"; Location?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RedirectException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RedirectException.prototype); + this.Location = opts.Location; + this.Message = opts.Message; + } } /** *

The digital signature method is unsupported. Try your request again.

*/ -export interface UnsupportedDigitalSignatureMethodException extends __SmithyException, $MetadataBearer { - name: "UnsupportedDigitalSignatureMethodException"; - $fault: "client"; +export class UnsupportedDigitalSignatureMethodException extends __BaseException { + readonly name: "UnsupportedDigitalSignatureMethodException" = "UnsupportedDigitalSignatureMethodException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedDigitalSignatureMethodException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedDigitalSignatureMethodException.prototype); + this.Message = opts.Message; + } } export enum CheckoutType { @@ -2628,10 +2788,22 @@ export namespace GetServiceSettingsResponse { /** *

The request uses too many filters or too many filter values.

*/ -export interface FilterLimitExceededException extends __SmithyException, $MetadataBearer { - name: "FilterLimitExceededException"; - $fault: "client"; +export class FilterLimitExceededException extends __BaseException { + readonly name: "FilterLimitExceededException" = "FilterLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FilterLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FilterLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface ListAssociationsForLicenseConfigurationRequest { @@ -3740,11 +3912,24 @@ export namespace ListReceivedLicensesResponse { /** *

A dependency required to run the API is missing.

*/ -export interface FailedDependencyException extends __SmithyException, $MetadataBearer { - name: "FailedDependencyException"; - $fault: "client"; +export class FailedDependencyException extends __BaseException { + readonly name: "FailedDependencyException" = "FailedDependencyException"; + readonly $fault: "client" = "client"; Message?: string; ErrorCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FailedDependencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FailedDependencyException.prototype); + this.Message = opts.Message; + this.ErrorCode = opts.ErrorCode; + } } export enum InventoryFilterCondition { @@ -4415,19 +4600,43 @@ export namespace UpdateLicenseManagerReportGeneratorResponse { *

For example, you cannot allocate a license to an instance in the process of shutting * down.

*/ -export interface InvalidResourceStateException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceStateException"; - $fault: "client"; +export class InvalidResourceStateException extends __BaseException { + readonly name: "InvalidResourceStateException" = "InvalidResourceStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceStateException.prototype); + this.Message = opts.Message; + } } /** *

You do not have enough licenses available to support a new resource launch.

*/ -export interface LicenseUsageException extends __SmithyException, $MetadataBearer { - name: "LicenseUsageException"; - $fault: "client"; +export class LicenseUsageException extends __BaseException { + readonly name: "LicenseUsageException" = "LicenseUsageException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LicenseUsageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LicenseUsageException.prototype); + this.Message = opts.Message; + } } export interface UpdateLicenseSpecificationsForResourceRequest { diff --git a/clients/client-license-manager/src/protocols/Aws_json1_1.ts b/clients/client-license-manager/src/protocols/Aws_json1_1.ts index 7f8e88276dd91..bc8354b100b70 100644 --- a/clients/client-license-manager/src/protocols/Aws_json1_1.ts +++ b/clients/client-license-manager/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AcceptGrantCommandInput, AcceptGrantCommandOutput } from "../commands/AcceptGrantCommand"; @@ -146,6 +145,7 @@ import { UpdateServiceSettingsCommandInput, UpdateServiceSettingsCommandOutput, } from "../commands/UpdateServiceSettingsCommand"; +import { LicenseManagerServiceException as __BaseException } from "../models/LicenseManagerServiceException"; import { AcceptGrantRequest, AcceptGrantResponse, @@ -950,81 +950,40 @@ const deserializeAws_json1_1AcceptGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckInLicenseCommand = async ( @@ -1052,89 +1011,43 @@ const deserializeAws_json1_1CheckInLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.licensemanager#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckoutBorrowLicenseCommand = async ( @@ -1162,113 +1075,52 @@ const deserializeAws_json1_1CheckoutBorrowLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "EntitlementNotAllowedException": case "com.amazonaws.licensemanager#EntitlementNotAllowedException": - response = { - ...(await deserializeAws_json1_1EntitlementNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntitlementNotAllowedExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoEntitlementsAllowedException": case "com.amazonaws.licensemanager#NoEntitlementsAllowedException": - response = { - ...(await deserializeAws_json1_1NoEntitlementsAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoEntitlementsAllowedExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "UnsupportedDigitalSignatureMethodException": case "com.amazonaws.licensemanager#UnsupportedDigitalSignatureMethodException": - response = { - ...(await deserializeAws_json1_1UnsupportedDigitalSignatureMethodExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDigitalSignatureMethodExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckoutLicenseCommand = async ( @@ -1296,105 +1148,49 @@ const deserializeAws_json1_1CheckoutLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "NoEntitlementsAllowedException": case "com.amazonaws.licensemanager#NoEntitlementsAllowedException": - response = { - ...(await deserializeAws_json1_1NoEntitlementsAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoEntitlementsAllowedExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "UnsupportedDigitalSignatureMethodException": case "com.amazonaws.licensemanager#UnsupportedDigitalSignatureMethodException": - response = { - ...(await deserializeAws_json1_1UnsupportedDigitalSignatureMethodExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDigitalSignatureMethodExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGrantCommand = async ( @@ -1422,81 +1218,40 @@ const deserializeAws_json1_1CreateGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGrantVersionCommand = async ( @@ -1524,81 +1279,40 @@ const deserializeAws_json1_1CreateGrantVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLicenseCommand = async ( @@ -1626,81 +1340,40 @@ const deserializeAws_json1_1CreateLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLicenseConfigurationCommand = async ( @@ -1728,73 +1401,37 @@ const deserializeAws_json1_1CreateLicenseConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLicenseConversionTaskForResourceCommand = async ( @@ -1822,73 +1459,37 @@ const deserializeAws_json1_1CreateLicenseConversionTaskForResourceCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLicenseManagerReportGeneratorCommand = async ( @@ -1916,89 +1517,43 @@ const deserializeAws_json1_1CreateLicenseManagerReportGeneratorCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLicenseVersionCommand = async ( @@ -2026,89 +1581,43 @@ const deserializeAws_json1_1CreateLicenseVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.licensemanager#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTokenCommand = async ( @@ -2136,89 +1645,43 @@ const deserializeAws_json1_1CreateTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGrantCommand = async ( @@ -2246,81 +1709,40 @@ const deserializeAws_json1_1DeleteGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLicenseCommand = async ( @@ -2348,89 +1770,43 @@ const deserializeAws_json1_1DeleteLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.licensemanager#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLicenseConfigurationCommand = async ( @@ -2458,65 +1834,34 @@ const deserializeAws_json1_1DeleteLicenseConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLicenseManagerReportGeneratorCommand = async ( @@ -2544,89 +1889,43 @@ const deserializeAws_json1_1DeleteLicenseManagerReportGeneratorCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTokenCommand = async ( @@ -2654,81 +1953,40 @@ const deserializeAws_json1_1DeleteTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "RedirectException": case "com.amazonaws.licensemanager#RedirectException": - response = { - ...(await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RedirectExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExtendLicenseConsumptionCommand = async ( @@ -2756,81 +2014,40 @@ const deserializeAws_json1_1ExtendLicenseConsumptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAccessTokenCommand = async ( @@ -2858,65 +2075,34 @@ const deserializeAws_json1_1GetAccessTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGrantCommand = async ( @@ -2944,81 +2130,40 @@ const deserializeAws_json1_1GetGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLicenseCommand = async ( @@ -3046,73 +2191,37 @@ const deserializeAws_json1_1GetLicenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLicenseConfigurationCommand = async ( @@ -3140,65 +2249,34 @@ const deserializeAws_json1_1GetLicenseConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLicenseConversionTaskCommand = async ( @@ -3226,65 +2304,34 @@ const deserializeAws_json1_1GetLicenseConversionTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLicenseManagerReportGeneratorCommand = async ( @@ -3312,89 +2359,43 @@ const deserializeAws_json1_1GetLicenseManagerReportGeneratorCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLicenseUsageCommand = async ( @@ -3422,73 +2423,37 @@ const deserializeAws_json1_1GetLicenseUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetServiceSettingsCommand = async ( @@ -3516,57 +2481,31 @@ const deserializeAws_json1_1GetServiceSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociationsForLicenseConfigurationCommand = async ( @@ -3594,73 +2533,37 @@ const deserializeAws_json1_1ListAssociationsForLicenseConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "FilterLimitExceededException": case "com.amazonaws.licensemanager#FilterLimitExceededException": - response = { - ...(await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDistributedGrantsCommand = async ( @@ -3688,81 +2591,40 @@ const deserializeAws_json1_1ListDistributedGrantsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFailuresForLicenseConfigurationOperationsCommand = async ( @@ -3790,65 +2652,34 @@ const deserializeAws_json1_1ListFailuresForLicenseConfigurationOperationsCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLicenseConfigurationsCommand = async ( @@ -3876,73 +2707,37 @@ const deserializeAws_json1_1ListLicenseConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "FilterLimitExceededException": case "com.amazonaws.licensemanager#FilterLimitExceededException": - response = { - ...(await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLicenseConversionTasksCommand = async ( @@ -3970,65 +2765,34 @@ const deserializeAws_json1_1ListLicenseConversionTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLicenseManagerReportGeneratorsCommand = async ( @@ -4056,89 +2820,43 @@ const deserializeAws_json1_1ListLicenseManagerReportGeneratorsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLicensesCommand = async ( @@ -4166,73 +2884,37 @@ const deserializeAws_json1_1ListLicensesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLicenseSpecificationsForResourceCommand = async ( @@ -4260,65 +2942,34 @@ const deserializeAws_json1_1ListLicenseSpecificationsForResourceCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLicenseVersionsCommand = async ( @@ -4346,65 +2997,34 @@ const deserializeAws_json1_1ListLicenseVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReceivedGrantsCommand = async ( @@ -4432,81 +3052,40 @@ const deserializeAws_json1_1ListReceivedGrantsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReceivedLicensesCommand = async ( @@ -4534,81 +3113,40 @@ const deserializeAws_json1_1ListReceivedLicensesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourceInventoryCommand = async ( @@ -4636,81 +3174,40 @@ const deserializeAws_json1_1ListResourceInventoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.licensemanager#FailedDependencyException": - response = { - ...(await deserializeAws_json1_1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FailedDependencyExceptionResponse(parsedOutput, context); case "FilterLimitExceededException": case "com.amazonaws.licensemanager#FilterLimitExceededException": - response = { - ...(await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -4738,65 +3235,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTokensCommand = async ( @@ -4824,65 +3290,34 @@ const deserializeAws_json1_1ListTokensCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUsageForLicenseConfigurationCommand = async ( @@ -4910,73 +3345,37 @@ const deserializeAws_json1_1ListUsageForLicenseConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "FilterLimitExceededException": case "com.amazonaws.licensemanager#FilterLimitExceededException": - response = { - ...(await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FilterLimitExceededExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectGrantCommand = async ( @@ -5004,81 +3403,40 @@ const deserializeAws_json1_1RejectGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -5106,65 +3464,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -5192,65 +3519,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLicenseConfigurationCommand = async ( @@ -5278,73 +3574,37 @@ const deserializeAws_json1_1UpdateLicenseConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLicenseManagerReportGeneratorCommand = async ( @@ -5372,89 +3632,43 @@ const deserializeAws_json1_1UpdateLicenseManagerReportGeneratorCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.licensemanager#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.licensemanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.licensemanager#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLicenseSpecificationsForResourceCommand = async ( @@ -5482,81 +3696,40 @@ const deserializeAws_json1_1UpdateLicenseSpecificationsForResourceCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.licensemanager#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "LicenseUsageException": case "com.amazonaws.licensemanager#LicenseUsageException": - response = { - ...(await deserializeAws_json1_1LicenseUsageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LicenseUsageExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServiceSettingsCommand = async ( @@ -5584,65 +3757,34 @@ const deserializeAws_json1_1UpdateServiceSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.licensemanager#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationException": case "com.amazonaws.licensemanager#AuthorizationException": - response = { - ...(await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AuthorizationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.licensemanager#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "RateLimitExceededException": case "com.amazonaws.licensemanager#RateLimitExceededException": - response = { - ...(await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RateLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.licensemanager#ServerInternalException": - response = { - ...(await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerInternalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -5651,13 +3793,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AuthorizationExceptionResponse = async ( @@ -5666,13 +3806,11 @@ const deserializeAws_json1_1AuthorizationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AuthorizationException(body, context); - const contents: AuthorizationException = { - name: "AuthorizationException", - $fault: "client", + const exception = new AuthorizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -5681,13 +3819,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntitlementNotAllowedExceptionResponse = async ( @@ -5696,13 +3832,11 @@ const deserializeAws_json1_1EntitlementNotAllowedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntitlementNotAllowedException(body, context); - const contents: EntitlementNotAllowedException = { - name: "EntitlementNotAllowedException", - $fault: "client", + const exception = new EntitlementNotAllowedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FailedDependencyExceptionResponse = async ( @@ -5711,13 +3845,11 @@ const deserializeAws_json1_1FailedDependencyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FailedDependencyException(body, context); - const contents: FailedDependencyException = { - name: "FailedDependencyException", - $fault: "client", + const exception = new FailedDependencyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FilterLimitExceededExceptionResponse = async ( @@ -5726,13 +3858,11 @@ const deserializeAws_json1_1FilterLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FilterLimitExceededException(body, context); - const contents: FilterLimitExceededException = { - name: "FilterLimitExceededException", - $fault: "client", + const exception = new FilterLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( @@ -5741,13 +3871,11 @@ const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceStateExceptionResponse = async ( @@ -5756,13 +3884,11 @@ const deserializeAws_json1_1InvalidResourceStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceStateException(body, context); - const contents: InvalidResourceStateException = { - name: "InvalidResourceStateException", - $fault: "client", + const exception = new InvalidResourceStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LicenseUsageExceptionResponse = async ( @@ -5771,13 +3897,11 @@ const deserializeAws_json1_1LicenseUsageExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LicenseUsageException(body, context); - const contents: LicenseUsageException = { - name: "LicenseUsageException", - $fault: "client", + const exception = new LicenseUsageException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoEntitlementsAllowedExceptionResponse = async ( @@ -5786,13 +3910,11 @@ const deserializeAws_json1_1NoEntitlementsAllowedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoEntitlementsAllowedException(body, context); - const contents: NoEntitlementsAllowedException = { - name: "NoEntitlementsAllowedException", - $fault: "client", + const exception = new NoEntitlementsAllowedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RateLimitExceededExceptionResponse = async ( @@ -5801,13 +3923,11 @@ const deserializeAws_json1_1RateLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RateLimitExceededException(body, context); - const contents: RateLimitExceededException = { - name: "RateLimitExceededException", - $fault: "client", + const exception = new RateLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RedirectExceptionResponse = async ( @@ -5816,13 +3936,11 @@ const deserializeAws_json1_1RedirectExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RedirectException(body, context); - const contents: RedirectException = { - name: "RedirectException", - $fault: "client", + const exception = new RedirectException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( @@ -5831,13 +3949,11 @@ const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLimitExceededException(body, context); - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", + const exception = new ResourceLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -5846,13 +3962,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServerInternalExceptionResponse = async ( @@ -5861,13 +3975,11 @@ const deserializeAws_json1_1ServerInternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServerInternalException(body, context); - const contents: ServerInternalException = { - name: "ServerInternalException", - $fault: "server", + const exception = new ServerInternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedDigitalSignatureMethodExceptionResponse = async ( @@ -5876,13 +3988,11 @@ const deserializeAws_json1_1UnsupportedDigitalSignatureMethodExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedDigitalSignatureMethodException(body, context); - const contents: UnsupportedDigitalSignatureMethodException = { - name: "UnsupportedDigitalSignatureMethodException", - $fault: "client", + const exception = new UnsupportedDigitalSignatureMethodException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -5891,13 +4001,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptGrantRequest = (input: AcceptGrantRequest, context: __SerdeContext): any => { diff --git a/clients/client-lightsail/src/index.ts b/clients/client-lightsail/src/index.ts index 38d360329a327..34e3f114b3b53 100644 --- a/clients/client-lightsail/src/index.ts +++ b/clients/client-lightsail/src/index.ts @@ -2,3 +2,4 @@ export * from "./Lightsail"; export * from "./LightsailClient"; export * from "./commands"; export * from "./models"; +export { LightsailServiceException } from "./models/LightsailServiceException"; diff --git a/clients/client-lightsail/src/models/LightsailServiceException.ts b/clients/client-lightsail/src/models/LightsailServiceException.ts new file mode 100644 index 0000000000000..80ba834d05580 --- /dev/null +++ b/clients/client-lightsail/src/models/LightsailServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Lightsail service. + */ +export class LightsailServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LightsailServiceException.prototype); + } +} diff --git a/clients/client-lightsail/src/models/models_0.ts b/clients/client-lightsail/src/models/models_0.ts index d0d603375e2a0..94ed3d0c3f00b 100644 --- a/clients/client-lightsail/src/models/models_0.ts +++ b/clients/client-lightsail/src/models/models_0.ts @@ -1,17 +1,32 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LightsailServiceException as __BaseException } from "./LightsailServiceException"; /** *

Lightsail throws this exception when the user cannot be authenticated or uses invalid * credentials to access a resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } export enum AccessDirection { @@ -218,13 +233,26 @@ export namespace AccessRules { *

Lightsail throws this exception when an account is still in the setup in progress * state.

*/ -export interface AccountSetupInProgressException extends __SmithyException, $MetadataBearer { - name: "AccountSetupInProgressException"; - $fault: "client"; +export class AccountSetupInProgressException extends __BaseException { + readonly name: "AccountSetupInProgressException" = "AccountSetupInProgressException"; + readonly $fault: "client" = "client"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountSetupInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountSetupInProgressException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } /** @@ -955,61 +983,126 @@ export namespace AllocateStaticIpResult { * us-east-1 to create, view, or edit these resources.

* */ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } /** *

Lightsail throws this exception when it cannot find a resource.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } /** *

Lightsail throws this exception when an operation fails to execute.

*/ -export interface OperationFailureException extends __SmithyException, $MetadataBearer { - name: "OperationFailureException"; - $fault: "client"; +export class OperationFailureException extends __BaseException { + readonly name: "OperationFailureException" = "OperationFailureException"; + readonly $fault: "client" = "client"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationFailureException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationFailureException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } /** *

A general service exception.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } /** *

Lightsail throws this exception when the user has not been authenticated.

*/ -export interface UnauthenticatedException extends __SmithyException, $MetadataBearer { - name: "UnauthenticatedException"; - $fault: "client"; +export class UnauthenticatedException extends __BaseException { + readonly name: "UnauthenticatedException" = "UnauthenticatedException"; + readonly $fault: "client" = "client"; code?: string; docs?: string; - message?: string; tip?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthenticatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthenticatedException.prototype); + this.code = opts.code; + this.docs = opts.docs; + this.tip = opts.tip; + } } export interface AttachCertificateToDistributionRequest { diff --git a/clients/client-lightsail/src/protocols/Aws_json1_1.ts b/clients/client-lightsail/src/protocols/Aws_json1_1.ts index 4c35dc4fca404..1c3732c62b079 100644 --- a/clients/client-lightsail/src/protocols/Aws_json1_1.ts +++ b/clients/client-lightsail/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AllocateStaticIpCommandInput, AllocateStaticIpCommandOutput } from "../commands/AllocateStaticIpCommand"; @@ -398,6 +397,7 @@ import { UpdateRelationalDatabaseParametersCommandInput, UpdateRelationalDatabaseParametersCommandOutput, } from "../commands/UpdateRelationalDatabaseParametersCommand"; +import { LightsailServiceException as __BaseException } from "../models/LightsailServiceException"; import { AccessDeniedException, AccessKey, @@ -2835,81 +2835,40 @@ const deserializeAws_json1_1AllocateStaticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachCertificateToDistributionCommand = async ( @@ -2937,73 +2896,37 @@ const deserializeAws_json1_1AttachCertificateToDistributionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachDiskCommand = async ( @@ -3031,81 +2954,40 @@ const deserializeAws_json1_1AttachDiskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachInstancesToLoadBalancerCommand = async ( @@ -3133,81 +3015,40 @@ const deserializeAws_json1_1AttachInstancesToLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachLoadBalancerTlsCertificateCommand = async ( @@ -3235,81 +3076,40 @@ const deserializeAws_json1_1AttachLoadBalancerTlsCertificateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachStaticIpCommand = async ( @@ -3337,81 +3137,40 @@ const deserializeAws_json1_1AttachStaticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CloseInstancePublicPortsCommand = async ( @@ -3439,81 +3198,40 @@ const deserializeAws_json1_1CloseInstancePublicPortsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CopySnapshotCommand = async ( @@ -3541,81 +3259,40 @@ const deserializeAws_json1_1CopySnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBucketCommand = async ( @@ -3643,57 +3320,31 @@ const deserializeAws_json1_1CreateBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBucketAccessKeyCommand = async ( @@ -3721,65 +3372,34 @@ const deserializeAws_json1_1CreateBucketAccessKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCertificateCommand = async ( @@ -3807,65 +3427,34 @@ const deserializeAws_json1_1CreateCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCloudFormationStackCommand = async ( @@ -3893,81 +3482,40 @@ const deserializeAws_json1_1CreateCloudFormationStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContactMethodCommand = async ( @@ -3995,73 +3543,37 @@ const deserializeAws_json1_1CreateContactMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContainerServiceCommand = async ( @@ -4089,65 +3601,34 @@ const deserializeAws_json1_1CreateContainerServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContainerServiceDeploymentCommand = async ( @@ -4175,65 +3656,34 @@ const deserializeAws_json1_1CreateContainerServiceDeploymentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContainerServiceRegistryLoginCommand = async ( @@ -4261,65 +3711,34 @@ const deserializeAws_json1_1CreateContainerServiceRegistryLoginCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDiskCommand = async ( @@ -4347,81 +3766,40 @@ const deserializeAws_json1_1CreateDiskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDiskFromSnapshotCommand = async ( @@ -4449,81 +3827,40 @@ const deserializeAws_json1_1CreateDiskFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDiskSnapshotCommand = async ( @@ -4551,81 +3888,40 @@ const deserializeAws_json1_1CreateDiskSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDistributionCommand = async ( @@ -4653,73 +3949,37 @@ const deserializeAws_json1_1CreateDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDomainCommand = async ( @@ -4747,81 +4007,40 @@ const deserializeAws_json1_1CreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDomainEntryCommand = async ( @@ -4849,81 +4068,40 @@ const deserializeAws_json1_1CreateDomainEntryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInstancesCommand = async ( @@ -4951,81 +4129,40 @@ const deserializeAws_json1_1CreateInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInstancesFromSnapshotCommand = async ( @@ -5053,81 +4190,40 @@ const deserializeAws_json1_1CreateInstancesFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInstanceSnapshotCommand = async ( @@ -5155,81 +4251,40 @@ const deserializeAws_json1_1CreateInstanceSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateKeyPairCommand = async ( @@ -5257,81 +4312,40 @@ const deserializeAws_json1_1CreateKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLoadBalancerCommand = async ( @@ -5359,81 +4373,40 @@ const deserializeAws_json1_1CreateLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLoadBalancerTlsCertificateCommand = async ( @@ -5461,81 +4434,40 @@ const deserializeAws_json1_1CreateLoadBalancerTlsCertificateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRelationalDatabaseCommand = async ( @@ -5563,81 +4495,40 @@ const deserializeAws_json1_1CreateRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRelationalDatabaseFromSnapshotCommand = async ( @@ -5665,81 +4556,40 @@ const deserializeAws_json1_1CreateRelationalDatabaseFromSnapshotCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRelationalDatabaseSnapshotCommand = async ( @@ -5767,81 +4617,40 @@ const deserializeAws_json1_1CreateRelationalDatabaseSnapshotCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAlarmCommand = async ( @@ -5869,73 +4678,37 @@ const deserializeAws_json1_1DeleteAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAutoSnapshotCommand = async ( @@ -5963,73 +4736,37 @@ const deserializeAws_json1_1DeleteAutoSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBucketCommand = async ( @@ -6057,65 +4794,34 @@ const deserializeAws_json1_1DeleteBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBucketAccessKeyCommand = async ( @@ -6143,65 +4849,34 @@ const deserializeAws_json1_1DeleteBucketAccessKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCertificateCommand = async ( @@ -6229,65 +4904,34 @@ const deserializeAws_json1_1DeleteCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContactMethodCommand = async ( @@ -6315,73 +4959,37 @@ const deserializeAws_json1_1DeleteContactMethodCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContainerImageCommand = async ( @@ -6409,65 +5017,34 @@ const deserializeAws_json1_1DeleteContainerImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContainerServiceCommand = async ( @@ -6495,65 +5072,34 @@ const deserializeAws_json1_1DeleteContainerServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDiskCommand = async ( @@ -6581,81 +5127,40 @@ const deserializeAws_json1_1DeleteDiskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDiskSnapshotCommand = async ( @@ -6683,81 +5188,40 @@ const deserializeAws_json1_1DeleteDiskSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDistributionCommand = async ( @@ -6785,73 +5249,37 @@ const deserializeAws_json1_1DeleteDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDomainCommand = async ( @@ -6879,81 +5307,40 @@ const deserializeAws_json1_1DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDomainEntryCommand = async ( @@ -6981,81 +5368,40 @@ const deserializeAws_json1_1DeleteDomainEntryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInstanceCommand = async ( @@ -7083,81 +5429,40 @@ const deserializeAws_json1_1DeleteInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInstanceSnapshotCommand = async ( @@ -7185,81 +5490,40 @@ const deserializeAws_json1_1DeleteInstanceSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteKeyPairCommand = async ( @@ -7287,81 +5551,40 @@ const deserializeAws_json1_1DeleteKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteKnownHostKeysCommand = async ( @@ -7389,81 +5612,40 @@ const deserializeAws_json1_1DeleteKnownHostKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLoadBalancerCommand = async ( @@ -7491,81 +5673,40 @@ const deserializeAws_json1_1DeleteLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLoadBalancerTlsCertificateCommand = async ( @@ -7593,81 +5734,40 @@ const deserializeAws_json1_1DeleteLoadBalancerTlsCertificateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRelationalDatabaseCommand = async ( @@ -7695,81 +5795,40 @@ const deserializeAws_json1_1DeleteRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRelationalDatabaseSnapshotCommand = async ( @@ -7797,81 +5856,40 @@ const deserializeAws_json1_1DeleteRelationalDatabaseSnapshotCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachCertificateFromDistributionCommand = async ( @@ -7899,73 +5917,37 @@ const deserializeAws_json1_1DetachCertificateFromDistributionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachDiskCommand = async ( @@ -7993,81 +5975,40 @@ const deserializeAws_json1_1DetachDiskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachInstancesFromLoadBalancerCommand = async ( @@ -8095,81 +6036,40 @@ const deserializeAws_json1_1DetachInstancesFromLoadBalancerCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachStaticIpCommand = async ( @@ -8197,81 +6097,40 @@ const deserializeAws_json1_1DetachStaticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableAddOnCommand = async ( @@ -8299,73 +6158,37 @@ const deserializeAws_json1_1DisableAddOnCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DownloadDefaultKeyPairCommand = async ( @@ -8393,81 +6216,40 @@ const deserializeAws_json1_1DownloadDefaultKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableAddOnCommand = async ( @@ -8495,73 +6277,37 @@ const deserializeAws_json1_1EnableAddOnCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExportSnapshotCommand = async ( @@ -8589,81 +6335,40 @@ const deserializeAws_json1_1ExportSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetActiveNamesCommand = async ( @@ -8691,81 +6396,40 @@ const deserializeAws_json1_1GetActiveNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAlarmsCommand = async ( @@ -8793,73 +6457,37 @@ const deserializeAws_json1_1GetAlarmsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAutoSnapshotsCommand = async ( @@ -8887,73 +6515,37 @@ const deserializeAws_json1_1GetAutoSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBlueprintsCommand = async ( @@ -8981,81 +6573,40 @@ const deserializeAws_json1_1GetBlueprintsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBucketAccessKeysCommand = async ( @@ -9083,65 +6634,34 @@ const deserializeAws_json1_1GetBucketAccessKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBucketBundlesCommand = async ( @@ -9169,57 +6689,31 @@ const deserializeAws_json1_1GetBucketBundlesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBucketMetricDataCommand = async ( @@ -9247,65 +6741,34 @@ const deserializeAws_json1_1GetBucketMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBucketsCommand = async ( @@ -9333,65 +6796,34 @@ const deserializeAws_json1_1GetBucketsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBundlesCommand = async ( @@ -9419,81 +6851,40 @@ const deserializeAws_json1_1GetBundlesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCertificatesCommand = async ( @@ -9521,65 +6912,34 @@ const deserializeAws_json1_1GetCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCloudFormationStackRecordsCommand = async ( @@ -9607,81 +6967,40 @@ const deserializeAws_json1_1GetCloudFormationStackRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContactMethodsCommand = async ( @@ -9709,73 +7028,37 @@ const deserializeAws_json1_1GetContactMethodsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerAPIMetadataCommand = async ( @@ -9803,49 +7086,28 @@ const deserializeAws_json1_1GetContainerAPIMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerImagesCommand = async ( @@ -9873,65 +7135,34 @@ const deserializeAws_json1_1GetContainerImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerLogCommand = async ( @@ -9959,65 +7190,34 @@ const deserializeAws_json1_1GetContainerLogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerServiceDeploymentsCommand = async ( @@ -10045,65 +7245,34 @@ const deserializeAws_json1_1GetContainerServiceDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerServiceMetricDataCommand = async ( @@ -10131,65 +7300,34 @@ const deserializeAws_json1_1GetContainerServiceMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerServicePowersCommand = async ( @@ -10217,65 +7355,34 @@ const deserializeAws_json1_1GetContainerServicePowersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerServicesCommand = async ( @@ -10303,65 +7410,34 @@ const deserializeAws_json1_1GetContainerServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDiskCommand = async ( @@ -10389,81 +7465,40 @@ const deserializeAws_json1_1GetDiskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDisksCommand = async ( @@ -10491,81 +7526,40 @@ const deserializeAws_json1_1GetDisksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDiskSnapshotCommand = async ( @@ -10593,81 +7587,40 @@ const deserializeAws_json1_1GetDiskSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDiskSnapshotsCommand = async ( @@ -10695,81 +7648,40 @@ const deserializeAws_json1_1GetDiskSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDistributionBundlesCommand = async ( @@ -10797,73 +7709,37 @@ const deserializeAws_json1_1GetDistributionBundlesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDistributionLatestCacheResetCommand = async ( @@ -10891,73 +7767,37 @@ const deserializeAws_json1_1GetDistributionLatestCacheResetCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDistributionMetricDataCommand = async ( @@ -10985,73 +7825,37 @@ const deserializeAws_json1_1GetDistributionMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDistributionsCommand = async ( @@ -11079,73 +7883,37 @@ const deserializeAws_json1_1GetDistributionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDomainCommand = async ( @@ -11173,81 +7941,40 @@ const deserializeAws_json1_1GetDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDomainsCommand = async ( @@ -11275,81 +8002,40 @@ const deserializeAws_json1_1GetDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetExportSnapshotRecordsCommand = async ( @@ -11377,81 +8063,40 @@ const deserializeAws_json1_1GetExportSnapshotRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceCommand = async ( @@ -11479,81 +8124,40 @@ const deserializeAws_json1_1GetInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceAccessDetailsCommand = async ( @@ -11581,81 +8185,40 @@ const deserializeAws_json1_1GetInstanceAccessDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceMetricDataCommand = async ( @@ -11683,81 +8246,40 @@ const deserializeAws_json1_1GetInstanceMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstancePortStatesCommand = async ( @@ -11785,81 +8307,40 @@ const deserializeAws_json1_1GetInstancePortStatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstancesCommand = async ( @@ -11887,81 +8368,40 @@ const deserializeAws_json1_1GetInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceSnapshotCommand = async ( @@ -11989,81 +8429,40 @@ const deserializeAws_json1_1GetInstanceSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceSnapshotsCommand = async ( @@ -12091,81 +8490,40 @@ const deserializeAws_json1_1GetInstanceSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceStateCommand = async ( @@ -12193,81 +8551,40 @@ const deserializeAws_json1_1GetInstanceStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetKeyPairCommand = async ( @@ -12295,81 +8612,40 @@ const deserializeAws_json1_1GetKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetKeyPairsCommand = async ( @@ -12397,81 +8673,40 @@ const deserializeAws_json1_1GetKeyPairsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoadBalancerCommand = async ( @@ -12499,81 +8734,40 @@ const deserializeAws_json1_1GetLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoadBalancerMetricDataCommand = async ( @@ -12601,81 +8795,40 @@ const deserializeAws_json1_1GetLoadBalancerMetricDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoadBalancersCommand = async ( @@ -12703,81 +8856,40 @@ const deserializeAws_json1_1GetLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoadBalancerTlsCertificatesCommand = async ( @@ -12805,81 +8917,40 @@ const deserializeAws_json1_1GetLoadBalancerTlsCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOperationCommand = async ( @@ -12907,81 +8978,40 @@ const deserializeAws_json1_1GetOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOperationsCommand = async ( @@ -13009,81 +9039,40 @@ const deserializeAws_json1_1GetOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOperationsForResourceCommand = async ( @@ -13111,81 +9100,40 @@ const deserializeAws_json1_1GetOperationsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegionsCommand = async ( @@ -13213,81 +9161,40 @@ const deserializeAws_json1_1GetRegionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseCommand = async ( @@ -13315,81 +9222,40 @@ const deserializeAws_json1_1GetRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseBlueprintsCommand = async ( @@ -13417,81 +9283,40 @@ const deserializeAws_json1_1GetRelationalDatabaseBlueprintsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseBundlesCommand = async ( @@ -13519,81 +9344,40 @@ const deserializeAws_json1_1GetRelationalDatabaseBundlesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseEventsCommand = async ( @@ -13621,81 +9405,40 @@ const deserializeAws_json1_1GetRelationalDatabaseEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseLogEventsCommand = async ( @@ -13723,81 +9466,40 @@ const deserializeAws_json1_1GetRelationalDatabaseLogEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseLogStreamsCommand = async ( @@ -13825,81 +9527,40 @@ const deserializeAws_json1_1GetRelationalDatabaseLogStreamsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseMasterUserPasswordCommand = async ( @@ -13927,81 +9588,40 @@ const deserializeAws_json1_1GetRelationalDatabaseMasterUserPasswordCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseMetricDataCommand = async ( @@ -14029,81 +9649,40 @@ const deserializeAws_json1_1GetRelationalDatabaseMetricDataCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseParametersCommand = async ( @@ -14131,81 +9710,40 @@ const deserializeAws_json1_1GetRelationalDatabaseParametersCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabasesCommand = async ( @@ -14233,81 +9771,40 @@ const deserializeAws_json1_1GetRelationalDatabasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseSnapshotCommand = async ( @@ -14335,81 +9832,40 @@ const deserializeAws_json1_1GetRelationalDatabaseSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRelationalDatabaseSnapshotsCommand = async ( @@ -14437,81 +9893,40 @@ const deserializeAws_json1_1GetRelationalDatabaseSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetStaticIpCommand = async ( @@ -14539,81 +9954,40 @@ const deserializeAws_json1_1GetStaticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetStaticIpsCommand = async ( @@ -14641,81 +10015,40 @@ const deserializeAws_json1_1GetStaticIpsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportKeyPairCommand = async ( @@ -14743,81 +10076,40 @@ const deserializeAws_json1_1ImportKeyPairCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1IsVpcPeeredCommand = async ( @@ -14845,81 +10137,40 @@ const deserializeAws_json1_1IsVpcPeeredCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1OpenInstancePublicPortsCommand = async ( @@ -14947,81 +10198,40 @@ const deserializeAws_json1_1OpenInstancePublicPortsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PeerVpcCommand = async ( @@ -15049,81 +10259,40 @@ const deserializeAws_json1_1PeerVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAlarmCommand = async ( @@ -15151,73 +10320,37 @@ const deserializeAws_json1_1PutAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutInstancePublicPortsCommand = async ( @@ -15245,81 +10378,40 @@ const deserializeAws_json1_1PutInstancePublicPortsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebootInstanceCommand = async ( @@ -15347,81 +10439,40 @@ const deserializeAws_json1_1RebootInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebootRelationalDatabaseCommand = async ( @@ -15449,81 +10500,40 @@ const deserializeAws_json1_1RebootRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterContainerImageCommand = async ( @@ -15551,65 +10561,34 @@ const deserializeAws_json1_1RegisterContainerImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReleaseStaticIpCommand = async ( @@ -15637,81 +10616,40 @@ const deserializeAws_json1_1ReleaseStaticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetDistributionCacheCommand = async ( @@ -15739,73 +10677,37 @@ const deserializeAws_json1_1ResetDistributionCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendContactMethodVerificationCommand = async ( @@ -15833,73 +10735,37 @@ const deserializeAws_json1_1SendContactMethodVerificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetIpAddressTypeCommand = async ( @@ -15927,81 +10793,40 @@ const deserializeAws_json1_1SetIpAddressTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetResourceAccessForBucketCommand = async ( @@ -16029,65 +10854,34 @@ const deserializeAws_json1_1SetResourceAccessForBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartInstanceCommand = async ( @@ -16115,81 +10909,40 @@ const deserializeAws_json1_1StartInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartRelationalDatabaseCommand = async ( @@ -16217,81 +10970,40 @@ const deserializeAws_json1_1StartRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopInstanceCommand = async ( @@ -16319,81 +11031,40 @@ const deserializeAws_json1_1StopInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopRelationalDatabaseCommand = async ( @@ -16421,81 +11092,40 @@ const deserializeAws_json1_1StopRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -16523,81 +11153,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestAlarmCommand = async ( @@ -16625,73 +11214,37 @@ const deserializeAws_json1_1TestAlarmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnpeerVpcCommand = async ( @@ -16719,81 +11272,40 @@ const deserializeAws_json1_1UnpeerVpcCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -16821,81 +11333,40 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBucketCommand = async ( @@ -16923,65 +11394,34 @@ const deserializeAws_json1_1UpdateBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBucketBundleCommand = async ( @@ -17009,65 +11449,34 @@ const deserializeAws_json1_1UpdateBucketBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContainerServiceCommand = async ( @@ -17095,65 +11504,34 @@ const deserializeAws_json1_1UpdateContainerServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDistributionCommand = async ( @@ -17181,73 +11559,37 @@ const deserializeAws_json1_1UpdateDistributionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDistributionBundleCommand = async ( @@ -17275,73 +11617,37 @@ const deserializeAws_json1_1UpdateDistributionBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDomainEntryCommand = async ( @@ -17369,81 +11675,40 @@ const deserializeAws_json1_1UpdateDomainEntryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLoadBalancerAttributeCommand = async ( @@ -17471,81 +11736,40 @@ const deserializeAws_json1_1UpdateLoadBalancerAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRelationalDatabaseCommand = async ( @@ -17573,81 +11797,40 @@ const deserializeAws_json1_1UpdateRelationalDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRelationalDatabaseParametersCommand = async ( @@ -17675,81 +11858,40 @@ const deserializeAws_json1_1UpdateRelationalDatabaseParametersCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lightsail#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountSetupInProgressException": case "com.amazonaws.lightsail#AccountSetupInProgressException": - response = { - ...(await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountSetupInProgressExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.lightsail#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.lightsail#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); case "OperationFailureException": case "com.amazonaws.lightsail#OperationFailureException": - response = { - ...(await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationFailureExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.lightsail#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "UnauthenticatedException": case "com.amazonaws.lightsail#UnauthenticatedException": - response = { - ...(await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthenticatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -17758,13 +11900,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccountSetupInProgressExceptionResponse = async ( @@ -17773,13 +11913,11 @@ const deserializeAws_json1_1AccountSetupInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccountSetupInProgressException(body, context); - const contents: AccountSetupInProgressException = { - name: "AccountSetupInProgressException", - $fault: "client", + const exception = new AccountSetupInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -17788,13 +11926,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -17803,13 +11939,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationFailureExceptionResponse = async ( @@ -17818,13 +11952,11 @@ const deserializeAws_json1_1OperationFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationFailureException(body, context); - const contents: OperationFailureException = { - name: "OperationFailureException", - $fault: "client", + const exception = new OperationFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceExceptionResponse = async ( @@ -17833,13 +11965,11 @@ const deserializeAws_json1_1ServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceException(body, context); - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", + const exception = new ServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnauthenticatedExceptionResponse = async ( @@ -17848,13 +11978,11 @@ const deserializeAws_json1_1UnauthenticatedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnauthenticatedException(body, context); - const contents: UnauthenticatedException = { - name: "UnauthenticatedException", - $fault: "client", + const exception = new UnauthenticatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccessRules = (input: AccessRules, context: __SerdeContext): any => { diff --git a/clients/client-location/src/index.ts b/clients/client-location/src/index.ts index 95e5d6fa5fe58..084cd2a9a93bc 100644 --- a/clients/client-location/src/index.ts +++ b/clients/client-location/src/index.ts @@ -3,3 +3,4 @@ export * from "./LocationClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { LocationServiceException } from "./models/LocationServiceException"; diff --git a/clients/client-location/src/models/LocationServiceException.ts b/clients/client-location/src/models/LocationServiceException.ts new file mode 100644 index 0000000000000..74d45fde1820e --- /dev/null +++ b/clients/client-location/src/models/LocationServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Location service. + */ +export class LocationServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LocationServiceException.prototype); + } +} diff --git a/clients/client-location/src/models/models_0.ts b/clients/client-location/src/models/models_0.ts index 60f88c40af9b6..df46989430108 100644 --- a/clients/client-location/src/models/models_0.ts +++ b/clients/client-location/src/models/models_0.ts @@ -1,14 +1,28 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LocationServiceException as __BaseException } from "./LocationServiceException"; /** *

The request was denied because of insufficient access or permissions. Check with an * administrator to verify your permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface AssociateTrackerConsumerRequest { @@ -54,52 +68,112 @@ export namespace AssociateTrackerConsumerResponse { /** *

The request was unsuccessful because of a conflict.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The request has failed to process because of an unknown server error, exception, or failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The resource that you've entered was not found in your AWS account.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The operation was denied because the request would exceed the maximum quota * set for Amazon Location Service.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

A message with the reason for the service quota exceeded exception error.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied because of request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: {}; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = {}; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** @@ -137,9 +211,9 @@ export type ValidationExceptionReason = /** *

The input failed to meet the constraints specified by the AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

A message with the reason for the validation exception error.

@@ -150,6 +224,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The field where the invalid entry was detected.

*/ FieldList: ValidationExceptionField[] | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.FieldList = opts.FieldList; + } } export interface BatchDeleteDevicePositionHistoryRequest { diff --git a/clients/client-location/src/protocols/Aws_restJson1.ts b/clients/client-location/src/protocols/Aws_restJson1.ts index 60b981ead5967..5c26e0cdb7130 100644 --- a/clients/client-location/src/protocols/Aws_restJson1.ts +++ b/clients/client-location/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -16,10 +17,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -152,6 +151,7 @@ import { UpdateRouteCalculatorCommandOutput, } from "../commands/UpdateRouteCalculatorCommand"; import { UpdateTrackerCommandInput, UpdateTrackerCommandOutput } from "../commands/UpdateTrackerCommand"; +import { LocationServiceException as __BaseException } from "../models/LocationServiceException"; import { AccessDeniedException, BatchDeleteDevicePositionHistoryError, @@ -2436,81 +2436,40 @@ const deserializeAws_restJson1AssociateTrackerConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.location#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDeleteDevicePositionHistoryCommand = async ( @@ -2539,65 +2498,34 @@ const deserializeAws_restJson1BatchDeleteDevicePositionHistoryCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDeleteGeofenceCommand = async ( @@ -2626,65 +2554,34 @@ const deserializeAws_restJson1BatchDeleteGeofenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchEvaluateGeofencesCommand = async ( @@ -2713,65 +2610,34 @@ const deserializeAws_restJson1BatchEvaluateGeofencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGetDevicePositionCommand = async ( @@ -2804,65 +2670,34 @@ const deserializeAws_restJson1BatchGetDevicePositionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchPutGeofenceCommand = async ( @@ -2895,65 +2730,34 @@ const deserializeAws_restJson1BatchPutGeofenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdateDevicePositionCommand = async ( @@ -2982,65 +2786,34 @@ const deserializeAws_restJson1BatchUpdateDevicePositionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CalculateRouteCommand = async ( @@ -3073,65 +2846,34 @@ const deserializeAws_restJson1CalculateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CalculateRouteMatrixCommand = async ( @@ -3175,65 +2917,34 @@ const deserializeAws_restJson1CalculateRouteMatrixCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGeofenceCollectionCommand = async ( @@ -3270,65 +2981,34 @@ const deserializeAws_restJson1CreateGeofenceCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMapCommand = async ( @@ -3365,65 +3045,34 @@ const deserializeAws_restJson1CreateMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePlaceIndexCommand = async ( @@ -3460,65 +3109,34 @@ const deserializeAws_restJson1CreatePlaceIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRouteCalculatorCommand = async ( @@ -3555,65 +3173,34 @@ const deserializeAws_restJson1CreateRouteCalculatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTrackerCommand = async ( @@ -3650,65 +3237,34 @@ const deserializeAws_restJson1CreateTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGeofenceCollectionCommand = async ( @@ -3733,65 +3289,34 @@ const deserializeAws_restJson1DeleteGeofenceCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMapCommand = async ( @@ -3816,65 +3341,34 @@ const deserializeAws_restJson1DeleteMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePlaceIndexCommand = async ( @@ -3899,65 +3393,34 @@ const deserializeAws_restJson1DeletePlaceIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteCalculatorCommand = async ( @@ -3982,65 +3445,34 @@ const deserializeAws_restJson1DeleteRouteCalculatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTrackerCommand = async ( @@ -4065,65 +3497,34 @@ const deserializeAws_restJson1DeleteTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGeofenceCollectionCommand = async ( @@ -4184,65 +3585,34 @@ const deserializeAws_restJson1DescribeGeofenceCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMapCommand = async ( @@ -4303,65 +3673,34 @@ const deserializeAws_restJson1DescribeMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePlaceIndexCommand = async ( @@ -4425,65 +3764,34 @@ const deserializeAws_restJson1DescribePlaceIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRouteCalculatorCommand = async ( @@ -4540,65 +3848,34 @@ const deserializeAws_restJson1DescribeRouteCalculatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTrackerCommand = async ( @@ -4663,65 +3940,34 @@ const deserializeAws_restJson1DescribeTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateTrackerConsumerCommand = async ( @@ -4746,65 +3992,34 @@ const deserializeAws_restJson1DisassociateTrackerConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDevicePositionCommand = async ( @@ -4853,65 +4068,34 @@ const deserializeAws_restJson1GetDevicePositionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDevicePositionHistoryCommand = async ( @@ -4944,65 +4128,34 @@ const deserializeAws_restJson1GetDevicePositionHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGeofenceCommand = async ( @@ -5047,65 +4200,34 @@ const deserializeAws_restJson1GetGeofenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMapGlyphsCommand = async ( @@ -5136,65 +4258,34 @@ const deserializeAws_restJson1GetMapGlyphsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMapSpritesCommand = async ( @@ -5225,65 +4316,34 @@ const deserializeAws_restJson1GetMapSpritesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMapStyleDescriptorCommand = async ( @@ -5314,65 +4374,34 @@ const deserializeAws_restJson1GetMapStyleDescriptorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMapTileCommand = async ( @@ -5403,65 +4432,34 @@ const deserializeAws_restJson1GetMapTileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevicePositionsCommand = async ( @@ -5494,57 +4492,31 @@ const deserializeAws_restJson1ListDevicePositionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGeofenceCollectionsCommand = async ( @@ -5577,57 +4549,31 @@ const deserializeAws_restJson1ListGeofenceCollectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGeofencesCommand = async ( @@ -5660,65 +4606,34 @@ const deserializeAws_restJson1ListGeofencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMapsCommand = async ( @@ -5751,57 +4666,31 @@ const deserializeAws_restJson1ListMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPlaceIndexesCommand = async ( @@ -5834,57 +4723,31 @@ const deserializeAws_restJson1ListPlaceIndexesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRouteCalculatorsCommand = async ( @@ -5917,57 +4780,31 @@ const deserializeAws_restJson1ListRouteCalculatorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -5996,65 +4833,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTrackerConsumersCommand = async ( @@ -6087,65 +4893,34 @@ const deserializeAws_restJson1ListTrackerConsumersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTrackersCommand = async ( @@ -6178,57 +4953,31 @@ const deserializeAws_restJson1ListTrackersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutGeofenceCommand = async ( @@ -6265,73 +5014,37 @@ const deserializeAws_restJson1PutGeofenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.location#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchPlaceIndexForPositionCommand = async ( @@ -6364,65 +5077,34 @@ const deserializeAws_restJson1SearchPlaceIndexForPositionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommand = async ( @@ -6455,65 +5137,34 @@ const deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchPlaceIndexForTextCommand = async ( @@ -6546,65 +5197,34 @@ const deserializeAws_restJson1SearchPlaceIndexForTextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -6629,65 +5249,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -6712,65 +5301,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGeofenceCollectionCommand = async ( @@ -6807,65 +5365,34 @@ const deserializeAws_restJson1UpdateGeofenceCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMapCommand = async ( @@ -6902,65 +5429,34 @@ const deserializeAws_restJson1UpdateMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePlaceIndexCommand = async ( @@ -6997,65 +5493,34 @@ const deserializeAws_restJson1UpdatePlaceIndexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRouteCalculatorCommand = async ( @@ -7092,65 +5557,34 @@ const deserializeAws_restJson1UpdateRouteCalculatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTrackerCommand = async ( @@ -7187,183 +5621,137 @@ const deserializeAws_restJson1UpdateTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.location#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.location#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.location#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.location#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.location#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - FieldList: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fieldList !== undefined && data.fieldList !== null) { contents.FieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context); @@ -7374,7 +5762,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.Reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1BatchPutGeofenceRequestEntry = ( diff --git a/clients/client-lookoutequipment/src/index.ts b/clients/client-lookoutequipment/src/index.ts index 839c3fc345214..9e14e705f7923 100644 --- a/clients/client-lookoutequipment/src/index.ts +++ b/clients/client-lookoutequipment/src/index.ts @@ -3,3 +3,4 @@ export * from "./LookoutEquipmentClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { LookoutEquipmentServiceException } from "./models/LookoutEquipmentServiceException"; diff --git a/clients/client-lookoutequipment/src/models/LookoutEquipmentServiceException.ts b/clients/client-lookoutequipment/src/models/LookoutEquipmentServiceException.ts new file mode 100644 index 0000000000000..7abec5a204a67 --- /dev/null +++ b/clients/client-lookoutequipment/src/models/LookoutEquipmentServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LookoutEquipment service. + */ +export class LookoutEquipmentServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LookoutEquipmentServiceException.prototype); + } +} diff --git a/clients/client-lookoutequipment/src/models/models_0.ts b/clients/client-lookoutequipment/src/models/models_0.ts index 6d12dcdcce90b..f36344735199b 100644 --- a/clients/client-lookoutequipment/src/models/models_0.ts +++ b/clients/client-lookoutequipment/src/models/models_0.ts @@ -1,24 +1,53 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LookoutEquipmentServiceException as __BaseException } from "./LookoutEquipmentServiceException"; /** *

The request could not be completed because you do not have access to the resource. *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

The request could not be completed due to a conflict with the current state of the * target resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -139,38 +168,86 @@ export namespace CreateDatasetResponse { *

Processing of the request has failed because of an unknown error, exception or failure. *

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

Resource limitations have been exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The input fails to satisfy constraints specified by Amazon Lookout for Equipment or a related AWS * service that's being utilized.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -427,10 +504,22 @@ export namespace CreateInferenceSchedulerResponse { *

The resource requested could not be found. Verify the resource ID and retry your * request.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export enum TargetSamplingRate { diff --git a/clients/client-lookoutequipment/src/protocols/Aws_json1_0.ts b/clients/client-lookoutequipment/src/protocols/Aws_json1_0.ts index f33bab230196a..741b12be4c854 100644 --- a/clients/client-lookoutequipment/src/protocols/Aws_json1_0.ts +++ b/clients/client-lookoutequipment/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -75,6 +74,7 @@ import { UpdateInferenceSchedulerCommandInput, UpdateInferenceSchedulerCommandOutput, } from "../commands/UpdateInferenceSchedulerCommand"; +import { LookoutEquipmentServiceException as __BaseException } from "../models/LookoutEquipmentServiceException"; import { AccessDeniedException, ConflictException, @@ -454,73 +454,37 @@ const deserializeAws_json1_0CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutequipment#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateInferenceSchedulerCommand = async ( @@ -548,81 +512,40 @@ const deserializeAws_json1_0CreateInferenceSchedulerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutequipment#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateModelCommand = async ( @@ -650,81 +573,40 @@ const deserializeAws_json1_0CreateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutequipment#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteDatasetCommand = async ( @@ -749,65 +631,34 @@ const deserializeAws_json1_0DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteInferenceSchedulerCommand = async ( @@ -832,73 +683,37 @@ const deserializeAws_json1_0DeleteInferenceSchedulerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteModelCommand = async ( @@ -923,65 +738,34 @@ const deserializeAws_json1_0DeleteModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeDataIngestionJobCommand = async ( @@ -1009,65 +793,34 @@ const deserializeAws_json1_0DescribeDataIngestionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeDatasetCommand = async ( @@ -1095,65 +848,34 @@ const deserializeAws_json1_0DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeInferenceSchedulerCommand = async ( @@ -1181,65 +903,34 @@ const deserializeAws_json1_0DescribeInferenceSchedulerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeModelCommand = async ( @@ -1267,65 +958,34 @@ const deserializeAws_json1_0DescribeModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListDataIngestionJobsCommand = async ( @@ -1353,57 +1013,31 @@ const deserializeAws_json1_0ListDataIngestionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListDatasetsCommand = async ( @@ -1431,57 +1065,31 @@ const deserializeAws_json1_0ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListInferenceExecutionsCommand = async ( @@ -1509,65 +1117,34 @@ const deserializeAws_json1_0ListInferenceExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListInferenceSchedulersCommand = async ( @@ -1595,57 +1172,31 @@ const deserializeAws_json1_0ListInferenceSchedulersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListModelsCommand = async ( @@ -1673,57 +1224,31 @@ const deserializeAws_json1_0ListModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -1751,65 +1276,34 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartDataIngestionJobCommand = async ( @@ -1837,81 +1331,40 @@ const deserializeAws_json1_0StartDataIngestionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutequipment#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartInferenceSchedulerCommand = async ( @@ -1939,73 +1392,37 @@ const deserializeAws_json1_0StartInferenceSchedulerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StopInferenceSchedulerCommand = async ( @@ -2033,73 +1450,37 @@ const deserializeAws_json1_0StopInferenceSchedulerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -2127,73 +1508,37 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutequipment#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -2221,65 +1566,34 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateInferenceSchedulerCommand = async ( @@ -2304,73 +1618,37 @@ const deserializeAws_json1_0UpdateInferenceSchedulerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutequipment#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutequipment#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutequipment#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutequipment#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutequipment#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutequipment#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -2379,13 +1657,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -2394,13 +1670,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -2409,13 +1683,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -2424,13 +1696,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( @@ -2439,13 +1709,11 @@ const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -2454,13 +1722,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -2469,13 +1735,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CreateDatasetRequest = (input: CreateDatasetRequest, context: __SerdeContext): any => { diff --git a/clients/client-lookoutmetrics/src/index.ts b/clients/client-lookoutmetrics/src/index.ts index aad55c2b538f1..266c6c4bf3d72 100644 --- a/clients/client-lookoutmetrics/src/index.ts +++ b/clients/client-lookoutmetrics/src/index.ts @@ -3,3 +3,4 @@ export * from "./LookoutMetricsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { LookoutMetricsServiceException } from "./models/LookoutMetricsServiceException"; diff --git a/clients/client-lookoutmetrics/src/models/LookoutMetricsServiceException.ts b/clients/client-lookoutmetrics/src/models/LookoutMetricsServiceException.ts new file mode 100644 index 0000000000000..795f6b3bbdf1c --- /dev/null +++ b/clients/client-lookoutmetrics/src/models/LookoutMetricsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LookoutMetrics service. + */ +export class LookoutMetricsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LookoutMetricsServiceException.prototype); + } +} diff --git a/clients/client-lookoutmetrics/src/models/models_0.ts b/clients/client-lookoutmetrics/src/models/models_0.ts index 353615eb56638..2d05153d0c312 100644 --- a/clients/client-lookoutmetrics/src/models/models_0.ts +++ b/clients/client-lookoutmetrics/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { LookoutMetricsServiceException as __BaseException } from "./LookoutMetricsServiceException"; /** *

You do not have sufficient permissions to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -112,9 +127,9 @@ export namespace ActivateAnomalyDetectorResponse { /** *

There was a conflict processing the request. Try your request again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -125,23 +140,49 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request processing has failed because of an unknown error, exception, or failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource cannot be found. Check the ARN of the resource and try again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -152,15 +193,41 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request was denied due to too many requests being submitted at the same time.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** @@ -198,9 +265,9 @@ export enum ValidationExceptionReason { *

The input fails to satisfy the constraints specified by the AWS service. Check your input values and try * again.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The reason that validation failed.

@@ -211,6 +278,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

Fields that failed validation.

*/ Fields?: ValidationExceptionField[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Fields = opts.Fields; + } } export enum AggregationFunction { @@ -889,9 +970,9 @@ export namespace CreateAlertResponse { /** *

The request exceeded the service's quotas. Check the service quotas and try again.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -912,6 +993,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The service code.

*/ ServiceCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } export interface CreateAnomalyDetectorRequest { diff --git a/clients/client-lookoutmetrics/src/protocols/Aws_restJson1.ts b/clients/client-lookoutmetrics/src/protocols/Aws_restJson1.ts index eea8e72ccd827..8950661fd4817 100644 --- a/clients/client-lookoutmetrics/src/protocols/Aws_restJson1.ts +++ b/clients/client-lookoutmetrics/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -84,6 +83,7 @@ import { UpdateAnomalyDetectorCommandOutput, } from "../commands/UpdateAnomalyDetectorCommand"; import { UpdateMetricSetCommandInput, UpdateMetricSetCommandOutput } from "../commands/UpdateMetricSetCommand"; +import { LookoutMetricsServiceException as __BaseException } from "../models/LookoutMetricsServiceException"; import { AccessDeniedException, Action, @@ -953,73 +953,37 @@ const deserializeAws_restJson1ActivateAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutmetrics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BackTestAnomalyDetectorCommand = async ( @@ -1044,65 +1008,34 @@ const deserializeAws_restJson1BackTestAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAlertCommand = async ( @@ -1131,81 +1064,40 @@ const deserializeAws_restJson1CreateAlertCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutmetrics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAnomalyDetectorCommand = async ( @@ -1234,73 +1126,37 @@ const deserializeAws_restJson1CreateAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutmetrics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMetricSetCommand = async ( @@ -1329,81 +1185,40 @@ const deserializeAws_restJson1CreateMetricSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutmetrics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeactivateAnomalyDetectorCommand = async ( @@ -1428,73 +1243,37 @@ const deserializeAws_restJson1DeactivateAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutmetrics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAlertCommand = async ( @@ -1519,65 +1298,34 @@ const deserializeAws_restJson1DeleteAlertCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAnomalyDetectorCommand = async ( @@ -1602,73 +1350,37 @@ const deserializeAws_restJson1DeleteAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutmetrics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAlertCommand = async ( @@ -1697,65 +1409,34 @@ const deserializeAws_restJson1DescribeAlertCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAnomalyDetectionExecutionsCommand = async ( @@ -1788,65 +1469,34 @@ const deserializeAws_restJson1DescribeAnomalyDetectionExecutionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAnomalyDetectorCommand = async ( @@ -1914,65 +1564,34 @@ const deserializeAws_restJson1DescribeAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMetricSetCommand = async ( @@ -2049,65 +1668,34 @@ const deserializeAws_restJson1DescribeMetricSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAnomalyGroupCommand = async ( @@ -2136,65 +1724,34 @@ const deserializeAws_restJson1GetAnomalyGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFeedbackCommand = async ( @@ -2230,65 +1787,34 @@ const deserializeAws_restJson1GetFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSampleDataCommand = async ( @@ -2321,65 +1847,34 @@ const deserializeAws_restJson1GetSampleDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAlertsCommand = async ( @@ -2412,65 +1907,34 @@ const deserializeAws_restJson1ListAlertsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnomalyDetectorsCommand = async ( @@ -2506,65 +1970,34 @@ const deserializeAws_restJson1ListAnomalyDetectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnomalyGroupRelatedMetricsCommand = async ( @@ -2597,65 +2030,34 @@ const deserializeAws_restJson1ListAnomalyGroupRelatedMetricsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnomalyGroupSummariesCommand = async ( @@ -2698,65 +2100,34 @@ const deserializeAws_restJson1ListAnomalyGroupSummariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnomalyGroupTimeSeriesCommand = async ( @@ -2801,65 +2172,34 @@ const deserializeAws_restJson1ListAnomalyGroupTimeSeriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMetricSetsCommand = async ( @@ -2892,65 +2232,34 @@ const deserializeAws_restJson1ListMetricSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2979,49 +2288,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFeedbackCommand = async ( @@ -3046,65 +2334,34 @@ const deserializeAws_restJson1PutFeedbackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3129,49 +2386,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3196,49 +2432,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAnomalyDetectorCommand = async ( @@ -3267,65 +2482,34 @@ const deserializeAws_restJson1UpdateAnomalyDetectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMetricSetCommand = async ( @@ -3354,104 +2538,60 @@ const deserializeAws_restJson1UpdateMetricSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutmetrics#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutmetrics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutmetrics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.lookoutmetrics#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutmetrics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3462,38 +2602,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3504,23 +2640,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - ResourceId: undefined, - ResourceType: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3537,38 +2668,34 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Fields: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Fields !== undefined && data.Fields !== null) { contents.Fields = deserializeAws_restJson1ValidationExceptionFieldList(data.Fields, context); @@ -3579,7 +2706,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Action = (input: Action, context: __SerdeContext): any => { diff --git a/clients/client-lookoutvision/src/index.ts b/clients/client-lookoutvision/src/index.ts index 5a008ed5cdd1c..d49e737cbb410 100644 --- a/clients/client-lookoutvision/src/index.ts +++ b/clients/client-lookoutvision/src/index.ts @@ -3,3 +3,4 @@ export * from "./LookoutVisionClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { LookoutVisionServiceException } from "./models/LookoutVisionServiceException"; diff --git a/clients/client-lookoutvision/src/models/LookoutVisionServiceException.ts b/clients/client-lookoutvision/src/models/LookoutVisionServiceException.ts new file mode 100644 index 0000000000000..38d7a0749b04c --- /dev/null +++ b/clients/client-lookoutvision/src/models/LookoutVisionServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from LookoutVision service. + */ +export class LookoutVisionServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, LookoutVisionServiceException.prototype); + } +} diff --git a/clients/client-lookoutvision/src/models/models_0.ts b/clients/client-lookoutvision/src/models/models_0.ts index 92b01d2e34615..a5b0586b8fa45 100644 --- a/clients/client-lookoutvision/src/models/models_0.ts +++ b/clients/client-lookoutvision/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { LookoutVisionServiceException as __BaseException } from "./LookoutVisionServiceException"; + /** *

You are not authorized to perform the action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ResourceType { @@ -21,9 +36,9 @@ export enum ResourceType { /** *

The update or deletion of a resource caused an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -34,6 +49,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource.

*/ ResourceType: ResourceType | string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** @@ -221,22 +250,35 @@ export namespace CreateDatasetResponse { /** *

Amazon Lookout for Vision experienced a service issue. Try your call again.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; /** *

The period of time, in seconds, before the operation can be retried.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

The resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -247,15 +289,29 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource.

*/ ResourceType: ResourceType | string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

A service quota was exceeded the allowed limit. For more information, see * Limits in Amazon Lookout for Vision in the Amazon Lookout for Vision Developer Guide.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -276,14 +332,30 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The service code.

*/ ServiceCode: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } /** *

Amazon Lookout for Vision is temporarily unable to process the request. Try your call again.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The quota code.

@@ -299,16 +371,43 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The period of time, in seconds, before the operation can be retried.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

An input validation error occured. For example, invalid characters in a project name, * or if a pagination token is invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-lookoutvision/src/protocols/Aws_restJson1.ts b/clients/client-lookoutvision/src/protocols/Aws_restJson1.ts index 6eb17d20ce6e4..ae8d8e6fba635 100644 --- a/clients/client-lookoutvision/src/protocols/Aws_restJson1.ts +++ b/clients/client-lookoutvision/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -57,6 +56,7 @@ import { UpdateDatasetEntriesCommandInput, UpdateDatasetEntriesCommandOutput, } from "../commands/UpdateDatasetEntriesCommand"; +import { LookoutVisionServiceException as __BaseException } from "../models/LookoutVisionServiceException"; import { AccessDeniedException, ConflictException, @@ -943,81 +943,40 @@ const deserializeAws_restJson1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutvision#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateModelCommand = async ( @@ -1046,81 +1005,40 @@ const deserializeAws_restJson1CreateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutvision#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProjectCommand = async ( @@ -1149,81 +1067,40 @@ const deserializeAws_restJson1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutvision#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDatasetCommand = async ( @@ -1248,73 +1125,37 @@ const deserializeAws_restJson1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteModelCommand = async ( @@ -1343,73 +1184,37 @@ const deserializeAws_restJson1DeleteModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProjectCommand = async ( @@ -1438,73 +1243,37 @@ const deserializeAws_restJson1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDatasetCommand = async ( @@ -1533,73 +1302,37 @@ const deserializeAws_restJson1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeModelCommand = async ( @@ -1628,73 +1361,37 @@ const deserializeAws_restJson1DescribeModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeModelPackagingJobCommand = async ( @@ -1726,65 +1423,34 @@ const deserializeAws_restJson1DescribeModelPackagingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProjectCommand = async ( @@ -1813,73 +1479,37 @@ const deserializeAws_restJson1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DetectAnomaliesCommand = async ( @@ -1908,73 +1538,37 @@ const deserializeAws_restJson1DetectAnomaliesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDatasetEntriesCommand = async ( @@ -2007,73 +1601,37 @@ const deserializeAws_restJson1ListDatasetEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListModelPackagingJobsCommand = async ( @@ -2106,65 +1664,34 @@ const deserializeAws_restJson1ListModelPackagingJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListModelsCommand = async ( @@ -2197,73 +1724,37 @@ const deserializeAws_restJson1ListModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectsCommand = async ( @@ -2296,73 +1787,37 @@ const deserializeAws_restJson1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2391,73 +1846,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartModelCommand = async ( @@ -2486,81 +1905,40 @@ const deserializeAws_restJson1StartModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutvision#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartModelPackagingJobCommand = async ( @@ -2589,81 +1967,40 @@ const deserializeAws_restJson1StartModelPackagingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutvision#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopModelCommand = async ( @@ -2692,73 +2029,37 @@ const deserializeAws_restJson1StopModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2783,81 +2084,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.lookoutvision#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2882,73 +2142,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDatasetEntriesCommand = async ( @@ -2977,104 +2201,60 @@ const deserializeAws_restJson1UpdateDatasetEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.lookoutvision#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.lookoutvision#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.lookoutvision#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.lookoutvision#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.lookoutvision#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.lookoutvision#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3085,20 +2265,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RetryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3106,21 +2284,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3131,23 +2306,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - ResourceId: undefined, - ResourceType: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3164,22 +2334,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - RetryAfterSeconds: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3193,24 +2359,27 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DatasetGroundTruthManifest = ( diff --git a/clients/client-machine-learning/src/index.ts b/clients/client-machine-learning/src/index.ts index fdeb1ec60df83..8839df220f591 100644 --- a/clients/client-machine-learning/src/index.ts +++ b/clients/client-machine-learning/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { MachineLearningServiceException } from "./models/MachineLearningServiceException"; diff --git a/clients/client-machine-learning/src/models/MachineLearningServiceException.ts b/clients/client-machine-learning/src/models/MachineLearningServiceException.ts new file mode 100644 index 0000000000000..af4234757de74 --- /dev/null +++ b/clients/client-machine-learning/src/models/MachineLearningServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MachineLearning service. + */ +export class MachineLearningServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MachineLearningServiceException.prototype); + } +} diff --git a/clients/client-machine-learning/src/models/models_0.ts b/clients/client-machine-learning/src/models/models_0.ts index ebd755b546adb..ddf58d92fca40 100644 --- a/clients/client-machine-learning/src/models/models_0.ts +++ b/clients/client-machine-learning/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MachineLearningServiceException as __BaseException } from "./MachineLearningServiceException"; export enum TaggableResourceType { BATCH_PREDICTION = "BatchPrediction", @@ -84,43 +87,96 @@ export namespace AddTagsOutput { /** *

An error on the server occurred when trying to process a request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.code = opts.code; + } } /** *

An error on the client occurred. Typically, the cause is an invalid input value.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - message?: string; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.code = opts.code; + } } -export interface InvalidTagException extends __SmithyException, $MetadataBearer { - name: "InvalidTagException"; - $fault: "client"; - message?: string; +export class InvalidTagException extends __BaseException { + readonly name: "InvalidTagException" = "InvalidTagException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagException.prototype); + } } /** *

A specified resource cannot be located.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + } } -export interface TagLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagLimitExceededException"; - $fault: "client"; - message?: string; +export class TagLimitExceededException extends __BaseException { + readonly name: "TagLimitExceededException" = "TagLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagLimitExceededException.prototype); + } } export enum Algorithm { @@ -191,11 +247,22 @@ export namespace CreateBatchPredictionOutput { /** *

A second request to use or change an object was not allowed. This can result from retrying a request using a parameter that was not present in the original request.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; - message?: string; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + this.code = opts.code; + } } /** @@ -3669,11 +3736,22 @@ export namespace GetMLModelOutput { /** *

The subscriber exceeded the maximum number of operations. This exception can occur when listing objects such as DataSource.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; code?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.code = opts.code; + } } export interface PredictInput { @@ -3702,10 +3780,20 @@ export namespace PredictInput { /** *

The exception is thrown when a predict request is made to an unmounted MLModel.

*/ -export interface PredictorNotMountedException extends __SmithyException, $MetadataBearer { - name: "PredictorNotMountedException"; - $fault: "client"; - message?: string; +export class PredictorNotMountedException extends __BaseException { + readonly name: "PredictorNotMountedException" = "PredictorNotMountedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PredictorNotMountedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PredictorNotMountedException.prototype); + } } export enum DetailsAttributes { diff --git a/clients/client-machine-learning/src/protocols/Aws_json1_1.ts b/clients/client-machine-learning/src/protocols/Aws_json1_1.ts index 9f452d9295ef8..90818c25f4c81 100644 --- a/clients/client-machine-learning/src/protocols/Aws_json1_1.ts +++ b/clients/client-machine-learning/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AddTagsCommandInput, AddTagsCommandOutput } from "../commands/AddTagsCommand"; @@ -80,6 +79,7 @@ import { import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "../commands/UpdateDataSourceCommand"; import { UpdateEvaluationCommandInput, UpdateEvaluationCommandOutput } from "../commands/UpdateEvaluationCommand"; import { UpdateMLModelCommandInput, UpdateMLModelCommandOutput } from "../commands/UpdateMLModelCommand"; +import { MachineLearningServiceException as __BaseException } from "../models/MachineLearningServiceException"; import { AddTagsInput, AddTagsOutput, @@ -554,65 +554,34 @@ const deserializeAws_json1_1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.machinelearning#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.machinelearning#TagLimitExceededException": - response = { - ...(await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBatchPredictionCommand = async ( @@ -640,49 +609,28 @@ const deserializeAws_json1_1CreateBatchPredictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.machinelearning#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataSourceFromRDSCommand = async ( @@ -710,49 +658,28 @@ const deserializeAws_json1_1CreateDataSourceFromRDSCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.machinelearning#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataSourceFromRedshiftCommand = async ( @@ -780,49 +707,28 @@ const deserializeAws_json1_1CreateDataSourceFromRedshiftCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.machinelearning#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataSourceFromS3Command = async ( @@ -850,49 +756,28 @@ const deserializeAws_json1_1CreateDataSourceFromS3CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.machinelearning#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEvaluationCommand = async ( @@ -920,49 +805,28 @@ const deserializeAws_json1_1CreateEvaluationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.machinelearning#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMLModelCommand = async ( @@ -990,49 +854,28 @@ const deserializeAws_json1_1CreateMLModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.machinelearning#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRealtimeEndpointCommand = async ( @@ -1060,49 +903,28 @@ const deserializeAws_json1_1CreateRealtimeEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBatchPredictionCommand = async ( @@ -1130,49 +952,28 @@ const deserializeAws_json1_1DeleteBatchPredictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDataSourceCommand = async ( @@ -1200,49 +1001,28 @@ const deserializeAws_json1_1DeleteDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEvaluationCommand = async ( @@ -1270,49 +1050,28 @@ const deserializeAws_json1_1DeleteEvaluationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMLModelCommand = async ( @@ -1340,49 +1099,28 @@ const deserializeAws_json1_1DeleteMLModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRealtimeEndpointCommand = async ( @@ -1410,49 +1148,28 @@ const deserializeAws_json1_1DeleteRealtimeEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTagsCommand = async ( @@ -1480,57 +1197,31 @@ const deserializeAws_json1_1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.machinelearning#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBatchPredictionsCommand = async ( @@ -1558,41 +1249,25 @@ const deserializeAws_json1_1DescribeBatchPredictionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDataSourcesCommand = async ( @@ -1620,41 +1295,25 @@ const deserializeAws_json1_1DescribeDataSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEvaluationsCommand = async ( @@ -1682,41 +1341,25 @@ const deserializeAws_json1_1DescribeEvaluationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMLModelsCommand = async ( @@ -1744,41 +1387,25 @@ const deserializeAws_json1_1DescribeMLModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTagsCommand = async ( @@ -1806,49 +1433,28 @@ const deserializeAws_json1_1DescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetBatchPredictionCommand = async ( @@ -1876,49 +1482,28 @@ const deserializeAws_json1_1GetBatchPredictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDataSourceCommand = async ( @@ -1946,49 +1531,28 @@ const deserializeAws_json1_1GetDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetEvaluationCommand = async ( @@ -2016,49 +1580,28 @@ const deserializeAws_json1_1GetEvaluationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMLModelCommand = async ( @@ -2086,49 +1629,28 @@ const deserializeAws_json1_1GetMLModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PredictCommand = async ( @@ -2156,65 +1678,34 @@ const deserializeAws_json1_1PredictCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.machinelearning#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "PredictorNotMountedException": case "com.amazonaws.machinelearning#PredictorNotMountedException": - response = { - ...(await deserializeAws_json1_1PredictorNotMountedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PredictorNotMountedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBatchPredictionCommand = async ( @@ -2242,49 +1733,28 @@ const deserializeAws_json1_1UpdateBatchPredictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDataSourceCommand = async ( @@ -2312,49 +1782,28 @@ const deserializeAws_json1_1UpdateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEvaluationCommand = async ( @@ -2382,49 +1831,28 @@ const deserializeAws_json1_1UpdateEvaluationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMLModelCommand = async ( @@ -2452,49 +1880,28 @@ const deserializeAws_json1_1UpdateMLModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.machinelearning#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.machinelearning#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.machinelearning#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ( @@ -2503,13 +1910,11 @@ const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotentParameterMismatchException(body, context); - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", + const exception = new IdempotentParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -2518,13 +1923,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -2533,13 +1936,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagExceptionResponse = async ( @@ -2548,13 +1949,11 @@ const deserializeAws_json1_1InvalidTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagException(body, context); - const contents: InvalidTagException = { - name: "InvalidTagException", - $fault: "client", + const exception = new InvalidTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2563,13 +1962,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PredictorNotMountedExceptionResponse = async ( @@ -2578,13 +1975,11 @@ const deserializeAws_json1_1PredictorNotMountedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PredictorNotMountedException(body, context); - const contents: PredictorNotMountedException = { - name: "PredictorNotMountedException", - $fault: "client", + const exception = new PredictorNotMountedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2593,13 +1988,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagLimitExceededExceptionResponse = async ( @@ -2608,13 +2001,11 @@ const deserializeAws_json1_1TagLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagLimitExceededException(body, context); - const contents: TagLimitExceededException = { - name: "TagLimitExceededException", - $fault: "client", + const exception = new TagLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddTagsInput = (input: AddTagsInput, context: __SerdeContext): any => { diff --git a/clients/client-macie/src/index.ts b/clients/client-macie/src/index.ts index a29cf3a5ef41c..b2b6aa4566697 100644 --- a/clients/client-macie/src/index.ts +++ b/clients/client-macie/src/index.ts @@ -3,3 +3,4 @@ export * from "./MacieClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MacieServiceException } from "./models/MacieServiceException"; diff --git a/clients/client-macie/src/models/MacieServiceException.ts b/clients/client-macie/src/models/MacieServiceException.ts new file mode 100644 index 0000000000000..b44518e02c339 --- /dev/null +++ b/clients/client-macie/src/models/MacieServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Macie service. + */ +export class MacieServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MacieServiceException.prototype); + } +} diff --git a/clients/client-macie/src/models/models_0.ts b/clients/client-macie/src/models/models_0.ts index bbb89761934fd..0c72228cf9197 100644 --- a/clients/client-macie/src/models/models_0.ts +++ b/clients/client-macie/src/models/models_0.ts @@ -1,16 +1,31 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MacieServiceException as __BaseException } from "./MacieServiceException"; /** *

You do not have required permissions to access the requested resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** * Resource type that caused the exception */ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.resourceType = opts.resourceType; + } } export interface AssociateMemberAccountRequest { @@ -33,53 +48,90 @@ export namespace AssociateMemberAccountRequest { /** *

Internal server error.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; /** * Error code for the exception */ errorCode?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + this.errorCode = opts.errorCode; + } } /** *

The request was rejected because an invalid or out-of-range value was supplied for an * input parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; /** * Error code for the exception */ errorCode?: string; - message?: string; /** * Field that has invalid input */ fieldName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.errorCode = opts.errorCode; + this.fieldName = opts.fieldName; + } } /** *

The request was rejected because it attempted to create resources beyond the current * AWS account limits. The error code describes the limit exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** * Error code for the exception */ errorCode?: string; - message?: string; /** * Resource type that caused the exception */ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.errorCode = opts.errorCode; + this.resourceType = opts.resourceType; + } } export enum S3ContinuousClassificationType { diff --git a/clients/client-macie/src/protocols/Aws_json1_1.ts b/clients/client-macie/src/protocols/Aws_json1_1.ts index 8dd7c41499aa4..20a998933e210 100644 --- a/clients/client-macie/src/protocols/Aws_json1_1.ts +++ b/clients/client-macie/src/protocols/Aws_json1_1.ts @@ -1,12 +1,13 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -28,6 +29,7 @@ import { import { ListMemberAccountsCommandInput, ListMemberAccountsCommandOutput } from "../commands/ListMemberAccountsCommand"; import { ListS3ResourcesCommandInput, ListS3ResourcesCommandOutput } from "../commands/ListS3ResourcesCommand"; import { UpdateS3ResourcesCommandInput, UpdateS3ResourcesCommandOutput } from "../commands/UpdateS3ResourcesCommand"; +import { MacieServiceException as __BaseException } from "../models/MacieServiceException"; import { AccessDeniedException, AssociateMemberAccountRequest, @@ -167,49 +169,28 @@ const deserializeAws_json1_1AssociateMemberAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.macie#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateS3ResourcesCommand = async ( @@ -237,57 +218,31 @@ const deserializeAws_json1_1AssociateS3ResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.macie#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateMemberAccountCommand = async ( @@ -312,41 +267,25 @@ const deserializeAws_json1_1DisassociateMemberAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateS3ResourcesCommand = async ( @@ -374,49 +313,28 @@ const deserializeAws_json1_1DisassociateS3ResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMemberAccountsCommand = async ( @@ -444,41 +362,25 @@ const deserializeAws_json1_1ListMemberAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListS3ResourcesCommand = async ( @@ -506,49 +408,28 @@ const deserializeAws_json1_1ListS3ResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateS3ResourcesCommand = async ( @@ -576,49 +457,28 @@ const deserializeAws_json1_1UpdateS3ResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.macie#InternalException": - response = { - ...(await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.macie#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -627,13 +487,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalExceptionResponse = async ( @@ -642,13 +500,11 @@ const deserializeAws_json1_1InternalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalException(body, context); - const contents: InternalException = { - name: "InternalException", - $fault: "server", + const exception = new InternalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -657,13 +513,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -672,13 +526,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateMemberAccountRequest = ( diff --git a/clients/client-macie2/src/index.ts b/clients/client-macie2/src/index.ts index fa14efa494b2c..72c61e9d7fcf1 100644 --- a/clients/client-macie2/src/index.ts +++ b/clients/client-macie2/src/index.ts @@ -3,3 +3,4 @@ export * from "./Macie2Client"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { Macie2ServiceException } from "./models/Macie2ServiceException"; diff --git a/clients/client-macie2/src/models/Macie2ServiceException.ts b/clients/client-macie2/src/models/Macie2ServiceException.ts new file mode 100644 index 0000000000000..4839e06a7663a --- /dev/null +++ b/clients/client-macie2/src/models/Macie2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Macie2 service. + */ +export class Macie2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Macie2ServiceException.prototype); + } +} diff --git a/clients/client-macie2/src/models/models_0.ts b/clients/client-macie2/src/models/models_0.ts index f41ca64f51022..a572e3b2c3da8 100644 --- a/clients/client-macie2/src/models/models_0.ts +++ b/clients/client-macie2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Macie2ServiceException as __BaseException } from "./Macie2ServiceException"; export enum AdminStatus { DISABLING_IN_PROGRESS = "DISABLING_IN_PROGRESS", @@ -3129,85 +3132,134 @@ export namespace AcceptInvitationResponse { /** *

Provides information about an error that occurred due to insufficient access to a specified resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

Provides information about an error that occurred due to a versioning conflict for a specified resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** *

Provides information about an error that occurred due to an unknown internal server error, exception, or failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

Provides information about an error that occurred because a specified resource wasn't found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

Provides information about an error that occurred due to one or more service quotas for an account.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

Provides information about an error that occurred because too many requests were sent during a certain amount of time.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

Provides information about an error that occurred due to a syntax error in a request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

The explanation of the error that occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** diff --git a/clients/client-macie2/src/protocols/Aws_restJson1.ts b/clients/client-macie2/src/protocols/Aws_restJson1.ts index c3f19afbdd34f..c7643e8f62f0d 100644 --- a/clients/client-macie2/src/protocols/Aws_restJson1.ts +++ b/clients/client-macie2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -175,6 +174,7 @@ import { UpdateOrganizationConfigurationCommandInput, UpdateOrganizationConfigurationCommandOutput, } from "../commands/UpdateOrganizationConfigurationCommand"; +import { Macie2ServiceException as __BaseException } from "../models/Macie2ServiceException"; import { _Record, AccessControlList, @@ -1921,81 +1921,40 @@ const deserializeAws_restJson1AcceptInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchGetCustomDataIdentifiersCommand = async ( @@ -2031,81 +1990,40 @@ const deserializeAws_restJson1BatchGetCustomDataIdentifiersCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateClassificationJobCommand = async ( @@ -2138,81 +2056,40 @@ const deserializeAws_restJson1CreateClassificationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCustomDataIdentifierCommand = async ( @@ -2241,81 +2118,40 @@ const deserializeAws_restJson1CreateCustomDataIdentifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFindingsFilterCommand = async ( @@ -2348,81 +2184,40 @@ const deserializeAws_restJson1CreateFindingsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInvitationsCommand = async ( @@ -2454,81 +2249,40 @@ const deserializeAws_restJson1CreateInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMemberCommand = async ( @@ -2557,81 +2311,40 @@ const deserializeAws_restJson1CreateMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSampleFindingsCommand = async ( @@ -2656,81 +2369,40 @@ const deserializeAws_restJson1CreateSampleFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeclineInvitationsCommand = async ( @@ -2762,81 +2434,40 @@ const deserializeAws_restJson1DeclineInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCustomDataIdentifierCommand = async ( @@ -2861,81 +2492,40 @@ const deserializeAws_restJson1DeleteCustomDataIdentifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFindingsFilterCommand = async ( @@ -2960,81 +2550,40 @@ const deserializeAws_restJson1DeleteFindingsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInvitationsCommand = async ( @@ -3066,81 +2615,40 @@ const deserializeAws_restJson1DeleteInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMemberCommand = async ( @@ -3165,81 +2673,40 @@ const deserializeAws_restJson1DeleteMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBucketsCommand = async ( @@ -3272,81 +2739,40 @@ const deserializeAws_restJson1DescribeBucketsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeClassificationJobCommand = async ( @@ -3454,81 +2880,40 @@ const deserializeAws_restJson1DescribeClassificationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationConfigurationCommand = async ( @@ -3561,81 +2946,40 @@ const deserializeAws_restJson1DescribeOrganizationConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableMacieCommand = async ( @@ -3660,81 +3004,40 @@ const deserializeAws_restJson1DisableMacieCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableOrganizationAdminAccountCommand = async ( @@ -3759,81 +3062,40 @@ const deserializeAws_restJson1DisableOrganizationAdminAccountCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateFromAdministratorAccountCommand = async ( @@ -3858,81 +3120,40 @@ const deserializeAws_restJson1DisassociateFromAdministratorAccountCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateFromMasterAccountCommand = async ( @@ -3957,81 +3178,40 @@ const deserializeAws_restJson1DisassociateFromMasterAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateMemberCommand = async ( @@ -4056,81 +3236,40 @@ const deserializeAws_restJson1DisassociateMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableMacieCommand = async ( @@ -4155,81 +3294,40 @@ const deserializeAws_restJson1EnableMacieCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableOrganizationAdminAccountCommand = async ( @@ -4254,81 +3352,40 @@ const deserializeAws_restJson1EnableOrganizationAdminAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAdministratorAccountCommand = async ( @@ -4357,81 +3414,40 @@ const deserializeAws_restJson1GetAdministratorAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBucketStatisticsCommand = async ( @@ -4530,81 +3546,40 @@ const deserializeAws_restJson1GetBucketStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetClassificationExportConfigurationCommand = async ( @@ -4633,81 +3608,40 @@ const deserializeAws_restJson1GetClassificationExportConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCustomDataIdentifierCommand = async ( @@ -4780,81 +3714,40 @@ const deserializeAws_restJson1GetCustomDataIdentifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsCommand = async ( @@ -4883,81 +3776,40 @@ const deserializeAws_restJson1GetFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsFilterCommand = async ( @@ -5014,81 +3866,40 @@ const deserializeAws_restJson1GetFindingsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsPublicationConfigurationCommand = async ( @@ -5120,81 +3931,40 @@ const deserializeAws_restJson1GetFindingsPublicationConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingStatisticsCommand = async ( @@ -5223,81 +3993,40 @@ const deserializeAws_restJson1GetFindingStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInvitationsCountCommand = async ( @@ -5326,81 +4055,40 @@ const deserializeAws_restJson1GetInvitationsCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMacieSessionCommand = async ( @@ -5445,81 +4133,40 @@ const deserializeAws_restJson1GetMacieSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMasterAccountCommand = async ( @@ -5548,81 +4195,40 @@ const deserializeAws_restJson1GetMasterAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMemberCommand = async ( @@ -5683,81 +4289,40 @@ const deserializeAws_restJson1GetMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsageStatisticsCommand = async ( @@ -5794,81 +4359,40 @@ const deserializeAws_restJson1GetUsageStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUsageTotalsCommand = async ( @@ -5901,81 +4425,40 @@ const deserializeAws_restJson1GetUsageTotalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClassificationJobsCommand = async ( @@ -6008,81 +4491,40 @@ const deserializeAws_restJson1ListClassificationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCustomDataIdentifiersCommand = async ( @@ -6115,81 +4557,40 @@ const deserializeAws_restJson1ListCustomDataIdentifiersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingsCommand = async ( @@ -6222,81 +4623,40 @@ const deserializeAws_restJson1ListFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingsFiltersCommand = async ( @@ -6332,81 +4692,40 @@ const deserializeAws_restJson1ListFindingsFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInvitationsCommand = async ( @@ -6439,81 +4758,40 @@ const deserializeAws_restJson1ListInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListManagedDataIdentifiersCommand = async ( @@ -6546,25 +4824,19 @@ const deserializeAws_restJson1ListManagedDataIdentifiersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMembersCommand = async ( @@ -6597,81 +4869,40 @@ const deserializeAws_restJson1ListMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOrganizationAdminAccountsCommand = async ( @@ -6704,81 +4935,40 @@ const deserializeAws_restJson1ListOrganizationAdminAccountsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -6807,25 +4997,19 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutClassificationExportConfigurationCommand = async ( @@ -6854,81 +5038,40 @@ const deserializeAws_restJson1PutClassificationExportConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutFindingsPublicationConfigurationCommand = async ( @@ -6953,81 +5096,40 @@ const deserializeAws_restJson1PutFindingsPublicationConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchResourcesCommand = async ( @@ -7060,81 +5162,40 @@ const deserializeAws_restJson1SearchResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -7159,25 +5220,19 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestCustomDataIdentifierCommand = async ( @@ -7206,81 +5261,40 @@ const deserializeAws_restJson1TestCustomDataIdentifierCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -7305,25 +5319,19 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateClassificationJobCommand = async ( @@ -7348,81 +5356,40 @@ const deserializeAws_restJson1UpdateClassificationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFindingsFilterCommand = async ( @@ -7455,81 +5422,40 @@ const deserializeAws_restJson1UpdateFindingsFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMacieSessionCommand = async ( @@ -7554,81 +5480,40 @@ const deserializeAws_restJson1UpdateMacieSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMemberSessionCommand = async ( @@ -7653,81 +5538,40 @@ const deserializeAws_restJson1UpdateMemberSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOrganizationConfigurationCommand = async ( @@ -7752,200 +5596,152 @@ const deserializeAws_restJson1UpdateOrganizationConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.macie2#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.macie2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.macie2#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.macie2#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.macie2#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.macie2#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.macie2#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-managedblockchain/src/index.ts b/clients/client-managedblockchain/src/index.ts index 9272cc46452f6..eb8dfed63a78f 100644 --- a/clients/client-managedblockchain/src/index.ts +++ b/clients/client-managedblockchain/src/index.ts @@ -3,3 +3,4 @@ export * from "./ManagedBlockchainClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ManagedBlockchainServiceException } from "./models/ManagedBlockchainServiceException"; diff --git a/clients/client-managedblockchain/src/models/ManagedBlockchainServiceException.ts b/clients/client-managedblockchain/src/models/ManagedBlockchainServiceException.ts new file mode 100644 index 0000000000000..aec003c399a97 --- /dev/null +++ b/clients/client-managedblockchain/src/models/ManagedBlockchainServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ManagedBlockchain service. + */ +export class ManagedBlockchainServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ManagedBlockchainServiceException.prototype); + } +} diff --git a/clients/client-managedblockchain/src/models/models_0.ts b/clients/client-managedblockchain/src/models/models_0.ts index 45b00e8809d37..267fd6db25d5a 100644 --- a/clients/client-managedblockchain/src/models/models_0.ts +++ b/clients/client-managedblockchain/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ManagedBlockchainServiceException as __BaseException } from "./ManagedBlockchainServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ThresholdComparator { @@ -282,79 +296,175 @@ export namespace CreateMemberOutput { /** *

The request processing has failed because of an unknown error, exception or failure.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + } } /** *

The action or operation requested is invalid. Verify that the action is typed correctly.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

A resource request is issued for a resource that already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The maximum number of resources of that type already exist. Ensure the resources requested are within the boundaries of the service edition and your account limits.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

A requested resource does not exist. It may have been deleted or referenced inaccurately.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

A requested resource does not exist. It may have been deleted or referenced inaccurately.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } /** *

The requested resource exists but is not in a status that can complete the operation.

*/ -export interface ResourceNotReadyException extends __SmithyException, $MetadataBearer { - name: "ResourceNotReadyException"; - $fault: "client"; +export class ResourceNotReadyException extends __BaseException { + readonly name: "ResourceNotReadyException" = "ResourceNotReadyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotReadyException.prototype); + this.Message = opts.Message; + } } /** *

The request or operation could not be performed because a service is throttling requests. The most common source of throttling errors is launching EC2 instances such that your service limit for EC2 instances is exceeded. Request a limit increase or delete unused resources if possible.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export enum Framework { @@ -1697,10 +1807,22 @@ export namespace GetProposalOutput { /** *

*/ -export interface IllegalActionException extends __SmithyException, $MetadataBearer { - name: "IllegalActionException"; - $fault: "client"; +export class IllegalActionException extends __BaseException { + readonly name: "IllegalActionException" = "IllegalActionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalActionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalActionException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-managedblockchain/src/protocols/Aws_restJson1.ts b/clients/client-managedblockchain/src/protocols/Aws_restJson1.ts index edd9e10473c8e..6493b9dda0218 100644 --- a/clients/client-managedblockchain/src/protocols/Aws_restJson1.ts +++ b/clients/client-managedblockchain/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -43,6 +42,7 @@ import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../comman import { UpdateMemberCommandInput, UpdateMemberCommandOutput } from "../commands/UpdateMemberCommand"; import { UpdateNodeCommandInput, UpdateNodeCommandOutput } from "../commands/UpdateNodeCommand"; import { VoteOnProposalCommandInput, VoteOnProposalCommandOutput } from "../commands/VoteOnProposalCommand"; +import { ManagedBlockchainServiceException as __BaseException } from "../models/ManagedBlockchainServiceException"; import { AccessDeniedException, ApprovalThresholdPolicy, @@ -977,97 +977,46 @@ const deserializeAws_restJson1CreateMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.managedblockchain#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.managedblockchain#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.managedblockchain#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNetworkCommand = async ( @@ -1100,81 +1049,40 @@ const deserializeAws_restJson1CreateNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.managedblockchain#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.managedblockchain#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.managedblockchain#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNodeCommand = async ( @@ -1203,97 +1111,46 @@ const deserializeAws_restJson1CreateNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.managedblockchain#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.managedblockchain#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.managedblockchain#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProposalCommand = async ( @@ -1322,81 +1179,40 @@ const deserializeAws_restJson1CreateProposalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.managedblockchain#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMemberCommand = async ( @@ -1421,73 +1237,37 @@ const deserializeAws_restJson1DeleteMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteNodeCommand = async ( @@ -1512,73 +1292,37 @@ const deserializeAws_restJson1DeleteNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMemberCommand = async ( @@ -1607,65 +1351,34 @@ const deserializeAws_restJson1GetMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkCommand = async ( @@ -1694,65 +1407,34 @@ const deserializeAws_restJson1GetNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNodeCommand = async ( @@ -1781,65 +1463,34 @@ const deserializeAws_restJson1GetNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetProposalCommand = async ( @@ -1868,65 +1519,34 @@ const deserializeAws_restJson1GetProposalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInvitationsCommand = async ( @@ -1959,73 +1579,37 @@ const deserializeAws_restJson1ListInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.managedblockchain#ResourceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMembersCommand = async ( @@ -2058,57 +1642,31 @@ const deserializeAws_restJson1ListMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNetworksCommand = async ( @@ -2141,57 +1699,31 @@ const deserializeAws_restJson1ListNetworksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNodesCommand = async ( @@ -2224,57 +1756,31 @@ const deserializeAws_restJson1ListNodesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProposalsCommand = async ( @@ -2307,65 +1813,34 @@ const deserializeAws_restJson1ListProposalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProposalVotesCommand = async ( @@ -2398,57 +1873,31 @@ const deserializeAws_restJson1ListProposalVotesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2477,57 +1926,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectInvitationCommand = async ( @@ -2552,73 +1975,37 @@ const deserializeAws_restJson1RejectInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalActionException": case "com.amazonaws.managedblockchain#IllegalActionException": - response = { - ...(await deserializeAws_restJson1IllegalActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IllegalActionExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2643,65 +2030,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.managedblockchain#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2726,57 +2082,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.managedblockchain#ResourceNotReadyException": - response = { - ...(await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotReadyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMemberCommand = async ( @@ -2801,65 +2131,34 @@ const deserializeAws_restJson1UpdateMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNodeCommand = async ( @@ -2884,65 +2183,34 @@ const deserializeAws_restJson1UpdateNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1VoteOnProposalCommand = async ( @@ -2967,184 +2235,137 @@ const deserializeAws_restJson1VoteOnProposalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.managedblockchain#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalActionException": case "com.amazonaws.managedblockchain#IllegalActionException": - response = { - ...(await deserializeAws_restJson1IllegalActionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IllegalActionExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.managedblockchain#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.managedblockchain#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.managedblockchain#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.managedblockchain#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IllegalActionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IllegalActionException = { - name: "IllegalActionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IllegalActionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new InternalServiceErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3152,50 +2373,47 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceName !== undefined && data.ResourceName !== null) { contents.ResourceName = __expectString(data.ResourceName); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotReadyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotReadyException = { - name: "ResourceNotReadyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotReadyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3203,7 +2421,11 @@ const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( if (data.ResourceName !== undefined && data.ResourceName !== null) { contents.ResourceName = __expectString(data.ResourceName); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ApprovalThresholdPolicy = ( diff --git a/clients/client-marketplace-catalog/src/index.ts b/clients/client-marketplace-catalog/src/index.ts index 69b44ee7a6b36..6fcd4b4ce6475 100644 --- a/clients/client-marketplace-catalog/src/index.ts +++ b/clients/client-marketplace-catalog/src/index.ts @@ -3,3 +3,4 @@ export * from "./MarketplaceCatalogClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MarketplaceCatalogServiceException } from "./models/MarketplaceCatalogServiceException"; diff --git a/clients/client-marketplace-catalog/src/models/MarketplaceCatalogServiceException.ts b/clients/client-marketplace-catalog/src/models/MarketplaceCatalogServiceException.ts new file mode 100644 index 0000000000000..c209bd010d552 --- /dev/null +++ b/clients/client-marketplace-catalog/src/models/MarketplaceCatalogServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MarketplaceCatalog service. + */ +export class MarketplaceCatalogServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MarketplaceCatalogServiceException.prototype); + } +} diff --git a/clients/client-marketplace-catalog/src/models/models_0.ts b/clients/client-marketplace-catalog/src/models/models_0.ts index 956a17aff69a3..500c382768ff1 100644 --- a/clients/client-marketplace-catalog/src/models/models_0.ts +++ b/clients/client-marketplace-catalog/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MarketplaceCatalogServiceException as __BaseException } from "./MarketplaceCatalogServiceException"; /** *

Access is denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface CancelChangeSetRequest { @@ -56,46 +71,106 @@ export namespace CancelChangeSetResponse { /** *

There was an internal service exception.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

The resource is currently in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource wasn't found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Too many requests.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

An error occurred during validation.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DescribeChangeSetRequest { @@ -355,10 +430,22 @@ export namespace DescribeEntityResponse { /** *

Currently, the specified resource is not supported.

*/ -export interface ResourceNotSupportedException extends __SmithyException, $MetadataBearer { - name: "ResourceNotSupportedException"; - $fault: "client"; +export class ResourceNotSupportedException extends __BaseException { + readonly name: "ResourceNotSupportedException" = "ResourceNotSupportedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotSupportedException.prototype); + this.Message = opts.Message; + } } /** @@ -715,10 +802,22 @@ export namespace ListEntitiesResponse { /** *

The maximum number of open requests per account has been exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-marketplace-catalog/src/protocols/Aws_restJson1.ts b/clients/client-marketplace-catalog/src/protocols/Aws_restJson1.ts index 14d1105beee3d..92fa161c8c5fb 100644 --- a/clients/client-marketplace-catalog/src/protocols/Aws_restJson1.ts +++ b/clients/client-marketplace-catalog/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelChangeSetCommandInput, CancelChangeSetCommandOutput } from "../commands/CancelChangeSetCommand"; @@ -19,6 +18,7 @@ import { DescribeEntityCommandInput, DescribeEntityCommandOutput } from "../comm import { ListChangeSetsCommandInput, ListChangeSetsCommandOutput } from "../commands/ListChangeSetsCommand"; import { ListEntitiesCommandInput, ListEntitiesCommandOutput } from "../commands/ListEntitiesCommand"; import { StartChangeSetCommandInput, StartChangeSetCommandOutput } from "../commands/StartChangeSetCommand"; +import { MarketplaceCatalogServiceException as __BaseException } from "../models/MarketplaceCatalogServiceException"; import { AccessDeniedException, Change, @@ -228,73 +228,37 @@ const deserializeAws_restJson1CancelChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.marketplacecatalog#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.marketplacecatalog#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.marketplacecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.marketplacecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacecatalog#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.marketplacecatalog#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChangeSetCommand = async ( @@ -355,65 +319,34 @@ const deserializeAws_restJson1DescribeChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.marketplacecatalog#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.marketplacecatalog#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.marketplacecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacecatalog#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.marketplacecatalog#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeEntityCommand = async ( @@ -458,73 +391,37 @@ const deserializeAws_restJson1DescribeEntityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.marketplacecatalog#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.marketplacecatalog#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.marketplacecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotSupportedException": case "com.amazonaws.marketplacecatalog#ResourceNotSupportedException": - response = { - ...(await deserializeAws_restJson1ResourceNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotSupportedExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacecatalog#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.marketplacecatalog#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChangeSetsCommand = async ( @@ -557,57 +454,31 @@ const deserializeAws_restJson1ListChangeSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.marketplacecatalog#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.marketplacecatalog#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacecatalog#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.marketplacecatalog#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEntitiesCommand = async ( @@ -640,65 +511,34 @@ const deserializeAws_restJson1ListEntitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.marketplacecatalog#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.marketplacecatalog#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.marketplacecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacecatalog#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.marketplacecatalog#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartChangeSetCommand = async ( @@ -731,217 +571,168 @@ const deserializeAws_restJson1StartChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.marketplacecatalog#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.marketplacecatalog#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.marketplacecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.marketplacecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.marketplacecatalog#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacecatalog#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.marketplacecatalog#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotSupportedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotSupportedException = { - name: "ResourceNotSupportedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotSupportedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Change = (input: Change, context: __SerdeContext): any => { diff --git a/clients/client-marketplace-commerce-analytics/src/index.ts b/clients/client-marketplace-commerce-analytics/src/index.ts index 171d711c26401..43a3d534faa93 100644 --- a/clients/client-marketplace-commerce-analytics/src/index.ts +++ b/clients/client-marketplace-commerce-analytics/src/index.ts @@ -2,3 +2,4 @@ export * from "./MarketplaceCommerceAnalytics"; export * from "./MarketplaceCommerceAnalyticsClient"; export * from "./commands"; export * from "./models"; +export { MarketplaceCommerceAnalyticsServiceException } from "./models/MarketplaceCommerceAnalyticsServiceException"; diff --git a/clients/client-marketplace-commerce-analytics/src/models/MarketplaceCommerceAnalyticsServiceException.ts b/clients/client-marketplace-commerce-analytics/src/models/MarketplaceCommerceAnalyticsServiceException.ts new file mode 100644 index 0000000000000..501c2869c018e --- /dev/null +++ b/clients/client-marketplace-commerce-analytics/src/models/MarketplaceCommerceAnalyticsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MarketplaceCommerceAnalytics service. + */ +export class MarketplaceCommerceAnalyticsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MarketplaceCommerceAnalyticsServiceException.prototype); + } +} diff --git a/clients/client-marketplace-commerce-analytics/src/models/models_0.ts b/clients/client-marketplace-commerce-analytics/src/models/models_0.ts index d562ba5840de6..1cc10467f8a8d 100644 --- a/clients/client-marketplace-commerce-analytics/src/models/models_0.ts +++ b/clients/client-marketplace-commerce-analytics/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MarketplaceCommerceAnalyticsServiceException as __BaseException } from "./MarketplaceCommerceAnalyticsServiceException"; export enum DataSetType { CUSTOMER_PROFILE_BY_GEOGRAPHY = "customer_profile_by_geography", @@ -216,13 +219,20 @@ export namespace GenerateDataSetResult { /** * This exception is thrown when an internal service error occurs. */ -export interface MarketplaceCommerceAnalyticsException extends __SmithyException, $MetadataBearer { - name: "MarketplaceCommerceAnalyticsException"; - $fault: "server"; +export class MarketplaceCommerceAnalyticsException extends __BaseException { + readonly name: "MarketplaceCommerceAnalyticsException" = "MarketplaceCommerceAnalyticsException"; + readonly $fault: "server" = "server"; /** - * This message describes details of the error. + * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MarketplaceCommerceAnalyticsException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, MarketplaceCommerceAnalyticsException.prototype); + } } export type SupportDataSetType = "customer_support_contacts_data" | "test_customer_support_contacts_data"; diff --git a/clients/client-marketplace-commerce-analytics/src/protocols/Aws_json1_1.ts b/clients/client-marketplace-commerce-analytics/src/protocols/Aws_json1_1.ts index 9b8962475b18c..be3dd0b4a271c 100644 --- a/clients/client-marketplace-commerce-analytics/src/protocols/Aws_json1_1.ts +++ b/clients/client-marketplace-commerce-analytics/src/protocols/Aws_json1_1.ts @@ -1,12 +1,13 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { GenerateDataSetCommandInput, GenerateDataSetCommandOutput } from "../commands/GenerateDataSetCommand"; @@ -14,6 +15,7 @@ import { StartSupportDataExportCommandInput, StartSupportDataExportCommandOutput, } from "../commands/StartSupportDataExportCommand"; +import { MarketplaceCommerceAnalyticsServiceException as __BaseException } from "../models/MarketplaceCommerceAnalyticsServiceException"; import { GenerateDataSetRequest, GenerateDataSetResult, @@ -73,33 +75,22 @@ const deserializeAws_json1_1GenerateDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "MarketplaceCommerceAnalyticsException": case "com.amazonaws.marketplacecommerceanalytics#MarketplaceCommerceAnalyticsException": - response = { - ...(await deserializeAws_json1_1MarketplaceCommerceAnalyticsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MarketplaceCommerceAnalyticsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSupportDataExportCommand = async ( @@ -127,33 +118,22 @@ const deserializeAws_json1_1StartSupportDataExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "MarketplaceCommerceAnalyticsException": case "com.amazonaws.marketplacecommerceanalytics#MarketplaceCommerceAnalyticsException": - response = { - ...(await deserializeAws_json1_1MarketplaceCommerceAnalyticsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MarketplaceCommerceAnalyticsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1MarketplaceCommerceAnalyticsExceptionResponse = async ( @@ -162,13 +142,11 @@ const deserializeAws_json1_1MarketplaceCommerceAnalyticsExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MarketplaceCommerceAnalyticsException(body, context); - const contents: MarketplaceCommerceAnalyticsException = { - name: "MarketplaceCommerceAnalyticsException", - $fault: "server", + const exception = new MarketplaceCommerceAnalyticsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CustomerDefinedValues = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-marketplace-entitlement-service/src/index.ts b/clients/client-marketplace-entitlement-service/src/index.ts index 7efb7ff1b0fc5..e06571e9bc03c 100644 --- a/clients/client-marketplace-entitlement-service/src/index.ts +++ b/clients/client-marketplace-entitlement-service/src/index.ts @@ -2,3 +2,4 @@ export * from "./MarketplaceEntitlementService"; export * from "./MarketplaceEntitlementServiceClient"; export * from "./commands"; export * from "./models"; +export { MarketplaceEntitlementServiceServiceException } from "./models/MarketplaceEntitlementServiceServiceException"; diff --git a/clients/client-marketplace-entitlement-service/src/models/MarketplaceEntitlementServiceServiceException.ts b/clients/client-marketplace-entitlement-service/src/models/MarketplaceEntitlementServiceServiceException.ts new file mode 100644 index 0000000000000..74192ede5db3d --- /dev/null +++ b/clients/client-marketplace-entitlement-service/src/models/MarketplaceEntitlementServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MarketplaceEntitlementService service. + */ +export class MarketplaceEntitlementServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MarketplaceEntitlementServiceServiceException.prototype); + } +} diff --git a/clients/client-marketplace-entitlement-service/src/models/models_0.ts b/clients/client-marketplace-entitlement-service/src/models/models_0.ts index 883971b6d60d6..b7442e6512e32 100644 --- a/clients/client-marketplace-entitlement-service/src/models/models_0.ts +++ b/clients/client-marketplace-entitlement-service/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MarketplaceEntitlementServiceServiceException as __BaseException } from "./MarketplaceEntitlementServiceServiceException"; export enum GetEntitlementFilterName { CUSTOMER_IDENTIFIER = "CUSTOMER_IDENTIFIER", @@ -226,26 +229,56 @@ export namespace GetEntitlementsResult { *

An internal error has occurred. Retry your request. If the problem persists, post a * message with details on the AWS forums.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; - message?: string; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + } } /** *

One or more parameters in your request was invalid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The calls to the GetEntitlements API are throttled.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } diff --git a/clients/client-marketplace-entitlement-service/src/protocols/Aws_json1_1.ts b/clients/client-marketplace-entitlement-service/src/protocols/Aws_json1_1.ts index 62d5bb1a6d549..d91c237c504b0 100644 --- a/clients/client-marketplace-entitlement-service/src/protocols/Aws_json1_1.ts +++ b/clients/client-marketplace-entitlement-service/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,13 +13,12 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { GetEntitlementsCommandInput, GetEntitlementsCommandOutput } from "../commands/GetEntitlementsCommand"; +import { MarketplaceEntitlementServiceServiceException as __BaseException } from "../models/MarketplaceEntitlementServiceServiceException"; import { Entitlement, EntitlementValue, @@ -68,49 +68,28 @@ const deserializeAws_json1_1GetEntitlementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.marketplaceentitlementservice#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.marketplaceentitlementservice#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplaceentitlementservice#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( @@ -119,13 +98,11 @@ const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceErrorException(body, context); - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", + const exception = new InternalServiceErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -134,13 +111,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -149,13 +124,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1FilterValueList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-marketplace-metering/src/index.ts b/clients/client-marketplace-metering/src/index.ts index 56f69498825bb..3f5bdac35c881 100644 --- a/clients/client-marketplace-metering/src/index.ts +++ b/clients/client-marketplace-metering/src/index.ts @@ -2,3 +2,4 @@ export * from "./MarketplaceMetering"; export * from "./MarketplaceMeteringClient"; export * from "./commands"; export * from "./models"; +export { MarketplaceMeteringServiceException } from "./models/MarketplaceMeteringServiceException"; diff --git a/clients/client-marketplace-metering/src/models/MarketplaceMeteringServiceException.ts b/clients/client-marketplace-metering/src/models/MarketplaceMeteringServiceException.ts new file mode 100644 index 0000000000000..9bd0a893d7ef5 --- /dev/null +++ b/clients/client-marketplace-metering/src/models/MarketplaceMeteringServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MarketplaceMetering service. + */ +export class MarketplaceMeteringServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MarketplaceMeteringServiceException.prototype); + } +} diff --git a/clients/client-marketplace-metering/src/models/models_0.ts b/clients/client-marketplace-metering/src/models/models_0.ts index 900d4700b42d8..7e1ba3aa2cc2a 100644 --- a/clients/client-marketplace-metering/src/models/models_0.ts +++ b/clients/client-marketplace-metering/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MarketplaceMeteringServiceException as __BaseException } from "./MarketplaceMeteringServiceException"; /** *

Metadata assigned to an allocation. Each tag is made up of a key and a @@ -238,78 +241,158 @@ export namespace BatchMeterUsageResult { /** *

The API is disabled in the Region.

*/ -export interface DisabledApiException extends __SmithyException, $MetadataBearer { - name: "DisabledApiException"; - $fault: "client"; - message?: string; +export class DisabledApiException extends __BaseException { + readonly name: "DisabledApiException" = "DisabledApiException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DisabledApiException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DisabledApiException.prototype); + } } /** *

An internal error has occurred. Retry your request. If the problem persists, post a * message with details on the AWS forums.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; - message?: string; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + } } /** *

You have metered usage for a CustomerIdentifier that does not * exist.

*/ -export interface InvalidCustomerIdentifierException extends __SmithyException, $MetadataBearer { - name: "InvalidCustomerIdentifierException"; - $fault: "client"; - message?: string; +export class InvalidCustomerIdentifierException extends __BaseException { + readonly name: "InvalidCustomerIdentifierException" = "InvalidCustomerIdentifierException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCustomerIdentifierException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCustomerIdentifierException.prototype); + } } /** *

The product code passed does not match the product code used for publishing the * product.

*/ -export interface InvalidProductCodeException extends __SmithyException, $MetadataBearer { - name: "InvalidProductCodeException"; - $fault: "client"; - message?: string; +export class InvalidProductCodeException extends __BaseException { + readonly name: "InvalidProductCodeException" = "InvalidProductCodeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidProductCodeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidProductCodeException.prototype); + } } /** *

The tag is invalid, or the number of tags is greater than 5.

*/ -export interface InvalidTagException extends __SmithyException, $MetadataBearer { - name: "InvalidTagException"; - $fault: "client"; - message?: string; +export class InvalidTagException extends __BaseException { + readonly name: "InvalidTagException" = "InvalidTagException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagException.prototype); + } } /** *

The usage allocation objects are invalid, or the number of allocations is greater than * 500 for a single usage record.

*/ -export interface InvalidUsageAllocationsException extends __SmithyException, $MetadataBearer { - name: "InvalidUsageAllocationsException"; - $fault: "client"; - message?: string; +export class InvalidUsageAllocationsException extends __BaseException { + readonly name: "InvalidUsageAllocationsException" = "InvalidUsageAllocationsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUsageAllocationsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUsageAllocationsException.prototype); + } } /** *

The usage dimension does not match one of the UsageDimensions associated * with products.

*/ -export interface InvalidUsageDimensionException extends __SmithyException, $MetadataBearer { - name: "InvalidUsageDimensionException"; - $fault: "client"; - message?: string; +export class InvalidUsageDimensionException extends __BaseException { + readonly name: "InvalidUsageDimensionException" = "InvalidUsageDimensionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUsageDimensionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUsageDimensionException.prototype); + } } /** *

The calls to the API are throttled.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** @@ -319,20 +402,40 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer * range, the entire batch is not processed. You must remove invalid records and try * again.

*/ -export interface TimestampOutOfBoundsException extends __SmithyException, $MetadataBearer { - name: "TimestampOutOfBoundsException"; - $fault: "client"; - message?: string; +export class TimestampOutOfBoundsException extends __BaseException { + readonly name: "TimestampOutOfBoundsException" = "TimestampOutOfBoundsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TimestampOutOfBoundsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TimestampOutOfBoundsException.prototype); + } } /** *

Exception thrown when the customer does not have a valid subscription for the * product.

*/ -export interface CustomerNotEntitledException extends __SmithyException, $MetadataBearer { - name: "CustomerNotEntitledException"; - $fault: "client"; - message?: string; +export class CustomerNotEntitledException extends __BaseException { + readonly name: "CustomerNotEntitledException" = "CustomerNotEntitledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomerNotEntitledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomerNotEntitledException.prototype); + } } /** @@ -340,10 +443,20 @@ export interface CustomerNotEntitledException extends __SmithyException, $Metada * pod for the given {usageDimension, timestamp} with a different * usageQuantity.

*/ -export interface DuplicateRequestException extends __SmithyException, $MetadataBearer { - name: "DuplicateRequestException"; - $fault: "client"; - message?: string; +export class DuplicateRequestException extends __BaseException { + readonly name: "DuplicateRequestException" = "DuplicateRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateRequestException.prototype); + } } /** @@ -351,10 +464,20 @@ export interface DuplicateRequestException extends __SmithyException, $MetadataB * task, or EKS pod. The Region of the Metering Service endpoint and the AWS Region of the * resource must match.

*/ -export interface InvalidEndpointRegionException extends __SmithyException, $MetadataBearer { - name: "InvalidEndpointRegionException"; - $fault: "client"; - message?: string; +export class InvalidEndpointRegionException extends __BaseException { + readonly name: "InvalidEndpointRegionException" = "InvalidEndpointRegionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndpointRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndpointRegionException.prototype); + } } export interface MeterUsageRequest { @@ -428,10 +551,20 @@ export namespace MeterUsageResult { /** *

Public Key version is invalid.

*/ -export interface InvalidPublicKeyVersionException extends __SmithyException, $MetadataBearer { - name: "InvalidPublicKeyVersionException"; - $fault: "client"; - message?: string; +export class InvalidPublicKeyVersionException extends __BaseException { + readonly name: "InvalidPublicKeyVersionException" = "InvalidPublicKeyVersionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPublicKeyVersionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPublicKeyVersionException.prototype); + } } /** @@ -440,20 +573,40 @@ export interface InvalidPublicKeyVersionException extends __SmithyException, $Me * launched in. This prevents a container from hardcoding a Region (e.g. * withRegion(“us-east-1”) when calling RegisterUsage.

*/ -export interface InvalidRegionException extends __SmithyException, $MetadataBearer { - name: "InvalidRegionException"; - $fault: "client"; - message?: string; +export class InvalidRegionException extends __BaseException { + readonly name: "InvalidRegionException" = "InvalidRegionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRegionException.prototype); + } } /** *

AWS Marketplace does not support metering usage from the underlying platform. * Currently, Amazon ECS, Amazon EKS, and AWS Fargate are supported.

*/ -export interface PlatformNotSupportedException extends __SmithyException, $MetadataBearer { - name: "PlatformNotSupportedException"; - $fault: "client"; - message?: string; +export class PlatformNotSupportedException extends __BaseException { + readonly name: "PlatformNotSupportedException" = "PlatformNotSupportedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PlatformNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PlatformNotSupportedException.prototype); + } } export interface RegisterUsageRequest { @@ -512,19 +665,39 @@ export namespace RegisterUsageResult { * registration website should redeem this token as soon as it is submitted by the buyer's * browser.

*/ -export interface ExpiredTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredTokenException"; - $fault: "client"; - message?: string; +export class ExpiredTokenException extends __BaseException { + readonly name: "ExpiredTokenException" = "ExpiredTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredTokenException.prototype); + } } /** *

Registration token is invalid.

*/ -export interface InvalidTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidTokenException"; - $fault: "client"; - message?: string; +export class InvalidTokenException extends __BaseException { + readonly name: "InvalidTokenException" = "InvalidTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTokenException.prototype); + } } /** diff --git a/clients/client-marketplace-metering/src/protocols/Aws_json1_1.ts b/clients/client-marketplace-metering/src/protocols/Aws_json1_1.ts index 6a24dd02a8d09..772c4dfe0bef7 100644 --- a/clients/client-marketplace-metering/src/protocols/Aws_json1_1.ts +++ b/clients/client-marketplace-metering/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,16 +10,15 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchMeterUsageCommandInput, BatchMeterUsageCommandOutput } from "../commands/BatchMeterUsageCommand"; import { MeterUsageCommandInput, MeterUsageCommandOutput } from "../commands/MeterUsageCommand"; import { RegisterUsageCommandInput, RegisterUsageCommandOutput } from "../commands/RegisterUsageCommand"; import { ResolveCustomerCommandInput, ResolveCustomerCommandOutput } from "../commands/ResolveCustomerCommand"; +import { MarketplaceMeteringServiceException as __BaseException } from "../models/MarketplaceMeteringServiceException"; import { BatchMeterUsageRequest, BatchMeterUsageResult, @@ -128,97 +128,46 @@ const deserializeAws_json1_1BatchMeterUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledApiException": case "com.amazonaws.marketplacemetering#DisabledApiException": - response = { - ...(await deserializeAws_json1_1DisabledApiExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledApiExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.marketplacemetering#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidCustomerIdentifierException": case "com.amazonaws.marketplacemetering#InvalidCustomerIdentifierException": - response = { - ...(await deserializeAws_json1_1InvalidCustomerIdentifierExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCustomerIdentifierExceptionResponse(parsedOutput, context); case "InvalidProductCodeException": case "com.amazonaws.marketplacemetering#InvalidProductCodeException": - response = { - ...(await deserializeAws_json1_1InvalidProductCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidProductCodeExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.marketplacemetering#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "InvalidUsageAllocationsException": case "com.amazonaws.marketplacemetering#InvalidUsageAllocationsException": - response = { - ...(await deserializeAws_json1_1InvalidUsageAllocationsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUsageAllocationsExceptionResponse(parsedOutput, context); case "InvalidUsageDimensionException": case "com.amazonaws.marketplacemetering#InvalidUsageDimensionException": - response = { - ...(await deserializeAws_json1_1InvalidUsageDimensionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUsageDimensionExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacemetering#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "TimestampOutOfBoundsException": case "com.amazonaws.marketplacemetering#TimestampOutOfBoundsException": - response = { - ...(await deserializeAws_json1_1TimestampOutOfBoundsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TimestampOutOfBoundsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MeterUsageCommand = async ( @@ -246,105 +195,49 @@ const deserializeAws_json1_1MeterUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomerNotEntitledException": case "com.amazonaws.marketplacemetering#CustomerNotEntitledException": - response = { - ...(await deserializeAws_json1_1CustomerNotEntitledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomerNotEntitledExceptionResponse(parsedOutput, context); case "DuplicateRequestException": case "com.amazonaws.marketplacemetering#DuplicateRequestException": - response = { - ...(await deserializeAws_json1_1DuplicateRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.marketplacemetering#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidEndpointRegionException": case "com.amazonaws.marketplacemetering#InvalidEndpointRegionException": - response = { - ...(await deserializeAws_json1_1InvalidEndpointRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidEndpointRegionExceptionResponse(parsedOutput, context); case "InvalidProductCodeException": case "com.amazonaws.marketplacemetering#InvalidProductCodeException": - response = { - ...(await deserializeAws_json1_1InvalidProductCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidProductCodeExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.marketplacemetering#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "InvalidUsageAllocationsException": case "com.amazonaws.marketplacemetering#InvalidUsageAllocationsException": - response = { - ...(await deserializeAws_json1_1InvalidUsageAllocationsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUsageAllocationsExceptionResponse(parsedOutput, context); case "InvalidUsageDimensionException": case "com.amazonaws.marketplacemetering#InvalidUsageDimensionException": - response = { - ...(await deserializeAws_json1_1InvalidUsageDimensionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUsageDimensionExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacemetering#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "TimestampOutOfBoundsException": case "com.amazonaws.marketplacemetering#TimestampOutOfBoundsException": - response = { - ...(await deserializeAws_json1_1TimestampOutOfBoundsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TimestampOutOfBoundsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterUsageCommand = async ( @@ -372,89 +265,43 @@ const deserializeAws_json1_1RegisterUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomerNotEntitledException": case "com.amazonaws.marketplacemetering#CustomerNotEntitledException": - response = { - ...(await deserializeAws_json1_1CustomerNotEntitledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomerNotEntitledExceptionResponse(parsedOutput, context); case "DisabledApiException": case "com.amazonaws.marketplacemetering#DisabledApiException": - response = { - ...(await deserializeAws_json1_1DisabledApiExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledApiExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.marketplacemetering#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidProductCodeException": case "com.amazonaws.marketplacemetering#InvalidProductCodeException": - response = { - ...(await deserializeAws_json1_1InvalidProductCodeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidProductCodeExceptionResponse(parsedOutput, context); case "InvalidPublicKeyVersionException": case "com.amazonaws.marketplacemetering#InvalidPublicKeyVersionException": - response = { - ...(await deserializeAws_json1_1InvalidPublicKeyVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPublicKeyVersionExceptionResponse(parsedOutput, context); case "InvalidRegionException": case "com.amazonaws.marketplacemetering#InvalidRegionException": - response = { - ...(await deserializeAws_json1_1InvalidRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRegionExceptionResponse(parsedOutput, context); case "PlatformNotSupportedException": case "com.amazonaws.marketplacemetering#PlatformNotSupportedException": - response = { - ...(await deserializeAws_json1_1PlatformNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PlatformNotSupportedExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacemetering#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResolveCustomerCommand = async ( @@ -482,65 +329,34 @@ const deserializeAws_json1_1ResolveCustomerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledApiException": case "com.amazonaws.marketplacemetering#DisabledApiException": - response = { - ...(await deserializeAws_json1_1DisabledApiExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DisabledApiExceptionResponse(parsedOutput, context); case "ExpiredTokenException": case "com.amazonaws.marketplacemetering#ExpiredTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredTokenExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.marketplacemetering#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.marketplacemetering#InvalidTokenException": - response = { - ...(await deserializeAws_json1_1InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTokenExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.marketplacemetering#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CustomerNotEntitledExceptionResponse = async ( @@ -549,13 +365,11 @@ const deserializeAws_json1_1CustomerNotEntitledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomerNotEntitledException(body, context); - const contents: CustomerNotEntitledException = { - name: "CustomerNotEntitledException", - $fault: "client", + const exception = new CustomerNotEntitledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DisabledApiExceptionResponse = async ( @@ -564,13 +378,11 @@ const deserializeAws_json1_1DisabledApiExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DisabledApiException(body, context); - const contents: DisabledApiException = { - name: "DisabledApiException", - $fault: "client", + const exception = new DisabledApiException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateRequestExceptionResponse = async ( @@ -579,13 +391,11 @@ const deserializeAws_json1_1DuplicateRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateRequestException(body, context); - const contents: DuplicateRequestException = { - name: "DuplicateRequestException", - $fault: "client", + const exception = new DuplicateRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExpiredTokenExceptionResponse = async ( @@ -594,13 +404,11 @@ const deserializeAws_json1_1ExpiredTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredTokenException(body, context); - const contents: ExpiredTokenException = { - name: "ExpiredTokenException", - $fault: "client", + const exception = new ExpiredTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( @@ -609,13 +417,11 @@ const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceErrorException(body, context); - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", + const exception = new InternalServiceErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCustomerIdentifierExceptionResponse = async ( @@ -624,13 +430,11 @@ const deserializeAws_json1_1InvalidCustomerIdentifierExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCustomerIdentifierException(body, context); - const contents: InvalidCustomerIdentifierException = { - name: "InvalidCustomerIdentifierException", - $fault: "client", + const exception = new InvalidCustomerIdentifierException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidEndpointRegionExceptionResponse = async ( @@ -639,13 +443,11 @@ const deserializeAws_json1_1InvalidEndpointRegionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidEndpointRegionException(body, context); - const contents: InvalidEndpointRegionException = { - name: "InvalidEndpointRegionException", - $fault: "client", + const exception = new InvalidEndpointRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidProductCodeExceptionResponse = async ( @@ -654,13 +456,11 @@ const deserializeAws_json1_1InvalidProductCodeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidProductCodeException(body, context); - const contents: InvalidProductCodeException = { - name: "InvalidProductCodeException", - $fault: "client", + const exception = new InvalidProductCodeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPublicKeyVersionExceptionResponse = async ( @@ -669,13 +469,11 @@ const deserializeAws_json1_1InvalidPublicKeyVersionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPublicKeyVersionException(body, context); - const contents: InvalidPublicKeyVersionException = { - name: "InvalidPublicKeyVersionException", - $fault: "client", + const exception = new InvalidPublicKeyVersionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRegionExceptionResponse = async ( @@ -684,13 +482,11 @@ const deserializeAws_json1_1InvalidRegionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRegionException(body, context); - const contents: InvalidRegionException = { - name: "InvalidRegionException", - $fault: "client", + const exception = new InvalidRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagExceptionResponse = async ( @@ -699,13 +495,11 @@ const deserializeAws_json1_1InvalidTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagException(body, context); - const contents: InvalidTagException = { - name: "InvalidTagException", - $fault: "client", + const exception = new InvalidTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTokenExceptionResponse = async ( @@ -714,13 +508,11 @@ const deserializeAws_json1_1InvalidTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTokenException(body, context); - const contents: InvalidTokenException = { - name: "InvalidTokenException", - $fault: "client", + const exception = new InvalidTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUsageAllocationsExceptionResponse = async ( @@ -729,13 +521,11 @@ const deserializeAws_json1_1InvalidUsageAllocationsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUsageAllocationsException(body, context); - const contents: InvalidUsageAllocationsException = { - name: "InvalidUsageAllocationsException", - $fault: "client", + const exception = new InvalidUsageAllocationsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUsageDimensionExceptionResponse = async ( @@ -744,13 +534,11 @@ const deserializeAws_json1_1InvalidUsageDimensionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUsageDimensionException(body, context); - const contents: InvalidUsageDimensionException = { - name: "InvalidUsageDimensionException", - $fault: "client", + const exception = new InvalidUsageDimensionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PlatformNotSupportedExceptionResponse = async ( @@ -759,13 +547,11 @@ const deserializeAws_json1_1PlatformNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PlatformNotSupportedException(body, context); - const contents: PlatformNotSupportedException = { - name: "PlatformNotSupportedException", - $fault: "client", + const exception = new PlatformNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -774,13 +560,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TimestampOutOfBoundsExceptionResponse = async ( @@ -789,13 +573,11 @@ const deserializeAws_json1_1TimestampOutOfBoundsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TimestampOutOfBoundsException(body, context); - const contents: TimestampOutOfBoundsException = { - name: "TimestampOutOfBoundsException", - $fault: "client", + const exception = new TimestampOutOfBoundsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BatchMeterUsageRequest = (input: BatchMeterUsageRequest, context: __SerdeContext): any => { diff --git a/clients/client-mediaconnect/src/index.ts b/clients/client-mediaconnect/src/index.ts index 6122e47516937..87d5286dcf234 100644 --- a/clients/client-mediaconnect/src/index.ts +++ b/clients/client-mediaconnect/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { MediaConnectServiceException } from "./models/MediaConnectServiceException"; diff --git a/clients/client-mediaconnect/src/models/MediaConnectServiceException.ts b/clients/client-mediaconnect/src/models/MediaConnectServiceException.ts new file mode 100644 index 0000000000000..ad59248fb09ed --- /dev/null +++ b/clients/client-mediaconnect/src/models/MediaConnectServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaConnect service. + */ +export class MediaConnectServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaConnectServiceException.prototype); + } +} diff --git a/clients/client-mediaconnect/src/models/models_0.ts b/clients/client-mediaconnect/src/models/models_0.ts index 94ba9004a1b27..3bd5818350acd 100644 --- a/clients/client-mediaconnect/src/models/models_0.ts +++ b/clients/client-mediaconnect/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MediaConnectServiceException as __BaseException } from "./MediaConnectServiceException"; export enum Colorimetry { BT2020 = "BT2020", @@ -1644,85 +1647,169 @@ export namespace AddFlowMediaStreamsResponse { /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + } } /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface AddFlowOutputs420Exception extends __SmithyException, $MetadataBearer { - name: "AddFlowOutputs420Exception"; - $fault: "client"; +export class AddFlowOutputs420Exception extends __BaseException { + readonly name: "AddFlowOutputs420Exception" = "AddFlowOutputs420Exception"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AddFlowOutputs420Exception", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AddFlowOutputs420Exception.prototype); + this.Message = opts.Message; + } } /** @@ -1863,13 +1950,25 @@ export namespace AddFlowVpcInterfacesResponse { /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface CreateFlow420Exception extends __SmithyException, $MetadataBearer { - name: "CreateFlow420Exception"; - $fault: "client"; +export class CreateFlow420Exception extends __BaseException { + readonly name: "CreateFlow420Exception" = "CreateFlow420Exception"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CreateFlow420Exception", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CreateFlow420Exception.prototype); + this.Message = opts.Message; + } } export enum FailoverMode { @@ -2238,13 +2337,25 @@ export namespace DescribeReservationResponse { /** * Exception raised by AWS Elemental MediaConnect. See the error message and documentation for the operation for more information on the cause of this exception. */ -export interface GrantFlowEntitlements420Exception extends __SmithyException, $MetadataBearer { - name: "GrantFlowEntitlements420Exception"; - $fault: "client"; +export class GrantFlowEntitlements420Exception extends __BaseException { + readonly name: "GrantFlowEntitlements420Exception" = "GrantFlowEntitlements420Exception"; + readonly $fault: "client" = "client"; /** * The error message returned by AWS Elemental MediaConnect. */ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GrantFlowEntitlements420Exception", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GrantFlowEntitlements420Exception.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-mediaconnect/src/protocols/Aws_restJson1.ts b/clients/client-mediaconnect/src/protocols/Aws_restJson1.ts index 212d885e2bf6b..26e55e14abf9d 100644 --- a/clients/client-mediaconnect/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediaconnect/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -76,6 +75,7 @@ import { } from "../commands/UpdateFlowMediaStreamCommand"; import { UpdateFlowOutputCommandInput, UpdateFlowOutputCommandOutput } from "../commands/UpdateFlowOutputCommand"; import { UpdateFlowSourceCommandInput, UpdateFlowSourceCommandOutput } from "../commands/UpdateFlowSourceCommand"; +import { MediaConnectServiceException as __BaseException } from "../models/MediaConnectServiceException"; import { AddFlowOutputs420Exception, AddMediaStreamRequest, @@ -1258,73 +1258,37 @@ const deserializeAws_restJson1AddFlowMediaStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddFlowOutputsCommand = async ( @@ -1357,81 +1321,40 @@ const deserializeAws_restJson1AddFlowOutputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AddFlowOutputs420Exception": case "com.amazonaws.mediaconnect#AddFlowOutputs420Exception": - response = { - ...(await deserializeAws_restJson1AddFlowOutputs420ExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AddFlowOutputs420ExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddFlowSourcesCommand = async ( @@ -1464,73 +1387,37 @@ const deserializeAws_restJson1AddFlowSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddFlowVpcInterfacesCommand = async ( @@ -1563,73 +1450,37 @@ const deserializeAws_restJson1AddFlowVpcInterfacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFlowCommand = async ( @@ -1658,73 +1509,37 @@ const deserializeAws_restJson1CreateFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "CreateFlow420Exception": case "com.amazonaws.mediaconnect#CreateFlow420Exception": - response = { - ...(await deserializeAws_restJson1CreateFlow420ExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CreateFlow420ExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFlowCommand = async ( @@ -1757,73 +1572,37 @@ const deserializeAws_restJson1DeleteFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFlowCommand = async ( @@ -1856,73 +1635,37 @@ const deserializeAws_restJson1DescribeFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOfferingCommand = async ( @@ -1951,65 +1694,34 @@ const deserializeAws_restJson1DescribeOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReservationCommand = async ( @@ -2038,65 +1750,34 @@ const deserializeAws_restJson1DescribeReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GrantFlowEntitlementsCommand = async ( @@ -2129,81 +1810,40 @@ const deserializeAws_restJson1GrantFlowEntitlementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GrantFlowEntitlements420Exception": case "com.amazonaws.mediaconnect#GrantFlowEntitlements420Exception": - response = { - ...(await deserializeAws_restJson1GrantFlowEntitlements420ExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GrantFlowEntitlements420ExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEntitlementsCommand = async ( @@ -2236,57 +1876,31 @@ const deserializeAws_restJson1ListEntitlementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFlowsCommand = async ( @@ -2319,57 +1933,31 @@ const deserializeAws_restJson1ListFlowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOfferingsCommand = async ( @@ -2402,57 +1990,31 @@ const deserializeAws_restJson1ListOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReservationsCommand = async ( @@ -2485,57 +2047,31 @@ const deserializeAws_restJson1ListReservationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2564,49 +2100,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PurchaseOfferingCommand = async ( @@ -2635,73 +2150,37 @@ const deserializeAws_restJson1PurchaseOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveFlowMediaStreamCommand = async ( @@ -2734,73 +2213,37 @@ const deserializeAws_restJson1RemoveFlowMediaStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveFlowOutputCommand = async ( @@ -2833,73 +2276,37 @@ const deserializeAws_restJson1RemoveFlowOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveFlowSourceCommand = async ( @@ -2932,73 +2339,37 @@ const deserializeAws_restJson1RemoveFlowSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveFlowVpcInterfaceCommand = async ( @@ -3038,73 +2409,37 @@ const deserializeAws_restJson1RemoveFlowVpcInterfaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RevokeFlowEntitlementCommand = async ( @@ -3137,73 +2472,37 @@ const deserializeAws_restJson1RevokeFlowEntitlementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartFlowCommand = async ( @@ -3236,73 +2535,37 @@ const deserializeAws_restJson1StartFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopFlowCommand = async ( @@ -3335,73 +2598,37 @@ const deserializeAws_restJson1StopFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3426,49 +2653,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3493,49 +2699,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFlowCommand = async ( @@ -3564,73 +2749,37 @@ const deserializeAws_restJson1UpdateFlowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFlowEntitlementCommand = async ( @@ -3663,73 +2812,37 @@ const deserializeAws_restJson1UpdateFlowEntitlementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFlowMediaStreamCommand = async ( @@ -3762,73 +2875,37 @@ const deserializeAws_restJson1UpdateFlowMediaStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFlowOutputCommand = async ( @@ -3861,73 +2938,37 @@ const deserializeAws_restJson1UpdateFlowOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFlowSourceCommand = async ( @@ -3960,226 +3001,181 @@ const deserializeAws_restJson1UpdateFlowSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconnect#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconnect#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconnect#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconnect#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediaconnect#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconnect#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AddFlowOutputs420ExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AddFlowOutputs420Exception = { - name: "AddFlowOutputs420Exception", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new AddFlowOutputs420Exception({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CreateFlow420ExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CreateFlow420Exception = { - name: "CreateFlow420Exception", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new CreateFlow420Exception({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GrantFlowEntitlements420ExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GrantFlowEntitlements420Exception = { - name: "GrantFlowEntitlements420Exception", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new GrantFlowEntitlements420Exception({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-mediaconvert/src/index.ts b/clients/client-mediaconvert/src/index.ts index 620ebbbbbb076..7060b5aaab679 100644 --- a/clients/client-mediaconvert/src/index.ts +++ b/clients/client-mediaconvert/src/index.ts @@ -3,3 +3,4 @@ export * from "./MediaConvertClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MediaConvertServiceException } from "./models/MediaConvertServiceException"; diff --git a/clients/client-mediaconvert/src/models/MediaConvertServiceException.ts b/clients/client-mediaconvert/src/models/MediaConvertServiceException.ts new file mode 100644 index 0000000000000..b1366bbe525b8 --- /dev/null +++ b/clients/client-mediaconvert/src/models/MediaConvertServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaConvert service. + */ +export class MediaConvertServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaConvertServiceException.prototype); + } +} diff --git a/clients/client-mediaconvert/src/models/models_1.ts b/clients/client-mediaconvert/src/models/models_1.ts index a169c9fbf7e13..374a25d102a04 100644 --- a/clients/client-mediaconvert/src/models/models_1.ts +++ b/clients/client-mediaconvert/src/models/models_1.ts @@ -1,5 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; +import { MediaConvertServiceException as __BaseException } from "./MediaConvertServiceException"; import { AccelerationSettings, AccelerationStatus, @@ -4318,55 +4320,127 @@ export namespace AssociateCertificateResponse { /** * The service can't process your request because of a problem in the request. Please check your request form and syntax. */ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** * The service couldn't complete your request because there is a conflict with the current state of the resource. */ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** * You don't have permissions for this action with the credentials you sent. */ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + } } /** * The service encountered an unexpected condition and can't fulfill your request. */ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** * The resource you requested doesn't exist. */ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** * Too many requests have been sent in too short of a time. The service limits the rate at which it will accept requests. */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } export interface CancelJobRequest { diff --git a/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts b/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts index cd6435817ec89..26fa90b821373 100644 --- a/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediaconvert/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -56,6 +55,7 @@ import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../comman import { UpdateJobTemplateCommandInput, UpdateJobTemplateCommandOutput } from "../commands/UpdateJobTemplateCommand"; import { UpdatePresetCommandInput, UpdatePresetCommandOutput } from "../commands/UpdatePresetCommand"; import { UpdateQueueCommandInput, UpdateQueueCommandOutput } from "../commands/UpdateQueueCommand"; +import { MediaConvertServiceException as __BaseException } from "../models/MediaConvertServiceException"; import { AacSettings, Ac3Settings, @@ -1112,73 +1112,37 @@ const deserializeAws_restJson1AssociateCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelJobCommand = async ( @@ -1203,73 +1167,37 @@ const deserializeAws_restJson1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobCommand = async ( @@ -1298,73 +1226,37 @@ const deserializeAws_restJson1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobTemplateCommand = async ( @@ -1393,73 +1285,37 @@ const deserializeAws_restJson1CreateJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePresetCommand = async ( @@ -1488,73 +1344,37 @@ const deserializeAws_restJson1CreatePresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateQueueCommand = async ( @@ -1583,73 +1403,37 @@ const deserializeAws_restJson1CreateQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobTemplateCommand = async ( @@ -1674,73 +1458,37 @@ const deserializeAws_restJson1DeleteJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePolicyCommand = async ( @@ -1765,73 +1513,37 @@ const deserializeAws_restJson1DeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePresetCommand = async ( @@ -1856,73 +1568,37 @@ const deserializeAws_restJson1DeletePresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteQueueCommand = async ( @@ -1947,73 +1623,37 @@ const deserializeAws_restJson1DeleteQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeEndpointsCommand = async ( @@ -2046,73 +1686,37 @@ const deserializeAws_restJson1DescribeEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateCertificateCommand = async ( @@ -2137,73 +1741,37 @@ const deserializeAws_restJson1DisassociateCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobCommand = async ( @@ -2232,73 +1800,37 @@ const deserializeAws_restJson1GetJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJobTemplateCommand = async ( @@ -2327,73 +1859,37 @@ const deserializeAws_restJson1GetJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPolicyCommand = async ( @@ -2422,73 +1918,37 @@ const deserializeAws_restJson1GetPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPresetCommand = async ( @@ -2517,73 +1977,37 @@ const deserializeAws_restJson1GetPresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetQueueCommand = async ( @@ -2612,73 +2036,37 @@ const deserializeAws_restJson1GetQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobsCommand = async ( @@ -2711,73 +2099,37 @@ const deserializeAws_restJson1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJobTemplatesCommand = async ( @@ -2810,73 +2162,37 @@ const deserializeAws_restJson1ListJobTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPresetsCommand = async ( @@ -2909,73 +2225,37 @@ const deserializeAws_restJson1ListPresetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListQueuesCommand = async ( @@ -3008,73 +2288,37 @@ const deserializeAws_restJson1ListQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3103,73 +2347,37 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutPolicyCommand = async ( @@ -3198,73 +2406,37 @@ const deserializeAws_restJson1PutPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3289,73 +2461,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3380,73 +2516,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateJobTemplateCommand = async ( @@ -3475,73 +2575,37 @@ const deserializeAws_restJson1UpdateJobTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePresetCommand = async ( @@ -3570,73 +2634,37 @@ const deserializeAws_restJson1UpdatePresetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateQueueCommand = async ( @@ -3665,175 +2693,133 @@ const deserializeAws_restJson1UpdateQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediaconvert#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mediaconvert#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mediaconvert#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediaconvert#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediaconvert#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediaconvert#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__doubleMinNegative60Max6 = (input: number[], context: __SerdeContext): any => { diff --git a/clients/client-medialive/src/index.ts b/clients/client-medialive/src/index.ts index a4c6eb1863091..5834ddc6faf0e 100644 --- a/clients/client-medialive/src/index.ts +++ b/clients/client-medialive/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { MediaLiveServiceException } from "./models/MediaLiveServiceException"; diff --git a/clients/client-medialive/src/models/MediaLiveServiceException.ts b/clients/client-medialive/src/models/MediaLiveServiceException.ts new file mode 100644 index 0000000000000..04daeb4bd2723 --- /dev/null +++ b/clients/client-medialive/src/models/MediaLiveServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaLive service. + */ +export class MediaLiveServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaLiveServiceException.prototype); + } +} diff --git a/clients/client-medialive/src/models/models_1.ts b/clients/client-medialive/src/models/models_1.ts index 263b5b68a6cb5..978b15e15c3cd 100644 --- a/clients/client-medialive/src/models/models_1.ts +++ b/clients/client-medialive/src/models/models_1.ts @@ -1,6 +1,8 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { MediaLiveServiceException as __BaseException } from "./MediaLiveServiceException"; import { ArchiveGroupSettings, AudioDescription, @@ -2649,105 +2651,201 @@ export namespace AcceptInputDeviceTransferResponse { /** * Placeholder documentation for BadGatewayException */ -export interface BadGatewayException extends __SmithyException, $MetadataBearer { - name: "BadGatewayException"; - $fault: "server"; +export class BadGatewayException extends __BaseException { + readonly name: "BadGatewayException" = "BadGatewayException"; + readonly $fault: "server" = "server"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadGatewayException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, BadGatewayException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for BadRequestException */ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for ConflictException */ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for ForbiddenException */ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for GatewayTimeoutException */ -export interface GatewayTimeoutException extends __SmithyException, $MetadataBearer { - name: "GatewayTimeoutException"; - $fault: "server"; +export class GatewayTimeoutException extends __BaseException { + readonly name: "GatewayTimeoutException" = "GatewayTimeoutException"; + readonly $fault: "server" = "server"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GatewayTimeoutException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, GatewayTimeoutException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for InternalServerErrorException */ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for NotFoundException */ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for TooManyRequestsException */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** * Placeholder documentation for __string */ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** * Placeholder documentation for UnprocessableEntityException */ -export interface UnprocessableEntityException extends __SmithyException, $MetadataBearer { - name: "UnprocessableEntityException"; - $fault: "client"; +export class UnprocessableEntityException extends __BaseException { + readonly name: "UnprocessableEntityException" = "UnprocessableEntityException"; + readonly $fault: "client" = "client"; /** * The error message. */ @@ -2757,6 +2855,19 @@ export interface UnprocessableEntityException extends __SmithyException, $Metada * A collection of validation error responses. */ ValidationErrors?: ValidationError[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnprocessableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnprocessableEntityException.prototype); + this.Message = opts.Message; + this.ValidationErrors = opts.ValidationErrors; + } } export enum AvailBlankingState { diff --git a/clients/client-medialive/src/protocols/Aws_restJson1.ts b/clients/client-medialive/src/protocols/Aws_restJson1.ts index 25c65425dc56a..5efb975bb575d 100644 --- a/clients/client-medialive/src/protocols/Aws_restJson1.ts +++ b/clients/client-medialive/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -137,6 +136,7 @@ import { UpdateMultiplexProgramCommandOutput, } from "../commands/UpdateMultiplexProgramCommand"; import { UpdateReservationCommandInput, UpdateReservationCommandOutput } from "../commands/UpdateReservationCommand"; +import { MediaLiveServiceException as __BaseException } from "../models/MediaLiveServiceException"; import { AacSettings, Ac3Settings, @@ -2288,97 +2288,46 @@ const deserializeAws_restJson1AcceptInputDeviceTransferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDeleteCommand = async ( @@ -2411,89 +2360,43 @@ const deserializeAws_restJson1BatchDeleteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchStartCommand = async ( @@ -2526,89 +2429,43 @@ const deserializeAws_restJson1BatchStartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchStopCommand = async ( @@ -2641,89 +2498,43 @@ const deserializeAws_restJson1BatchStopCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdateScheduleCommand = async ( @@ -2756,89 +2567,43 @@ const deserializeAws_restJson1BatchUpdateScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelInputDeviceTransferCommand = async ( @@ -2863,97 +2628,46 @@ const deserializeAws_restJson1CancelInputDeviceTransferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ClaimDeviceCommand = async ( @@ -2978,89 +2692,43 @@ const deserializeAws_restJson1ClaimDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -3089,89 +2757,43 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInputCommand = async ( @@ -3200,73 +2822,37 @@ const deserializeAws_restJson1CreateInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInputSecurityGroupCommand = async ( @@ -3295,73 +2881,37 @@ const deserializeAws_restJson1CreateInputSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMultiplexCommand = async ( @@ -3390,89 +2940,43 @@ const deserializeAws_restJson1CreateMultiplexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMultiplexProgramCommand = async ( @@ -3501,89 +3005,43 @@ const deserializeAws_restJson1CreateMultiplexProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePartnerInputCommand = async ( @@ -3612,73 +3070,37 @@ const deserializeAws_restJson1CreatePartnerInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTagsCommand = async ( @@ -3703,57 +3125,31 @@ const deserializeAws_restJson1CreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -3846,89 +3242,43 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInputCommand = async ( @@ -3953,89 +3303,43 @@ const deserializeAws_restJson1DeleteInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInputSecurityGroupCommand = async ( @@ -4060,81 +3364,40 @@ const deserializeAws_restJson1DeleteInputSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMultiplexCommand = async ( @@ -4199,89 +3462,43 @@ const deserializeAws_restJson1DeleteMultiplexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMultiplexProgramCommand = async ( @@ -4335,89 +3552,43 @@ const deserializeAws_restJson1DeleteMultiplexProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReservationCommand = async ( @@ -4517,89 +3688,43 @@ const deserializeAws_restJson1DeleteReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteScheduleCommand = async ( @@ -4624,81 +3749,40 @@ const deserializeAws_restJson1DeleteScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTagsCommand = async ( @@ -4723,57 +3807,31 @@ const deserializeAws_restJson1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelCommand = async ( @@ -4866,81 +3924,40 @@ const deserializeAws_restJson1DescribeChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInputCommand = async ( @@ -5029,81 +4046,40 @@ const deserializeAws_restJson1DescribeInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInputDeviceCommand = async ( @@ -5176,81 +4152,40 @@ const deserializeAws_restJson1DescribeInputDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInputDeviceThumbnailCommand = async ( @@ -5293,81 +4228,40 @@ const deserializeAws_restJson1DescribeInputDeviceThumbnailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInputSecurityGroupCommand = async ( @@ -5416,81 +4310,40 @@ const deserializeAws_restJson1DescribeInputSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMultiplexCommand = async ( @@ -5555,81 +4408,40 @@ const deserializeAws_restJson1DescribeMultiplexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeMultiplexProgramCommand = async ( @@ -5683,81 +4495,40 @@ const deserializeAws_restJson1DescribeMultiplexProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOfferingCommand = async ( @@ -5829,81 +4600,40 @@ const deserializeAws_restJson1DescribeOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReservationCommand = async ( @@ -6003,81 +4733,40 @@ const deserializeAws_restJson1DescribeReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeScheduleCommand = async ( @@ -6110,81 +4799,40 @@ const deserializeAws_restJson1DescribeScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -6217,73 +4865,37 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInputDevicesCommand = async ( @@ -6316,73 +4928,37 @@ const deserializeAws_restJson1ListInputDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInputDeviceTransfersCommand = async ( @@ -6418,81 +4994,40 @@ const deserializeAws_restJson1ListInputDeviceTransfersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInputsCommand = async ( @@ -6525,73 +5060,37 @@ const deserializeAws_restJson1ListInputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInputSecurityGroupsCommand = async ( @@ -6627,73 +5126,37 @@ const deserializeAws_restJson1ListInputSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMultiplexesCommand = async ( @@ -6726,73 +5189,37 @@ const deserializeAws_restJson1ListMultiplexesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMultiplexProgramsCommand = async ( @@ -6828,81 +5255,40 @@ const deserializeAws_restJson1ListMultiplexProgramsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOfferingsCommand = async ( @@ -6935,73 +5321,37 @@ const deserializeAws_restJson1ListOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReservationsCommand = async ( @@ -7034,73 +5384,37 @@ const deserializeAws_restJson1ListReservationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -7129,57 +5443,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PurchaseOfferingCommand = async ( @@ -7208,89 +5496,43 @@ const deserializeAws_restJson1PurchaseOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectInputDeviceTransferCommand = async ( @@ -7315,97 +5557,46 @@ const deserializeAws_restJson1RejectInputDeviceTransferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartChannelCommand = async ( @@ -7498,89 +5689,43 @@ const deserializeAws_restJson1StartChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartMultiplexCommand = async ( @@ -7645,89 +5790,43 @@ const deserializeAws_restJson1StartMultiplexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopChannelCommand = async ( @@ -7820,89 +5919,43 @@ const deserializeAws_restJson1StopChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopMultiplexCommand = async ( @@ -7967,89 +6020,43 @@ const deserializeAws_restJson1StopMultiplexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TransferInputDeviceCommand = async ( @@ -8074,97 +6081,46 @@ const deserializeAws_restJson1TransferInputDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -8193,81 +6149,40 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelClassCommand = async ( @@ -8296,97 +6211,46 @@ const deserializeAws_restJson1UpdateChannelClassCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInputCommand = async ( @@ -8415,81 +6279,40 @@ const deserializeAws_restJson1UpdateInputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInputDeviceCommand = async ( @@ -8562,89 +6385,43 @@ const deserializeAws_restJson1UpdateInputDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInputSecurityGroupCommand = async ( @@ -8673,81 +6450,40 @@ const deserializeAws_restJson1UpdateInputSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMultiplexCommand = async ( @@ -8776,89 +6512,43 @@ const deserializeAws_restJson1UpdateMultiplexCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateMultiplexProgramCommand = async ( @@ -8887,89 +6577,43 @@ const deserializeAws_restJson1UpdateMultiplexProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.medialive#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReservationCommand = async ( @@ -8998,238 +6642,178 @@ const deserializeAws_restJson1UpdateReservationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadGatewayException": case "com.amazonaws.medialive#BadGatewayException": - response = { - ...(await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadGatewayExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.medialive#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.medialive#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.medialive#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GatewayTimeoutException": case "com.amazonaws.medialive#GatewayTimeoutException": - response = { - ...(await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GatewayTimeoutExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.medialive#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.medialive#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.medialive#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadGatewayExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadGatewayException = { - name: "BadGatewayException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadGatewayException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GatewayTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GatewayTimeoutException = { - name: "GatewayTimeoutException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new GatewayTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnprocessableEntityException = { - name: "UnprocessableEntityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ValidationErrors: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); @@ -9237,7 +6821,11 @@ const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( if (data.validationErrors !== undefined && data.validationErrors !== null) { contents.ValidationErrors = deserializeAws_restJson1__listOfValidationError(data.validationErrors, context); } - return contents; + const exception = new UnprocessableEntityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-mediapackage-vod/src/index.ts b/clients/client-mediapackage-vod/src/index.ts index 9fe1d2687badf..49bee698ace78 100644 --- a/clients/client-mediapackage-vod/src/index.ts +++ b/clients/client-mediapackage-vod/src/index.ts @@ -3,3 +3,4 @@ export * from "./MediaPackageVodClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MediaPackageVodServiceException } from "./models/MediaPackageVodServiceException"; diff --git a/clients/client-mediapackage-vod/src/models/MediaPackageVodServiceException.ts b/clients/client-mediapackage-vod/src/models/MediaPackageVodServiceException.ts new file mode 100644 index 0000000000000..811e350a0b156 --- /dev/null +++ b/clients/client-mediapackage-vod/src/models/MediaPackageVodServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaPackageVod service. + */ +export class MediaPackageVodServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaPackageVodServiceException.prototype); + } +} diff --git a/clients/client-mediapackage-vod/src/models/models_0.ts b/clients/client-mediapackage-vod/src/models/models_0.ts index b2caf7a4be222..5b38a71fb1791 100644 --- a/clients/client-mediapackage-vod/src/models/models_0.ts +++ b/clients/client-mediapackage-vod/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MediaPackageVodServiceException as __BaseException } from "./MediaPackageVodServiceException"; export enum __PeriodTriggersElement { ADS = "ADS", @@ -752,55 +755,127 @@ export namespace ConfigureLogsResponse { /** * The client is not authorized to access the requested resource. */ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + } } /** * An unexpected error occurred. */ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** * The requested resource does not exist. */ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** * An unexpected error occurred. */ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** * The client has exceeded their resource or throttling limits. */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** * The parameters sent in the request are not valid. */ -export interface UnprocessableEntityException extends __SmithyException, $MetadataBearer { - name: "UnprocessableEntityException"; - $fault: "client"; +export class UnprocessableEntityException extends __BaseException { + readonly name: "UnprocessableEntityException" = "UnprocessableEntityException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnprocessableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnprocessableEntityException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-mediapackage-vod/src/protocols/Aws_restJson1.ts b/clients/client-mediapackage-vod/src/protocols/Aws_restJson1.ts index 80ad0e9ab64f1..6f31959b07851 100644 --- a/clients/client-mediapackage-vod/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediapackage-vod/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { ConfigureLogsCommandInput, ConfigureLogsCommandOutput } from "../commands/ConfigureLogsCommand"; @@ -62,6 +61,7 @@ import { UpdatePackagingGroupCommandInput, UpdatePackagingGroupCommandOutput, } from "../commands/UpdatePackagingGroupCommand"; +import { MediaPackageVodServiceException as __BaseException } from "../models/MediaPackageVodServiceException"; import { __PeriodTriggersElement, AssetShallow, @@ -648,73 +648,37 @@ const deserializeAws_restJson1ConfigureLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssetCommand = async ( @@ -775,73 +739,37 @@ const deserializeAws_restJson1CreateAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePackagingConfigurationCommand = async ( @@ -898,73 +826,37 @@ const deserializeAws_restJson1CreatePackagingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePackagingGroupCommand = async ( @@ -1013,73 +905,37 @@ const deserializeAws_restJson1CreatePackagingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssetCommand = async ( @@ -1104,73 +960,37 @@ const deserializeAws_restJson1DeleteAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePackagingConfigurationCommand = async ( @@ -1195,73 +1015,37 @@ const deserializeAws_restJson1DeletePackagingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePackagingGroupCommand = async ( @@ -1286,73 +1070,37 @@ const deserializeAws_restJson1DeletePackagingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAssetCommand = async ( @@ -1413,73 +1161,37 @@ const deserializeAws_restJson1DescribeAssetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackagingConfigurationCommand = async ( @@ -1536,73 +1248,37 @@ const deserializeAws_restJson1DescribePackagingConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackagingGroupCommand = async ( @@ -1651,73 +1327,37 @@ const deserializeAws_restJson1DescribePackagingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssetsCommand = async ( @@ -1750,73 +1390,37 @@ const deserializeAws_restJson1ListAssetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackagingConfigurationsCommand = async ( @@ -1852,73 +1456,37 @@ const deserializeAws_restJson1ListPackagingConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackagingGroupsCommand = async ( @@ -1951,73 +1519,37 @@ const deserializeAws_restJson1ListPackagingGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2046,25 +1578,19 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2089,25 +1615,19 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2132,25 +1652,19 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePackagingGroupCommand = async ( @@ -2199,175 +1713,133 @@ const deserializeAws_restJson1UpdatePackagingGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackagevod#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackagevod#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackagevod#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackagevod#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackagevod#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackagevod#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnprocessableEntityException = { - name: "UnprocessableEntityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new UnprocessableEntityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__PeriodTriggersElement = ( diff --git a/clients/client-mediapackage/src/index.ts b/clients/client-mediapackage/src/index.ts index b360e860b43ca..2d1a1a9a5a27d 100644 --- a/clients/client-mediapackage/src/index.ts +++ b/clients/client-mediapackage/src/index.ts @@ -3,3 +3,4 @@ export * from "./MediaPackageClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MediaPackageServiceException } from "./models/MediaPackageServiceException"; diff --git a/clients/client-mediapackage/src/models/MediaPackageServiceException.ts b/clients/client-mediapackage/src/models/MediaPackageServiceException.ts new file mode 100644 index 0000000000000..3989e5492f074 --- /dev/null +++ b/clients/client-mediapackage/src/models/MediaPackageServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaPackage service. + */ +export class MediaPackageServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaPackageServiceException.prototype); + } +} diff --git a/clients/client-mediapackage/src/models/models_0.ts b/clients/client-mediapackage/src/models/models_0.ts index 10f157d97bbe7..cee98ef8c4e93 100644 --- a/clients/client-mediapackage/src/models/models_0.ts +++ b/clients/client-mediapackage/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MediaPackageServiceException as __BaseException } from "./MediaPackageServiceException"; export enum __AdTriggersElement { BREAK = "BREAK", @@ -1217,55 +1220,127 @@ export namespace ConfigureLogsResponse { /** * The client is not authorized to access the requested resource. */ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + } } /** * An unexpected error occurred. */ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** * The requested resource does not exist. */ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** * An unexpected error occurred. */ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** * The client has exceeded their resource or throttling limits. */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** * The parameters sent in the request are not valid. */ -export interface UnprocessableEntityException extends __SmithyException, $MetadataBearer { - name: "UnprocessableEntityException"; - $fault: "client"; +export class UnprocessableEntityException extends __BaseException { + readonly name: "UnprocessableEntityException" = "UnprocessableEntityException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnprocessableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnprocessableEntityException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-mediapackage/src/protocols/Aws_restJson1.ts b/clients/client-mediapackage/src/protocols/Aws_restJson1.ts index a9700ef26c10e..007eec96b9690 100644 --- a/clients/client-mediapackage/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediapackage/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { ConfigureLogsCommandInput, ConfigureLogsCommandOutput } from "../commands/ConfigureLogsCommand"; @@ -58,6 +57,7 @@ import { UpdateOriginEndpointCommandInput, UpdateOriginEndpointCommandOutput, } from "../commands/UpdateOriginEndpointCommand"; +import { MediaPackageServiceException as __BaseException } from "../models/MediaPackageServiceException"; import { __AdTriggersElement, __PeriodTriggersElement, @@ -755,73 +755,37 @@ const deserializeAws_restJson1ConfigureLogsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -874,73 +838,37 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateHarvestJobCommand = async ( @@ -1001,73 +929,37 @@ const deserializeAws_restJson1CreateHarvestJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateOriginEndpointCommand = async ( @@ -1156,73 +1048,37 @@ const deserializeAws_restJson1CreateOriginEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -1247,73 +1103,37 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteOriginEndpointCommand = async ( @@ -1338,73 +1158,37 @@ const deserializeAws_restJson1DeleteOriginEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelCommand = async ( @@ -1457,73 +1241,37 @@ const deserializeAws_restJson1DescribeChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeHarvestJobCommand = async ( @@ -1584,73 +1332,37 @@ const deserializeAws_restJson1DescribeHarvestJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOriginEndpointCommand = async ( @@ -1739,73 +1451,37 @@ const deserializeAws_restJson1DescribeOriginEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -1838,73 +1514,37 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListHarvestJobsCommand = async ( @@ -1937,73 +1577,37 @@ const deserializeAws_restJson1ListHarvestJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOriginEndpointsCommand = async ( @@ -2036,73 +1640,37 @@ const deserializeAws_restJson1ListOriginEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2131,25 +1699,19 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RotateChannelCredentialsCommand = async ( @@ -2202,73 +1764,37 @@ const deserializeAws_restJson1RotateChannelCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RotateIngestEndpointCredentialsCommand = async ( @@ -2321,73 +1847,37 @@ const deserializeAws_restJson1RotateIngestEndpointCredentialsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2412,25 +1902,19 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2455,25 +1939,19 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -2526,73 +2004,37 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOriginEndpointCommand = async ( @@ -2681,175 +2123,133 @@ const deserializeAws_restJson1UpdateOriginEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ForbiddenException": case "com.amazonaws.mediapackage#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mediapackage#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mediapackage#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mediapackage#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mediapackage#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnprocessableEntityException": case "com.amazonaws.mediapackage#UnprocessableEntityException": - response = { - ...(await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnprocessableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnprocessableEntityExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnprocessableEntityException = { - name: "UnprocessableEntityException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new UnprocessableEntityException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__PeriodTriggersElement = ( diff --git a/clients/client-mediastore-data/src/index.ts b/clients/client-mediastore-data/src/index.ts index 9353da2e658df..6249faccf0c87 100644 --- a/clients/client-mediastore-data/src/index.ts +++ b/clients/client-mediastore-data/src/index.ts @@ -3,3 +3,4 @@ export * from "./MediaStoreDataClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MediaStoreDataServiceException } from "./models/MediaStoreDataServiceException"; diff --git a/clients/client-mediastore-data/src/models/MediaStoreDataServiceException.ts b/clients/client-mediastore-data/src/models/MediaStoreDataServiceException.ts new file mode 100644 index 0000000000000..d315741b11368 --- /dev/null +++ b/clients/client-mediastore-data/src/models/MediaStoreDataServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaStoreData service. + */ +export class MediaStoreDataServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaStoreDataServiceException.prototype); + } +} diff --git a/clients/client-mediastore-data/src/models/models_0.ts b/clients/client-mediastore-data/src/models/models_0.ts index 436a0722ba2d3..a49e83a705c5b 100644 --- a/clients/client-mediastore-data/src/models/models_0.ts +++ b/clients/client-mediastore-data/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { MediaStoreDataServiceException as __BaseException } from "./MediaStoreDataServiceException"; + /** *

The specified container was not found for the specified account.

*/ -export interface ContainerNotFoundException extends __SmithyException, $MetadataBearer { - name: "ContainerNotFoundException"; - $fault: "client"; +export class ContainerNotFoundException extends __BaseException { + readonly name: "ContainerNotFoundException" = "ContainerNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContainerNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContainerNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteObjectRequest { @@ -41,19 +56,43 @@ export namespace DeleteObjectResponse { /** *

The service is temporarily unavailable.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } /** *

Could not perform an operation on an object that does not exist.

*/ -export interface ObjectNotFoundException extends __SmithyException, $MetadataBearer { - name: "ObjectNotFoundException"; - $fault: "client"; +export class ObjectNotFoundException extends __BaseException { + readonly name: "ObjectNotFoundException" = "ObjectNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeObjectRequest { @@ -207,10 +246,22 @@ export namespace GetObjectResponse { /** *

The requested content range is not valid.

*/ -export interface RequestedRangeNotSatisfiableException extends __SmithyException, $MetadataBearer { - name: "RequestedRangeNotSatisfiableException"; - $fault: "client"; +export class RequestedRangeNotSatisfiableException extends __BaseException { + readonly name: "RequestedRangeNotSatisfiableException" = "RequestedRangeNotSatisfiableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestedRangeNotSatisfiableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestedRangeNotSatisfiableException.prototype); + this.Message = opts.Message; + } } export enum ItemType { diff --git a/clients/client-mediastore-data/src/protocols/Aws_restJson1.ts b/clients/client-mediastore-data/src/protocols/Aws_restJson1.ts index be8a3f50ec206..c01d29cd2e549 100644 --- a/clients/client-mediastore-data/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediastore-data/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteObjectCommandInput, DeleteObjectCommandOutput } from "../commands/DeleteObjectCommand"; @@ -23,6 +22,7 @@ import { DescribeObjectCommandInput, DescribeObjectCommandOutput } from "../comm import { GetObjectCommandInput, GetObjectCommandOutput } from "../commands/GetObjectCommand"; import { ListItemsCommandInput, ListItemsCommandOutput } from "../commands/ListItemsCommand"; import { PutObjectCommandInput, PutObjectCommandOutput } from "../commands/PutObjectCommand"; +import { MediaStoreDataServiceException as __BaseException } from "../models/MediaStoreDataServiceException"; import { ContainerNotFoundException, InternalServerError, @@ -228,49 +228,28 @@ const deserializeAws_restJson1DeleteObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerNotFoundException": case "com.amazonaws.mediastoredata#ContainerNotFoundException": - response = { - ...(await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastoredata#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.mediastoredata#ObjectNotFoundException": - response = { - ...(await deserializeAws_restJson1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ObjectNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeObjectCommand = async ( @@ -315,49 +294,28 @@ const deserializeAws_restJson1DescribeObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerNotFoundException": case "com.amazonaws.mediastoredata#ContainerNotFoundException": - response = { - ...(await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastoredata#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.mediastoredata#ObjectNotFoundException": - response = { - ...(await deserializeAws_restJson1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ObjectNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetObjectCommand = async ( @@ -412,57 +370,31 @@ const deserializeAws_restJson1GetObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerNotFoundException": case "com.amazonaws.mediastoredata#ContainerNotFoundException": - response = { - ...(await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastoredata#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); case "ObjectNotFoundException": case "com.amazonaws.mediastoredata#ObjectNotFoundException": - response = { - ...(await deserializeAws_restJson1ObjectNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ObjectNotFoundExceptionResponse(parsedOutput, context); case "RequestedRangeNotSatisfiableException": case "com.amazonaws.mediastoredata#RequestedRangeNotSatisfiableException": - response = { - ...(await deserializeAws_restJson1RequestedRangeNotSatisfiableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestedRangeNotSatisfiableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListItemsCommand = async ( @@ -495,41 +427,25 @@ const deserializeAws_restJson1ListItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerNotFoundException": case "com.amazonaws.mediastoredata#ContainerNotFoundException": - response = { - ...(await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastoredata#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutObjectCommand = async ( @@ -566,109 +482,89 @@ const deserializeAws_restJson1PutObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerNotFoundException": case "com.amazonaws.mediastoredata#ContainerNotFoundException": - response = { - ...(await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastoredata#InternalServerError": - response = { - ...(await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ContainerNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ContainerNotFoundException = { - name: "ContainerNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ContainerNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ObjectNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ObjectNotFoundException = { - name: "ObjectNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ObjectNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestedRangeNotSatisfiableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestedRangeNotSatisfiableException = { - name: "RequestedRangeNotSatisfiableException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new RequestedRangeNotSatisfiableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1Item = (output: any, context: __SerdeContext): Item => { diff --git a/clients/client-mediastore/src/index.ts b/clients/client-mediastore/src/index.ts index ddc9005580c80..5122af4cb2f04 100644 --- a/clients/client-mediastore/src/index.ts +++ b/clients/client-mediastore/src/index.ts @@ -3,3 +3,4 @@ export * from "./MediaStoreClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MediaStoreServiceException } from "./models/MediaStoreServiceException"; diff --git a/clients/client-mediastore/src/models/MediaStoreServiceException.ts b/clients/client-mediastore/src/models/MediaStoreServiceException.ts new file mode 100644 index 0000000000000..46933b3f19321 --- /dev/null +++ b/clients/client-mediastore/src/models/MediaStoreServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaStore service. + */ +export class MediaStoreServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaStoreServiceException.prototype); + } +} diff --git a/clients/client-mediastore/src/models/models_0.ts b/clients/client-mediastore/src/models/models_0.ts index bedf0713b7d25..39d54c7162544 100644 --- a/clients/client-mediastore/src/models/models_0.ts +++ b/clients/client-mediastore/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MediaStoreServiceException as __BaseException } from "./MediaStoreServiceException"; export enum MethodName { DELETE = "DELETE", @@ -71,10 +74,22 @@ export namespace Container { *

The container that you specified in the request already exists or is being * updated.

*/ -export interface ContainerInUseException extends __SmithyException, $MetadataBearer { - name: "ContainerInUseException"; - $fault: "client"; +export class ContainerInUseException extends __BaseException { + readonly name: "ContainerInUseException" = "ContainerInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContainerInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContainerInUseException.prototype); + this.Message = opts.Message; + } } export enum ContainerLevelMetrics { @@ -85,10 +100,22 @@ export enum ContainerLevelMetrics { /** *

The container that you specified in the request does not exist.

*/ -export interface ContainerNotFoundException extends __SmithyException, $MetadataBearer { - name: "ContainerNotFoundException"; - $fault: "client"; +export class ContainerNotFoundException extends __BaseException { + readonly name: "ContainerNotFoundException" = "ContainerNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContainerNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContainerNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -151,10 +178,22 @@ export namespace CorsRule { /** *

The CORS policy that you specified in the request does not exist.

*/ -export interface CorsPolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "CorsPolicyNotFoundException"; - $fault: "client"; +export class CorsPolicyNotFoundException extends __BaseException { + readonly name: "CorsPolicyNotFoundException" = "CorsPolicyNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CorsPolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CorsPolicyNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -242,19 +281,43 @@ export namespace CreateContainerOutput { /** *

The service is temporarily unavailable.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } /** *

A service limit has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface DeleteContainerInput { @@ -314,10 +377,22 @@ export namespace DeleteContainerPolicyOutput { /** *

The policy that you specified in the request does not exist.

*/ -export interface PolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "PolicyNotFoundException"; - $fault: "client"; +export class PolicyNotFoundException extends __BaseException { + readonly name: "PolicyNotFoundException" = "PolicyNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteCorsPolicyInput { diff --git a/clients/client-mediastore/src/protocols/Aws_json1_1.ts b/clients/client-mediastore/src/protocols/Aws_json1_1.ts index 0567e7da3fd65..238ab5ab76df5 100644 --- a/clients/client-mediastore/src/protocols/Aws_json1_1.ts +++ b/clients/client-mediastore/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateContainerCommandInput, CreateContainerCommandOutput } from "../commands/CreateContainerCommand"; @@ -46,6 +45,7 @@ import { StartAccessLoggingCommandInput, StartAccessLoggingCommandOutput } from import { StopAccessLoggingCommandInput, StopAccessLoggingCommandOutput } from "../commands/StopAccessLoggingCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { MediaStoreServiceException as __BaseException } from "../models/MediaStoreServiceException"; import { Container, ContainerInUseException, @@ -401,49 +401,28 @@ const deserializeAws_json1_1CreateContainerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.mediastore#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContainerCommand = async ( @@ -471,49 +450,28 @@ const deserializeAws_json1_1DeleteContainerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContainerPolicyCommand = async ( @@ -541,57 +499,31 @@ const deserializeAws_json1_1DeleteContainerPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.mediastore#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCorsPolicyCommand = async ( @@ -619,57 +551,31 @@ const deserializeAws_json1_1DeleteCorsPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "CorsPolicyNotFoundException": case "com.amazonaws.mediastore#CorsPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1CorsPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CorsPolicyNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLifecyclePolicyCommand = async ( @@ -697,57 +603,31 @@ const deserializeAws_json1_1DeleteLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.mediastore#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMetricPolicyCommand = async ( @@ -775,57 +655,31 @@ const deserializeAws_json1_1DeleteMetricPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.mediastore#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeContainerCommand = async ( @@ -853,41 +707,25 @@ const deserializeAws_json1_1DescribeContainerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContainerPolicyCommand = async ( @@ -915,57 +753,31 @@ const deserializeAws_json1_1GetContainerPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.mediastore#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCorsPolicyCommand = async ( @@ -993,57 +805,31 @@ const deserializeAws_json1_1GetCorsPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "CorsPolicyNotFoundException": case "com.amazonaws.mediastore#CorsPolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1CorsPolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CorsPolicyNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLifecyclePolicyCommand = async ( @@ -1071,57 +857,31 @@ const deserializeAws_json1_1GetLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.mediastore#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMetricPolicyCommand = async ( @@ -1149,57 +909,31 @@ const deserializeAws_json1_1GetMetricPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.mediastore#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListContainersCommand = async ( @@ -1227,33 +961,22 @@ const deserializeAws_json1_1ListContainersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1281,49 +1004,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutContainerPolicyCommand = async ( @@ -1351,49 +1053,28 @@ const deserializeAws_json1_1PutContainerPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutCorsPolicyCommand = async ( @@ -1421,49 +1102,28 @@ const deserializeAws_json1_1PutCorsPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLifecyclePolicyCommand = async ( @@ -1491,49 +1151,28 @@ const deserializeAws_json1_1PutLifecyclePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutMetricPolicyCommand = async ( @@ -1561,49 +1200,28 @@ const deserializeAws_json1_1PutMetricPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartAccessLoggingCommand = async ( @@ -1631,49 +1249,28 @@ const deserializeAws_json1_1StartAccessLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopAccessLoggingCommand = async ( @@ -1701,49 +1298,28 @@ const deserializeAws_json1_1StopAccessLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1771,49 +1347,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1841,49 +1396,28 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ContainerInUseException": case "com.amazonaws.mediastore#ContainerInUseException": - response = { - ...(await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerInUseExceptionResponse(parsedOutput, context); case "ContainerNotFoundException": case "com.amazonaws.mediastore#ContainerNotFoundException": - response = { - ...(await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ContainerNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.mediastore#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ContainerInUseExceptionResponse = async ( @@ -1892,13 +1426,11 @@ const deserializeAws_json1_1ContainerInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ContainerInUseException(body, context); - const contents: ContainerInUseException = { - name: "ContainerInUseException", - $fault: "client", + const exception = new ContainerInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ContainerNotFoundExceptionResponse = async ( @@ -1907,13 +1439,11 @@ const deserializeAws_json1_1ContainerNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ContainerNotFoundException(body, context); - const contents: ContainerNotFoundException = { - name: "ContainerNotFoundException", - $fault: "client", + const exception = new ContainerNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CorsPolicyNotFoundExceptionResponse = async ( @@ -1922,13 +1452,11 @@ const deserializeAws_json1_1CorsPolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CorsPolicyNotFoundException(body, context); - const contents: CorsPolicyNotFoundException = { - name: "CorsPolicyNotFoundException", - $fault: "client", + const exception = new CorsPolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -1937,13 +1465,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1952,13 +1478,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyNotFoundExceptionResponse = async ( @@ -1967,13 +1491,11 @@ const deserializeAws_json1_1PolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyNotFoundException(body, context); - const contents: PolicyNotFoundException = { - name: "PolicyNotFoundException", - $fault: "client", + const exception = new PolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AllowedHeaders = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-mediatailor/src/index.ts b/clients/client-mediatailor/src/index.ts index ce08392b9f2c9..ec02b5c5c8200 100644 --- a/clients/client-mediatailor/src/index.ts +++ b/clients/client-mediatailor/src/index.ts @@ -3,3 +3,4 @@ export * from "./MediaTailorClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MediaTailorServiceException } from "./models/MediaTailorServiceException"; diff --git a/clients/client-mediatailor/src/models/MediaTailorServiceException.ts b/clients/client-mediatailor/src/models/MediaTailorServiceException.ts new file mode 100644 index 0000000000000..4a47a08e86bc6 --- /dev/null +++ b/clients/client-mediatailor/src/models/MediaTailorServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MediaTailor service. + */ +export class MediaTailorServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MediaTailorServiceException.prototype); + } +} diff --git a/clients/client-mediatailor/src/models/models_0.ts b/clients/client-mediatailor/src/models/models_0.ts index 85f2b967df9b9..94fd34e046855 100644 --- a/clients/client-mediatailor/src/models/models_0.ts +++ b/clients/client-mediatailor/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MediaTailorServiceException as __BaseException } from "./MediaTailorServiceException"; export enum MessageType { SPLICE_INSERT = "SPLICE_INSERT", @@ -1085,10 +1088,22 @@ export namespace VodSource { /** * Invalid request parameters. */ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } export enum ChannelState { diff --git a/clients/client-mediatailor/src/protocols/Aws_restJson1.ts b/clients/client-mediatailor/src/protocols/Aws_restJson1.ts index ac5ef16c0dd19..5af39d1bbcf9d 100644 --- a/clients/client-mediatailor/src/protocols/Aws_restJson1.ts +++ b/clients/client-mediatailor/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -103,6 +102,7 @@ import { UpdateSourceLocationCommandOutput, } from "../commands/UpdateSourceLocationCommand"; import { UpdateVodSourceCommandInput, UpdateVodSourceCommandOutput } from "../commands/UpdateVodSourceCommand"; +import { MediaTailorServiceException as __BaseException } from "../models/MediaTailorServiceException"; import { AccessConfiguration, AdBreak, @@ -1513,25 +1513,19 @@ const deserializeAws_restJson1ConfigureLogsForPlaybackConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateChannelCommand = async ( @@ -1592,25 +1586,19 @@ const deserializeAws_restJson1CreateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePrefetchScheduleCommand = async ( @@ -1659,25 +1647,19 @@ const deserializeAws_restJson1CreatePrefetchScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateProgramCommand = async ( @@ -1734,25 +1716,19 @@ const deserializeAws_restJson1CreateProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSourceLocationCommand = async ( @@ -1819,25 +1795,19 @@ const deserializeAws_restJson1CreateSourceLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVodSourceCommand = async ( @@ -1893,25 +1863,19 @@ const deserializeAws_restJson1CreateVodSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelCommand = async ( @@ -1936,25 +1900,19 @@ const deserializeAws_restJson1DeleteChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteChannelPolicyCommand = async ( @@ -1979,25 +1937,19 @@ const deserializeAws_restJson1DeleteChannelPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePlaybackConfigurationCommand = async ( @@ -2022,25 +1974,19 @@ const deserializeAws_restJson1DeletePlaybackConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePrefetchScheduleCommand = async ( @@ -2065,25 +2011,19 @@ const deserializeAws_restJson1DeletePrefetchScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProgramCommand = async ( @@ -2108,25 +2048,19 @@ const deserializeAws_restJson1DeleteProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSourceLocationCommand = async ( @@ -2151,25 +2085,19 @@ const deserializeAws_restJson1DeleteSourceLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVodSourceCommand = async ( @@ -2194,25 +2122,19 @@ const deserializeAws_restJson1DeleteVodSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeChannelCommand = async ( @@ -2273,25 +2195,19 @@ const deserializeAws_restJson1DescribeChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProgramCommand = async ( @@ -2348,25 +2264,19 @@ const deserializeAws_restJson1DescribeProgramCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSourceLocationCommand = async ( @@ -2433,25 +2343,19 @@ const deserializeAws_restJson1DescribeSourceLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVodSourceCommand = async ( @@ -2507,25 +2411,19 @@ const deserializeAws_restJson1DescribeVodSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelPolicyCommand = async ( @@ -2554,25 +2452,19 @@ const deserializeAws_restJson1GetChannelPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelScheduleCommand = async ( @@ -2605,25 +2497,19 @@ const deserializeAws_restJson1GetChannelScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPlaybackConfigurationCommand = async ( @@ -2733,25 +2619,19 @@ const deserializeAws_restJson1GetPlaybackConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPrefetchScheduleCommand = async ( @@ -2800,25 +2680,19 @@ const deserializeAws_restJson1GetPrefetchScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAlertsCommand = async ( @@ -2851,25 +2725,19 @@ const deserializeAws_restJson1ListAlertsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListChannelsCommand = async ( @@ -2902,25 +2770,19 @@ const deserializeAws_restJson1ListChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPlaybackConfigurationsCommand = async ( @@ -2953,25 +2815,19 @@ const deserializeAws_restJson1ListPlaybackConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPrefetchSchedulesCommand = async ( @@ -3004,25 +2860,19 @@ const deserializeAws_restJson1ListPrefetchSchedulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSourceLocationsCommand = async ( @@ -3055,25 +2905,19 @@ const deserializeAws_restJson1ListSourceLocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3102,33 +2946,22 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediatailor#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVodSourcesCommand = async ( @@ -3161,25 +2994,19 @@ const deserializeAws_restJson1ListVodSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutChannelPolicyCommand = async ( @@ -3204,25 +3031,19 @@ const deserializeAws_restJson1PutChannelPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutPlaybackConfigurationCommand = async ( @@ -3332,25 +3153,19 @@ const deserializeAws_restJson1PutPlaybackConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartChannelCommand = async ( @@ -3375,25 +3190,19 @@ const deserializeAws_restJson1StartChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopChannelCommand = async ( @@ -3418,25 +3227,19 @@ const deserializeAws_restJson1StopChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3461,33 +3264,22 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediatailor#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3512,33 +3304,22 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mediatailor#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateChannelCommand = async ( @@ -3599,25 +3380,19 @@ const deserializeAws_restJson1UpdateChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSourceLocationCommand = async ( @@ -3684,25 +3459,19 @@ const deserializeAws_restJson1UpdateSourceLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVodSourceCommand = async ( @@ -3758,42 +3527,35 @@ const deserializeAws_restJson1UpdateVodSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOfAdBreak = (input: AdBreak[], context: __SerdeContext): any => { diff --git a/clients/client-memorydb/src/index.ts b/clients/client-memorydb/src/index.ts index b3e6b32706f88..121e6a1e93a66 100644 --- a/clients/client-memorydb/src/index.ts +++ b/clients/client-memorydb/src/index.ts @@ -2,3 +2,4 @@ export * from "./MemoryDB"; export * from "./MemoryDBClient"; export * from "./commands"; export * from "./models"; +export { MemoryDBServiceException } from "./models/MemoryDBServiceException"; diff --git a/clients/client-memorydb/src/models/MemoryDBServiceException.ts b/clients/client-memorydb/src/models/MemoryDBServiceException.ts new file mode 100644 index 0000000000000..a31bf5b5d1153 --- /dev/null +++ b/clients/client-memorydb/src/models/MemoryDBServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MemoryDB service. + */ +export class MemoryDBServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MemoryDBServiceException.prototype); + } +} diff --git a/clients/client-memorydb/src/models/models_0.ts b/clients/client-memorydb/src/models/models_0.ts index 25e02384a29fa..0eb91f6ac06d0 100644 --- a/clients/client-memorydb/src/models/models_0.ts +++ b/clients/client-memorydb/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MemoryDBServiceException as __BaseException } from "./MemoryDBServiceException"; /** *

Returns the updates being applied to the ACL.

@@ -78,28 +81,58 @@ export namespace ACL { /** *

*/ -export interface ACLAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ACLAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ACLAlreadyExistsFault extends __BaseException { + readonly name: "ACLAlreadyExistsFault" = "ACLAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ACLAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ACLAlreadyExistsFault.prototype); + } } /** *

*/ -export interface ACLNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ACLNotFoundFault"; - $fault: "client"; - message?: string; +export class ACLNotFoundFault extends __BaseException { + readonly name: "ACLNotFoundFault" = "ACLNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ACLNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ACLNotFoundFault.prototype); + } } /** *

*/ -export interface ACLQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ACLQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ACLQuotaExceededFault extends __BaseException { + readonly name: "ACLQuotaExceededFault" = "ACLQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ACLQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ACLQuotaExceededFault.prototype); + } } /** @@ -586,19 +619,39 @@ export namespace BatchUpdateClusterResponse { /** *

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; - message?: string; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** *

*/ -export interface ServiceUpdateNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ServiceUpdateNotFoundFault"; - $fault: "client"; - message?: string; +export class ServiceUpdateNotFoundFault extends __BaseException { + readonly name: "ServiceUpdateNotFoundFault" = "ServiceUpdateNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUpdateNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUpdateNotFoundFault.prototype); + } } /** @@ -875,64 +928,134 @@ export namespace CopySnapshotResponse { /** *

*/ -export interface InvalidParameterCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterCombinationException"; - $fault: "client"; - message?: string; +export class InvalidParameterCombinationException extends __BaseException { + readonly name: "InvalidParameterCombinationException" = "InvalidParameterCombinationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterCombinationException.prototype); + } } /** *

*/ -export interface InvalidSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidSnapshotStateFault extends __BaseException { + readonly name: "InvalidSnapshotStateFault" = "InvalidSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSnapshotStateFault.prototype); + } } /** *

*/ -export interface ServiceLinkedRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ServiceLinkedRoleNotFoundFault"; - $fault: "client"; - message?: string; +export class ServiceLinkedRoleNotFoundFault extends __BaseException { + readonly name: "ServiceLinkedRoleNotFoundFault" = "ServiceLinkedRoleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLinkedRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLinkedRoleNotFoundFault.prototype); + } } /** *

*/ -export interface SnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "SnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class SnapshotAlreadyExistsFault extends __BaseException { + readonly name: "SnapshotAlreadyExistsFault" = "SnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotAlreadyExistsFault.prototype); + } } /** *

*/ -export interface SnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class SnapshotNotFoundFault extends __BaseException { + readonly name: "SnapshotNotFoundFault" = "SnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotNotFoundFault.prototype); + } } /** *

*/ -export interface SnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SnapshotQuotaExceededFault extends __BaseException { + readonly name: "SnapshotQuotaExceededFault" = "SnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotQuotaExceededFault.prototype); + } } /** *

*/ -export interface TagQuotaPerResourceExceeded extends __SmithyException, $MetadataBearer { - name: "TagQuotaPerResourceExceeded"; - $fault: "client"; - message?: string; +export class TagQuotaPerResourceExceeded extends __BaseException { + readonly name: "TagQuotaPerResourceExceeded" = "TagQuotaPerResourceExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagQuotaPerResourceExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagQuotaPerResourceExceeded.prototype); + } } export interface CreateACLRequest { @@ -980,46 +1103,96 @@ export namespace CreateACLResponse { /** *

*/ -export interface DefaultUserRequired extends __SmithyException, $MetadataBearer { - name: "DefaultUserRequired"; - $fault: "client"; - message?: string; +export class DefaultUserRequired extends __BaseException { + readonly name: "DefaultUserRequired" = "DefaultUserRequired"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DefaultUserRequired", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DefaultUserRequired.prototype); + } } /** *

*/ -export interface DuplicateUserNameFault extends __SmithyException, $MetadataBearer { - name: "DuplicateUserNameFault"; - $fault: "client"; - message?: string; +export class DuplicateUserNameFault extends __BaseException { + readonly name: "DuplicateUserNameFault" = "DuplicateUserNameFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateUserNameFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateUserNameFault.prototype); + } } /** *

*/ -export interface UserNotFoundFault extends __SmithyException, $MetadataBearer { - name: "UserNotFoundFault"; - $fault: "client"; - message?: string; +export class UserNotFoundFault extends __BaseException { + readonly name: "UserNotFoundFault" = "UserNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserNotFoundFault.prototype); + } } /** *

*/ -export interface ClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterAlreadyExistsFault extends __BaseException { + readonly name: "ClusterAlreadyExistsFault" = "ClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterAlreadyExistsFault.prototype); + } } /** *

*/ -export interface ClusterQuotaForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterQuotaForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class ClusterQuotaForCustomerExceededFault extends __BaseException { + readonly name: "ClusterQuotaForCustomerExceededFault" = "ClusterQuotaForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterQuotaForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterQuotaForCustomerExceededFault.prototype); + } } export interface CreateClusterRequest { @@ -1161,82 +1334,172 @@ export namespace CreateClusterResponse { /** *

*/ -export interface InsufficientClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientClusterCapacityFault extends __BaseException { + readonly name: "InsufficientClusterCapacityFault" = "InsufficientClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientClusterCapacityFault.prototype); + } } /** *

*/ -export interface InvalidACLStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidACLStateFault"; - $fault: "client"; - message?: string; +export class InvalidACLStateFault extends __BaseException { + readonly name: "InvalidACLStateFault" = "InvalidACLStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidACLStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidACLStateFault.prototype); + } } /** *

*/ -export interface InvalidCredentialsException extends __SmithyException, $MetadataBearer { - name: "InvalidCredentialsException"; - $fault: "client"; - message?: string; +export class InvalidCredentialsException extends __BaseException { + readonly name: "InvalidCredentialsException" = "InvalidCredentialsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCredentialsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCredentialsException.prototype); + } } /** *

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; - message?: string; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

*/ -export interface NodeQuotaForClusterExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeQuotaForClusterExceededFault"; - $fault: "client"; - message?: string; +export class NodeQuotaForClusterExceededFault extends __BaseException { + readonly name: "NodeQuotaForClusterExceededFault" = "NodeQuotaForClusterExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeQuotaForClusterExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeQuotaForClusterExceededFault.prototype); + } } /** *

*/ -export interface NodeQuotaForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "NodeQuotaForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class NodeQuotaForCustomerExceededFault extends __BaseException { + readonly name: "NodeQuotaForCustomerExceededFault" = "NodeQuotaForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NodeQuotaForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NodeQuotaForCustomerExceededFault.prototype); + } } /** *

*/ -export interface ParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class ParameterGroupNotFoundFault extends __BaseException { + readonly name: "ParameterGroupNotFoundFault" = "ParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterGroupNotFoundFault.prototype); + } } /** *

*/ -export interface ShardsPerClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ShardsPerClusterQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ShardsPerClusterQuotaExceededFault extends __BaseException { + readonly name: "ShardsPerClusterQuotaExceededFault" = "ShardsPerClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ShardsPerClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ShardsPerClusterQuotaExceededFault.prototype); + } } /** *

*/ -export interface SubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class SubnetGroupNotFoundFault extends __BaseException { + readonly name: "SubnetGroupNotFoundFault" = "SubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupNotFoundFault.prototype); + } } export interface CreateParameterGroupRequest { @@ -1323,37 +1586,77 @@ export namespace CreateParameterGroupResponse { /** *

*/ -export interface InvalidParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidParameterGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidParameterGroupStateFault extends __BaseException { + readonly name: "InvalidParameterGroupStateFault" = "InvalidParameterGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterGroupStateFault.prototype); + } } /** *

*/ -export interface ParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ParameterGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "ParameterGroupAlreadyExistsFault" = "ParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterGroupAlreadyExistsFault.prototype); + } } /** *

*/ -export interface ParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ParameterGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "ParameterGroupQuotaExceededFault" = "ParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterGroupQuotaExceededFault.prototype); + } } /** *

*/ -export interface ClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterNotFoundFault extends __BaseException { + readonly name: "ClusterNotFoundFault" = "ClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterNotFoundFault.prototype); + } } export interface CreateSnapshotRequest { @@ -1406,10 +1709,20 @@ export namespace CreateSnapshotResponse { /** *

*/ -export interface InvalidClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterStateFault extends __BaseException { + readonly name: "InvalidClusterStateFault" = "InvalidClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterStateFault.prototype); + } } export interface CreateSubnetGroupRequest { @@ -1553,46 +1866,96 @@ export namespace CreateSubnetGroupResponse { /** *

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; - message?: string; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

*/ -export interface SubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class SubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "SubnetGroupAlreadyExistsFault" = "SubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupAlreadyExistsFault.prototype); + } } /** *

*/ -export interface SubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "SubnetGroupQuotaExceededFault" = "SubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupQuotaExceededFault.prototype); + } } /** *

*/ -export interface SubnetNotAllowedFault extends __SmithyException, $MetadataBearer { - name: "SubnetNotAllowedFault"; - $fault: "client"; - message?: string; +export class SubnetNotAllowedFault extends __BaseException { + readonly name: "SubnetNotAllowedFault" = "SubnetNotAllowedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetNotAllowedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetNotAllowedFault.prototype); + } } /** *

*/ -export interface SubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SubnetQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SubnetQuotaExceededFault extends __BaseException { + readonly name: "SubnetQuotaExceededFault" = "SubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetQuotaExceededFault.prototype); + } } export enum InputAuthenticationType { @@ -1753,19 +2116,39 @@ export namespace CreateUserResponse { /** *

*/ -export interface UserAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "UserAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class UserAlreadyExistsFault extends __BaseException { + readonly name: "UserAlreadyExistsFault" = "UserAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserAlreadyExistsFault.prototype); + } } /** *

*/ -export interface UserQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "UserQuotaExceededFault"; - $fault: "client"; - message?: string; +export class UserQuotaExceededFault extends __BaseException { + readonly name: "UserQuotaExceededFault" = "UserQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserQuotaExceededFault.prototype); + } } export interface DeleteACLRequest { @@ -1936,10 +2319,20 @@ export namespace DeleteSubnetGroupResponse { /** *

*/ -export interface SubnetGroupInUseFault extends __SmithyException, $MetadataBearer { - name: "SubnetGroupInUseFault"; - $fault: "client"; - message?: string; +export class SubnetGroupInUseFault extends __BaseException { + readonly name: "SubnetGroupInUseFault" = "SubnetGroupInUseFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetGroupInUseFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetGroupInUseFault.prototype); + } } export interface DeleteUserRequest { @@ -1977,10 +2370,20 @@ export namespace DeleteUserResponse { /** *

*/ -export interface InvalidUserStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidUserStateFault"; - $fault: "client"; - message?: string; +export class InvalidUserStateFault extends __BaseException { + readonly name: "InvalidUserStateFault" = "InvalidUserStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUserStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUserStateFault.prototype); + } } export interface DescribeACLsRequest { @@ -2724,10 +3127,20 @@ export namespace DescribeUsersResponse { /** *

*/ -export interface APICallRateForCustomerExceededFault extends __SmithyException, $MetadataBearer { - name: "APICallRateForCustomerExceededFault"; - $fault: "client"; - message?: string; +export class APICallRateForCustomerExceededFault extends __BaseException { + readonly name: "APICallRateForCustomerExceededFault" = "APICallRateForCustomerExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "APICallRateForCustomerExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, APICallRateForCustomerExceededFault.prototype); + } } export interface FailoverShardRequest { @@ -2770,28 +3183,58 @@ export namespace FailoverShardResponse { /** *

*/ -export interface InvalidKMSKeyFault extends __SmithyException, $MetadataBearer { - name: "InvalidKMSKeyFault"; - $fault: "client"; - message?: string; +export class InvalidKMSKeyFault extends __BaseException { + readonly name: "InvalidKMSKeyFault" = "InvalidKMSKeyFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKMSKeyFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKMSKeyFault.prototype); + } } /** *

*/ -export interface ShardNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ShardNotFoundFault"; - $fault: "client"; - message?: string; +export class ShardNotFoundFault extends __BaseException { + readonly name: "ShardNotFoundFault" = "ShardNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ShardNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ShardNotFoundFault.prototype); + } } /** *

*/ -export interface TestFailoverNotAvailableFault extends __SmithyException, $MetadataBearer { - name: "TestFailoverNotAvailableFault"; - $fault: "client"; - message?: string; +export class TestFailoverNotAvailableFault extends __BaseException { + readonly name: "TestFailoverNotAvailableFault" = "TestFailoverNotAvailableFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TestFailoverNotAvailableFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TestFailoverNotAvailableFault.prototype); + } } export interface ListAllowedNodeTypeUpdatesRequest { @@ -2835,10 +3278,20 @@ export namespace ListAllowedNodeTypeUpdatesResponse { /** *

*/ -export interface InvalidARNFault extends __SmithyException, $MetadataBearer { - name: "InvalidARNFault"; - $fault: "client"; - message?: string; +export class InvalidARNFault extends __BaseException { + readonly name: "InvalidARNFault" = "InvalidARNFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidARNFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidARNFault.prototype); + } } export interface ListTagsRequest { @@ -2955,10 +3408,20 @@ export namespace TagResourceResponse { /** *

*/ -export interface TagNotFoundFault extends __SmithyException, $MetadataBearer { - name: "TagNotFoundFault"; - $fault: "client"; - message?: string; +export class TagNotFoundFault extends __BaseException { + readonly name: "TagNotFoundFault" = "TagNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagNotFoundFault.prototype); + } } export interface UntagResourceRequest { @@ -3043,19 +3506,39 @@ export namespace UpdateACLResponse { /** *

*/ -export interface InvalidNodeStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidNodeStateFault"; - $fault: "client"; - message?: string; +export class InvalidNodeStateFault extends __BaseException { + readonly name: "InvalidNodeStateFault" = "InvalidNodeStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNodeStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNodeStateFault.prototype); + } } /** *

*/ -export interface NoOperationFault extends __SmithyException, $MetadataBearer { - name: "NoOperationFault"; - $fault: "client"; - message?: string; +export class NoOperationFault extends __BaseException { + readonly name: "NoOperationFault" = "NoOperationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoOperationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoOperationFault.prototype); + } } /** @@ -3257,10 +3740,20 @@ export namespace UpdateParameterGroupResponse { /** *

*/ -export interface SubnetInUse extends __SmithyException, $MetadataBearer { - name: "SubnetInUse"; - $fault: "client"; - message?: string; +export class SubnetInUse extends __BaseException { + readonly name: "SubnetInUse" = "SubnetInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetInUse.prototype); + } } export interface UpdateSubnetGroupRequest { diff --git a/clients/client-memorydb/src/protocols/Aws_json1_1.ts b/clients/client-memorydb/src/protocols/Aws_json1_1.ts index 67f5dc8d76abb..1b0111a641191 100644 --- a/clients/client-memorydb/src/protocols/Aws_json1_1.ts +++ b/clients/client-memorydb/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchUpdateClusterCommandInput, BatchUpdateClusterCommandOutput } from "../commands/BatchUpdateClusterCommand"; @@ -79,6 +78,7 @@ import { } from "../commands/UpdateParameterGroupCommand"; import { UpdateSubnetGroupCommandInput, UpdateSubnetGroupCommandOutput } from "../commands/UpdateSubnetGroupCommand"; import { UpdateUserCommandInput, UpdateUserCommandOutput } from "../commands/UpdateUserCommand"; +import { MemoryDBServiceException as __BaseException } from "../models/MemoryDBServiceException"; import { ACL, ACLAlreadyExistsFault, @@ -716,41 +716,25 @@ const deserializeAws_json1_1BatchUpdateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceUpdateNotFoundFault": case "com.amazonaws.memorydb#ServiceUpdateNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceUpdateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUpdateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CopySnapshotCommand = async ( @@ -778,89 +762,43 @@ const deserializeAws_json1_1CopySnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidSnapshotStateFault": case "com.amazonaws.memorydb#InvalidSnapshotStateFault": - response = { - ...(await deserializeAws_json1_1InvalidSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSnapshotStateFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.memorydb#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.memorydb#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.memorydb#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotQuotaExceededFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateACLCommand = async ( @@ -888,81 +826,40 @@ const deserializeAws_json1_1CreateACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLAlreadyExistsFault": case "com.amazonaws.memorydb#ACLAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ACLAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLAlreadyExistsFaultResponse(parsedOutput, context); case "ACLQuotaExceededFault": case "com.amazonaws.memorydb#ACLQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ACLQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLQuotaExceededFaultResponse(parsedOutput, context); case "DefaultUserRequired": case "com.amazonaws.memorydb#DefaultUserRequired": - response = { - ...(await deserializeAws_json1_1DefaultUserRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DefaultUserRequiredResponse(parsedOutput, context); case "DuplicateUserNameFault": case "com.amazonaws.memorydb#DuplicateUserNameFault": - response = { - ...(await deserializeAws_json1_1DuplicateUserNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateUserNameFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateClusterCommand = async ( @@ -990,153 +887,67 @@ const deserializeAws_json1_1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "ClusterAlreadyExistsFault": case "com.amazonaws.memorydb#ClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.memorydb#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.memorydb#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_json1_1InsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidACLStateFault": case "com.amazonaws.memorydb#InvalidACLStateFault": - response = { - ...(await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context); case "InvalidCredentialsException": case "com.amazonaws.memorydb#InvalidCredentialsException": - response = { - ...(await deserializeAws_json1_1InvalidCredentialsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCredentialsExceptionResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.memorydb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.memorydb#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.memorydb#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "ShardsPerClusterQuotaExceededFault": case "com.amazonaws.memorydb#ShardsPerClusterQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ShardsPerClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ShardsPerClusterQuotaExceededFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateParameterGroupCommand = async ( @@ -1164,81 +975,40 @@ const deserializeAws_json1_1CreateParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.memorydb#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupAlreadyExistsFault": case "com.amazonaws.memorydb#ParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "ParameterGroupQuotaExceededFault": case "com.amazonaws.memorydb#ParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSnapshotCommand = async ( @@ -1266,89 +1036,43 @@ const deserializeAws_json1_1CreateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.memorydb#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.memorydb#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotQuotaExceededFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSubnetGroupCommand = async ( @@ -1376,81 +1100,40 @@ const deserializeAws_json1_1CreateSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSubnet": case "com.amazonaws.memorydb#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupAlreadyExistsFault": case "com.amazonaws.memorydb#SubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "SubnetGroupQuotaExceededFault": case "com.amazonaws.memorydb#SubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "SubnetNotAllowedFault": case "com.amazonaws.memorydb#SubnetNotAllowedFault": - response = { - ...(await deserializeAws_json1_1SubnetNotAllowedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetNotAllowedFaultResponse(parsedOutput, context); case "SubnetQuotaExceededFault": case "com.amazonaws.memorydb#SubnetQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserCommand = async ( @@ -1478,73 +1161,37 @@ const deserializeAws_json1_1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateUserNameFault": case "com.amazonaws.memorydb#DuplicateUserNameFault": - response = { - ...(await deserializeAws_json1_1DuplicateUserNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateUserNameFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserAlreadyExistsFault": case "com.amazonaws.memorydb#UserAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1UserAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserAlreadyExistsFaultResponse(parsedOutput, context); case "UserQuotaExceededFault": case "com.amazonaws.memorydb#UserQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1UserQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteACLCommand = async ( @@ -1572,49 +1219,28 @@ const deserializeAws_json1_1DeleteACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "InvalidACLStateFault": case "com.amazonaws.memorydb#InvalidACLStateFault": - response = { - ...(await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteClusterCommand = async ( @@ -1642,73 +1268,37 @@ const deserializeAws_json1_1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotAlreadyExistsFault": case "com.amazonaws.memorydb#SnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteParameterGroupCommand = async ( @@ -1736,65 +1326,34 @@ const deserializeAws_json1_1DeleteParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.memorydb#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSnapshotCommand = async ( @@ -1822,65 +1381,34 @@ const deserializeAws_json1_1DeleteSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidSnapshotStateFault": case "com.amazonaws.memorydb#InvalidSnapshotStateFault": - response = { - ...(await deserializeAws_json1_1InvalidSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSnapshotStateFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.memorydb#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSubnetGroupCommand = async ( @@ -1908,49 +1436,28 @@ const deserializeAws_json1_1DeleteSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupInUseFault": case "com.amazonaws.memorydb#SubnetGroupInUseFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupInUseFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupInUseFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserCommand = async ( @@ -1978,49 +1485,28 @@ const deserializeAws_json1_1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserStateFault": case "com.amazonaws.memorydb#InvalidUserStateFault": - response = { - ...(await deserializeAws_json1_1InvalidUserStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserStateFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeACLsCommand = async ( @@ -2048,41 +1534,25 @@ const deserializeAws_json1_1DescribeACLsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClustersCommand = async ( @@ -2110,57 +1580,31 @@ const deserializeAws_json1_1DescribeClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEngineVersionsCommand = async ( @@ -2188,49 +1632,28 @@ const deserializeAws_json1_1DescribeEngineVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsCommand = async ( @@ -2258,49 +1681,28 @@ const deserializeAws_json1_1DescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeParameterGroupsCommand = async ( @@ -2328,57 +1730,31 @@ const deserializeAws_json1_1DescribeParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeParametersCommand = async ( @@ -2406,57 +1782,31 @@ const deserializeAws_json1_1DescribeParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServiceUpdatesCommand = async ( @@ -2484,41 +1834,25 @@ const deserializeAws_json1_1DescribeServiceUpdatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSnapshotsCommand = async ( @@ -2546,57 +1880,31 @@ const deserializeAws_json1_1DescribeSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.memorydb#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSubnetGroupsCommand = async ( @@ -2624,41 +1932,25 @@ const deserializeAws_json1_1DescribeSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUsersCommand = async ( @@ -2686,41 +1978,25 @@ const deserializeAws_json1_1DescribeUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1FailoverShardCommand = async ( @@ -2748,89 +2024,43 @@ const deserializeAws_json1_1FailoverShardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "APICallRateForCustomerExceededFault": case "com.amazonaws.memorydb#APICallRateForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1APICallRateForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1APICallRateForCustomerExceededFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidKMSKeyFault": case "com.amazonaws.memorydb#InvalidKMSKeyFault": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ShardNotFoundFault": case "com.amazonaws.memorydb#ShardNotFoundFault": - response = { - ...(await deserializeAws_json1_1ShardNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ShardNotFoundFaultResponse(parsedOutput, context); case "TestFailoverNotAvailableFault": case "com.amazonaws.memorydb#TestFailoverNotAvailableFault": - response = { - ...(await deserializeAws_json1_1TestFailoverNotAvailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TestFailoverNotAvailableFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAllowedNodeTypeUpdatesCommand = async ( @@ -2858,57 +2088,31 @@ const deserializeAws_json1_1ListAllowedNodeTypeUpdatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -2936,97 +2140,46 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.memorydb#InvalidARNFault": - response = { - ...(await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.memorydb#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetParameterGroupCommand = async ( @@ -3054,65 +2207,34 @@ const deserializeAws_json1_1ResetParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.memorydb#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3140,105 +2262,49 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.memorydb#InvalidARNFault": - response = { - ...(await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.memorydb#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "TagQuotaPerResourceExceeded": case "com.amazonaws.memorydb#TagQuotaPerResourceExceeded": - response = { - ...(await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagQuotaPerResourceExceededResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3266,105 +2332,49 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidARNFault": case "com.amazonaws.memorydb#InvalidARNFault": - response = { - ...(await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidARNFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SnapshotNotFoundFault": case "com.amazonaws.memorydb#SnapshotNotFoundFault": - response = { - ...(await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SnapshotNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "TagNotFoundFault": case "com.amazonaws.memorydb#TagNotFoundFault": - response = { - ...(await deserializeAws_json1_1TagNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagNotFoundFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateACLCommand = async ( @@ -3392,81 +2402,40 @@ const deserializeAws_json1_1UpdateACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "DefaultUserRequired": case "com.amazonaws.memorydb#DefaultUserRequired": - response = { - ...(await deserializeAws_json1_1DefaultUserRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DefaultUserRequiredResponse(parsedOutput, context); case "DuplicateUserNameFault": case "com.amazonaws.memorydb#DuplicateUserNameFault": - response = { - ...(await deserializeAws_json1_1DuplicateUserNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateUserNameFaultResponse(parsedOutput, context); case "InvalidACLStateFault": case "com.amazonaws.memorydb#InvalidACLStateFault": - response = { - ...(await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateClusterCommand = async ( @@ -3494,153 +2463,67 @@ const deserializeAws_json1_1UpdateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ACLNotFoundFault": case "com.amazonaws.memorydb#ACLNotFoundFault": - response = { - ...(await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ACLNotFoundFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.memorydb#ClusterNotFoundFault": - response = { - ...(await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterQuotaForCustomerExceededFault": case "com.amazonaws.memorydb#ClusterQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "InvalidACLStateFault": case "com.amazonaws.memorydb#InvalidACLStateFault": - response = { - ...(await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidACLStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.memorydb#InvalidClusterStateFault": - response = { - ...(await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidKMSKeyFault": case "com.amazonaws.memorydb#InvalidKMSKeyFault": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyFaultResponse(parsedOutput, context); case "InvalidNodeStateFault": case "com.amazonaws.memorydb#InvalidNodeStateFault": - response = { - ...(await deserializeAws_json1_1InvalidNodeStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNodeStateFaultResponse(parsedOutput, context); case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.memorydb#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "NodeQuotaForClusterExceededFault": case "com.amazonaws.memorydb#NodeQuotaForClusterExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse(parsedOutput, context); case "NodeQuotaForCustomerExceededFault": case "com.amazonaws.memorydb#NodeQuotaForCustomerExceededFault": - response = { - ...(await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse(parsedOutput, context); case "NoOperationFault": case "com.amazonaws.memorydb#NoOperationFault": - response = { - ...(await deserializeAws_json1_1NoOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoOperationFaultResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "ShardsPerClusterQuotaExceededFault": case "com.amazonaws.memorydb#ShardsPerClusterQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1ShardsPerClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ShardsPerClusterQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateParameterGroupCommand = async ( @@ -3668,65 +2551,34 @@ const deserializeAws_json1_1UpdateParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterGroupStateFault": case "com.amazonaws.memorydb#InvalidParameterGroupStateFault": - response = { - ...(await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterGroupStateFaultResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ParameterGroupNotFoundFault": case "com.amazonaws.memorydb#ParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSubnetGroupCommand = async ( @@ -3754,73 +2606,37 @@ const deserializeAws_json1_1UpdateSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSubnet": case "com.amazonaws.memorydb#InvalidSubnet": - response = { - ...(await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidSubnetResponse(parsedOutput, context); case "ServiceLinkedRoleNotFoundFault": case "com.amazonaws.memorydb#ServiceLinkedRoleNotFoundFault": - response = { - ...(await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse(parsedOutput, context); case "SubnetGroupNotFoundFault": case "com.amazonaws.memorydb#SubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetGroupNotFoundFaultResponse(parsedOutput, context); case "SubnetInUse": case "com.amazonaws.memorydb#SubnetInUse": - response = { - ...(await deserializeAws_json1_1SubnetInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetInUseResponse(parsedOutput, context); case "SubnetNotAllowedFault": case "com.amazonaws.memorydb#SubnetNotAllowedFault": - response = { - ...(await deserializeAws_json1_1SubnetNotAllowedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetNotAllowedFaultResponse(parsedOutput, context); case "SubnetQuotaExceededFault": case "com.amazonaws.memorydb#SubnetQuotaExceededFault": - response = { - ...(await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubnetQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserCommand = async ( @@ -3848,57 +2664,31 @@ const deserializeAws_json1_1UpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterCombinationException": case "com.amazonaws.memorydb#InvalidParameterCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterCombinationExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.memorydb#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidUserStateFault": case "com.amazonaws.memorydb#InvalidUserStateFault": - response = { - ...(await deserializeAws_json1_1InvalidUserStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUserStateFaultResponse(parsedOutput, context); case "UserNotFoundFault": case "com.amazonaws.memorydb#UserNotFoundFault": - response = { - ...(await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UserNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ACLAlreadyExistsFaultResponse = async ( @@ -3907,13 +2697,11 @@ const deserializeAws_json1_1ACLAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ACLAlreadyExistsFault(body, context); - const contents: ACLAlreadyExistsFault = { - name: "ACLAlreadyExistsFault", - $fault: "client", + const exception = new ACLAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ACLNotFoundFaultResponse = async ( @@ -3922,13 +2710,11 @@ const deserializeAws_json1_1ACLNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ACLNotFoundFault(body, context); - const contents: ACLNotFoundFault = { - name: "ACLNotFoundFault", - $fault: "client", + const exception = new ACLNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ACLQuotaExceededFaultResponse = async ( @@ -3937,13 +2723,11 @@ const deserializeAws_json1_1ACLQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ACLQuotaExceededFault(body, context); - const contents: ACLQuotaExceededFault = { - name: "ACLQuotaExceededFault", - $fault: "client", + const exception = new ACLQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1APICallRateForCustomerExceededFaultResponse = async ( @@ -3952,13 +2736,11 @@ const deserializeAws_json1_1APICallRateForCustomerExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1APICallRateForCustomerExceededFault(body, context); - const contents: APICallRateForCustomerExceededFault = { - name: "APICallRateForCustomerExceededFault", - $fault: "client", + const exception = new APICallRateForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterAlreadyExistsFaultResponse = async ( @@ -3967,13 +2749,11 @@ const deserializeAws_json1_1ClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterAlreadyExistsFault(body, context); - const contents: ClusterAlreadyExistsFault = { - name: "ClusterAlreadyExistsFault", - $fault: "client", + const exception = new ClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterNotFoundFaultResponse = async ( @@ -3982,13 +2762,11 @@ const deserializeAws_json1_1ClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterNotFoundFault(body, context); - const contents: ClusterNotFoundFault = { - name: "ClusterNotFoundFault", - $fault: "client", + const exception = new ClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse = async ( @@ -3997,13 +2775,11 @@ const deserializeAws_json1_1ClusterQuotaForCustomerExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterQuotaForCustomerExceededFault(body, context); - const contents: ClusterQuotaForCustomerExceededFault = { - name: "ClusterQuotaForCustomerExceededFault", - $fault: "client", + const exception = new ClusterQuotaForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DefaultUserRequiredResponse = async ( @@ -4012,13 +2788,11 @@ const deserializeAws_json1_1DefaultUserRequiredResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DefaultUserRequired(body, context); - const contents: DefaultUserRequired = { - name: "DefaultUserRequired", - $fault: "client", + const exception = new DefaultUserRequired({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateUserNameFaultResponse = async ( @@ -4027,13 +2801,11 @@ const deserializeAws_json1_1DuplicateUserNameFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateUserNameFault(body, context); - const contents: DuplicateUserNameFault = { - name: "DuplicateUserNameFault", - $fault: "client", + const exception = new DuplicateUserNameFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InsufficientClusterCapacityFaultResponse = async ( @@ -4042,13 +2814,11 @@ const deserializeAws_json1_1InsufficientClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InsufficientClusterCapacityFault(body, context); - const contents: InsufficientClusterCapacityFault = { - name: "InsufficientClusterCapacityFault", - $fault: "client", + const exception = new InsufficientClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidACLStateFaultResponse = async ( @@ -4057,13 +2827,11 @@ const deserializeAws_json1_1InvalidACLStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidACLStateFault(body, context); - const contents: InvalidACLStateFault = { - name: "InvalidACLStateFault", - $fault: "client", + const exception = new InvalidACLStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidARNFaultResponse = async ( @@ -4072,13 +2840,11 @@ const deserializeAws_json1_1InvalidARNFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidARNFault(body, context); - const contents: InvalidARNFault = { - name: "InvalidARNFault", - $fault: "client", + const exception = new InvalidARNFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidClusterStateFaultResponse = async ( @@ -4087,13 +2853,11 @@ const deserializeAws_json1_1InvalidClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidClusterStateFault(body, context); - const contents: InvalidClusterStateFault = { - name: "InvalidClusterStateFault", - $fault: "client", + const exception = new InvalidClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCredentialsExceptionResponse = async ( @@ -4102,13 +2866,11 @@ const deserializeAws_json1_1InvalidCredentialsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCredentialsException(body, context); - const contents: InvalidCredentialsException = { - name: "InvalidCredentialsException", - $fault: "client", + const exception = new InvalidCredentialsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKMSKeyFaultResponse = async ( @@ -4117,13 +2879,11 @@ const deserializeAws_json1_1InvalidKMSKeyFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKMSKeyFault(body, context); - const contents: InvalidKMSKeyFault = { - name: "InvalidKMSKeyFault", - $fault: "client", + const exception = new InvalidKMSKeyFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNodeStateFaultResponse = async ( @@ -4132,13 +2892,11 @@ const deserializeAws_json1_1InvalidNodeStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNodeStateFault(body, context); - const contents: InvalidNodeStateFault = { - name: "InvalidNodeStateFault", - $fault: "client", + const exception = new InvalidNodeStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ( @@ -4147,13 +2905,11 @@ const deserializeAws_json1_1InvalidParameterCombinationExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterCombinationException(body, context); - const contents: InvalidParameterCombinationException = { - name: "InvalidParameterCombinationException", - $fault: "client", + const exception = new InvalidParameterCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterGroupStateFaultResponse = async ( @@ -4162,13 +2918,11 @@ const deserializeAws_json1_1InvalidParameterGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterGroupStateFault(body, context); - const contents: InvalidParameterGroupStateFault = { - name: "InvalidParameterGroupStateFault", - $fault: "client", + const exception = new InvalidParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( @@ -4177,13 +2931,11 @@ const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSnapshotStateFaultResponse = async ( @@ -4192,13 +2944,11 @@ const deserializeAws_json1_1InvalidSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSnapshotStateFault(body, context); - const contents: InvalidSnapshotStateFault = { - name: "InvalidSnapshotStateFault", - $fault: "client", + const exception = new InvalidSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidSubnetResponse = async ( @@ -4207,13 +2957,11 @@ const deserializeAws_json1_1InvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSubnet(body, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUserStateFaultResponse = async ( @@ -4222,13 +2970,11 @@ const deserializeAws_json1_1InvalidUserStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUserStateFault(body, context); - const contents: InvalidUserStateFault = { - name: "InvalidUserStateFault", - $fault: "client", + const exception = new InvalidUserStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse = async ( @@ -4237,13 +2983,11 @@ const deserializeAws_json1_1InvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidVPCNetworkStateFault(body, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse = async ( @@ -4252,13 +2996,11 @@ const deserializeAws_json1_1NodeQuotaForClusterExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NodeQuotaForClusterExceededFault(body, context); - const contents: NodeQuotaForClusterExceededFault = { - name: "NodeQuotaForClusterExceededFault", - $fault: "client", + const exception = new NodeQuotaForClusterExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse = async ( @@ -4267,13 +3009,11 @@ const deserializeAws_json1_1NodeQuotaForCustomerExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NodeQuotaForCustomerExceededFault(body, context); - const contents: NodeQuotaForCustomerExceededFault = { - name: "NodeQuotaForCustomerExceededFault", - $fault: "client", + const exception = new NodeQuotaForCustomerExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoOperationFaultResponse = async ( @@ -4282,13 +3022,11 @@ const deserializeAws_json1_1NoOperationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoOperationFault(body, context); - const contents: NoOperationFault = { - name: "NoOperationFault", - $fault: "client", + const exception = new NoOperationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse = async ( @@ -4297,13 +3035,11 @@ const deserializeAws_json1_1ParameterGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterGroupAlreadyExistsFault(body, context); - const contents: ParameterGroupAlreadyExistsFault = { - name: "ParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new ParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterGroupNotFoundFaultResponse = async ( @@ -4312,13 +3048,11 @@ const deserializeAws_json1_1ParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterGroupNotFoundFault(body, context); - const contents: ParameterGroupNotFoundFault = { - name: "ParameterGroupNotFoundFault", - $fault: "client", + const exception = new ParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse = async ( @@ -4327,13 +3061,11 @@ const deserializeAws_json1_1ParameterGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterGroupQuotaExceededFault(body, context); - const contents: ParameterGroupQuotaExceededFault = { - name: "ParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new ParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse = async ( @@ -4342,13 +3074,11 @@ const deserializeAws_json1_1ServiceLinkedRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceLinkedRoleNotFoundFault(body, context); - const contents: ServiceLinkedRoleNotFoundFault = { - name: "ServiceLinkedRoleNotFoundFault", - $fault: "client", + const exception = new ServiceLinkedRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUpdateNotFoundFaultResponse = async ( @@ -4357,13 +3087,11 @@ const deserializeAws_json1_1ServiceUpdateNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUpdateNotFoundFault(body, context); - const contents: ServiceUpdateNotFoundFault = { - name: "ServiceUpdateNotFoundFault", - $fault: "client", + const exception = new ServiceUpdateNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ShardNotFoundFaultResponse = async ( @@ -4372,13 +3100,11 @@ const deserializeAws_json1_1ShardNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ShardNotFoundFault(body, context); - const contents: ShardNotFoundFault = { - name: "ShardNotFoundFault", - $fault: "client", + const exception = new ShardNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ShardsPerClusterQuotaExceededFaultResponse = async ( @@ -4387,13 +3113,11 @@ const deserializeAws_json1_1ShardsPerClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ShardsPerClusterQuotaExceededFault(body, context); - const contents: ShardsPerClusterQuotaExceededFault = { - name: "ShardsPerClusterQuotaExceededFault", - $fault: "client", + const exception = new ShardsPerClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse = async ( @@ -4402,13 +3126,11 @@ const deserializeAws_json1_1SnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SnapshotAlreadyExistsFault(body, context); - const contents: SnapshotAlreadyExistsFault = { - name: "SnapshotAlreadyExistsFault", - $fault: "client", + const exception = new SnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SnapshotNotFoundFaultResponse = async ( @@ -4417,13 +3139,11 @@ const deserializeAws_json1_1SnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SnapshotNotFoundFault(body, context); - const contents: SnapshotNotFoundFault = { - name: "SnapshotNotFoundFault", - $fault: "client", + const exception = new SnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SnapshotQuotaExceededFaultResponse = async ( @@ -4432,13 +3152,11 @@ const deserializeAws_json1_1SnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SnapshotQuotaExceededFault(body, context); - const contents: SnapshotQuotaExceededFault = { - name: "SnapshotQuotaExceededFault", - $fault: "client", + const exception = new SnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse = async ( @@ -4447,13 +3165,11 @@ const deserializeAws_json1_1SubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupAlreadyExistsFault(body, context); - const contents: SubnetGroupAlreadyExistsFault = { - name: "SubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new SubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupInUseFaultResponse = async ( @@ -4462,13 +3178,11 @@ const deserializeAws_json1_1SubnetGroupInUseFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupInUseFault(body, context); - const contents: SubnetGroupInUseFault = { - name: "SubnetGroupInUseFault", - $fault: "client", + const exception = new SubnetGroupInUseFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupNotFoundFaultResponse = async ( @@ -4477,13 +3191,11 @@ const deserializeAws_json1_1SubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupNotFoundFault(body, context); - const contents: SubnetGroupNotFoundFault = { - name: "SubnetGroupNotFoundFault", - $fault: "client", + const exception = new SubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse = async ( @@ -4492,13 +3204,11 @@ const deserializeAws_json1_1SubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetGroupQuotaExceededFault(body, context); - const contents: SubnetGroupQuotaExceededFault = { - name: "SubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new SubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetInUseResponse = async ( @@ -4507,13 +3217,11 @@ const deserializeAws_json1_1SubnetInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetInUse(body, context); - const contents: SubnetInUse = { - name: "SubnetInUse", - $fault: "client", + const exception = new SubnetInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetNotAllowedFaultResponse = async ( @@ -4522,13 +3230,11 @@ const deserializeAws_json1_1SubnetNotAllowedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetNotAllowedFault(body, context); - const contents: SubnetNotAllowedFault = { - name: "SubnetNotAllowedFault", - $fault: "client", + const exception = new SubnetNotAllowedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubnetQuotaExceededFaultResponse = async ( @@ -4537,13 +3243,11 @@ const deserializeAws_json1_1SubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubnetQuotaExceededFault(body, context); - const contents: SubnetQuotaExceededFault = { - name: "SubnetQuotaExceededFault", - $fault: "client", + const exception = new SubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagNotFoundFaultResponse = async ( @@ -4552,13 +3256,11 @@ const deserializeAws_json1_1TagNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagNotFoundFault(body, context); - const contents: TagNotFoundFault = { - name: "TagNotFoundFault", - $fault: "client", + const exception = new TagNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagQuotaPerResourceExceededResponse = async ( @@ -4567,13 +3269,11 @@ const deserializeAws_json1_1TagQuotaPerResourceExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagQuotaPerResourceExceeded(body, context); - const contents: TagQuotaPerResourceExceeded = { - name: "TagQuotaPerResourceExceeded", - $fault: "client", + const exception = new TagQuotaPerResourceExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TestFailoverNotAvailableFaultResponse = async ( @@ -4582,13 +3282,11 @@ const deserializeAws_json1_1TestFailoverNotAvailableFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TestFailoverNotAvailableFault(body, context); - const contents: TestFailoverNotAvailableFault = { - name: "TestFailoverNotAvailableFault", - $fault: "client", + const exception = new TestFailoverNotAvailableFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserAlreadyExistsFaultResponse = async ( @@ -4597,13 +3295,11 @@ const deserializeAws_json1_1UserAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserAlreadyExistsFault(body, context); - const contents: UserAlreadyExistsFault = { - name: "UserAlreadyExistsFault", - $fault: "client", + const exception = new UserAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserNotFoundFaultResponse = async ( @@ -4612,13 +3308,11 @@ const deserializeAws_json1_1UserNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserNotFoundFault(body, context); - const contents: UserNotFoundFault = { - name: "UserNotFoundFault", - $fault: "client", + const exception = new UserNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UserQuotaExceededFaultResponse = async ( @@ -4627,13 +3321,11 @@ const deserializeAws_json1_1UserQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UserQuotaExceededFault(body, context); - const contents: UserQuotaExceededFault = { - name: "UserQuotaExceededFault", - $fault: "client", + const exception = new UserQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AuthenticationMode = (input: AuthenticationMode, context: __SerdeContext): any => { diff --git a/clients/client-mgn/src/index.ts b/clients/client-mgn/src/index.ts index ec02d56fd3882..e01dafcb8bd31 100644 --- a/clients/client-mgn/src/index.ts +++ b/clients/client-mgn/src/index.ts @@ -3,3 +3,4 @@ export * from "./MgnClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MgnServiceException } from "./models/MgnServiceException"; diff --git a/clients/client-mgn/src/models/MgnServiceException.ts b/clients/client-mgn/src/models/MgnServiceException.ts new file mode 100644 index 0000000000000..42e1856c48d79 --- /dev/null +++ b/clients/client-mgn/src/models/MgnServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Mgn service. + */ +export class MgnServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MgnServiceException.prototype); + } +} diff --git a/clients/client-mgn/src/models/models_0.ts b/clients/client-mgn/src/models/models_0.ts index f47b13845bff1..ae769e85da85c 100644 --- a/clients/client-mgn/src/models/models_0.ts +++ b/clients/client-mgn/src/models/models_0.ts @@ -1,14 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MgnServiceException as __BaseException } from "./MgnServiceException"; /** *

Operating denied due to a file permission or access check error.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.code = opts.code; + } } export interface InitializeServiceRequest {} @@ -67,10 +80,9 @@ export enum ValidationExceptionReason { /** *

Validate exception.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; code?: string; /** *

Validate exception reason.

@@ -81,15 +93,29 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

Validate exception field list.

*/ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.code = opts.code; + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } /** *

The request could not be completed due to a conflict with the current state of the target resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; code?: string; /** *

A conflict occured when prompting for the Resource ID.

@@ -100,6 +126,21 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

A conflict occured when prompting for resource type.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.code = opts.code; + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } export interface DeleteJobRequest { @@ -132,10 +173,9 @@ export namespace DeleteJobResponse { /** *

Resource not found exception.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; code?: string; /** *

Resource ID not found error.

@@ -146,16 +186,42 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

Resource type not found error.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

Unitialized account exception.

*/ -export interface UninitializedAccountException extends __SmithyException, $MetadataBearer { - name: "UninitializedAccountException"; - $fault: "client"; - message?: string; +export class UninitializedAccountException extends __BaseException { + readonly name: "UninitializedAccountException" = "UninitializedAccountException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UninitializedAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UninitializedAccountException.prototype); + this.code = opts.code; + } } export interface DescribeJobLogItemsRequest { @@ -477,14 +543,26 @@ export namespace DescribeJobsResponse { /** *

The server encountered an unexpected condition that prevented it from fulfilling the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

The server encountered an unexpected condition that prevented it from fulfilling the request. The request will be retried again after x seconds.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } export interface ListTagsForResourceRequest { @@ -523,10 +601,9 @@ export namespace ListTagsForResourceResponse { /** *

Reached throttling quota exception.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

Reached throttling quota exception service code.

*/ @@ -541,6 +618,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

Reached throttling quota exception will retry after x seconds.

*/ retryAfterSeconds?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } export enum ReplicationConfigurationDataPlaneRouting { @@ -2140,10 +2232,9 @@ export namespace StartCutoverResponse { /** *

The request could not be completed because its exceeded the service quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; code?: string; /** *

Exceeded the service quota resource Id.

@@ -2164,6 +2255,23 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

Exceeded the service quota code.

*/ quotaCode?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.code = opts.code; + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } export interface StartReplicationRequest { diff --git a/clients/client-mgn/src/protocols/Aws_restJson1.ts b/clients/client-mgn/src/protocols/Aws_restJson1.ts index d3ce2c3ebc2a9..c73f53361e44a 100644 --- a/clients/client-mgn/src/protocols/Aws_restJson1.ts +++ b/clients/client-mgn/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -99,6 +98,7 @@ import { UpdateSourceServerReplicationTypeCommandInput, UpdateSourceServerReplicationTypeCommandOutput, } from "../commands/UpdateSourceServerReplicationTypeCommand"; +import { MgnServiceException as __BaseException } from "../models/MgnServiceException"; import { AccessDeniedException, ChangeServerLifeCycleStateSourceServerLifecycle, @@ -1124,57 +1124,31 @@ const deserializeAws_restJson1ChangeServerLifeCycleStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateReplicationConfigurationTemplateCommand = async ( @@ -1262,49 +1236,28 @@ const deserializeAws_restJson1CreateReplicationConfigurationTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJobCommand = async ( @@ -1329,49 +1282,28 @@ const deserializeAws_restJson1DeleteJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommand = async ( @@ -1396,49 +1328,28 @@ const deserializeAws_restJson1DeleteReplicationConfigurationTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSourceServerCommand = async ( @@ -1463,49 +1374,28 @@ const deserializeAws_restJson1DeleteSourceServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVcenterClientCommand = async ( @@ -1530,49 +1420,28 @@ const deserializeAws_restJson1DeleteVcenterClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobLogItemsCommand = async ( @@ -1605,41 +1474,25 @@ const deserializeAws_restJson1DescribeJobLogItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJobsCommand = async ( @@ -1672,41 +1525,25 @@ const deserializeAws_restJson1DescribeJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommand = async ( @@ -1739,49 +1576,28 @@ const deserializeAws_restJson1DescribeReplicationConfigurationTemplatesCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSourceServersCommand = async ( @@ -1814,41 +1630,25 @@ const deserializeAws_restJson1DescribeSourceServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVcenterClientsCommand = async ( @@ -1881,49 +1681,28 @@ const deserializeAws_restJson1DescribeVcenterClientsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisconnectFromServiceCommand = async ( @@ -1988,49 +1767,28 @@ const deserializeAws_restJson1DisconnectFromServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1FinalizeCutoverCommand = async ( @@ -2095,57 +1853,31 @@ const deserializeAws_restJson1FinalizeCutoverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchConfigurationCommand = async ( @@ -2202,41 +1934,25 @@ const deserializeAws_restJson1GetLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReplicationConfigurationCommand = async ( @@ -2327,41 +2043,25 @@ const deserializeAws_restJson1GetReplicationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitializeServiceCommand = async ( @@ -2386,41 +2086,25 @@ const deserializeAws_restJson1InitializeServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2449,65 +2133,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.mgn#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.mgn#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MarkAsArchivedCommand = async ( @@ -2572,49 +2225,28 @@ const deserializeAws_restJson1MarkAsArchivedCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RetryDataReplicationCommand = async ( @@ -2679,49 +2311,28 @@ const deserializeAws_restJson1RetryDataReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartCutoverCommand = async ( @@ -2750,49 +2361,28 @@ const deserializeAws_restJson1StartCutoverCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartReplicationCommand = async ( @@ -2857,65 +2447,34 @@ const deserializeAws_restJson1StartReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.mgn#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartTestCommand = async ( @@ -2944,49 +2503,28 @@ const deserializeAws_restJson1StartTestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3011,65 +2549,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.mgn#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.mgn#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TerminateTargetInstancesCommand = async ( @@ -3098,49 +2605,28 @@ const deserializeAws_restJson1TerminateTargetInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3165,65 +2651,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.mgn#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.mgn#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLaunchConfigurationCommand = async ( @@ -3280,57 +2735,31 @@ const deserializeAws_restJson1UpdateLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReplicationConfigurationCommand = async ( @@ -3421,65 +2850,34 @@ const deserializeAws_restJson1UpdateReplicationConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReplicationConfigurationTemplateCommand = async ( @@ -3567,57 +2965,31 @@ const deserializeAws_restJson1UpdateReplicationConfigurationTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mgn#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSourceServerReplicationTypeCommand = async ( @@ -3682,70 +3054,38 @@ const deserializeAws_restJson1UpdateSourceServerReplicationTypeCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.mgn#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mgn#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UninitializedAccountException": case "com.amazonaws.mgn#UninitializedAccountException": - response = { - ...(await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UninitializedAccountExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mgn#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3753,22 +3093,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3782,20 +3118,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseLong(parsedOutput.headers["retry-after"]); } @@ -3803,22 +3137,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3832,24 +3162,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3869,22 +3193,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -3898,20 +3218,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UninitializedAccountExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UninitializedAccountException = { - name: "UninitializedAccountException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3919,22 +3237,18 @@ const deserializeAws_restJson1UninitializedAccountExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UninitializedAccountException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -3948,7 +3262,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ChangeServerLifeCycleStateSourceServerLifecycle = ( diff --git a/clients/client-migration-hub-refactor-spaces/src/index.ts b/clients/client-migration-hub-refactor-spaces/src/index.ts index 8f766c5b51b2e..2061531389e7e 100644 --- a/clients/client-migration-hub-refactor-spaces/src/index.ts +++ b/clients/client-migration-hub-refactor-spaces/src/index.ts @@ -3,3 +3,4 @@ export * from "./MigrationHubRefactorSpacesClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MigrationHubRefactorSpacesServiceException } from "./models/MigrationHubRefactorSpacesServiceException"; diff --git a/clients/client-migration-hub-refactor-spaces/src/models/MigrationHubRefactorSpacesServiceException.ts b/clients/client-migration-hub-refactor-spaces/src/models/MigrationHubRefactorSpacesServiceException.ts new file mode 100644 index 0000000000000..67ec12e66cf86 --- /dev/null +++ b/clients/client-migration-hub-refactor-spaces/src/models/MigrationHubRefactorSpacesServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MigrationHubRefactorSpaces service. + */ +export class MigrationHubRefactorSpacesServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MigrationHubRefactorSpacesServiceException.prototype); + } +} diff --git a/clients/client-migration-hub-refactor-spaces/src/models/models_0.ts b/clients/client-migration-hub-refactor-spaces/src/models/models_0.ts index 319fe3d653bef..1d33eef6bd710 100644 --- a/clients/client-migration-hub-refactor-spaces/src/models/models_0.ts +++ b/clients/client-migration-hub-refactor-spaces/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MigrationHubRefactorSpacesServiceException as __BaseException } from "./MigrationHubRefactorSpacesServiceException"; /** *

The user does not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ApiGatewayEndpointType { @@ -323,9 +337,9 @@ export namespace ApplicationSummary { /** *

Updating or deleting a resource can cause an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -336,6 +350,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of resource.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } export interface CreateApplicationRequest { @@ -473,18 +501,30 @@ export namespace CreateApplicationResponse { /** *

An unexpected error occurred while processing the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The request references a resource that does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -495,14 +535,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of resource.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request would cause a service quota to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -525,14 +579,30 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad * exception service code.

*/ ServiceCode: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } /** *

Request was denied because the request was throttled.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

Service quota requirement to identify originating quota. Reached throttling quota @@ -550,15 +620,42 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The number of seconds to wait before retrying.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

The input does not satisfy the constraints specified by an Amazon Web Service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum NetworkFabricType { @@ -2022,10 +2119,22 @@ export namespace GetServiceResponse { /** *

The resource policy is not valid.

*/ -export interface InvalidResourcePolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidResourcePolicyException"; - $fault: "client"; +export class InvalidResourcePolicyException extends __BaseException { + readonly name: "InvalidResourcePolicyException" = "InvalidResourcePolicyException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourcePolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourcePolicyException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-migration-hub-refactor-spaces/src/protocols/Aws_restJson1.ts b/clients/client-migration-hub-refactor-spaces/src/protocols/Aws_restJson1.ts index 8c5951370035f..79e10d7d7e675 100644 --- a/clients/client-migration-hub-refactor-spaces/src/protocols/Aws_restJson1.ts +++ b/clients/client-migration-hub-refactor-spaces/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -50,6 +49,7 @@ import { import { PutResourcePolicyCommandInput, PutResourcePolicyCommandOutput } from "../commands/PutResourcePolicyCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; +import { MigrationHubRefactorSpacesServiceException as __BaseException } from "../models/MigrationHubRefactorSpacesServiceException"; import { AccessDeniedException, ApiGatewayProxyConfig, @@ -1019,81 +1019,40 @@ const deserializeAws_restJson1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEnvironmentCommand = async ( @@ -1158,81 +1117,40 @@ const deserializeAws_restJson1CreateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRouteCommand = async ( @@ -1305,81 +1223,40 @@ const deserializeAws_restJson1CreateRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateServiceCommand = async ( @@ -1468,81 +1345,40 @@ const deserializeAws_restJson1CreateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApplicationCommand = async ( @@ -1591,73 +1427,37 @@ const deserializeAws_restJson1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEnvironmentCommand = async ( @@ -1702,73 +1502,37 @@ const deserializeAws_restJson1DeleteEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourcePolicyCommand = async ( @@ -1793,65 +1557,34 @@ const deserializeAws_restJson1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRouteCommand = async ( @@ -1900,73 +1633,37 @@ const deserializeAws_restJson1DeleteRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteServiceCommand = async ( @@ -2019,73 +1716,37 @@ const deserializeAws_restJson1DeleteServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationCommand = async ( @@ -2166,65 +1827,34 @@ const deserializeAws_restJson1GetApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEnvironmentCommand = async ( @@ -2297,65 +1927,34 @@ const deserializeAws_restJson1GetEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcePolicyCommand = async ( @@ -2384,65 +1983,34 @@ const deserializeAws_restJson1GetResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRouteCommand = async ( @@ -2535,65 +2103,34 @@ const deserializeAws_restJson1GetRouteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServiceCommand = async ( @@ -2686,65 +2223,34 @@ const deserializeAws_restJson1GetServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationsCommand = async ( @@ -2780,81 +2286,40 @@ const deserializeAws_restJson1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEnvironmentsCommand = async ( @@ -2890,65 +2355,34 @@ const deserializeAws_restJson1ListEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEnvironmentVpcsCommand = async ( @@ -2981,65 +2415,34 @@ const deserializeAws_restJson1ListEnvironmentVpcsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoutesCommand = async ( @@ -3072,81 +2475,40 @@ const deserializeAws_restJson1ListRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListServicesCommand = async ( @@ -3179,81 +2541,40 @@ const deserializeAws_restJson1ListServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubrefactorspaces#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubrefactorspaces#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3282,49 +2603,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutResourcePolicyCommand = async ( @@ -3349,73 +2649,37 @@ const deserializeAws_restJson1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubrefactorspaces#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidResourcePolicyException": case "com.amazonaws.migrationhubrefactorspaces#InvalidResourcePolicyException": - response = { - ...(await deserializeAws_restJson1InvalidResourcePolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourcePolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubrefactorspaces#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3440,49 +2704,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3507,80 +2750,51 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubrefactorspaces#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubrefactorspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubrefactorspaces#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3591,55 +2805,50 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidResourcePolicyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidResourcePolicyException = { - name: "InvalidResourcePolicyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidResourcePolicyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3650,23 +2859,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - ResourceId: undefined, - ResourceType: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -3683,22 +2887,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - RetryAfterSeconds: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -3712,24 +2912,27 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ApiGatewayProxyInput = (input: ApiGatewayProxyInput, context: __SerdeContext): any => { diff --git a/clients/client-migration-hub/src/index.ts b/clients/client-migration-hub/src/index.ts index 6a2fb544c9c22..f58fcc66512ed 100644 --- a/clients/client-migration-hub/src/index.ts +++ b/clients/client-migration-hub/src/index.ts @@ -3,3 +3,4 @@ export * from "./MigrationHubClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MigrationHubServiceException } from "./models/MigrationHubServiceException"; diff --git a/clients/client-migration-hub/src/models/MigrationHubServiceException.ts b/clients/client-migration-hub/src/models/MigrationHubServiceException.ts new file mode 100644 index 0000000000000..4a11519d3054b --- /dev/null +++ b/clients/client-migration-hub/src/models/MigrationHubServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MigrationHub service. + */ +export class MigrationHubServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MigrationHubServiceException.prototype); + } +} diff --git a/clients/client-migration-hub/src/models/models_0.ts b/clients/client-migration-hub/src/models/models_0.ts index 922bbdc50e654..37469460b1590 100644 --- a/clients/client-migration-hub/src/models/models_0.ts +++ b/clients/client-migration-hub/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MigrationHubServiceException as __BaseException } from "./MigrationHubServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ApplicationStatus { @@ -122,39 +137,87 @@ export namespace AssociateCreatedArtifactResult { *

Exception raised to indicate a successfully authorized action when the * DryRun flag is set to "true".

*/ -export interface DryRunOperation extends __SmithyException, $MetadataBearer { - name: "DryRunOperation"; - $fault: "client"; +export class DryRunOperation extends __BaseException { + readonly name: "DryRunOperation" = "DryRunOperation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DryRunOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DryRunOperation.prototype); + this.Message = opts.Message; + } } /** *

The home region is not set. Set the home region to continue.

*/ -export interface HomeRegionNotSetException extends __SmithyException, $MetadataBearer { - name: "HomeRegionNotSetException"; - $fault: "client"; +export class HomeRegionNotSetException extends __BaseException { + readonly name: "HomeRegionNotSetException" = "HomeRegionNotSetException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HomeRegionNotSetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HomeRegionNotSetException.prototype); + this.Message = opts.Message; + } } /** *

Exception raised when an internal, configuration, or dependency error is * encountered.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } /** *

Exception raised when the provided input violates a policy constraint or is entered in * the wrong format or data type.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** @@ -162,28 +225,52 @@ export interface InvalidInputException extends __SmithyException, $MetadataBeare * configuration, update stream, migration task, etc.) that does not exist in Application * Discovery Service (Application Discovery Service) or in Migration Hub's repository.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Exception raised when there is an internal, configuration, or dependency error * encountered.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

A message that provides information about the exception.

*/ @@ -193,16 +280,41 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The number of seconds the caller should wait before retrying.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

Exception raised to indicate a request was not authorized when the DryRun * flag is set to "true".

*/ -export interface UnauthorizedOperation extends __SmithyException, $MetadataBearer { - name: "UnauthorizedOperation"; - $fault: "client"; +export class UnauthorizedOperation extends __BaseException { + readonly name: "UnauthorizedOperation" = "UnauthorizedOperation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedOperation.prototype); + this.Message = opts.Message; + } } /** @@ -281,10 +393,22 @@ export namespace AssociateDiscoveredResourceResult { * (Application Discovery Service); most likely due to a misconfigured policy or the * migrationhub-discovery role is missing or not configured correctly.

*/ -export interface PolicyErrorException extends __SmithyException, $MetadataBearer { - name: "PolicyErrorException"; - $fault: "client"; +export class PolicyErrorException extends __BaseException { + readonly name: "PolicyErrorException" = "PolicyErrorException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyErrorException.prototype); + this.Message = opts.Message; + } } export interface CreateProgressUpdateStreamRequest { diff --git a/clients/client-migration-hub/src/protocols/Aws_json1_1.ts b/clients/client-migration-hub/src/protocols/Aws_json1_1.ts index c1cff6277c696..8ea34aca4cb17 100644 --- a/clients/client-migration-hub/src/protocols/Aws_json1_1.ts +++ b/clients/client-migration-hub/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -80,6 +79,7 @@ import { PutResourceAttributesCommandInput, PutResourceAttributesCommandOutput, } from "../commands/PutResourceAttributesCommand"; +import { MigrationHubServiceException as __BaseException } from "../models/MigrationHubServiceException"; import { AccessDeniedException, ApplicationState, @@ -381,97 +381,46 @@ const deserializeAws_json1_1AssociateCreatedArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateDiscoveredResourceCommand = async ( @@ -499,105 +448,49 @@ const deserializeAws_json1_1AssociateDiscoveredResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyErrorException": case "com.amazonaws.migrationhub#PolicyErrorException": - response = { - ...(await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProgressUpdateStreamCommand = async ( @@ -625,89 +518,43 @@ const deserializeAws_json1_1CreateProgressUpdateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProgressUpdateStreamCommand = async ( @@ -735,97 +582,46 @@ const deserializeAws_json1_1DeleteProgressUpdateStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeApplicationStateCommand = async ( @@ -853,89 +649,43 @@ const deserializeAws_json1_1DescribeApplicationStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyErrorException": case "com.amazonaws.migrationhub#PolicyErrorException": - response = { - ...(await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMigrationTaskCommand = async ( @@ -963,81 +713,40 @@ const deserializeAws_json1_1DescribeMigrationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateCreatedArtifactCommand = async ( @@ -1065,97 +774,46 @@ const deserializeAws_json1_1DisassociateCreatedArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateDiscoveredResourceCommand = async ( @@ -1183,97 +841,46 @@ const deserializeAws_json1_1DisassociateDiscoveredResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportMigrationTaskCommand = async ( @@ -1301,97 +908,46 @@ const deserializeAws_json1_1ImportMigrationTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListApplicationStatesCommand = async ( @@ -1419,73 +975,37 @@ const deserializeAws_json1_1ListApplicationStatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCreatedArtifactsCommand = async ( @@ -1513,81 +1033,40 @@ const deserializeAws_json1_1ListCreatedArtifactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDiscoveredResourcesCommand = async ( @@ -1615,81 +1094,40 @@ const deserializeAws_json1_1ListDiscoveredResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMigrationTasksCommand = async ( @@ -1717,89 +1155,43 @@ const deserializeAws_json1_1ListMigrationTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyErrorException": case "com.amazonaws.migrationhub#PolicyErrorException": - response = { - ...(await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProgressUpdateStreamsCommand = async ( @@ -1827,73 +1219,37 @@ const deserializeAws_json1_1ListProgressUpdateStreamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1NotifyApplicationStateCommand = async ( @@ -1921,105 +1277,49 @@ const deserializeAws_json1_1NotifyApplicationStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyErrorException": case "com.amazonaws.migrationhub#PolicyErrorException": - response = { - ...(await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1NotifyMigrationTaskStateCommand = async ( @@ -2047,97 +1347,46 @@ const deserializeAws_json1_1NotifyMigrationTaskStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourceAttributesCommand = async ( @@ -2165,97 +1414,46 @@ const deserializeAws_json1_1PutResourceAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhub#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhub#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "HomeRegionNotSetException": case "com.amazonaws.migrationhub#HomeRegionNotSetException": - response = { - ...(await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HomeRegionNotSetExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhub#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhub#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhub#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhub#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.migrationhub#UnauthorizedOperation": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -2264,13 +1462,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DryRunOperationResponse = async ( @@ -2279,13 +1475,11 @@ const deserializeAws_json1_1DryRunOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DryRunOperation(body, context); - const contents: DryRunOperation = { - name: "DryRunOperation", - $fault: "client", + const exception = new DryRunOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HomeRegionNotSetExceptionResponse = async ( @@ -2294,13 +1488,11 @@ const deserializeAws_json1_1HomeRegionNotSetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HomeRegionNotSetException(body, context); - const contents: HomeRegionNotSetException = { - name: "HomeRegionNotSetException", - $fault: "client", + const exception = new HomeRegionNotSetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -2309,13 +1501,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -2324,13 +1514,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyErrorExceptionResponse = async ( @@ -2339,13 +1527,11 @@ const deserializeAws_json1_1PolicyErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyErrorException(body, context); - const contents: PolicyErrorException = { - name: "PolicyErrorException", - $fault: "client", + const exception = new PolicyErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2354,13 +1540,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -2369,13 +1553,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -2384,13 +1566,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnauthorizedOperationResponse = async ( @@ -2399,13 +1579,11 @@ const deserializeAws_json1_1UnauthorizedOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnauthorizedOperation(body, context); - const contents: UnauthorizedOperation = { - name: "UnauthorizedOperation", - $fault: "client", + const exception = new UnauthorizedOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ApplicationIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-migrationhub-config/src/index.ts b/clients/client-migrationhub-config/src/index.ts index 10c0ddb95f120..2faa257abe0fc 100644 --- a/clients/client-migrationhub-config/src/index.ts +++ b/clients/client-migrationhub-config/src/index.ts @@ -3,3 +3,4 @@ export * from "./MigrationHubConfigClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MigrationHubConfigServiceException } from "./models/MigrationHubConfigServiceException"; diff --git a/clients/client-migrationhub-config/src/models/MigrationHubConfigServiceException.ts b/clients/client-migrationhub-config/src/models/MigrationHubConfigServiceException.ts new file mode 100644 index 0000000000000..a73b7a6af3a26 --- /dev/null +++ b/clients/client-migrationhub-config/src/models/MigrationHubConfigServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MigrationHubConfig service. + */ +export class MigrationHubConfigServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MigrationHubConfigServiceException.prototype); + } +} diff --git a/clients/client-migrationhub-config/src/models/models_0.ts b/clients/client-migrationhub-config/src/models/models_0.ts index 5e90b21a47b20..a86a30f35539d 100644 --- a/clients/client-migrationhub-config/src/models/models_0.ts +++ b/clients/client-migrationhub-config/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MigrationHubConfigServiceException as __BaseException } from "./MigrationHubConfigServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum TargetType { @@ -130,53 +145,114 @@ export namespace CreateHomeRegionControlResult { *

Exception raised to indicate that authorization of an action was successful, when the * DryRun flag is set to true.

*/ -export interface DryRunOperation extends __SmithyException, $MetadataBearer { - name: "DryRunOperation"; - $fault: "client"; +export class DryRunOperation extends __BaseException { + readonly name: "DryRunOperation" = "DryRunOperation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DryRunOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DryRunOperation.prototype); + this.Message = opts.Message; + } } /** *

Exception raised when an internal, configuration, or dependency error is * encountered.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } /** *

Exception raised when the provided input violates a policy constraint or is entered in the * wrong format or data type.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + } } /** *

Exception raised when a request fails due to temporary unavailability of the * service.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The number of seconds the caller should wait before retrying.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } export interface DescribeHomeRegionControlsRequest { diff --git a/clients/client-migrationhub-config/src/protocols/Aws_json1_1.ts b/clients/client-migrationhub-config/src/protocols/Aws_json1_1.ts index d25763735ecac..daf466fd12e89 100644 --- a/clients/client-migrationhub-config/src/protocols/Aws_json1_1.ts +++ b/clients/client-migrationhub-config/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -24,6 +23,7 @@ import { DescribeHomeRegionControlsCommandOutput, } from "../commands/DescribeHomeRegionControlsCommand"; import { GetHomeRegionCommandInput, GetHomeRegionCommandOutput } from "../commands/GetHomeRegionCommand"; +import { MigrationHubConfigServiceException as __BaseException } from "../models/MigrationHubConfigServiceException"; import { AccessDeniedException, CreateHomeRegionControlRequest, @@ -105,73 +105,37 @@ const deserializeAws_json1_1CreateHomeRegionControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubconfig#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DryRunOperation": case "com.amazonaws.migrationhubconfig#DryRunOperation": - response = { - ...(await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhubconfig#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhubconfig#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhubconfig#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubconfig#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHomeRegionControlsCommand = async ( @@ -199,65 +163,34 @@ const deserializeAws_json1_1DescribeHomeRegionControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubconfig#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhubconfig#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhubconfig#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhubconfig#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubconfig#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetHomeRegionCommand = async ( @@ -285,65 +218,34 @@ const deserializeAws_json1_1GetHomeRegionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubconfig#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.migrationhubconfig#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.migrationhubconfig#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.migrationhubconfig#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubconfig#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -352,13 +254,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DryRunOperationResponse = async ( @@ -367,13 +267,11 @@ const deserializeAws_json1_1DryRunOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DryRunOperation(body, context); - const contents: DryRunOperation = { - name: "DryRunOperation", - $fault: "client", + const exception = new DryRunOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -382,13 +280,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -397,13 +293,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -412,13 +306,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -427,13 +319,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CreateHomeRegionControlRequest = ( diff --git a/clients/client-migrationhubstrategy/src/index.ts b/clients/client-migrationhubstrategy/src/index.ts index 22fd54888d6ce..1d908505ebac7 100644 --- a/clients/client-migrationhubstrategy/src/index.ts +++ b/clients/client-migrationhubstrategy/src/index.ts @@ -3,3 +3,4 @@ export * from "./MigrationHubStrategyClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MigrationHubStrategyServiceException } from "./models/MigrationHubStrategyServiceException"; diff --git a/clients/client-migrationhubstrategy/src/models/MigrationHubStrategyServiceException.ts b/clients/client-migrationhubstrategy/src/models/MigrationHubStrategyServiceException.ts new file mode 100644 index 0000000000000..ff2845b69068b --- /dev/null +++ b/clients/client-migrationhubstrategy/src/models/MigrationHubStrategyServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MigrationHubStrategy service. + */ +export class MigrationHubStrategyServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MigrationHubStrategyServiceException.prototype); + } +} diff --git a/clients/client-migrationhubstrategy/src/models/models_0.ts b/clients/client-migrationhubstrategy/src/models/models_0.ts index c480882b48a11..4942881360df1 100644 --- a/clients/client-migrationhubstrategy/src/models/models_0.ts +++ b/clients/client-migrationhubstrategy/src/models/models_0.ts @@ -1,14 +1,26 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MigrationHubStrategyServiceException as __BaseException } from "./MigrationHubStrategyServiceException"; /** *

The AWS user account does not have permission to perform the action. Check the * AWS Identity and Access Management (IAM) policy associated with this account.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AntipatternReportStatus { @@ -895,28 +907,58 @@ export namespace GetApplicationComponentDetailsResponse { /** *

The server experienced an internal error. Try again.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The specified ID in the request is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export interface GetApplicationComponentStrategiesRequest { @@ -1135,10 +1177,20 @@ export namespace GetImportFileTaskResponse { /** *

The request body isn't valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface GetPortfolioPreferencesRequest {} @@ -2044,10 +2096,20 @@ export namespace ListApplicationComponentsResponse { * Exception to indicate that the service-linked role (SLR) is locked. *

*/ -export interface ServiceLinkedRoleLockClientException extends __SmithyException, $MetadataBearer { - name: "ServiceLinkedRoleLockClientException"; - $fault: "client"; - message?: string; +export class ServiceLinkedRoleLockClientException extends __BaseException { + readonly name: "ServiceLinkedRoleLockClientException" = "ServiceLinkedRoleLockClientException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLinkedRoleLockClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLinkedRoleLockClientException.prototype); + } } export interface ListCollectorsRequest { @@ -2360,10 +2422,20 @@ export namespace ListServersResponse { * Return when once the existing tasks are complete. *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export interface PutPortfolioPreferencesRequest { @@ -2413,10 +2485,20 @@ export namespace PutPortfolioPreferencesResponse { *

The AWS account has reached its quota of imports. Contact AWS Support to increase the * quota for this account.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface StartAssessmentRequest { diff --git a/clients/client-migrationhubstrategy/src/protocols/Aws_restJson1.ts b/clients/client-migrationhubstrategy/src/protocols/Aws_restJson1.ts index 84fe6de9ca0ab..51a7ee34c6ecc 100644 --- a/clients/client-migrationhubstrategy/src/protocols/Aws_restJson1.ts +++ b/clients/client-migrationhubstrategy/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -71,6 +70,7 @@ import { UpdateApplicationComponentConfigCommandOutput, } from "../commands/UpdateApplicationComponentConfigCommand"; import { UpdateServerConfigCommandInput, UpdateServerConfigCommandOutput } from "../commands/UpdateServerConfigCommand"; +import { MigrationHubStrategyServiceException as __BaseException } from "../models/MigrationHubStrategyServiceException"; import { AccessDeniedException, AntipatternSeveritySummary, @@ -749,49 +749,28 @@ const deserializeAws_restJson1GetApplicationComponentDetailsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationComponentStrategiesCommand = async ( @@ -823,49 +802,28 @@ const deserializeAws_restJson1GetApplicationComponentStrategiesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssessmentCommand = async ( @@ -898,57 +856,31 @@ const deserializeAws_restJson1GetAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImportFileTaskCommand = async ( @@ -1017,65 +949,34 @@ const deserializeAws_restJson1GetImportFileTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPortfolioPreferencesCommand = async ( @@ -1118,57 +1019,31 @@ const deserializeAws_restJson1GetPortfolioPreferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPortfolioSummaryCommand = async ( @@ -1197,49 +1072,28 @@ const deserializeAws_restJson1GetPortfolioSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecommendationReportDetailsCommand = async ( @@ -1275,65 +1129,34 @@ const deserializeAws_restJson1GetRecommendationReportDetailsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServerDetailsCommand = async ( @@ -1373,65 +1196,34 @@ const deserializeAws_restJson1GetServerDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServerStrategiesCommand = async ( @@ -1460,65 +1252,34 @@ const deserializeAws_restJson1GetServerStrategiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationComponentsCommand = async ( @@ -1554,57 +1315,31 @@ const deserializeAws_restJson1ListApplicationComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceLinkedRoleLockClientException": case "com.amazonaws.migrationhubstrategy#ServiceLinkedRoleLockClientException": - response = { - ...(await deserializeAws_restJson1ServiceLinkedRoleLockClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceLinkedRoleLockClientExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCollectorsCommand = async ( @@ -1637,57 +1372,31 @@ const deserializeAws_restJson1ListCollectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImportFileTaskCommand = async ( @@ -1720,57 +1429,31 @@ const deserializeAws_restJson1ListImportFileTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListServersCommand = async ( @@ -1803,57 +1486,31 @@ const deserializeAws_restJson1ListServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutPortfolioPreferencesCommand = async ( @@ -1878,65 +1535,34 @@ const deserializeAws_restJson1PutPortfolioPreferencesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubstrategy#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartAssessmentCommand = async ( @@ -1965,57 +1591,31 @@ const deserializeAws_restJson1StartAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubstrategy#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartImportFileTaskCommand = async ( @@ -2044,65 +1644,34 @@ const deserializeAws_restJson1StartImportFileTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.migrationhubstrategy#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartRecommendationReportGenerationCommand = async ( @@ -2131,65 +1700,34 @@ const deserializeAws_restJson1StartRecommendationReportGenerationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.migrationhubstrategy#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopAssessmentCommand = async ( @@ -2214,57 +1752,31 @@ const deserializeAws_restJson1StopAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.migrationhubstrategy#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApplicationComponentConfigCommand = async ( @@ -2289,57 +1801,31 @@ const deserializeAws_restJson1UpdateApplicationComponentConfigCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateServerConfigCommand = async ( @@ -2364,193 +1850,159 @@ const deserializeAws_restJson1UpdateServerConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.migrationhubstrategy#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.migrationhubstrategy#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.migrationhubstrategy#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.migrationhubstrategy#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceLinkedRoleLockClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceLinkedRoleLockClientException = { - name: "ServiceLinkedRoleLockClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceLinkedRoleLockClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ApplicationPreferences = (input: ApplicationPreferences, context: __SerdeContext): any => { diff --git a/clients/client-mobile/src/index.ts b/clients/client-mobile/src/index.ts index ab9b760a5b90a..e280f8a071dfa 100644 --- a/clients/client-mobile/src/index.ts +++ b/clients/client-mobile/src/index.ts @@ -3,3 +3,4 @@ export * from "./MobileClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MobileServiceException } from "./models/MobileServiceException"; diff --git a/clients/client-mobile/src/models/MobileServiceException.ts b/clients/client-mobile/src/models/MobileServiceException.ts new file mode 100644 index 0000000000000..d971ab4c687a5 --- /dev/null +++ b/clients/client-mobile/src/models/MobileServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Mobile service. + */ +export class MobileServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MobileServiceException.prototype); + } +} diff --git a/clients/client-mobile/src/models/models_0.ts b/clients/client-mobile/src/models/models_0.ts index 4735b940f92db..ac3d11642fed0 100644 --- a/clients/client-mobile/src/models/models_0.ts +++ b/clients/client-mobile/src/models/models_0.ts @@ -1,19 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MobileServiceException as __BaseException } from "./MobileServiceException"; /** *

* Account Action is required in order to continue the request. *

*/ -export interface AccountActionRequiredException extends __SmithyException, $MetadataBearer { - name: "AccountActionRequiredException"; - $fault: "client"; +export class AccountActionRequiredException extends __BaseException { + readonly name: "AccountActionRequiredException" = "AccountActionRequiredException"; + readonly $fault: "client" = "client"; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountActionRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountActionRequiredException.prototype); + } } /** @@ -22,15 +30,20 @@ export interface AccountActionRequiredException extends __SmithyException, $Meta * state prevents the operation from being performed. *

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** @@ -238,15 +251,20 @@ export namespace CreateProjectResult { * servicing the request. *

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + } } /** @@ -257,9 +275,9 @@ export interface InternalFailureException extends __SmithyException, $MetadataBe * your request. *

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

* The Exception Error Message. @@ -268,11 +286,17 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear retryAfterSeconds?: string; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -280,15 +304,20 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear * No entity can be found with the specified identifier. *

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** @@ -297,9 +326,9 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { * time delay. *

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** *

* The Exception Error Message. @@ -308,11 +337,17 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat retryAfterSeconds?: string; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -321,9 +356,9 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat * request should be retried after some time delay. *

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

* The Exception Error Message. @@ -332,11 +367,17 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe retryAfterSeconds?: string; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -344,15 +385,20 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe * Credentials of the caller are insufficient to authorize the request. *

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; /** - *

- * The Exception Error Message. - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } /** diff --git a/clients/client-mobile/src/protocols/Aws_restJson1.ts b/clients/client-mobile/src/protocols/Aws_restJson1.ts index 61e1bccd96b97..369ee239f1111 100644 --- a/clients/client-mobile/src/protocols/Aws_restJson1.ts +++ b/clients/client-mobile/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateProjectCommandInput, CreateProjectCommandOutput } from "../commands/CreateProjectCommand"; @@ -24,6 +23,7 @@ import { ExportProjectCommandInput, ExportProjectCommandOutput } from "../comman import { ListBundlesCommandInput, ListBundlesCommandOutput } from "../commands/ListBundlesCommand"; import { ListProjectsCommandInput, ListProjectsCommandOutput } from "../commands/ListProjectsCommand"; import { UpdateProjectCommandInput, UpdateProjectCommandOutput } from "../commands/UpdateProjectCommand"; +import { MobileServiceException as __BaseException } from "../models/MobileServiceException"; import { AccountActionRequiredException, BadRequestException, @@ -313,81 +313,40 @@ const deserializeAws_restJson1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.mobile#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteProjectCommand = async ( @@ -420,65 +379,34 @@ const deserializeAws_restJson1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBundleCommand = async ( @@ -507,73 +435,37 @@ const deserializeAws_restJson1DescribeBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProjectCommand = async ( @@ -602,73 +494,37 @@ const deserializeAws_restJson1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportBundleCommand = async ( @@ -697,73 +553,37 @@ const deserializeAws_restJson1ExportBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportProjectCommand = async ( @@ -800,73 +620,37 @@ const deserializeAws_restJson1ExportProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBundlesCommand = async ( @@ -899,65 +683,34 @@ const deserializeAws_restJson1ListBundlesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProjectsCommand = async ( @@ -990,65 +743,34 @@ const deserializeAws_restJson1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateProjectCommand = async ( @@ -1077,153 +799,98 @@ const deserializeAws_restJson1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountActionRequiredException": case "com.amazonaws.mobile#AccountActionRequiredException": - response = { - ...(await deserializeAws_restJson1AccountActionRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountActionRequiredExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.mobile#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.mobile#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.mobile#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mobile#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.mobile#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.mobile#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mobile#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccountActionRequiredExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccountActionRequiredException = { - name: "AccountActionRequiredException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccountActionRequiredException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -1231,37 +898,34 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -1269,20 +933,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = parsedOutput.headers["retry-after"]; } @@ -1290,24 +952,27 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1Attributes = (output: any, context: __SerdeContext): { [key: string]: string } => { diff --git a/clients/client-mq/src/index.ts b/clients/client-mq/src/index.ts index e50d115eefa4a..db7cf35a29c08 100644 --- a/clients/client-mq/src/index.ts +++ b/clients/client-mq/src/index.ts @@ -3,3 +3,4 @@ export * from "./MqClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MqServiceException } from "./models/MqServiceException"; diff --git a/clients/client-mq/src/models/MqServiceException.ts b/clients/client-mq/src/models/MqServiceException.ts new file mode 100644 index 0000000000000..931bfa4b82b0e --- /dev/null +++ b/clients/client-mq/src/models/MqServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Mq service. + */ +export class MqServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MqServiceException.prototype); + } +} diff --git a/clients/client-mq/src/models/models_0.ts b/clients/client-mq/src/models/models_0.ts index d2d1cd39bedbc..9e0bebc9c10b9 100644 --- a/clients/client-mq/src/models/models_0.ts +++ b/clients/client-mq/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MqServiceException as __BaseException } from "./MqServiceException"; /** *

Name of the availability zone.

@@ -437,9 +440,9 @@ export namespace UserSummary { /** *

Returns information about an error.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

The attribute which caused the error.

*/ @@ -449,6 +452,19 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

The explanation of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.ErrorAttribute = opts.ErrorAttribute; + this.Message = opts.Message; + } } /** @@ -483,9 +499,9 @@ export namespace Configurations { /** *

Returns information about an error.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The attribute which caused the error.

*/ @@ -495,6 +511,19 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The explanation of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.ErrorAttribute = opts.ErrorAttribute; + this.Message = opts.Message; + } } /** @@ -791,9 +820,9 @@ export namespace CreateBrokerResponse { /** *

Returns information about an error.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** *

The attribute which caused the error.

*/ @@ -803,14 +832,27 @@ export interface ForbiddenException extends __SmithyException, $MetadataBearer { *

The explanation of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.ErrorAttribute = opts.ErrorAttribute; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** *

The attribute which caused the error.

*/ @@ -820,14 +862,27 @@ export interface InternalServerErrorException extends __SmithyException, $Metada *

The explanation of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.ErrorAttribute = opts.ErrorAttribute; + this.Message = opts.Message; + } } /** *

Returns information about an error.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; /** *

The attribute which caused the error.

*/ @@ -837,6 +892,19 @@ export interface UnauthorizedException extends __SmithyException, $MetadataBeare *

The explanation of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.ErrorAttribute = opts.ErrorAttribute; + this.Message = opts.Message; + } } /** @@ -946,9 +1014,9 @@ export namespace CreateTagsRequest { /** *

Returns information about an error.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

The attribute which caused the error.

*/ @@ -958,6 +1026,19 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The explanation of the error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.ErrorAttribute = opts.ErrorAttribute; + this.Message = opts.Message; + } } /** diff --git a/clients/client-mq/src/protocols/Aws_restJson1.ts b/clients/client-mq/src/protocols/Aws_restJson1.ts index 9f632401c38ba..5e0c52f280aff 100644 --- a/clients/client-mq/src/protocols/Aws_restJson1.ts +++ b/clients/client-mq/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -90,6 +89,7 @@ import { UserSummary, WeeklyStartTime, } from "../models/models_0"; +import { MqServiceException as __BaseException } from "../models/MqServiceException"; export const serializeAws_restJson1CreateBrokerCommand = async ( input: CreateBrokerCommandInput, @@ -893,65 +893,34 @@ const deserializeAws_restJson1CreateBrokerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mq#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.mq#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigurationCommand = async ( @@ -1000,57 +969,31 @@ const deserializeAws_restJson1CreateConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mq#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTagsCommand = async ( @@ -1075,57 +1018,31 @@ const deserializeAws_restJson1CreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUserCommand = async ( @@ -1150,65 +1067,34 @@ const deserializeAws_restJson1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mq#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBrokerCommand = async ( @@ -1237,57 +1123,31 @@ const deserializeAws_restJson1DeleteBrokerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTagsCommand = async ( @@ -1312,57 +1172,31 @@ const deserializeAws_restJson1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserCommand = async ( @@ -1387,57 +1221,31 @@ const deserializeAws_restJson1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBrokerCommand = async ( @@ -1580,57 +1388,31 @@ const deserializeAws_restJson1DescribeBrokerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBrokerEngineTypesCommand = async ( @@ -1667,49 +1449,28 @@ const deserializeAws_restJson1DescribeBrokerEngineTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeBrokerInstanceOptionsCommand = async ( @@ -1749,49 +1510,28 @@ const deserializeAws_restJson1DescribeBrokerInstanceOptionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConfigurationCommand = async ( @@ -1856,57 +1596,31 @@ const deserializeAws_restJson1DescribeConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeConfigurationRevisionCommand = async ( @@ -1947,57 +1661,31 @@ const deserializeAws_restJson1DescribeConfigurationRevisionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUserCommand = async ( @@ -2042,57 +1730,31 @@ const deserializeAws_restJson1DescribeUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBrokersCommand = async ( @@ -2125,49 +1787,28 @@ const deserializeAws_restJson1ListBrokersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationRevisionsCommand = async ( @@ -2208,57 +1849,31 @@ const deserializeAws_restJson1ListConfigurationRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationsCommand = async ( @@ -2295,49 +1910,28 @@ const deserializeAws_restJson1ListConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsCommand = async ( @@ -2366,57 +1960,31 @@ const deserializeAws_restJson1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUsersCommand = async ( @@ -2457,57 +2025,31 @@ const deserializeAws_restJson1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RebootBrokerCommand = async ( @@ -2532,57 +2074,31 @@ const deserializeAws_restJson1RebootBrokerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBrokerCommand = async ( @@ -2650,65 +2166,34 @@ const deserializeAws_restJson1UpdateBrokerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mq#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigurationCommand = async ( @@ -2757,65 +2242,34 @@ const deserializeAws_restJson1UpdateConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mq#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserCommand = async ( @@ -2840,78 +2294,41 @@ const deserializeAws_restJson1UpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.mq#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.mq#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.mq#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.mq#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.mq#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorAttribute: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorAttribute !== undefined && data.errorAttribute !== null) { contents.ErrorAttribute = __expectString(data.errorAttribute); @@ -2919,20 +2336,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorAttribute: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorAttribute !== undefined && data.errorAttribute !== null) { contents.ErrorAttribute = __expectString(data.errorAttribute); @@ -2940,20 +2355,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorAttribute: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorAttribute !== undefined && data.errorAttribute !== null) { contents.ErrorAttribute = __expectString(data.errorAttribute); @@ -2961,20 +2374,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - ErrorAttribute: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorAttribute !== undefined && data.errorAttribute !== null) { contents.ErrorAttribute = __expectString(data.errorAttribute); @@ -2982,20 +2393,18 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorAttribute: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorAttribute !== undefined && data.errorAttribute !== null) { contents.ErrorAttribute = __expectString(data.errorAttribute); @@ -3003,20 +2412,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorAttribute: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorAttribute !== undefined && data.errorAttribute !== null) { contents.ErrorAttribute = __expectString(data.errorAttribute); @@ -3024,7 +2431,11 @@ const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-mturk/src/index.ts b/clients/client-mturk/src/index.ts index bdb729770dc1e..62601f881ffbf 100644 --- a/clients/client-mturk/src/index.ts +++ b/clients/client-mturk/src/index.ts @@ -3,3 +3,4 @@ export * from "./MTurkClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MTurkServiceException } from "./models/MTurkServiceException"; diff --git a/clients/client-mturk/src/models/MTurkServiceException.ts b/clients/client-mturk/src/models/MTurkServiceException.ts new file mode 100644 index 0000000000000..0a3f087070567 --- /dev/null +++ b/clients/client-mturk/src/models/MTurkServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MTurk service. + */ +export class MTurkServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MTurkServiceException.prototype); + } +} diff --git a/clients/client-mturk/src/models/models_0.ts b/clients/client-mturk/src/models/models_0.ts index ec88699b86112..cec6b04174c27 100644 --- a/clients/client-mturk/src/models/models_0.ts +++ b/clients/client-mturk/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MTurkServiceException as __BaseException } from "./MTurkServiceException"; export interface AcceptQualificationRequestRequest { /** @@ -38,21 +41,47 @@ export namespace AcceptQualificationRequestResponse { /** *

Your request is invalid.

*/ -export interface RequestError extends __SmithyException, $MetadataBearer { - name: "RequestError"; - $fault: "client"; +export class RequestError extends __BaseException { + readonly name: "RequestError" = "RequestError"; + readonly $fault: "client" = "client"; Message?: string; TurkErrorCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestError.prototype); + this.Message = opts.Message; + this.TurkErrorCode = opts.TurkErrorCode; + } } /** *

Amazon Mechanical Turk is temporarily unable to process your request. Try your call again.

*/ -export interface ServiceFault extends __SmithyException, $MetadataBearer { - name: "ServiceFault"; - $fault: "server"; +export class ServiceFault extends __BaseException { + readonly name: "ServiceFault" = "ServiceFault"; + readonly $fault: "server" = "server"; Message?: string; TurkErrorCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceFault", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceFault.prototype); + this.Message = opts.Message; + this.TurkErrorCode = opts.TurkErrorCode; + } } export interface ApproveAssignmentRequest { diff --git a/clients/client-mturk/src/protocols/Aws_json1_1.ts b/clients/client-mturk/src/protocols/Aws_json1_1.ts index e1fea58c557bd..af5fd0b7f4b36 100644 --- a/clients/client-mturk/src/protocols/Aws_json1_1.ts +++ b/clients/client-mturk/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -222,6 +221,7 @@ import { UpdateQualificationTypeResponse, WorkerBlock, } from "../models/models_0"; +import { MTurkServiceException as __BaseException } from "../models/MTurkServiceException"; export const serializeAws_json1_1AcceptQualificationRequestCommand = async ( input: AcceptQualificationRequestCommandInput, @@ -755,41 +755,25 @@ const deserializeAws_json1_1AcceptQualificationRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ApproveAssignmentCommand = async ( @@ -817,41 +801,25 @@ const deserializeAws_json1_1ApproveAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateQualificationWithWorkerCommand = async ( @@ -879,41 +847,25 @@ const deserializeAws_json1_1AssociateQualificationWithWorkerCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAdditionalAssignmentsForHITCommand = async ( @@ -941,41 +893,25 @@ const deserializeAws_json1_1CreateAdditionalAssignmentsForHITCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHITCommand = async ( @@ -1003,41 +939,25 @@ const deserializeAws_json1_1CreateHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHITTypeCommand = async ( @@ -1065,41 +985,25 @@ const deserializeAws_json1_1CreateHITTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHITWithHITTypeCommand = async ( @@ -1127,41 +1031,25 @@ const deserializeAws_json1_1CreateHITWithHITTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateQualificationTypeCommand = async ( @@ -1189,41 +1077,25 @@ const deserializeAws_json1_1CreateQualificationTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkerBlockCommand = async ( @@ -1251,41 +1123,25 @@ const deserializeAws_json1_1CreateWorkerBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteHITCommand = async ( @@ -1313,41 +1169,25 @@ const deserializeAws_json1_1DeleteHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteQualificationTypeCommand = async ( @@ -1375,41 +1215,25 @@ const deserializeAws_json1_1DeleteQualificationTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkerBlockCommand = async ( @@ -1437,41 +1261,25 @@ const deserializeAws_json1_1DeleteWorkerBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateQualificationFromWorkerCommand = async ( @@ -1499,41 +1307,25 @@ const deserializeAws_json1_1DisassociateQualificationFromWorkerCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAccountBalanceCommand = async ( @@ -1561,41 +1353,25 @@ const deserializeAws_json1_1GetAccountBalanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAssignmentCommand = async ( @@ -1623,41 +1399,25 @@ const deserializeAws_json1_1GetAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFileUploadURLCommand = async ( @@ -1685,41 +1445,25 @@ const deserializeAws_json1_1GetFileUploadURLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetHITCommand = async ( @@ -1747,41 +1491,25 @@ const deserializeAws_json1_1GetHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQualificationScoreCommand = async ( @@ -1809,41 +1537,25 @@ const deserializeAws_json1_1GetQualificationScoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetQualificationTypeCommand = async ( @@ -1871,41 +1583,25 @@ const deserializeAws_json1_1GetQualificationTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssignmentsForHITCommand = async ( @@ -1933,41 +1629,25 @@ const deserializeAws_json1_1ListAssignmentsForHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBonusPaymentsCommand = async ( @@ -1995,41 +1675,25 @@ const deserializeAws_json1_1ListBonusPaymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHITsCommand = async ( @@ -2057,41 +1721,25 @@ const deserializeAws_json1_1ListHITsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHITsForQualificationTypeCommand = async ( @@ -2119,41 +1767,25 @@ const deserializeAws_json1_1ListHITsForQualificationTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListQualificationRequestsCommand = async ( @@ -2181,41 +1813,25 @@ const deserializeAws_json1_1ListQualificationRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListQualificationTypesCommand = async ( @@ -2243,41 +1859,25 @@ const deserializeAws_json1_1ListQualificationTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReviewableHITsCommand = async ( @@ -2305,41 +1905,25 @@ const deserializeAws_json1_1ListReviewableHITsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListReviewPolicyResultsForHITCommand = async ( @@ -2367,41 +1951,25 @@ const deserializeAws_json1_1ListReviewPolicyResultsForHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkerBlocksCommand = async ( @@ -2429,41 +1997,25 @@ const deserializeAws_json1_1ListWorkerBlocksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkersWithQualificationTypeCommand = async ( @@ -2491,41 +2043,25 @@ const deserializeAws_json1_1ListWorkersWithQualificationTypeCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1NotifyWorkersCommand = async ( @@ -2553,41 +2089,25 @@ const deserializeAws_json1_1NotifyWorkersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectAssignmentCommand = async ( @@ -2615,41 +2135,25 @@ const deserializeAws_json1_1RejectAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectQualificationRequestCommand = async ( @@ -2677,41 +2181,25 @@ const deserializeAws_json1_1RejectQualificationRequestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendBonusCommand = async ( @@ -2739,41 +2227,25 @@ const deserializeAws_json1_1SendBonusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendTestEventNotificationCommand = async ( @@ -2801,41 +2273,25 @@ const deserializeAws_json1_1SendTestEventNotificationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateExpirationForHITCommand = async ( @@ -2863,41 +2319,25 @@ const deserializeAws_json1_1UpdateExpirationForHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateHITReviewStatusCommand = async ( @@ -2925,41 +2365,25 @@ const deserializeAws_json1_1UpdateHITReviewStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateHITTypeOfHITCommand = async ( @@ -2987,41 +2411,25 @@ const deserializeAws_json1_1UpdateHITTypeOfHITCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNotificationSettingsCommand = async ( @@ -3049,41 +2457,25 @@ const deserializeAws_json1_1UpdateNotificationSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateQualificationTypeCommand = async ( @@ -3111,41 +2503,25 @@ const deserializeAws_json1_1UpdateQualificationTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "RequestError": case "com.amazonaws.mturk#RequestError": - response = { - ...(await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestErrorResponse(parsedOutput, context); case "ServiceFault": case "com.amazonaws.mturk#ServiceFault": - response = { - ...(await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1RequestErrorResponse = async ( @@ -3154,13 +2530,11 @@ const deserializeAws_json1_1RequestErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestError(body, context); - const contents: RequestError = { - name: "RequestError", - $fault: "client", + const exception = new RequestError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceFaultResponse = async ( @@ -3169,13 +2543,11 @@ const deserializeAws_json1_1ServiceFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceFault(body, context); - const contents: ServiceFault = { - name: "ServiceFault", - $fault: "server", + const exception = new ServiceFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptQualificationRequestRequest = ( diff --git a/clients/client-mwaa/src/index.ts b/clients/client-mwaa/src/index.ts index 6828c3193aeb3..d461f8e18b883 100644 --- a/clients/client-mwaa/src/index.ts +++ b/clients/client-mwaa/src/index.ts @@ -3,3 +3,4 @@ export * from "./MWAAClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { MWAAServiceException } from "./models/MWAAServiceException"; diff --git a/clients/client-mwaa/src/models/MWAAServiceException.ts b/clients/client-mwaa/src/models/MWAAServiceException.ts new file mode 100644 index 0000000000000..75a10be0d6d09 --- /dev/null +++ b/clients/client-mwaa/src/models/MWAAServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from MWAA service. + */ +export class MWAAServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, MWAAServiceException.prototype); + } +} diff --git a/clients/client-mwaa/src/models/models_0.ts b/clients/client-mwaa/src/models/models_0.ts index 1236ef544278e..c8e89d5582d01 100644 --- a/clients/client-mwaa/src/models/models_0.ts +++ b/clients/client-mwaa/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { MWAAServiceException as __BaseException } from "./MWAAServiceException"; /** *

Access to the Apache Airflow Web UI or CLI has been denied due to insufficient permissions. To learn more, see Accessing an Amazon MWAA environment.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface CreateCliTokenRequest { @@ -51,10 +65,20 @@ export namespace CreateCliTokenResponse { /** *

ResourceNotFoundException: The resource is not available.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export enum LoggingLevel { @@ -299,19 +323,39 @@ export namespace CreateEnvironmentOutput { /** *

InternalServerException: An internal error has occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

ValidationException: The provided input is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface CreateWebLoginTokenRequest { diff --git a/clients/client-mwaa/src/protocols/Aws_restJson1.ts b/clients/client-mwaa/src/protocols/Aws_restJson1.ts index 1f47125fc371d..4e4fa274badbe 100644 --- a/clients/client-mwaa/src/protocols/Aws_restJson1.ts +++ b/clients/client-mwaa/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -16,10 +17,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateCliTokenCommandInput, CreateCliTokenCommandOutput } from "../commands/CreateCliTokenCommand"; @@ -57,6 +56,7 @@ import { UpdateNetworkConfigurationInput, ValidationException, } from "../models/models_0"; +import { MWAAServiceException as __BaseException } from "../models/MWAAServiceException"; export const serializeAws_restJson1CreateCliTokenCommand = async ( input: CreateCliTokenCommandInput, @@ -578,33 +578,22 @@ const deserializeAws_restJson1CreateCliTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEnvironmentCommand = async ( @@ -633,41 +622,25 @@ const deserializeAws_restJson1CreateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWebLoginTokenCommand = async ( @@ -700,57 +673,31 @@ const deserializeAws_restJson1CreateWebLoginTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.mwaa#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEnvironmentCommand = async ( @@ -775,49 +722,28 @@ const deserializeAws_restJson1DeleteEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEnvironmentCommand = async ( @@ -846,49 +772,28 @@ const deserializeAws_restJson1GetEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEnvironmentsCommand = async ( @@ -921,41 +826,25 @@ const deserializeAws_restJson1ListEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -984,49 +873,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishMetricsCommand = async ( @@ -1051,41 +919,25 @@ const deserializeAws_restJson1PublishMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1110,49 +962,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1177,49 +1008,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEnvironmentCommand = async ( @@ -1248,117 +1058,92 @@ const deserializeAws_restJson1UpdateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.mwaa#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.mwaa#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.mwaa#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AirflowConfigurationOptions = ( diff --git a/clients/client-neptune/src/index.ts b/clients/client-neptune/src/index.ts index 21b026f111234..e9a8b53242099 100644 --- a/clients/client-neptune/src/index.ts +++ b/clients/client-neptune/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { NeptuneServiceException } from "./models/NeptuneServiceException"; diff --git a/clients/client-neptune/src/models/NeptuneServiceException.ts b/clients/client-neptune/src/models/NeptuneServiceException.ts new file mode 100644 index 0000000000000..347a8d3ce74ec --- /dev/null +++ b/clients/client-neptune/src/models/NeptuneServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Neptune service. + */ +export class NeptuneServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, NeptuneServiceException.prototype); + } +} diff --git a/clients/client-neptune/src/models/models_0.ts b/clients/client-neptune/src/models/models_0.ts index b14ec6bd25ea5..7831b8a15937d 100644 --- a/clients/client-neptune/src/models/models_0.ts +++ b/clients/client-neptune/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { NeptuneServiceException as __BaseException } from "./NeptuneServiceException"; export interface AddRoleToDBClusterMessage { /** @@ -32,49 +35,77 @@ export namespace AddRoleToDBClusterMessage { *

* DBClusterIdentifier does not refer to an existing DB cluster.

*/ -export interface DBClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterNotFoundFault"; - $fault: "client"; +export class DBClusterNotFoundFault extends __BaseException { + readonly name: "DBClusterNotFoundFault" = "DBClusterNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterNotFoundFault.prototype); + } } /** *

The specified IAM role Amazon Resource Name (ARN) is already associated with the specified DB cluster.

*/ -export interface DBClusterRoleAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterRoleAlreadyExistsFault"; - $fault: "client"; +export class DBClusterRoleAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterRoleAlreadyExistsFault" = "DBClusterRoleAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterRoleAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterRoleAlreadyExistsFault.prototype); + } } /** *

You have exceeded the maximum number of IAM roles that can be associated with the specified DB cluster.

*/ -export interface DBClusterRoleQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterRoleQuotaExceededFault"; - $fault: "client"; +export class DBClusterRoleQuotaExceededFault extends __BaseException { + readonly name: "DBClusterRoleQuotaExceededFault" = "DBClusterRoleQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterRoleQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterRoleQuotaExceededFault.prototype); + } } /** *

The DB cluster is not in a valid state.

*/ -export interface InvalidDBClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterStateFault"; - $fault: "client"; +export class InvalidDBClusterStateFault extends __BaseException { + readonly name: "InvalidDBClusterStateFault" = "InvalidDBClusterStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterStateFault.prototype); + } } export interface AddSourceIdentifierToSubscriptionMessage { @@ -208,25 +239,39 @@ export namespace AddSourceIdentifierToSubscriptionResult { /** *

The source could not be found.

*/ -export interface SourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SourceNotFoundFault"; - $fault: "client"; +export class SourceNotFoundFault extends __BaseException { + readonly name: "SourceNotFoundFault" = "SourceNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceNotFoundFault.prototype); + } } /** *

The designated subscription could not be found.

*/ -export interface SubscriptionNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionNotFoundFault"; - $fault: "client"; +export class SubscriptionNotFoundFault extends __BaseException { + readonly name: "SubscriptionNotFoundFault" = "SubscriptionNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionNotFoundFault.prototype); + } } /** @@ -286,26 +331,40 @@ export namespace AddTagsToResourceMessage { *

* DBInstanceIdentifier does not refer to an existing DB instance.

*/ -export interface DBInstanceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceNotFoundFault"; - $fault: "client"; +export class DBInstanceNotFoundFault extends __BaseException { + readonly name: "DBInstanceNotFoundFault" = "DBInstanceNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceNotFoundFault.prototype); + } } /** *

* DBSnapshotIdentifier does not refer to an existing DB snapshot.

*/ -export interface DBSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSnapshotNotFoundFault"; - $fault: "client"; +export class DBSnapshotNotFoundFault extends __BaseException { + readonly name: "DBSnapshotNotFoundFault" = "DBSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSnapshotNotFoundFault.prototype); + } } export interface ApplyPendingMaintenanceActionMessage { @@ -452,13 +511,20 @@ export namespace ApplyPendingMaintenanceActionResult { /** *

The specified resource ID was not found.

*/ -export interface ResourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundFault"; - $fault: "client"; +export class ResourceNotFoundFault extends __BaseException { + readonly name: "ResourceNotFoundFault" = "ResourceNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundFault.prototype); + } } export interface CopyDBClusterParameterGroupMessage { @@ -583,13 +649,20 @@ export namespace CopyDBClusterParameterGroupResult { /** *

A DB parameter group with the same name exists.

*/ -export interface DBParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupAlreadyExistsFault"; - $fault: "client"; +export class DBParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBParameterGroupAlreadyExistsFault" = "DBParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupAlreadyExistsFault.prototype); + } } /** @@ -597,25 +670,39 @@ export interface DBParameterGroupAlreadyExistsFault extends __SmithyException, $ * DBParameterGroupName does not refer to an * existing DB parameter group.

*/ -export interface DBParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupNotFoundFault"; - $fault: "client"; +export class DBParameterGroupNotFoundFault extends __BaseException { + readonly name: "DBParameterGroupNotFoundFault" = "DBParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupNotFoundFault.prototype); + } } /** *

Request would result in user exceeding the allowed number of DB parameter groups.

*/ -export interface DBParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupQuotaExceededFault"; - $fault: "client"; +export class DBParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "DBParameterGroupQuotaExceededFault" = "DBParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupQuotaExceededFault.prototype); + } } export interface CopyDBClusterSnapshotMessage { @@ -857,13 +944,20 @@ export namespace CopyDBClusterSnapshotResult { /** *

User already has a DB cluster snapshot with the given identifier.

*/ -export interface DBClusterSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterSnapshotAlreadyExistsFault"; - $fault: "client"; +export class DBClusterSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterSnapshotAlreadyExistsFault" = "DBClusterSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterSnapshotAlreadyExistsFault.prototype); + } } /** @@ -871,49 +965,77 @@ export interface DBClusterSnapshotAlreadyExistsFault extends __SmithyException, * DBClusterSnapshotIdentifier does not refer to an existing * DB cluster snapshot.

*/ -export interface DBClusterSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterSnapshotNotFoundFault"; - $fault: "client"; +export class DBClusterSnapshotNotFoundFault extends __BaseException { + readonly name: "DBClusterSnapshotNotFoundFault" = "DBClusterSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterSnapshotNotFoundFault.prototype); + } } /** *

The supplied value is not a valid DB cluster snapshot state.

*/ -export interface InvalidDBClusterSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterSnapshotStateFault"; - $fault: "client"; +export class InvalidDBClusterSnapshotStateFault extends __BaseException { + readonly name: "InvalidDBClusterSnapshotStateFault" = "InvalidDBClusterSnapshotStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterSnapshotStateFault.prototype); + } } /** *

Error accessing KMS key.

*/ -export interface KMSKeyNotAccessibleFault extends __SmithyException, $MetadataBearer { - name: "KMSKeyNotAccessibleFault"; - $fault: "client"; +export class KMSKeyNotAccessibleFault extends __BaseException { + readonly name: "KMSKeyNotAccessibleFault" = "KMSKeyNotAccessibleFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSKeyNotAccessibleFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSKeyNotAccessibleFault.prototype); + } } /** *

Request would result in user exceeding the allowed number of DB snapshots.

*/ -export interface SnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotQuotaExceededFault"; - $fault: "client"; +export class SnapshotQuotaExceededFault extends __BaseException { + readonly name: "SnapshotQuotaExceededFault" = "SnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotQuotaExceededFault.prototype); + } } export interface CopyDBParameterGroupMessage { @@ -1675,13 +1797,20 @@ export namespace CreateDBClusterResult { /** *

User already has a DB cluster with the given identifier.

*/ -export interface DBClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterAlreadyExistsFault"; - $fault: "client"; +export class DBClusterAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterAlreadyExistsFault" = "DBClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterAlreadyExistsFault.prototype); + } } /** @@ -1689,38 +1818,59 @@ export interface DBClusterAlreadyExistsFault extends __SmithyException, $Metadat * DBClusterParameterGroupName does not refer to an * existing DB Cluster parameter group.

*/ -export interface DBClusterParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterParameterGroupNotFoundFault"; - $fault: "client"; +export class DBClusterParameterGroupNotFoundFault extends __BaseException { + readonly name: "DBClusterParameterGroupNotFoundFault" = "DBClusterParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterParameterGroupNotFoundFault.prototype); + } } /** *

User attempted to create a new DB cluster and the user has already reached the maximum allowed DB cluster quota.

*/ -export interface DBClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterQuotaExceededFault"; - $fault: "client"; +export class DBClusterQuotaExceededFault extends __BaseException { + readonly name: "DBClusterQuotaExceededFault" = "DBClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterQuotaExceededFault.prototype); + } } /** *

Subnets in the DB subnet group should cover at least two Availability * Zones unless there is only one Availability Zone.

*/ -export interface DBSubnetGroupDoesNotCoverEnoughAZs extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupDoesNotCoverEnoughAZs"; - $fault: "client"; +export class DBSubnetGroupDoesNotCoverEnoughAZs extends __BaseException { + readonly name: "DBSubnetGroupDoesNotCoverEnoughAZs" = "DBSubnetGroupDoesNotCoverEnoughAZs"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupDoesNotCoverEnoughAZs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupDoesNotCoverEnoughAZs.prototype); + } } /** @@ -1728,13 +1878,20 @@ export interface DBSubnetGroupDoesNotCoverEnoughAZs extends __SmithyException, $ * DBSubnetGroupName does not refer to an * existing DB subnet group.

*/ -export interface DBSubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupNotFoundFault"; - $fault: "client"; +export class DBSubnetGroupNotFoundFault extends __BaseException { + readonly name: "DBSubnetGroupNotFoundFault" = "DBSubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupNotFoundFault.prototype); + } } /** @@ -1742,75 +1899,117 @@ export interface DBSubnetGroupNotFoundFault extends __SmithyException, $Metadata * be able to resolve this error by updating your subnet group to use different * Availability Zones that have more storage available.

*/ -export interface InsufficientStorageClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientStorageClusterCapacityFault"; - $fault: "client"; +export class InsufficientStorageClusterCapacityFault extends __BaseException { + readonly name: "InsufficientStorageClusterCapacityFault" = "InsufficientStorageClusterCapacityFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientStorageClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientStorageClusterCapacityFault.prototype); + } } /** *

The specified DB instance is not in the available state.

*/ -export interface InvalidDBInstanceStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBInstanceStateFault"; - $fault: "client"; +export class InvalidDBInstanceStateFault extends __BaseException { + readonly name: "InvalidDBInstanceStateFault" = "InvalidDBInstanceStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBInstanceStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBInstanceStateFault.prototype); + } } /** *

The DB subnet group cannot be deleted because it is in use.

*/ -export interface InvalidDBSubnetGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetGroupStateFault"; - $fault: "client"; +export class InvalidDBSubnetGroupStateFault extends __BaseException { + readonly name: "InvalidDBSubnetGroupStateFault" = "InvalidDBSubnetGroupStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetGroupStateFault.prototype); + } } /** *

The requested subnet is invalid, or multiple subnets were requested that are * not all in a common VPC.

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

DB subnet group does not cover all Availability Zones after it is created * because users' change.

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

Request would result in user exceeding the allowed amount of storage available across all DB instances.

*/ -export interface StorageQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "StorageQuotaExceededFault"; - $fault: "client"; +export class StorageQuotaExceededFault extends __BaseException { + readonly name: "StorageQuotaExceededFault" = "StorageQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageQuotaExceededFault.prototype); + } } export interface CreateDBClusterEndpointMessage { @@ -1954,25 +2153,39 @@ export namespace CreateDBClusterEndpointOutput { /** *

The specified custom endpoint cannot be created because it already exists.

*/ -export interface DBClusterEndpointAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterEndpointAlreadyExistsFault"; - $fault: "client"; +export class DBClusterEndpointAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterEndpointAlreadyExistsFault" = "DBClusterEndpointAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterEndpointAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterEndpointAlreadyExistsFault.prototype); + } } /** *

The cluster already has the maximum number of custom endpoints.

*/ -export interface DBClusterEndpointQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterEndpointQuotaExceededFault"; - $fault: "client"; +export class DBClusterEndpointQuotaExceededFault extends __BaseException { + readonly name: "DBClusterEndpointQuotaExceededFault" = "DBClusterEndpointQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterEndpointQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterEndpointQuotaExceededFault.prototype); + } } export interface CreateDBClusterParameterGroupMessage { @@ -2106,13 +2319,20 @@ export namespace CreateDBClusterSnapshotResult { *

Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

*

Neptune may not also be authorized via IAM to perform necessary actions on your behalf.

*/ -export interface AuthorizationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationNotFoundFault"; - $fault: "client"; +export class AuthorizationNotFoundFault extends __BaseException { + readonly name: "AuthorizationNotFoundFault" = "AuthorizationNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationNotFoundFault.prototype); + } } export interface CreateDBInstanceMessage { @@ -3210,13 +3430,20 @@ export namespace CreateDBInstanceResult { /** *

User already has a DB instance with the given identifier.

*/ -export interface DBInstanceAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceAlreadyExistsFault"; - $fault: "client"; +export class DBInstanceAlreadyExistsFault extends __BaseException { + readonly name: "DBInstanceAlreadyExistsFault" = "DBInstanceAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceAlreadyExistsFault.prototype); + } } /** @@ -3224,87 +3451,136 @@ export interface DBInstanceAlreadyExistsFault extends __SmithyException, $Metada * DBSecurityGroupName does not refer * to an existing DB security group.

*/ -export interface DBSecurityGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSecurityGroupNotFoundFault"; - $fault: "client"; +export class DBSecurityGroupNotFoundFault extends __BaseException { + readonly name: "DBSecurityGroupNotFoundFault" = "DBSecurityGroupNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSecurityGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSecurityGroupNotFoundFault.prototype); + } } /** *

* Domain does not refer to an existing Active Directory Domain.

*/ -export interface DomainNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DomainNotFoundFault"; - $fault: "client"; +export class DomainNotFoundFault extends __BaseException { + readonly name: "DomainNotFoundFault" = "DomainNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainNotFoundFault.prototype); + } } /** *

Request would result in user exceeding the allowed number of DB instances.

*/ -export interface InstanceQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "InstanceQuotaExceededFault"; - $fault: "client"; +export class InstanceQuotaExceededFault extends __BaseException { + readonly name: "InstanceQuotaExceededFault" = "InstanceQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceQuotaExceededFault.prototype); + } } /** *

Specified DB instance class is not available in the specified Availability Zone.

*/ -export interface InsufficientDBInstanceCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientDBInstanceCapacityFault"; - $fault: "client"; +export class InsufficientDBInstanceCapacityFault extends __BaseException { + readonly name: "InsufficientDBInstanceCapacityFault" = "InsufficientDBInstanceCapacityFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDBInstanceCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDBInstanceCapacityFault.prototype); + } } /** *

The designated option group could not be found.

*/ -export interface OptionGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "OptionGroupNotFoundFault"; - $fault: "client"; +export class OptionGroupNotFoundFault extends __BaseException { + readonly name: "OptionGroupNotFoundFault" = "OptionGroupNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptionGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptionGroupNotFoundFault.prototype); + } } /** *

Provisioned IOPS not available in the specified Availability Zone.

*/ -export interface ProvisionedIopsNotAvailableInAZFault extends __SmithyException, $MetadataBearer { - name: "ProvisionedIopsNotAvailableInAZFault"; - $fault: "client"; +export class ProvisionedIopsNotAvailableInAZFault extends __BaseException { + readonly name: "ProvisionedIopsNotAvailableInAZFault" = "ProvisionedIopsNotAvailableInAZFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedIopsNotAvailableInAZFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedIopsNotAvailableInAZFault.prototype); + } } /** *

* StorageType specified cannot be associated with the DB Instance.

*/ -export interface StorageTypeNotSupportedFault extends __SmithyException, $MetadataBearer { - name: "StorageTypeNotSupportedFault"; - $fault: "client"; +export class StorageTypeNotSupportedFault extends __BaseException { + readonly name: "StorageTypeNotSupportedFault" = "StorageTypeNotSupportedFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageTypeNotSupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageTypeNotSupportedFault.prototype); + } } export interface CreateDBParameterGroupMessage { @@ -3428,37 +3704,58 @@ export namespace CreateDBSubnetGroupResult { *

* DBSubnetGroupName is already used by an existing DB subnet group.

*/ -export interface DBSubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupAlreadyExistsFault"; - $fault: "client"; +export class DBSubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBSubnetGroupAlreadyExistsFault" = "DBSubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupAlreadyExistsFault.prototype); + } } /** *

Request would result in user exceeding the allowed number of DB subnet groups.

*/ -export interface DBSubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupQuotaExceededFault"; - $fault: "client"; +export class DBSubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "DBSubnetGroupQuotaExceededFault" = "DBSubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupQuotaExceededFault.prototype); + } } /** *

Request would result in user exceeding the allowed number of subnets in a DB subnet groups.

*/ -export interface DBSubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetQuotaExceededFault"; - $fault: "client"; +export class DBSubnetQuotaExceededFault extends __BaseException { + readonly name: "DBSubnetQuotaExceededFault" = "DBSubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetQuotaExceededFault.prototype); + } } export interface CreateEventSubscriptionMessage { @@ -3563,73 +3860,115 @@ export namespace CreateEventSubscriptionResult { /** *

You have exceeded the number of events you can subscribe to.

*/ -export interface EventSubscriptionQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "EventSubscriptionQuotaExceededFault"; - $fault: "client"; +export class EventSubscriptionQuotaExceededFault extends __BaseException { + readonly name: "EventSubscriptionQuotaExceededFault" = "EventSubscriptionQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventSubscriptionQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventSubscriptionQuotaExceededFault.prototype); + } } /** *

The SNS topic is invalid.

*/ -export interface SNSInvalidTopicFault extends __SmithyException, $MetadataBearer { - name: "SNSInvalidTopicFault"; - $fault: "client"; +export class SNSInvalidTopicFault extends __BaseException { + readonly name: "SNSInvalidTopicFault" = "SNSInvalidTopicFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSInvalidTopicFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSInvalidTopicFault.prototype); + } } /** *

There is no SNS authorization.

*/ -export interface SNSNoAuthorizationFault extends __SmithyException, $MetadataBearer { - name: "SNSNoAuthorizationFault"; - $fault: "client"; +export class SNSNoAuthorizationFault extends __BaseException { + readonly name: "SNSNoAuthorizationFault" = "SNSNoAuthorizationFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSNoAuthorizationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSNoAuthorizationFault.prototype); + } } /** *

The ARN of the SNS topic could not be found.

*/ -export interface SNSTopicArnNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SNSTopicArnNotFoundFault"; - $fault: "client"; +export class SNSTopicArnNotFoundFault extends __BaseException { + readonly name: "SNSTopicArnNotFoundFault" = "SNSTopicArnNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSTopicArnNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSTopicArnNotFoundFault.prototype); + } } /** *

This subscription already exists.

*/ -export interface SubscriptionAlreadyExistFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionAlreadyExistFault"; - $fault: "client"; +export class SubscriptionAlreadyExistFault extends __BaseException { + readonly name: "SubscriptionAlreadyExistFault" = "SubscriptionAlreadyExistFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionAlreadyExistFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionAlreadyExistFault.prototype); + } } /** *

The designated subscription category could not be found.

*/ -export interface SubscriptionCategoryNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionCategoryNotFoundFault"; - $fault: "client"; +export class SubscriptionCategoryNotFoundFault extends __BaseException { + readonly name: "SubscriptionCategoryNotFoundFault" = "SubscriptionCategoryNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionCategoryNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionCategoryNotFoundFault.prototype); + } } export interface DeleteDBClusterMessage { @@ -3711,13 +4050,20 @@ export namespace DeleteDBClusterResult { /** *

The specified custom endpoint doesn't exist.

*/ -export interface DBClusterEndpointNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterEndpointNotFoundFault"; - $fault: "client"; +export class DBClusterEndpointNotFoundFault extends __BaseException { + readonly name: "DBClusterEndpointNotFoundFault" = "DBClusterEndpointNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterEndpointNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterEndpointNotFoundFault.prototype); + } } export interface DeleteDBClusterEndpointMessage { @@ -3833,13 +4179,20 @@ export namespace DeleteDBClusterEndpointOutput { /** *

The requested operation cannot be performed on the endpoint while the endpoint is in this state.

*/ -export interface InvalidDBClusterEndpointStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterEndpointStateFault"; - $fault: "client"; +export class InvalidDBClusterEndpointStateFault extends __BaseException { + readonly name: "InvalidDBClusterEndpointStateFault" = "InvalidDBClusterEndpointStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterEndpointStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterEndpointStateFault.prototype); + } } export interface DeleteDBClusterParameterGroupMessage { @@ -3874,13 +4227,20 @@ export namespace DeleteDBClusterParameterGroupMessage { *

The DB parameter group is in use or is in an invalid state. If you are attempting to * delete the parameter group, you cannot delete it when the parameter group is in this state.

*/ -export interface InvalidDBParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBParameterGroupStateFault"; - $fault: "client"; +export class InvalidDBParameterGroupStateFault extends __BaseException { + readonly name: "InvalidDBParameterGroupStateFault" = "InvalidDBParameterGroupStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBParameterGroupStateFault.prototype); + } } export interface DeleteDBClusterSnapshotMessage { @@ -3922,13 +4282,20 @@ export namespace DeleteDBClusterSnapshotResult { *

* DBSnapshotIdentifier is already used by an existing snapshot.

*/ -export interface DBSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSnapshotAlreadyExistsFault"; - $fault: "client"; +export class DBSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "DBSnapshotAlreadyExistsFault" = "DBSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSnapshotAlreadyExistsFault.prototype); + } } export interface DeleteDBInstanceMessage { @@ -4067,13 +4434,20 @@ export namespace DeleteDBSubnetGroupMessage { /** *

The DB subnet is not in the available state.

*/ -export interface InvalidDBSubnetStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetStateFault"; - $fault: "client"; +export class InvalidDBSubnetStateFault extends __BaseException { + readonly name: "InvalidDBSubnetStateFault" = "InvalidDBSubnetStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetStateFault.prototype); + } } export interface DeleteEventSubscriptionMessage { @@ -4111,13 +4485,20 @@ export namespace DeleteEventSubscriptionResult { /** *

The event subscription is in an invalid state.

*/ -export interface InvalidEventSubscriptionStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidEventSubscriptionStateFault"; - $fault: "client"; +export class InvalidEventSubscriptionStateFault extends __BaseException { + readonly name: "InvalidEventSubscriptionStateFault" = "InvalidEventSubscriptionStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventSubscriptionStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventSubscriptionStateFault.prototype); + } } /** @@ -6347,13 +6728,20 @@ export namespace TagListMessage { /** *

The state of the DB security group does not allow deletion.

*/ -export interface InvalidDBSecurityGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSecurityGroupStateFault"; - $fault: "client"; +export class InvalidDBSecurityGroupStateFault extends __BaseException { + readonly name: "InvalidDBSecurityGroupStateFault" = "InvalidDBSecurityGroupStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSecurityGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSecurityGroupStateFault.prototype); + } } /** @@ -6852,38 +7240,59 @@ export namespace ModifyDBClusterSnapshotAttributeResult { /** *

You have exceeded the maximum number of accounts that you can share a manual DB snapshot with.

*/ -export interface SharedSnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SharedSnapshotQuotaExceededFault"; - $fault: "client"; +export class SharedSnapshotQuotaExceededFault extends __BaseException { + readonly name: "SharedSnapshotQuotaExceededFault" = "SharedSnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SharedSnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SharedSnapshotQuotaExceededFault.prototype); + } } /** *

* CertificateIdentifier does not refer to an existing certificate.

*/ -export interface CertificateNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CertificateNotFoundFault"; - $fault: "client"; +export class CertificateNotFoundFault extends __BaseException { + readonly name: "CertificateNotFoundFault" = "CertificateNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateNotFoundFault.prototype); + } } /** *

The DB upgrade failed because a resource the DB depends on could not be modified.

*/ -export interface DBUpgradeDependencyFailureFault extends __SmithyException, $MetadataBearer { - name: "DBUpgradeDependencyFailureFault"; - $fault: "client"; +export class DBUpgradeDependencyFailureFault extends __BaseException { + readonly name: "DBUpgradeDependencyFailureFault" = "DBUpgradeDependencyFailureFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBUpgradeDependencyFailureFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBUpgradeDependencyFailureFault.prototype); + } } export interface ModifyDBInstanceMessage { @@ -7350,13 +7759,20 @@ export namespace ModifyDBSubnetGroupResult { /** *

The DB subnet is already in use in the Availability Zone.

*/ -export interface SubnetAlreadyInUse extends __SmithyException, $MetadataBearer { - name: "SubnetAlreadyInUse"; - $fault: "client"; +export class SubnetAlreadyInUse extends __BaseException { + readonly name: "SubnetAlreadyInUse" = "SubnetAlreadyInUse"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetAlreadyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetAlreadyInUse.prototype); + } } export interface ModifyEventSubscriptionMessage { @@ -7501,13 +7917,20 @@ export namespace RebootDBInstanceResult { /** *

The specified IAM role Amazon Resource Name (ARN) is not associated with the specified DB cluster.

*/ -export interface DBClusterRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterRoleNotFoundFault"; - $fault: "client"; +export class DBClusterRoleNotFoundFault extends __BaseException { + readonly name: "DBClusterRoleNotFoundFault" = "DBClusterRoleNotFoundFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterRoleNotFoundFault.prototype); + } } export interface RemoveRoleFromDBClusterMessage { @@ -7674,37 +8097,58 @@ export namespace ResetDBParameterGroupMessage { /** *

The DB cluster does not have enough capacity for the current operation.

*/ -export interface InsufficientDBClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientDBClusterCapacityFault"; - $fault: "client"; +export class InsufficientDBClusterCapacityFault extends __BaseException { + readonly name: "InsufficientDBClusterCapacityFault" = "InsufficientDBClusterCapacityFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDBClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDBClusterCapacityFault.prototype); + } } /** *

The state of the DB snapshot does not allow deletion.

*/ -export interface InvalidDBSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSnapshotStateFault"; - $fault: "client"; +export class InvalidDBSnapshotStateFault extends __BaseException { + readonly name: "InvalidDBSnapshotStateFault" = "InvalidDBSnapshotStateFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSnapshotStateFault.prototype); + } } /** *

Cannot restore from vpc backup to non-vpc DB instance.

*/ -export interface InvalidRestoreFault extends __SmithyException, $MetadataBearer { - name: "InvalidRestoreFault"; - $fault: "client"; +export class InvalidRestoreFault extends __BaseException { + readonly name: "InvalidRestoreFault" = "InvalidRestoreFault"; + readonly $fault: "client" = "client"; /** - *

A message describing the details of the problem.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRestoreFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRestoreFault.prototype); + } } export interface RestoreDBClusterFromSnapshotMessage { diff --git a/clients/client-neptune/src/protocols/Aws_query.ts b/clients/client-neptune/src/protocols/Aws_query.ts index 410d798adee9b..afcebaebef354 100644 --- a/clients/client-neptune/src/protocols/Aws_query.ts +++ b/clients/client-neptune/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -455,6 +454,7 @@ import { ValidStorageOptions, VpcSecurityGroupMembership, } from "../models/models_0"; +import { NeptuneServiceException as __BaseException } from "../models/NeptuneServiceException"; export const serializeAws_queryAddRoleToDBClusterCommand = async ( input: AddRoleToDBClusterCommandInput, @@ -1486,57 +1486,31 @@ const deserializeAws_queryAddRoleToDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterRoleAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterRoleAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterRoleQuotaExceededFault": case "com.amazonaws.neptune#DBClusterRoleQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddSourceIdentifierToSubscriptionCommand = async ( @@ -1567,41 +1541,25 @@ const deserializeAws_queryAddSourceIdentifierToSubscriptionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SourceNotFoundFault": case "com.amazonaws.neptune#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.neptune#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddTagsToResourceCommand = async ( @@ -1626,49 +1584,28 @@ const deserializeAws_queryAddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.neptune#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryApplyPendingMaintenanceActionCommand = async ( @@ -1696,33 +1633,22 @@ const deserializeAws_queryApplyPendingMaintenanceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.neptune#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBClusterParameterGroupCommand = async ( @@ -1750,49 +1676,28 @@ const deserializeAws_queryCopyDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.neptune#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.neptune#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBClusterSnapshotCommand = async ( @@ -1820,73 +1725,37 @@ const deserializeAws_queryCopyDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.neptune#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.neptune#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBParameterGroupCommand = async ( @@ -1914,49 +1783,28 @@ const deserializeAws_queryCopyDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.neptune#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.neptune#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterCommand = async ( @@ -1984,145 +1832,64 @@ const deserializeAws_queryCreateDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.neptune#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.neptune#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.neptune#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.neptune#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.neptune#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.neptune#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.neptune#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterEndpointCommand = async ( @@ -2150,73 +1917,37 @@ const deserializeAws_queryCreateDBClusterEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterEndpointAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterEndpointAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterEndpointQuotaExceededFault": case "com.amazonaws.neptune#DBClusterEndpointQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterParameterGroupCommand = async ( @@ -2244,41 +1975,25 @@ const deserializeAws_queryCreateDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.neptune#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.neptune#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterSnapshotCommand = async ( @@ -2306,65 +2021,34 @@ const deserializeAws_queryCreateDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.neptune#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBInstanceCommand = async ( @@ -2392,169 +2076,73 @@ const deserializeAws_queryCreateDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.neptune#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.neptune#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.neptune#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.neptune#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.neptune#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.neptune#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.neptune#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.neptune#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.neptune#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.neptune#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.neptune#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.neptune#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.neptune#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBParameterGroupCommand = async ( @@ -2582,41 +2170,25 @@ const deserializeAws_queryCreateDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.neptune#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.neptune#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBSubnetGroupCommand = async ( @@ -2644,65 +2216,34 @@ const deserializeAws_queryCreateDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupAlreadyExistsFault": case "com.amazonaws.neptune#DBSubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.neptune#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupQuotaExceededFault": case "com.amazonaws.neptune#DBSubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "DBSubnetQuotaExceededFault": case "com.amazonaws.neptune#DBSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateEventSubscriptionCommand = async ( @@ -2730,81 +2271,40 @@ const deserializeAws_queryCreateEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.neptune#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.neptune#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.neptune#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.neptune#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SourceNotFoundFault": case "com.amazonaws.neptune#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionAlreadyExistFault": case "com.amazonaws.neptune#SubscriptionAlreadyExistFault": - response = { - ...(await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.neptune#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterCommand = async ( @@ -2832,65 +2332,34 @@ const deserializeAws_queryDeleteDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.neptune#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterEndpointCommand = async ( @@ -2918,49 +2387,28 @@ const deserializeAws_queryDeleteDBClusterEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterEndpointNotFoundFault": case "com.amazonaws.neptune#DBClusterEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterEndpointStateFault": case "com.amazonaws.neptune#InvalidDBClusterEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterParameterGroupCommand = async ( @@ -2985,41 +2433,25 @@ const deserializeAws_queryDeleteDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.neptune#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterSnapshotCommand = async ( @@ -3047,41 +2479,25 @@ const deserializeAws_queryDeleteDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBInstanceCommand = async ( @@ -3109,65 +2525,34 @@ const deserializeAws_queryDeleteDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotAlreadyExistsFault": case "com.amazonaws.neptune#DBSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.neptune#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBParameterGroupCommand = async ( @@ -3192,41 +2577,25 @@ const deserializeAws_queryDeleteDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.neptune#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBSubnetGroupCommand = async ( @@ -3251,49 +2620,28 @@ const deserializeAws_queryDeleteDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.neptune#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetStateFault": case "com.amazonaws.neptune#InvalidDBSubnetStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEventSubscriptionCommand = async ( @@ -3321,41 +2669,25 @@ const deserializeAws_queryDeleteEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEventSubscriptionStateFault": case "com.amazonaws.neptune#InvalidEventSubscriptionStateFault": - response = { - ...(await deserializeAws_queryInvalidEventSubscriptionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEventSubscriptionStateFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.neptune#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterEndpointsCommand = async ( @@ -3383,33 +2715,22 @@ const deserializeAws_queryDescribeDBClusterEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterParameterGroupsCommand = async ( @@ -3437,33 +2758,22 @@ const deserializeAws_queryDescribeDBClusterParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterParametersCommand = async ( @@ -3491,33 +2801,22 @@ const deserializeAws_queryDescribeDBClusterParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClustersCommand = async ( @@ -3545,33 +2844,22 @@ const deserializeAws_queryDescribeDBClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterSnapshotAttributesCommand = async ( @@ -3602,33 +2890,22 @@ const deserializeAws_queryDescribeDBClusterSnapshotAttributesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterSnapshotsCommand = async ( @@ -3656,33 +2933,22 @@ const deserializeAws_queryDescribeDBClusterSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBEngineVersionsCommand = async ( @@ -3710,25 +2976,19 @@ const deserializeAws_queryDescribeDBEngineVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBInstancesCommand = async ( @@ -3756,33 +3016,22 @@ const deserializeAws_queryDescribeDBInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBParameterGroupsCommand = async ( @@ -3810,33 +3059,22 @@ const deserializeAws_queryDescribeDBParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBParametersCommand = async ( @@ -3864,33 +3102,22 @@ const deserializeAws_queryDescribeDBParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBSubnetGroupsCommand = async ( @@ -3918,33 +3145,22 @@ const deserializeAws_queryDescribeDBSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEngineDefaultClusterParametersCommand = async ( @@ -3975,25 +3191,19 @@ const deserializeAws_queryDescribeEngineDefaultClusterParametersCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEngineDefaultParametersCommand = async ( @@ -4024,25 +3234,19 @@ const deserializeAws_queryDescribeEngineDefaultParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventCategoriesCommand = async ( @@ -4070,25 +3274,19 @@ const deserializeAws_queryDescribeEventCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventsCommand = async ( @@ -4116,25 +3314,19 @@ const deserializeAws_queryDescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventSubscriptionsCommand = async ( @@ -4162,33 +3354,22 @@ const deserializeAws_queryDescribeEventSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SubscriptionNotFoundFault": case "com.amazonaws.neptune#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeOrderableDBInstanceOptionsCommand = async ( @@ -4219,25 +3400,19 @@ const deserializeAws_queryDescribeOrderableDBInstanceOptionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePendingMaintenanceActionsCommand = async ( @@ -4268,33 +3443,22 @@ const deserializeAws_queryDescribePendingMaintenanceActionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.neptune#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeValidDBInstanceModificationsCommand = async ( @@ -4325,41 +3489,25 @@ const deserializeAws_queryDescribeValidDBInstanceModificationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFailoverDBClusterCommand = async ( @@ -4387,49 +3535,28 @@ const deserializeAws_queryFailoverDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -4457,49 +3584,28 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.neptune#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterCommand = async ( @@ -4527,113 +3633,52 @@ const deserializeAws_queryModifyDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.neptune#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.neptune#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.neptune#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.neptune#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterEndpointCommand = async ( @@ -4661,65 +3706,34 @@ const deserializeAws_queryModifyDBClusterEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterEndpointNotFoundFault": case "com.amazonaws.neptune#DBClusterEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterEndpointStateFault": case "com.amazonaws.neptune#InvalidDBClusterEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterParameterGroupCommand = async ( @@ -4747,41 +3761,25 @@ const deserializeAws_queryModifyDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.neptune#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterSnapshotAttributeCommand = async ( @@ -4812,49 +3810,28 @@ const deserializeAws_queryModifyDBClusterSnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "SharedSnapshotQuotaExceededFault": case "com.amazonaws.neptune#SharedSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBInstanceCommand = async ( @@ -4882,153 +3859,67 @@ const deserializeAws_queryModifyDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.neptune#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "CertificateNotFoundFault": case "com.amazonaws.neptune#CertificateNotFoundFault": - response = { - ...(await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.neptune#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.neptune#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBUpgradeDependencyFailureFault": case "com.amazonaws.neptune#DBUpgradeDependencyFailureFault": - response = { - ...(await deserializeAws_queryDBUpgradeDependencyFailureFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBUpgradeDependencyFailureFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.neptune#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.neptune#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.neptune#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.neptune#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.neptune#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.neptune#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.neptune#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.neptune#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBParameterGroupCommand = async ( @@ -5056,41 +3947,25 @@ const deserializeAws_queryModifyDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.neptune#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBSubnetGroupCommand = async ( @@ -5118,65 +3993,34 @@ const deserializeAws_queryModifyDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.neptune#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetQuotaExceededFault": case "com.amazonaws.neptune#DBSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "SubnetAlreadyInUse": case "com.amazonaws.neptune#SubnetAlreadyInUse": - response = { - ...(await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyEventSubscriptionCommand = async ( @@ -5204,73 +4048,37 @@ const deserializeAws_queryModifyEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.neptune#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.neptune#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.neptune#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.neptune#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.neptune#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.neptune#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPromoteReadReplicaDBClusterCommand = async ( @@ -5298,41 +4106,25 @@ const deserializeAws_queryPromoteReadReplicaDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebootDBInstanceCommand = async ( @@ -5360,41 +4152,25 @@ const deserializeAws_queryRebootDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveRoleFromDBClusterCommand = async ( @@ -5419,49 +4195,28 @@ const deserializeAws_queryRemoveRoleFromDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterRoleNotFoundFault": case "com.amazonaws.neptune#DBClusterRoleNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterRoleNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveSourceIdentifierFromSubscriptionCommand = async ( @@ -5492,41 +4247,25 @@ const deserializeAws_queryRemoveSourceIdentifierFromSubscriptionCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SourceNotFoundFault": case "com.amazonaws.neptune#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.neptune#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveTagsFromResourceCommand = async ( @@ -5551,49 +4290,28 @@ const deserializeAws_queryRemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.neptune#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.neptune#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetDBClusterParameterGroupCommand = async ( @@ -5621,41 +4339,25 @@ const deserializeAws_queryResetDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.neptune#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetDBParameterGroupCommand = async ( @@ -5683,41 +4385,25 @@ const deserializeAws_queryResetDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.neptune#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterFromSnapshotCommand = async ( @@ -5745,153 +4431,67 @@ const deserializeAws_queryRestoreDBClusterFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.neptune#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.neptune#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBClusterCapacityFault": case "com.amazonaws.neptune#InsufficientDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.neptune#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.neptune#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.neptune#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.neptune#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.neptune#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.neptune#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterToPointInTimeCommand = async ( @@ -5919,161 +4519,70 @@ const deserializeAws_queryRestoreDBClusterToPointInTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.neptune#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.neptune#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.neptune#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.neptune#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.neptune#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBClusterCapacityFault": case "com.amazonaws.neptune#InsufficientDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.neptune#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.neptune#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.neptune#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.neptune#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.neptune#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.neptune#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.neptune#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.neptune#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartDBClusterCommand = async ( @@ -6101,49 +4610,28 @@ const deserializeAws_queryStartDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopDBClusterCommand = async ( @@ -6171,49 +4659,28 @@ const deserializeAws_queryStopDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.neptune#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.neptune#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.neptune#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( @@ -6222,13 +4689,11 @@ const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationNotFoundFault(body.Error, context); - const contents: AuthorizationNotFoundFault = { - name: "AuthorizationNotFoundFault", - $fault: "client", + const exception = new AuthorizationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCertificateNotFoundFaultResponse = async ( @@ -6237,13 +4702,11 @@ const deserializeAws_queryCertificateNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCertificateNotFoundFault(body.Error, context); - const contents: CertificateNotFoundFault = { - name: "CertificateNotFoundFault", - $fault: "client", + const exception = new CertificateNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterAlreadyExistsFaultResponse = async ( @@ -6252,13 +4715,11 @@ const deserializeAws_queryDBClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterAlreadyExistsFault(body.Error, context); - const contents: DBClusterAlreadyExistsFault = { - name: "DBClusterAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse = async ( @@ -6267,13 +4728,11 @@ const deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterEndpointAlreadyExistsFault(body.Error, context); - const contents: DBClusterEndpointAlreadyExistsFault = { - name: "DBClusterEndpointAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterEndpointAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterEndpointNotFoundFaultResponse = async ( @@ -6282,13 +4741,11 @@ const deserializeAws_queryDBClusterEndpointNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterEndpointNotFoundFault(body.Error, context); - const contents: DBClusterEndpointNotFoundFault = { - name: "DBClusterEndpointNotFoundFault", - $fault: "client", + const exception = new DBClusterEndpointNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse = async ( @@ -6297,13 +4754,11 @@ const deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterEndpointQuotaExceededFault(body.Error, context); - const contents: DBClusterEndpointQuotaExceededFault = { - name: "DBClusterEndpointQuotaExceededFault", - $fault: "client", + const exception = new DBClusterEndpointQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterNotFoundFaultResponse = async ( @@ -6312,13 +4767,11 @@ const deserializeAws_queryDBClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterNotFoundFault(body.Error, context); - const contents: DBClusterNotFoundFault = { - name: "DBClusterNotFoundFault", - $fault: "client", + const exception = new DBClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse = async ( @@ -6327,13 +4780,11 @@ const deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterParameterGroupNotFoundFault(body.Error, context); - const contents: DBClusterParameterGroupNotFoundFault = { - name: "DBClusterParameterGroupNotFoundFault", - $fault: "client", + const exception = new DBClusterParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterQuotaExceededFaultResponse = async ( @@ -6342,13 +4793,11 @@ const deserializeAws_queryDBClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterQuotaExceededFault(body.Error, context); - const contents: DBClusterQuotaExceededFault = { - name: "DBClusterQuotaExceededFault", - $fault: "client", + const exception = new DBClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse = async ( @@ -6357,13 +4806,11 @@ const deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterRoleAlreadyExistsFault(body.Error, context); - const contents: DBClusterRoleAlreadyExistsFault = { - name: "DBClusterRoleAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterRoleAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterRoleNotFoundFaultResponse = async ( @@ -6372,13 +4819,11 @@ const deserializeAws_queryDBClusterRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterRoleNotFoundFault(body.Error, context); - const contents: DBClusterRoleNotFoundFault = { - name: "DBClusterRoleNotFoundFault", - $fault: "client", + const exception = new DBClusterRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse = async ( @@ -6387,13 +4832,11 @@ const deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterRoleQuotaExceededFault(body.Error, context); - const contents: DBClusterRoleQuotaExceededFault = { - name: "DBClusterRoleQuotaExceededFault", - $fault: "client", + const exception = new DBClusterRoleQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse = async ( @@ -6402,13 +4845,11 @@ const deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterSnapshotAlreadyExistsFault(body.Error, context); - const contents: DBClusterSnapshotAlreadyExistsFault = { - name: "DBClusterSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse = async ( @@ -6417,13 +4858,11 @@ const deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterSnapshotNotFoundFault(body.Error, context); - const contents: DBClusterSnapshotNotFoundFault = { - name: "DBClusterSnapshotNotFoundFault", - $fault: "client", + const exception = new DBClusterSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceAlreadyExistsFaultResponse = async ( @@ -6432,13 +4871,11 @@ const deserializeAws_queryDBInstanceAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceAlreadyExistsFault(body.Error, context); - const contents: DBInstanceAlreadyExistsFault = { - name: "DBInstanceAlreadyExistsFault", - $fault: "client", + const exception = new DBInstanceAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceNotFoundFaultResponse = async ( @@ -6447,13 +4884,11 @@ const deserializeAws_queryDBInstanceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceNotFoundFault(body.Error, context); - const contents: DBInstanceNotFoundFault = { - name: "DBInstanceNotFoundFault", - $fault: "client", + const exception = new DBInstanceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse = async ( @@ -6462,13 +4897,11 @@ const deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupAlreadyExistsFault(body.Error, context); - const contents: DBParameterGroupAlreadyExistsFault = { - name: "DBParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupNotFoundFaultResponse = async ( @@ -6477,13 +4910,11 @@ const deserializeAws_queryDBParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupNotFoundFault(body.Error, context); - const contents: DBParameterGroupNotFoundFault = { - name: "DBParameterGroupNotFoundFault", - $fault: "client", + const exception = new DBParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse = async ( @@ -6492,13 +4923,11 @@ const deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupQuotaExceededFault(body.Error, context); - const contents: DBParameterGroupQuotaExceededFault = { - name: "DBParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new DBParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSecurityGroupNotFoundFaultResponse = async ( @@ -6507,13 +4936,11 @@ const deserializeAws_queryDBSecurityGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSecurityGroupNotFoundFault(body.Error, context); - const contents: DBSecurityGroupNotFoundFault = { - name: "DBSecurityGroupNotFoundFault", - $fault: "client", + const exception = new DBSecurityGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse = async ( @@ -6522,13 +4949,11 @@ const deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSnapshotAlreadyExistsFault(body.Error, context); - const contents: DBSnapshotAlreadyExistsFault = { - name: "DBSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new DBSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSnapshotNotFoundFaultResponse = async ( @@ -6537,13 +4962,11 @@ const deserializeAws_queryDBSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSnapshotNotFoundFault(body.Error, context); - const contents: DBSnapshotNotFoundFault = { - name: "DBSnapshotNotFoundFault", - $fault: "client", + const exception = new DBSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse = async ( @@ -6552,13 +4975,11 @@ const deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupAlreadyExistsFault(body.Error, context); - const contents: DBSubnetGroupAlreadyExistsFault = { - name: "DBSubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBSubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse = async ( @@ -6567,13 +4988,11 @@ const deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZs(body.Error, context); - const contents: DBSubnetGroupDoesNotCoverEnoughAZs = { - name: "DBSubnetGroupDoesNotCoverEnoughAZs", - $fault: "client", + const exception = new DBSubnetGroupDoesNotCoverEnoughAZs({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupNotFoundFaultResponse = async ( @@ -6582,13 +5001,11 @@ const deserializeAws_queryDBSubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupNotFoundFault(body.Error, context); - const contents: DBSubnetGroupNotFoundFault = { - name: "DBSubnetGroupNotFoundFault", - $fault: "client", + const exception = new DBSubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse = async ( @@ -6597,13 +5014,11 @@ const deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupQuotaExceededFault(body.Error, context); - const contents: DBSubnetGroupQuotaExceededFault = { - name: "DBSubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new DBSubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetQuotaExceededFaultResponse = async ( @@ -6612,13 +5027,11 @@ const deserializeAws_queryDBSubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetQuotaExceededFault(body.Error, context); - const contents: DBSubnetQuotaExceededFault = { - name: "DBSubnetQuotaExceededFault", - $fault: "client", + const exception = new DBSubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBUpgradeDependencyFailureFaultResponse = async ( @@ -6627,13 +5040,11 @@ const deserializeAws_queryDBUpgradeDependencyFailureFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBUpgradeDependencyFailureFault(body.Error, context); - const contents: DBUpgradeDependencyFailureFault = { - name: "DBUpgradeDependencyFailureFault", - $fault: "client", + const exception = new DBUpgradeDependencyFailureFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDomainNotFoundFaultResponse = async ( @@ -6642,13 +5053,11 @@ const deserializeAws_queryDomainNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDomainNotFoundFault(body.Error, context); - const contents: DomainNotFoundFault = { - name: "DomainNotFoundFault", - $fault: "client", + const exception = new DomainNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( @@ -6657,13 +5066,11 @@ const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEventSubscriptionQuotaExceededFault(body.Error, context); - const contents: EventSubscriptionQuotaExceededFault = { - name: "EventSubscriptionQuotaExceededFault", - $fault: "client", + const exception = new EventSubscriptionQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInstanceQuotaExceededFaultResponse = async ( @@ -6672,13 +5079,11 @@ const deserializeAws_queryInstanceQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInstanceQuotaExceededFault(body.Error, context); - const contents: InstanceQuotaExceededFault = { - name: "InstanceQuotaExceededFault", - $fault: "client", + const exception = new InstanceQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientDBClusterCapacityFaultResponse = async ( @@ -6687,13 +5092,11 @@ const deserializeAws_queryInsufficientDBClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientDBClusterCapacityFault(body.Error, context); - const contents: InsufficientDBClusterCapacityFault = { - name: "InsufficientDBClusterCapacityFault", - $fault: "client", + const exception = new InsufficientDBClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse = async ( @@ -6702,13 +5105,11 @@ const deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientDBInstanceCapacityFault(body.Error, context); - const contents: InsufficientDBInstanceCapacityFault = { - name: "InsufficientDBInstanceCapacityFault", - $fault: "client", + const exception = new InsufficientDBInstanceCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse = async ( @@ -6717,13 +5118,11 @@ const deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientStorageClusterCapacityFault(body.Error, context); - const contents: InsufficientStorageClusterCapacityFault = { - name: "InsufficientStorageClusterCapacityFault", - $fault: "client", + const exception = new InsufficientStorageClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse = async ( @@ -6732,13 +5131,11 @@ const deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterEndpointStateFault(body.Error, context); - const contents: InvalidDBClusterEndpointStateFault = { - name: "InvalidDBClusterEndpointStateFault", - $fault: "client", + const exception = new InvalidDBClusterEndpointStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse = async ( @@ -6747,13 +5144,11 @@ const deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterSnapshotStateFault(body.Error, context); - const contents: InvalidDBClusterSnapshotStateFault = { - name: "InvalidDBClusterSnapshotStateFault", - $fault: "client", + const exception = new InvalidDBClusterSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterStateFaultResponse = async ( @@ -6762,13 +5157,11 @@ const deserializeAws_queryInvalidDBClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterStateFault(body.Error, context); - const contents: InvalidDBClusterStateFault = { - name: "InvalidDBClusterStateFault", - $fault: "client", + const exception = new InvalidDBClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBInstanceStateFaultResponse = async ( @@ -6777,13 +5170,11 @@ const deserializeAws_queryInvalidDBInstanceStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBInstanceStateFault(body.Error, context); - const contents: InvalidDBInstanceStateFault = { - name: "InvalidDBInstanceStateFault", - $fault: "client", + const exception = new InvalidDBInstanceStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBParameterGroupStateFaultResponse = async ( @@ -6792,13 +5183,11 @@ const deserializeAws_queryInvalidDBParameterGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBParameterGroupStateFault(body.Error, context); - const contents: InvalidDBParameterGroupStateFault = { - name: "InvalidDBParameterGroupStateFault", - $fault: "client", + const exception = new InvalidDBParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse = async ( @@ -6807,13 +5196,11 @@ const deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSecurityGroupStateFault(body.Error, context); - const contents: InvalidDBSecurityGroupStateFault = { - name: "InvalidDBSecurityGroupStateFault", - $fault: "client", + const exception = new InvalidDBSecurityGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSnapshotStateFaultResponse = async ( @@ -6822,13 +5209,11 @@ const deserializeAws_queryInvalidDBSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSnapshotStateFault(body.Error, context); - const contents: InvalidDBSnapshotStateFault = { - name: "InvalidDBSnapshotStateFault", - $fault: "client", + const exception = new InvalidDBSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse = async ( @@ -6837,13 +5222,11 @@ const deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetGroupStateFault(body.Error, context); - const contents: InvalidDBSubnetGroupStateFault = { - name: "InvalidDBSubnetGroupStateFault", - $fault: "client", + const exception = new InvalidDBSubnetGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetStateFaultResponse = async ( @@ -6852,13 +5235,11 @@ const deserializeAws_queryInvalidDBSubnetStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetStateFault(body.Error, context); - const contents: InvalidDBSubnetStateFault = { - name: "InvalidDBSubnetStateFault", - $fault: "client", + const exception = new InvalidDBSubnetStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidEventSubscriptionStateFaultResponse = async ( @@ -6867,13 +5248,11 @@ const deserializeAws_queryInvalidEventSubscriptionStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidEventSubscriptionStateFault(body.Error, context); - const contents: InvalidEventSubscriptionStateFault = { - name: "InvalidEventSubscriptionStateFault", - $fault: "client", + const exception = new InvalidEventSubscriptionStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRestoreFaultResponse = async ( @@ -6882,13 +5261,11 @@ const deserializeAws_queryInvalidRestoreFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRestoreFault(body.Error, context); - const contents: InvalidRestoreFault = { - name: "InvalidRestoreFault", - $fault: "client", + const exception = new InvalidRestoreFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetResponse = async ( @@ -6897,13 +5274,11 @@ const deserializeAws_queryInvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnet(body.Error, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( @@ -6912,13 +5287,11 @@ const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidVPCNetworkStateFault(body.Error, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSKeyNotAccessibleFaultResponse = async ( @@ -6927,13 +5300,11 @@ const deserializeAws_queryKMSKeyNotAccessibleFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSKeyNotAccessibleFault(body.Error, context); - const contents: KMSKeyNotAccessibleFault = { - name: "KMSKeyNotAccessibleFault", - $fault: "client", + const exception = new KMSKeyNotAccessibleFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOptionGroupNotFoundFaultResponse = async ( @@ -6942,13 +5313,11 @@ const deserializeAws_queryOptionGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOptionGroupNotFoundFault(body.Error, context); - const contents: OptionGroupNotFoundFault = { - name: "OptionGroupNotFoundFault", - $fault: "client", + const exception = new OptionGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse = async ( @@ -6957,13 +5326,11 @@ const deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryProvisionedIopsNotAvailableInAZFault(body.Error, context); - const contents: ProvisionedIopsNotAvailableInAZFault = { - name: "ProvisionedIopsNotAvailableInAZFault", - $fault: "client", + const exception = new ProvisionedIopsNotAvailableInAZFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundFaultResponse = async ( @@ -6972,13 +5339,11 @@ const deserializeAws_queryResourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundFault(body.Error, context); - const contents: ResourceNotFoundFault = { - name: "ResourceNotFoundFault", - $fault: "client", + const exception = new ResourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySharedSnapshotQuotaExceededFaultResponse = async ( @@ -6987,13 +5352,11 @@ const deserializeAws_querySharedSnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySharedSnapshotQuotaExceededFault(body.Error, context); - const contents: SharedSnapshotQuotaExceededFault = { - name: "SharedSnapshotQuotaExceededFault", - $fault: "client", + const exception = new SharedSnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( @@ -7002,13 +5365,11 @@ const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotQuotaExceededFault(body.Error, context); - const contents: SnapshotQuotaExceededFault = { - name: "SnapshotQuotaExceededFault", - $fault: "client", + const exception = new SnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSInvalidTopicFaultResponse = async ( @@ -7017,13 +5378,11 @@ const deserializeAws_querySNSInvalidTopicFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSInvalidTopicFault(body.Error, context); - const contents: SNSInvalidTopicFault = { - name: "SNSInvalidTopicFault", - $fault: "client", + const exception = new SNSInvalidTopicFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( @@ -7032,13 +5391,11 @@ const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSNoAuthorizationFault(body.Error, context); - const contents: SNSNoAuthorizationFault = { - name: "SNSNoAuthorizationFault", - $fault: "client", + const exception = new SNSNoAuthorizationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( @@ -7047,13 +5404,11 @@ const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSTopicArnNotFoundFault(body.Error, context); - const contents: SNSTopicArnNotFoundFault = { - name: "SNSTopicArnNotFoundFault", - $fault: "client", + const exception = new SNSTopicArnNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySourceNotFoundFaultResponse = async ( @@ -7062,13 +5417,11 @@ const deserializeAws_querySourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySourceNotFoundFault(body.Error, context); - const contents: SourceNotFoundFault = { - name: "SourceNotFoundFault", - $fault: "client", + const exception = new SourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStorageQuotaExceededFaultResponse = async ( @@ -7077,13 +5430,11 @@ const deserializeAws_queryStorageQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStorageQuotaExceededFault(body.Error, context); - const contents: StorageQuotaExceededFault = { - name: "StorageQuotaExceededFault", - $fault: "client", + const exception = new StorageQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStorageTypeNotSupportedFaultResponse = async ( @@ -7092,13 +5443,11 @@ const deserializeAws_queryStorageTypeNotSupportedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStorageTypeNotSupportedFault(body.Error, context); - const contents: StorageTypeNotSupportedFault = { - name: "StorageTypeNotSupportedFault", - $fault: "client", + const exception = new StorageTypeNotSupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetAlreadyInUseResponse = async ( @@ -7107,13 +5456,11 @@ const deserializeAws_querySubnetAlreadyInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetAlreadyInUse(body.Error, context); - const contents: SubnetAlreadyInUse = { - name: "SubnetAlreadyInUse", - $fault: "client", + const exception = new SubnetAlreadyInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( @@ -7122,13 +5469,11 @@ const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionAlreadyExistFault(body.Error, context); - const contents: SubscriptionAlreadyExistFault = { - name: "SubscriptionAlreadyExistFault", - $fault: "client", + const exception = new SubscriptionAlreadyExistFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( @@ -7137,13 +5482,11 @@ const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionCategoryNotFoundFault(body.Error, context); - const contents: SubscriptionCategoryNotFoundFault = { - name: "SubscriptionCategoryNotFoundFault", - $fault: "client", + const exception = new SubscriptionCategoryNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( @@ -7152,13 +5495,11 @@ const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionNotFoundFault(body.Error, context); - const contents: SubscriptionNotFoundFault = { - name: "SubscriptionNotFoundFault", - $fault: "client", + const exception = new SubscriptionNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAddRoleToDBClusterMessage = ( diff --git a/clients/client-network-firewall/src/index.ts b/clients/client-network-firewall/src/index.ts index 0c289f372ae60..da8629b876b35 100644 --- a/clients/client-network-firewall/src/index.ts +++ b/clients/client-network-firewall/src/index.ts @@ -3,3 +3,4 @@ export * from "./NetworkFirewallClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { NetworkFirewallServiceException } from "./models/NetworkFirewallServiceException"; diff --git a/clients/client-network-firewall/src/models/NetworkFirewallServiceException.ts b/clients/client-network-firewall/src/models/NetworkFirewallServiceException.ts new file mode 100644 index 0000000000000..5f893cf525a02 --- /dev/null +++ b/clients/client-network-firewall/src/models/NetworkFirewallServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from NetworkFirewall service. + */ +export class NetworkFirewallServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, NetworkFirewallServiceException.prototype); + } +} diff --git a/clients/client-network-firewall/src/models/models_0.ts b/clients/client-network-firewall/src/models/models_0.ts index 0637e01ce93ad..5b475bb1f64e3 100644 --- a/clients/client-network-firewall/src/models/models_0.ts +++ b/clients/client-network-firewall/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { NetworkFirewallServiceException as __BaseException } from "./NetworkFirewallServiceException"; /** *

The value to use in an Amazon CloudWatch custom metric dimension. This is used in the @@ -173,20 +176,44 @@ export namespace AssociateFirewallPolicyResponse { *

Your request is valid, but Network Firewall couldn’t perform the operation because of a * system problem. Retry your request.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } /** *

The operation failed because it's not valid. For example, you might have tried to delete * a rule group or firewall policy that's in use.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + this.Message = opts.Message; + } } /** @@ -205,37 +232,85 @@ export interface InvalidOperationException extends __SmithyException, $MetadataB * * */ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The token you provided is stale or isn't valid for the operation.

*/ -export interface InvalidTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidTokenException"; - $fault: "client"; +export class InvalidTokenException extends __BaseException { + readonly name: "InvalidTokenException" = "InvalidTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTokenException.prototype); + this.Message = opts.Message; + } } /** *

Unable to locate a resource using the parameters that you provided.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Unable to process the request due to throttling limitations.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** @@ -332,10 +407,22 @@ export namespace AssociateSubnetsResponse { *

AWS doesn't currently have enough available capacity to fulfill your request. Try your * request later.

*/ -export interface InsufficientCapacityException extends __SmithyException, $MetadataBearer { - name: "InsufficientCapacityException"; - $fault: "server"; +export class InsufficientCapacityException extends __BaseException { + readonly name: "InsufficientCapacityException" = "InsufficientCapacityException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientCapacityException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientCapacityException.prototype); + this.Message = opts.Message; + } } export enum AttachmentStatus { @@ -719,10 +806,22 @@ export namespace CreateFirewallResponse { /** *

Unable to perform the operation because doing so would violate a limit setting.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export enum RuleOrder { @@ -2039,10 +2138,22 @@ export namespace DeleteFirewallResponse { /** *

The operation you requested isn't supported by Network Firewall.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + } } export interface DeleteFirewallPolicyRequest { @@ -2115,10 +2226,22 @@ export namespace DeleteResourcePolicyResponse { /** *

The policy statement failed validation.

*/ -export interface InvalidResourcePolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidResourcePolicyException"; - $fault: "client"; +export class InvalidResourcePolicyException extends __BaseException { + readonly name: "InvalidResourcePolicyException" = "InvalidResourcePolicyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourcePolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourcePolicyException.prototype); + this.Message = opts.Message; + } } export interface DeleteRuleGroupRequest { @@ -2959,10 +3082,22 @@ export namespace ListTagsForResourceResponse { /** *

Unable to send logs to a configured logging destination.

*/ -export interface LogDestinationPermissionException extends __SmithyException, $MetadataBearer { - name: "LogDestinationPermissionException"; - $fault: "client"; +export class LogDestinationPermissionException extends __BaseException { + readonly name: "LogDestinationPermissionException" = "LogDestinationPermissionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LogDestinationPermissionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LogDestinationPermissionException.prototype); + this.Message = opts.Message; + } } export interface PutResourcePolicyRequest { @@ -3093,10 +3228,22 @@ export namespace UntagResourceResponse { /** *

Unable to change the resource because your account doesn't own it.

*/ -export interface ResourceOwnerCheckException extends __SmithyException, $MetadataBearer { - name: "ResourceOwnerCheckException"; - $fault: "client"; +export class ResourceOwnerCheckException extends __BaseException { + readonly name: "ResourceOwnerCheckException" = "ResourceOwnerCheckException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceOwnerCheckException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceOwnerCheckException.prototype); + this.Message = opts.Message; + } } export interface UpdateFirewallDeleteProtectionRequest { diff --git a/clients/client-network-firewall/src/protocols/Aws_json1_0.ts b/clients/client-network-firewall/src/protocols/Aws_json1_0.ts index b33eab6c0122f..e4d9bee804a45 100644 --- a/clients/client-network-firewall/src/protocols/Aws_json1_0.ts +++ b/clients/client-network-firewall/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectString as __expectString, @@ -7,10 +8,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -210,6 +209,7 @@ import { UpdateSubnetChangeProtectionRequest, UpdateSubnetChangeProtectionResponse, } from "../models/models_0"; +import { NetworkFirewallServiceException as __BaseException } from "../models/NetworkFirewallServiceException"; export const serializeAws_json1_0AssociateFirewallPolicyCommand = async ( input: AssociateFirewallPolicyCommandInput, @@ -626,73 +626,37 @@ const deserializeAws_json1_0AssociateFirewallPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0AssociateSubnetsCommand = async ( @@ -720,81 +684,40 @@ const deserializeAws_json1_0AssociateSubnetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCapacityException": case "com.amazonaws.networkfirewall#InsufficientCapacityException": - response = { - ...(await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateFirewallCommand = async ( @@ -822,73 +745,37 @@ const deserializeAws_json1_0CreateFirewallCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCapacityException": case "com.amazonaws.networkfirewall#InsufficientCapacityException": - response = { - ...(await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.networkfirewall#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateFirewallPolicyCommand = async ( @@ -916,65 +803,34 @@ const deserializeAws_json1_0CreateFirewallPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCapacityException": case "com.amazonaws.networkfirewall#InsufficientCapacityException": - response = { - ...(await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.networkfirewall#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateRuleGroupCommand = async ( @@ -1002,65 +858,34 @@ const deserializeAws_json1_0CreateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InsufficientCapacityException": case "com.amazonaws.networkfirewall#InsufficientCapacityException": - response = { - ...(await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InsufficientCapacityExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.networkfirewall#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteFirewallCommand = async ( @@ -1088,73 +913,37 @@ const deserializeAws_json1_0DeleteFirewallCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.networkfirewall#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteFirewallPolicyCommand = async ( @@ -1182,73 +971,37 @@ const deserializeAws_json1_0DeleteFirewallPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.networkfirewall#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteResourcePolicyCommand = async ( @@ -1276,65 +1029,34 @@ const deserializeAws_json1_0DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidResourcePolicyException": case "com.amazonaws.networkfirewall#InvalidResourcePolicyException": - response = { - ...(await deserializeAws_json1_0InvalidResourcePolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidResourcePolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteRuleGroupCommand = async ( @@ -1362,73 +1084,37 @@ const deserializeAws_json1_0DeleteRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.networkfirewall#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFirewallCommand = async ( @@ -1456,57 +1142,31 @@ const deserializeAws_json1_0DescribeFirewallCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFirewallPolicyCommand = async ( @@ -1534,57 +1194,31 @@ const deserializeAws_json1_0DescribeFirewallPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeLoggingConfigurationCommand = async ( @@ -1612,57 +1246,31 @@ const deserializeAws_json1_0DescribeLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeResourcePolicyCommand = async ( @@ -1690,57 +1298,31 @@ const deserializeAws_json1_0DescribeResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeRuleGroupCommand = async ( @@ -1768,57 +1350,31 @@ const deserializeAws_json1_0DescribeRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeRuleGroupMetadataCommand = async ( @@ -1846,57 +1402,31 @@ const deserializeAws_json1_0DescribeRuleGroupMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DisassociateSubnetsCommand = async ( @@ -1924,73 +1454,37 @@ const deserializeAws_json1_0DisassociateSubnetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.networkfirewall#InvalidOperationException": - response = { - ...(await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListFirewallPoliciesCommand = async ( @@ -2018,49 +1512,28 @@ const deserializeAws_json1_0ListFirewallPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListFirewallsCommand = async ( @@ -2088,49 +1561,28 @@ const deserializeAws_json1_0ListFirewallsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListRuleGroupsCommand = async ( @@ -2158,49 +1610,28 @@ const deserializeAws_json1_0ListRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -2228,57 +1659,31 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PutResourcePolicyCommand = async ( @@ -2306,65 +1711,34 @@ const deserializeAws_json1_0PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidResourcePolicyException": case "com.amazonaws.networkfirewall#InvalidResourcePolicyException": - response = { - ...(await deserializeAws_json1_0InvalidResourcePolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidResourcePolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -2392,57 +1766,31 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -2470,57 +1818,31 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateFirewallDeleteProtectionCommand = async ( @@ -2548,73 +1870,37 @@ const deserializeAws_json1_0UpdateFirewallDeleteProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceOwnerCheckException": case "com.amazonaws.networkfirewall#ResourceOwnerCheckException": - response = { - ...(await deserializeAws_json1_0ResourceOwnerCheckExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceOwnerCheckExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateFirewallDescriptionCommand = async ( @@ -2642,65 +1928,34 @@ const deserializeAws_json1_0UpdateFirewallDescriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateFirewallPolicyCommand = async ( @@ -2728,65 +1983,34 @@ const deserializeAws_json1_0UpdateFirewallPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateFirewallPolicyChangeProtectionCommand = async ( @@ -2814,73 +2038,37 @@ const deserializeAws_json1_0UpdateFirewallPolicyChangeProtectionCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceOwnerCheckException": case "com.amazonaws.networkfirewall#ResourceOwnerCheckException": - response = { - ...(await deserializeAws_json1_0ResourceOwnerCheckExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceOwnerCheckExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateLoggingConfigurationCommand = async ( @@ -2908,73 +2096,37 @@ const deserializeAws_json1_0UpdateLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "LogDestinationPermissionException": case "com.amazonaws.networkfirewall#LogDestinationPermissionException": - response = { - ...(await deserializeAws_json1_0LogDestinationPermissionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LogDestinationPermissionExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateRuleGroupCommand = async ( @@ -3002,65 +2154,34 @@ const deserializeAws_json1_0UpdateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateSubnetChangeProtectionCommand = async ( @@ -3088,73 +2209,37 @@ const deserializeAws_json1_0UpdateSubnetChangeProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.networkfirewall#InternalServerError": - response = { - ...(await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.networkfirewall#InvalidRequestException": - response = { - ...(await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTokenException": case "com.amazonaws.networkfirewall#InvalidTokenException": - response = { - ...(await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkfirewall#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceOwnerCheckException": case "com.amazonaws.networkfirewall#ResourceOwnerCheckException": - response = { - ...(await deserializeAws_json1_0ResourceOwnerCheckExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceOwnerCheckExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkfirewall#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0InsufficientCapacityExceptionResponse = async ( @@ -3163,13 +2248,11 @@ const deserializeAws_json1_0InsufficientCapacityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InsufficientCapacityException(body, context); - const contents: InsufficientCapacityException = { - name: "InsufficientCapacityException", - $fault: "server", + const exception = new InsufficientCapacityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerErrorResponse = async ( @@ -3178,13 +2261,11 @@ const deserializeAws_json1_0InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidOperationExceptionResponse = async ( @@ -3193,13 +2274,11 @@ const deserializeAws_json1_0InvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidOperationException(body, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidRequestExceptionResponse = async ( @@ -3208,13 +2287,11 @@ const deserializeAws_json1_0InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidResourcePolicyExceptionResponse = async ( @@ -3223,13 +2300,11 @@ const deserializeAws_json1_0InvalidResourcePolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidResourcePolicyException(body, context); - const contents: InvalidResourcePolicyException = { - name: "InvalidResourcePolicyException", - $fault: "client", + const exception = new InvalidResourcePolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidTokenExceptionResponse = async ( @@ -3238,13 +2313,11 @@ const deserializeAws_json1_0InvalidTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidTokenException(body, context); - const contents: InvalidTokenException = { - name: "InvalidTokenException", - $fault: "client", + const exception = new InvalidTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededExceptionResponse = async ( @@ -3253,13 +2326,11 @@ const deserializeAws_json1_0LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LogDestinationPermissionExceptionResponse = async ( @@ -3268,13 +2339,11 @@ const deserializeAws_json1_0LogDestinationPermissionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LogDestinationPermissionException(body, context); - const contents: LogDestinationPermissionException = { - name: "LogDestinationPermissionException", - $fault: "client", + const exception = new LogDestinationPermissionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -3283,13 +2352,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceOwnerCheckExceptionResponse = async ( @@ -3298,13 +2365,11 @@ const deserializeAws_json1_0ResourceOwnerCheckExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceOwnerCheckException(body, context); - const contents: ResourceOwnerCheckException = { - name: "ResourceOwnerCheckException", - $fault: "client", + const exception = new ResourceOwnerCheckException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -3313,13 +2378,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0UnsupportedOperationExceptionResponse = async ( @@ -3328,13 +2391,11 @@ const deserializeAws_json1_0UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0ActionDefinition = (input: ActionDefinition, context: __SerdeContext): any => { diff --git a/clients/client-networkmanager/src/index.ts b/clients/client-networkmanager/src/index.ts index f4ab4a356ffbe..becf95f997738 100644 --- a/clients/client-networkmanager/src/index.ts +++ b/clients/client-networkmanager/src/index.ts @@ -3,3 +3,4 @@ export * from "./NetworkManagerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { NetworkManagerServiceException } from "./models/NetworkManagerServiceException"; diff --git a/clients/client-networkmanager/src/models/NetworkManagerServiceException.ts b/clients/client-networkmanager/src/models/NetworkManagerServiceException.ts new file mode 100644 index 0000000000000..47de37c4bffca --- /dev/null +++ b/clients/client-networkmanager/src/models/NetworkManagerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from NetworkManager service. + */ +export class NetworkManagerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, NetworkManagerServiceException.prototype); + } +} diff --git a/clients/client-networkmanager/src/models/models_0.ts b/clients/client-networkmanager/src/models/models_0.ts index 52dd1c021e16c..6c008d8ff7d4c 100644 --- a/clients/client-networkmanager/src/models/models_0.ts +++ b/clients/client-networkmanager/src/models/models_0.ts @@ -1,5 +1,11 @@ -import { LazyJsonString as __LazyJsonString, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, + SENSITIVE_STRING, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { NetworkManagerServiceException as __BaseException } from "./NetworkManagerServiceException"; export interface AcceptAttachmentRequest { /** @@ -193,19 +199,31 @@ export namespace AcceptAttachmentResponse { /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

There was a conflict processing the request. Updating or deleting the resource can * cause an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -216,27 +234,54 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The resource type.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request has failed due to an internal error.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; /** *

Indicates when to retry the request.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

The specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The ID of the resource.

@@ -252,19 +297,47 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The specified resource could not be found.

*/ Context?: { [key: string]: string }; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.Context = opts.Context; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

Indicates when to retry the request.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** @@ -301,9 +374,9 @@ export enum ValidationExceptionReason { /** *

The input fails to satisfy the constraints.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The reason for the error.

@@ -314,6 +387,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The fields that caused the error, if applicable.

*/ Fields?: ValidationExceptionField[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Fields = opts.Fields; + } } export interface AssociateConnectPeerRequest { @@ -412,9 +499,9 @@ export namespace AssociateConnectPeerResponse { /** *

A service limit was exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The error message.

*/ @@ -439,6 +526,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The service code.

*/ ServiceCode: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.LimitCode = opts.LimitCode; + this.ServiceCode = opts.ServiceCode; + } } export interface AssociateCustomerGatewayRequest { @@ -1454,14 +1557,27 @@ export namespace CoreNetworkPolicy { /** *

Describes a core network policy exception.

*/ -export interface CoreNetworkPolicyException extends __SmithyException, $MetadataBearer { - name: "CoreNetworkPolicyException"; - $fault: "client"; +export class CoreNetworkPolicyException extends __BaseException { + readonly name: "CoreNetworkPolicyException" = "CoreNetworkPolicyException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

Describes a core network policy exception.

*/ Errors?: CoreNetworkPolicyError[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CoreNetworkPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CoreNetworkPolicyException.prototype); + this.Message = opts.Message; + this.Errors = opts.Errors; + } } /** diff --git a/clients/client-networkmanager/src/protocols/Aws_restJson1.ts b/clients/client-networkmanager/src/protocols/Aws_restJson1.ts index ffbbcc61ab1a6..4333c3c2c33f8 100644 --- a/clients/client-networkmanager/src/protocols/Aws_restJson1.ts +++ b/clients/client-networkmanager/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -273,6 +272,7 @@ import { VpcAttachment, VpcOptions, } from "../models/models_0"; +import { NetworkManagerServiceException as __BaseException } from "../models/NetworkManagerServiceException"; export const serializeAws_restJson1AcceptAttachmentCommand = async ( input: AcceptAttachmentCommandInput, @@ -3073,73 +3073,37 @@ const deserializeAws_restJson1AcceptAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateConnectPeerCommand = async ( @@ -3171,81 +3135,40 @@ const deserializeAws_restJson1AssociateConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateCustomerGatewayCommand = async ( @@ -3277,81 +3200,40 @@ const deserializeAws_restJson1AssociateCustomerGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateLinkCommand = async ( @@ -3380,81 +3262,40 @@ const deserializeAws_restJson1AssociateLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateTransitGatewayConnectPeerCommand = async ( @@ -3486,81 +3327,40 @@ const deserializeAws_restJson1AssociateTransitGatewayConnectPeerCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConnectAttachmentCommand = async ( @@ -3589,73 +3389,37 @@ const deserializeAws_restJson1CreateConnectAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConnectionCommand = async ( @@ -3684,73 +3448,37 @@ const deserializeAws_restJson1CreateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConnectPeerCommand = async ( @@ -3779,73 +3507,37 @@ const deserializeAws_restJson1CreateConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCoreNetworkCommand = async ( @@ -3874,81 +3566,40 @@ const deserializeAws_restJson1CreateCoreNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "CoreNetworkPolicyException": case "com.amazonaws.networkmanager#CoreNetworkPolicyException": - response = { - ...(await deserializeAws_restJson1CoreNetworkPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CoreNetworkPolicyExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeviceCommand = async ( @@ -3977,81 +3628,40 @@ const deserializeAws_restJson1CreateDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGlobalNetworkCommand = async ( @@ -4080,73 +3690,37 @@ const deserializeAws_restJson1CreateGlobalNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLinkCommand = async ( @@ -4175,81 +3749,40 @@ const deserializeAws_restJson1CreateLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSiteCommand = async ( @@ -4278,81 +3811,40 @@ const deserializeAws_restJson1CreateSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSiteToSiteVpnAttachmentCommand = async ( @@ -4384,73 +3876,37 @@ const deserializeAws_restJson1CreateSiteToSiteVpnAttachmentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVpcAttachmentCommand = async ( @@ -4479,73 +3935,37 @@ const deserializeAws_restJson1CreateVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAttachmentCommand = async ( @@ -4574,73 +3994,37 @@ const deserializeAws_restJson1DeleteAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConnectionCommand = async ( @@ -4669,73 +4053,37 @@ const deserializeAws_restJson1DeleteConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConnectPeerCommand = async ( @@ -4764,73 +4112,37 @@ const deserializeAws_restJson1DeleteConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCoreNetworkCommand = async ( @@ -4859,73 +4171,37 @@ const deserializeAws_restJson1DeleteCoreNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCoreNetworkPolicyVersionCommand = async ( @@ -4954,73 +4230,37 @@ const deserializeAws_restJson1DeleteCoreNetworkPolicyVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeviceCommand = async ( @@ -5049,73 +4289,37 @@ const deserializeAws_restJson1DeleteDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGlobalNetworkCommand = async ( @@ -5144,73 +4348,37 @@ const deserializeAws_restJson1DeleteGlobalNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLinkCommand = async ( @@ -5239,73 +4407,37 @@ const deserializeAws_restJson1DeleteLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourcePolicyCommand = async ( @@ -5330,65 +4462,34 @@ const deserializeAws_restJson1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSiteCommand = async ( @@ -5417,73 +4518,37 @@ const deserializeAws_restJson1DeleteSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterTransitGatewayCommand = async ( @@ -5515,73 +4580,37 @@ const deserializeAws_restJson1DeregisterTransitGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGlobalNetworksCommand = async ( @@ -5614,65 +4643,34 @@ const deserializeAws_restJson1DescribeGlobalNetworksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateConnectPeerCommand = async ( @@ -5704,73 +4702,37 @@ const deserializeAws_restJson1DisassociateConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateCustomerGatewayCommand = async ( @@ -5802,73 +4764,37 @@ const deserializeAws_restJson1DisassociateCustomerGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateLinkCommand = async ( @@ -5897,73 +4823,37 @@ const deserializeAws_restJson1DisassociateLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateTransitGatewayConnectPeerCommand = async ( @@ -5995,73 +4885,37 @@ const deserializeAws_restJson1DisassociateTransitGatewayConnectPeerCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExecuteCoreNetworkChangeSetCommand = async ( @@ -6086,73 +4940,37 @@ const deserializeAws_restJson1ExecuteCoreNetworkChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectAttachmentCommand = async ( @@ -6181,65 +4999,34 @@ const deserializeAws_restJson1GetConnectAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectionsCommand = async ( @@ -6272,65 +5059,34 @@ const deserializeAws_restJson1GetConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectPeerCommand = async ( @@ -6359,65 +5115,34 @@ const deserializeAws_restJson1GetConnectPeerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConnectPeerAssociationsCommand = async ( @@ -6453,73 +5178,37 @@ const deserializeAws_restJson1GetConnectPeerAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCoreNetworkCommand = async ( @@ -6548,65 +5237,34 @@ const deserializeAws_restJson1GetCoreNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCoreNetworkChangeSetCommand = async ( @@ -6639,65 +5297,34 @@ const deserializeAws_restJson1GetCoreNetworkChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCoreNetworkPolicyCommand = async ( @@ -6726,65 +5353,34 @@ const deserializeAws_restJson1GetCoreNetworkPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCustomerGatewayAssociationsCommand = async ( @@ -6820,73 +5416,37 @@ const deserializeAws_restJson1GetCustomerGatewayAssociationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDevicesCommand = async ( @@ -6919,65 +5479,34 @@ const deserializeAws_restJson1GetDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLinkAssociationsCommand = async ( @@ -7010,65 +5539,34 @@ const deserializeAws_restJson1GetLinkAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLinksCommand = async ( @@ -7101,65 +5599,34 @@ const deserializeAws_restJson1GetLinksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkResourceCountsCommand = async ( @@ -7195,57 +5662,31 @@ const deserializeAws_restJson1GetNetworkResourceCountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkResourceRelationshipsCommand = async ( @@ -7278,65 +5719,34 @@ const deserializeAws_restJson1GetNetworkResourceRelationshipsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkResourcesCommand = async ( @@ -7369,65 +5779,34 @@ const deserializeAws_restJson1GetNetworkResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkRoutesCommand = async ( @@ -7475,65 +5854,34 @@ const deserializeAws_restJson1GetNetworkRoutesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkTelemetryCommand = async ( @@ -7566,65 +5914,34 @@ const deserializeAws_restJson1GetNetworkTelemetryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcePolicyCommand = async ( @@ -7653,57 +5970,31 @@ const deserializeAws_restJson1GetResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRouteAnalysisCommand = async ( @@ -7732,65 +6023,34 @@ const deserializeAws_restJson1GetRouteAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSitesCommand = async ( @@ -7823,65 +6083,34 @@ const deserializeAws_restJson1GetSitesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSiteToSiteVpnAttachmentCommand = async ( @@ -7913,65 +6142,34 @@ const deserializeAws_restJson1GetSiteToSiteVpnAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTransitGatewayConnectPeerAssociationsCommand = async ( @@ -8007,73 +6205,37 @@ const deserializeAws_restJson1GetTransitGatewayConnectPeerAssociationsCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTransitGatewayRegistrationsCommand = async ( @@ -8109,65 +6271,34 @@ const deserializeAws_restJson1GetTransitGatewayRegistrationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVpcAttachmentCommand = async ( @@ -8196,65 +6327,34 @@ const deserializeAws_restJson1GetVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttachmentsCommand = async ( @@ -8287,57 +6387,31 @@ const deserializeAws_restJson1ListAttachmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConnectPeersCommand = async ( @@ -8370,57 +6444,31 @@ const deserializeAws_restJson1ListConnectPeersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoreNetworkPolicyVersionsCommand = async ( @@ -8456,65 +6504,34 @@ const deserializeAws_restJson1ListCoreNetworkPolicyVersionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCoreNetworksCommand = async ( @@ -8547,57 +6564,31 @@ const deserializeAws_restJson1ListCoreNetworksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -8626,65 +6617,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutCoreNetworkPolicyCommand = async ( @@ -8713,81 +6673,40 @@ const deserializeAws_restJson1PutCoreNetworkPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "CoreNetworkPolicyException": case "com.amazonaws.networkmanager#CoreNetworkPolicyException": - response = { - ...(await deserializeAws_restJson1CoreNetworkPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CoreNetworkPolicyExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutResourcePolicyCommand = async ( @@ -8812,73 +6731,37 @@ const deserializeAws_restJson1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterTransitGatewayCommand = async ( @@ -8910,73 +6793,37 @@ const deserializeAws_restJson1RegisterTransitGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectAttachmentCommand = async ( @@ -9005,73 +6852,37 @@ const deserializeAws_restJson1RejectAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RestoreCoreNetworkPolicyVersionCommand = async ( @@ -9100,73 +6911,37 @@ const deserializeAws_restJson1RestoreCoreNetworkPolicyVersionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartRouteAnalysisCommand = async ( @@ -9195,73 +6970,37 @@ const deserializeAws_restJson1StartRouteAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -9286,81 +7025,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -9385,73 +7083,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConnectionCommand = async ( @@ -9480,73 +7142,37 @@ const deserializeAws_restJson1UpdateConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCoreNetworkCommand = async ( @@ -9575,73 +7201,37 @@ const deserializeAws_restJson1UpdateCoreNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeviceCommand = async ( @@ -9670,73 +7260,37 @@ const deserializeAws_restJson1UpdateDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGlobalNetworkCommand = async ( @@ -9765,73 +7319,37 @@ const deserializeAws_restJson1UpdateGlobalNetworkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLinkCommand = async ( @@ -9860,81 +7378,40 @@ const deserializeAws_restJson1UpdateLinkCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.networkmanager#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNetworkResourceMetadataCommand = async ( @@ -9967,73 +7444,37 @@ const deserializeAws_restJson1UpdateNetworkResourceMetadataCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSiteCommand = async ( @@ -10062,73 +7503,37 @@ const deserializeAws_restJson1UpdateSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVpcAttachmentCommand = async ( @@ -10157,104 +7562,60 @@ const deserializeAws_restJson1UpdateVpcAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.networkmanager#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.networkmanager#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.networkmanager#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.networkmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.networkmanager#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.networkmanager#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -10265,20 +7626,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CoreNetworkPolicyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CoreNetworkPolicyException = { - name: "CoreNetworkPolicyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Errors: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Errors !== undefined && data.Errors !== null) { contents.Errors = deserializeAws_restJson1CoreNetworkPolicyErrorList(data.Errors, context); @@ -10286,20 +7645,18 @@ const deserializeAws_restJson1CoreNetworkPolicyExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new CoreNetworkPolicyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RetryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -10307,22 +7664,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Context: undefined, - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Context !== undefined && data.Context !== null) { contents.Context = deserializeAws_restJson1ExceptionContextMap(data.Context, context); @@ -10336,23 +7689,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - LimitCode: undefined, - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.LimitCode !== undefined && data.LimitCode !== null) { contents.LimitCode = __expectString(data.LimitCode); @@ -10369,20 +7717,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RetryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -10390,21 +7736,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Fields: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Fields !== undefined && data.Fields !== null) { contents.Fields = deserializeAws_restJson1ValidationExceptionFieldList(data.Fields, context); @@ -10415,7 +7758,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AWSLocation = (input: AWSLocation, context: __SerdeContext): any => { diff --git a/clients/client-nimble/src/index.ts b/clients/client-nimble/src/index.ts index 965e78d20d4c6..7b0426bee3bb5 100644 --- a/clients/client-nimble/src/index.ts +++ b/clients/client-nimble/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { NimbleServiceException } from "./models/NimbleServiceException"; diff --git a/clients/client-nimble/src/models/NimbleServiceException.ts b/clients/client-nimble/src/models/NimbleServiceException.ts new file mode 100644 index 0000000000000..17422c6966434 --- /dev/null +++ b/clients/client-nimble/src/models/NimbleServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Nimble service. + */ +export class NimbleServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, NimbleServiceException.prototype); + } +} diff --git a/clients/client-nimble/src/models/models_0.ts b/clients/client-nimble/src/models/models_0.ts index 5fd25750fd2b0..5e760ffec8c43 100644 --- a/clients/client-nimble/src/models/models_0.ts +++ b/clients/client-nimble/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { NimbleServiceException as __BaseException } from "./NimbleServiceException"; export interface AcceptEulasRequest { /** @@ -88,9 +90,9 @@ export namespace AcceptEulasResponse { *

You are not authorized to perform this operation. Check your IAM policies, and ensure * that you are using the correct access keys.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

A more specific error code.

*/ @@ -102,17 +104,26 @@ export interface AccessDeniedException extends __SmithyException, $MetadataBeare context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** *

Another operation is in progress.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

A more specific error code.

*/ @@ -124,18 +135,27 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** *

An internal error has occurred. Please retry your request.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; - $retryable: {}; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; + $retryable = {}; /** *

A more specific error code.

*/ @@ -147,17 +167,26 @@ export interface InternalServerErrorException extends __SmithyException, $Metada context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** *

The specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

A more specific error code.

*/ @@ -169,9 +198,18 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** @@ -179,9 +217,9 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * increases for some quotas, and other quotas cannot be increased.

*

Please use AWS Service Quotas to request an increase.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

A more specific error code.

*/ @@ -193,18 +231,27 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** *

The request throughput limit was exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: {}; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = {}; /** *

A more specific error code.

*/ @@ -216,17 +263,26 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** *

One of the parameters in the request is invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

A more specific error code.

*/ @@ -238,9 +294,18 @@ export interface ValidationException extends __SmithyException, $MetadataBearer context?: { [key: string]: string }; /** - *

A human-readable description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.code = opts.code; + this.context = opts.context; + } } /** diff --git a/clients/client-nimble/src/protocols/Aws_restJson1.ts b/clients/client-nimble/src/protocols/Aws_restJson1.ts index a3726f78916db..b9e78f992c31e 100644 --- a/clients/client-nimble/src/protocols/Aws_restJson1.ts +++ b/clients/client-nimble/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -192,6 +191,7 @@ import { ValidationException, ValidationResult, } from "../models/models_0"; +import { NimbleServiceException as __BaseException } from "../models/NimbleServiceException"; export const serializeAws_restJson1AcceptEulasCommand = async ( input: AcceptEulasCommandInput, @@ -2136,81 +2136,40 @@ const deserializeAws_restJson1AcceptEulasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLaunchProfileCommand = async ( @@ -2239,81 +2198,40 @@ const deserializeAws_restJson1CreateLaunchProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStreamingImageCommand = async ( @@ -2342,81 +2260,40 @@ const deserializeAws_restJson1CreateStreamingImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStreamingSessionCommand = async ( @@ -2445,81 +2322,40 @@ const deserializeAws_restJson1CreateStreamingSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStreamingSessionStreamCommand = async ( @@ -2548,81 +2384,40 @@ const deserializeAws_restJson1CreateStreamingSessionStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStudioCommand = async ( @@ -2651,81 +2446,40 @@ const deserializeAws_restJson1CreateStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateStudioComponentCommand = async ( @@ -2754,81 +2508,40 @@ const deserializeAws_restJson1CreateStudioComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLaunchProfileCommand = async ( @@ -2857,81 +2570,40 @@ const deserializeAws_restJson1DeleteLaunchProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLaunchProfileMemberCommand = async ( @@ -2956,81 +2628,40 @@ const deserializeAws_restJson1DeleteLaunchProfileMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStreamingImageCommand = async ( @@ -3059,81 +2690,40 @@ const deserializeAws_restJson1DeleteStreamingImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStreamingSessionCommand = async ( @@ -3162,81 +2752,40 @@ const deserializeAws_restJson1DeleteStreamingSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStudioCommand = async ( @@ -3265,81 +2814,40 @@ const deserializeAws_restJson1DeleteStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStudioComponentCommand = async ( @@ -3368,81 +2876,40 @@ const deserializeAws_restJson1DeleteStudioComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteStudioMemberCommand = async ( @@ -3467,81 +2934,40 @@ const deserializeAws_restJson1DeleteStudioMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEulaCommand = async ( @@ -3570,81 +2996,40 @@ const deserializeAws_restJson1GetEulaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchProfileCommand = async ( @@ -3673,81 +3058,40 @@ const deserializeAws_restJson1GetLaunchProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchProfileDetailsCommand = async ( @@ -3787,81 +3131,40 @@ const deserializeAws_restJson1GetLaunchProfileDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchProfileInitializationCommand = async ( @@ -3893,81 +3196,40 @@ const deserializeAws_restJson1GetLaunchProfileInitializationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLaunchProfileMemberCommand = async ( @@ -3996,81 +3258,40 @@ const deserializeAws_restJson1GetLaunchProfileMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStreamingImageCommand = async ( @@ -4099,81 +3320,40 @@ const deserializeAws_restJson1GetStreamingImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStreamingSessionCommand = async ( @@ -4202,81 +3382,40 @@ const deserializeAws_restJson1GetStreamingSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStreamingSessionStreamCommand = async ( @@ -4305,81 +3444,40 @@ const deserializeAws_restJson1GetStreamingSessionStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStudioCommand = async ( @@ -4408,81 +3506,40 @@ const deserializeAws_restJson1GetStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStudioComponentCommand = async ( @@ -4511,81 +3568,40 @@ const deserializeAws_restJson1GetStudioComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetStudioMemberCommand = async ( @@ -4614,81 +3630,40 @@ const deserializeAws_restJson1GetStudioMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEulaAcceptancesCommand = async ( @@ -4721,81 +3696,40 @@ const deserializeAws_restJson1ListEulaAcceptancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEulasCommand = async ( @@ -4828,81 +3762,40 @@ const deserializeAws_restJson1ListEulasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLaunchProfileMembersCommand = async ( @@ -4935,81 +3828,40 @@ const deserializeAws_restJson1ListLaunchProfileMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLaunchProfilesCommand = async ( @@ -5042,81 +3894,40 @@ const deserializeAws_restJson1ListLaunchProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamingImagesCommand = async ( @@ -5149,81 +3960,40 @@ const deserializeAws_restJson1ListStreamingImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStreamingSessionsCommand = async ( @@ -5256,81 +4026,40 @@ const deserializeAws_restJson1ListStreamingSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStudioComponentsCommand = async ( @@ -5363,81 +4092,40 @@ const deserializeAws_restJson1ListStudioComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStudioMembersCommand = async ( @@ -5470,81 +4158,40 @@ const deserializeAws_restJson1ListStudioMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListStudiosCommand = async ( @@ -5577,81 +4224,40 @@ const deserializeAws_restJson1ListStudiosCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -5680,81 +4286,40 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutLaunchProfileMembersCommand = async ( @@ -5779,81 +4344,40 @@ const deserializeAws_restJson1PutLaunchProfileMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutStudioMembersCommand = async ( @@ -5878,81 +4402,40 @@ const deserializeAws_restJson1PutStudioMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartStreamingSessionCommand = async ( @@ -5981,81 +4464,40 @@ const deserializeAws_restJson1StartStreamingSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartStudioSSOConfigurationRepairCommand = async ( @@ -6084,81 +4526,40 @@ const deserializeAws_restJson1StartStudioSSOConfigurationRepairCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopStreamingSessionCommand = async ( @@ -6187,81 +4588,40 @@ const deserializeAws_restJson1StopStreamingSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -6286,81 +4646,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -6385,81 +4704,40 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLaunchProfileCommand = async ( @@ -6488,81 +4766,40 @@ const deserializeAws_restJson1UpdateLaunchProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLaunchProfileMemberCommand = async ( @@ -6591,81 +4828,40 @@ const deserializeAws_restJson1UpdateLaunchProfileMemberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStreamingImageCommand = async ( @@ -6694,81 +4890,40 @@ const deserializeAws_restJson1UpdateStreamingImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStudioCommand = async ( @@ -6797,81 +4952,40 @@ const deserializeAws_restJson1UpdateStudioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStudioComponentCommand = async ( @@ -6900,95 +5014,47 @@ const deserializeAws_restJson1UpdateStudioComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.nimble#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.nimble#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.nimble#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.nimble#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.nimble#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.nimble#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.nimble#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -6999,21 +5065,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -7024,22 +5087,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -7050,21 +5109,18 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -7075,21 +5131,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -7100,22 +5153,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -7126,21 +5175,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - context: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -7151,7 +5197,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ActiveDirectoryComputerAttribute = ( diff --git a/clients/client-opensearch/src/index.ts b/clients/client-opensearch/src/index.ts index e2458732f452f..65bdffc1f4600 100644 --- a/clients/client-opensearch/src/index.ts +++ b/clients/client-opensearch/src/index.ts @@ -3,3 +3,4 @@ export * from "./OpenSearchClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { OpenSearchServiceException } from "./models/OpenSearchServiceException"; diff --git a/clients/client-opensearch/src/models/OpenSearchServiceException.ts b/clients/client-opensearch/src/models/OpenSearchServiceException.ts new file mode 100644 index 0000000000000..f0d4e517521e0 --- /dev/null +++ b/clients/client-opensearch/src/models/OpenSearchServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from OpenSearch service. + */ +export class OpenSearchServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, OpenSearchServiceException.prototype); + } +} diff --git a/clients/client-opensearch/src/models/models_0.ts b/clients/client-opensearch/src/models/models_0.ts index b81b55d998df1..a77a1bd90bec1 100644 --- a/clients/client-opensearch/src/models/models_0.ts +++ b/clients/client-opensearch/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { OpenSearchServiceException as __BaseException } from "./OpenSearchServiceException"; /** *

Container for the parameters to the @@ -186,49 +188,77 @@ export namespace AcceptInboundConnectionResponse { /** *

An error occured because the client wanted to access a not supported operation. Gives http status code of 409.

*/ -export interface DisabledOperationException extends __SmithyException, $MetadataBearer { - name: "DisabledOperationException"; - $fault: "client"; +export class DisabledOperationException extends __BaseException { + readonly name: "DisabledOperationException" = "DisabledOperationException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DisabledOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DisabledOperationException.prototype); + } } /** *

An exception for trying to create more than allowed resources or sub-resources. Gives http status code of 409.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

An exception for accessing or deleting a resource that does not exist. Gives http status code of 400.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

An error occurred because user does not have permissions to access the resource. Returns HTTP status code 403.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum OptionState { @@ -433,37 +463,58 @@ export namespace AddTagsRequest { /** *

An error occurred while processing the request.

*/ -export interface BaseException extends __SmithyException, $MetadataBearer { - name: "BaseException"; - $fault: "client"; +export class BaseException extends __BaseException { + readonly name: "BaseException" = "BaseException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BaseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BaseException.prototype); + } } /** *

The request processing has failed because of an unknown error, exception or failure (the failure is internal to the service) . Gives http status code of 500.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + } } /** *

An exception for missing / invalid input fields. Gives http status code of 400.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -904,13 +955,20 @@ export namespace AssociatePackageResponse { /** *

An error occurred because the client attempts to remove a resource that is currently in use. Returns HTTP status code 409.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -2022,25 +2080,39 @@ export namespace CreateDomainResponse { /** *

An exception for trying to create or access sub-resource that is either invalid or not supported. Gives http status code of 409.

*/ -export interface InvalidTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidTypeException"; - $fault: "client"; +export class InvalidTypeException extends __BaseException { + readonly name: "InvalidTypeException" = "InvalidTypeException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTypeException.prototype); + } } /** *

An exception for creating a resource that already exists. Gives http status code of 400.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** @@ -3624,13 +3696,20 @@ export namespace DescribeInboundConnectionsResponse { /** *

The request processing has failed because of invalid pagination token provided by customer. Returns an HTTP status code of 400.

*/ -export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationTokenException"; - $fault: "client"; +export class InvalidPaginationTokenException extends __BaseException { + readonly name: "InvalidPaginationTokenException" = "InvalidPaginationTokenException"; + readonly $fault: "client" = "client"; /** - *

A description of the error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationTokenException.prototype); + } } /** diff --git a/clients/client-opensearch/src/protocols/Aws_restJson1.ts b/clients/client-opensearch/src/protocols/Aws_restJson1.ts index 04690636c84c8..3664625f53b9e 100644 --- a/clients/client-opensearch/src/protocols/Aws_restJson1.ts +++ b/clients/client-opensearch/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -213,6 +212,7 @@ import { VPCOptions, ZoneAwarenessConfig, } from "../models/models_0"; +import { OpenSearchServiceException as __BaseException } from "../models/OpenSearchServiceException"; export const serializeAws_restJson1AcceptInboundConnectionCommand = async ( input: AcceptInboundConnectionCommandInput, @@ -1565,49 +1565,28 @@ const deserializeAws_restJson1AcceptInboundConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddTagsCommand = async ( @@ -1632,57 +1611,31 @@ const deserializeAws_restJson1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociatePackageCommand = async ( @@ -1711,73 +1664,37 @@ const deserializeAws_restJson1AssociatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.opensearch#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelServiceSoftwareUpdateCommand = async ( @@ -1809,57 +1726,31 @@ const deserializeAws_restJson1CancelServiceSoftwareUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDomainCommand = async ( @@ -1888,81 +1779,40 @@ const deserializeAws_restJson1CreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.opensearch#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.opensearch#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateOutboundConnectionCommand = async ( @@ -2007,57 +1857,31 @@ const deserializeAws_restJson1CreateOutboundConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.opensearch#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePackageCommand = async ( @@ -2086,81 +1910,40 @@ const deserializeAws_restJson1CreatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.opensearch#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.opensearch#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDomainCommand = async ( @@ -2189,57 +1972,31 @@ const deserializeAws_restJson1DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInboundConnectionCommand = async ( @@ -2268,41 +2025,25 @@ const deserializeAws_restJson1DeleteInboundConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteOutboundConnectionCommand = async ( @@ -2331,41 +2072,25 @@ const deserializeAws_restJson1DeleteOutboundConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePackageCommand = async ( @@ -2394,73 +2119,37 @@ const deserializeAws_restJson1DeletePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.opensearch#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainCommand = async ( @@ -2489,57 +2178,31 @@ const deserializeAws_restJson1DescribeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainAutoTunesCommand = async ( @@ -2572,57 +2235,31 @@ const deserializeAws_restJson1DescribeDomainAutoTunesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainChangeProgressCommand = async ( @@ -2654,57 +2291,31 @@ const deserializeAws_restJson1DescribeDomainChangeProgressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainConfigCommand = async ( @@ -2733,57 +2344,31 @@ const deserializeAws_restJson1DescribeDomainConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainsCommand = async ( @@ -2812,49 +2397,28 @@ const deserializeAws_restJson1DescribeDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInboundConnectionsCommand = async ( @@ -2887,41 +2451,25 @@ const deserializeAws_restJson1DescribeInboundConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.opensearch#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeInstanceTypeLimitsCommand = async ( @@ -2950,73 +2498,37 @@ const deserializeAws_restJson1DescribeInstanceTypeLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.opensearch#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOutboundConnectionsCommand = async ( @@ -3049,41 +2561,25 @@ const deserializeAws_restJson1DescribeOutboundConnectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.opensearch#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPaginationTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackagesCommand = async ( @@ -3116,65 +2612,34 @@ const deserializeAws_restJson1DescribePackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReservedInstanceOfferingsCommand = async ( @@ -3210,57 +2675,31 @@ const deserializeAws_restJson1DescribeReservedInstanceOfferingsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeReservedInstancesCommand = async ( @@ -3293,57 +2732,31 @@ const deserializeAws_restJson1DescribeReservedInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DissociatePackageCommand = async ( @@ -3372,73 +2785,37 @@ const deserializeAws_restJson1DissociatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.opensearch#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCompatibleVersionsCommand = async ( @@ -3467,65 +2844,34 @@ const deserializeAws_restJson1GetCompatibleVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPackageVersionHistoryCommand = async ( @@ -3565,65 +2911,34 @@ const deserializeAws_restJson1GetPackageVersionHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUpgradeHistoryCommand = async ( @@ -3656,65 +2971,34 @@ const deserializeAws_restJson1GetUpgradeHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUpgradeStatusCommand = async ( @@ -3751,65 +3035,34 @@ const deserializeAws_restJson1GetUpgradeStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainNamesCommand = async ( @@ -3838,41 +3091,25 @@ const deserializeAws_restJson1ListDomainNamesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainsForPackageCommand = async ( @@ -3908,65 +3145,34 @@ const deserializeAws_restJson1ListDomainsForPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInstanceTypeDetailsCommand = async ( @@ -3999,57 +3205,31 @@ const deserializeAws_restJson1ListInstanceTypeDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackagesForDomainCommand = async ( @@ -4085,65 +3265,34 @@ const deserializeAws_restJson1ListPackagesForDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsCommand = async ( @@ -4172,57 +3321,31 @@ const deserializeAws_restJson1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListVersionsCommand = async ( @@ -4255,57 +3378,31 @@ const deserializeAws_restJson1ListVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PurchaseReservedInstanceOfferingCommand = async ( @@ -4338,73 +3435,37 @@ const deserializeAws_restJson1PurchaseReservedInstanceOfferingCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.opensearch#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectInboundConnectionCommand = async ( @@ -4433,41 +3494,25 @@ const deserializeAws_restJson1RejectInboundConnectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveTagsCommand = async ( @@ -4492,49 +3537,28 @@ const deserializeAws_restJson1RemoveTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartServiceSoftwareUpdateCommand = async ( @@ -4566,57 +3590,31 @@ const deserializeAws_restJson1StartServiceSoftwareUpdateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainConfigCommand = async ( @@ -4649,73 +3647,37 @@ const deserializeAws_restJson1UpdateDomainConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidTypeException": case "com.amazonaws.opensearch#InvalidTypeException": - response = { - ...(await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTypeExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePackageCommand = async ( @@ -4744,73 +3706,37 @@ const deserializeAws_restJson1UpdatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.opensearch#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opensearch#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpgradeDomainCommand = async ( @@ -4859,260 +3785,213 @@ const deserializeAws_restJson1UpgradeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BaseException": case "com.amazonaws.opensearch#BaseException": - response = { - ...(await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); case "DisabledOperationException": case "com.amazonaws.opensearch#DisabledOperationException": - response = { - ...(await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.opensearch#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.opensearch#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opensearch#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opensearch#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BaseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BaseException = { - name: "BaseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BaseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DisabledOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DisabledOperationException = { - name: "DisabledOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new DisabledOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalException = { - name: "InternalException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidPaginationTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidPaginationTokenException = { - name: "InvalidPaginationTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidPaginationTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTypeException = { - name: "InvalidTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdvancedOptions = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-opsworks/src/index.ts b/clients/client-opsworks/src/index.ts index 4988f10eb74d9..1944c792ec784 100644 --- a/clients/client-opsworks/src/index.ts +++ b/clients/client-opsworks/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { OpsWorksServiceException } from "./models/OpsWorksServiceException"; diff --git a/clients/client-opsworks/src/models/OpsWorksServiceException.ts b/clients/client-opsworks/src/models/OpsWorksServiceException.ts new file mode 100644 index 0000000000000..114f0f992bf93 --- /dev/null +++ b/clients/client-opsworks/src/models/OpsWorksServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from OpsWorks service. + */ +export class OpsWorksServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, OpsWorksServiceException.prototype); + } +} diff --git a/clients/client-opsworks/src/models/models_0.ts b/clients/client-opsworks/src/models/models_0.ts index 27f156ddca2d5..0b0bf1592f922 100644 --- a/clients/client-opsworks/src/models/models_0.ts +++ b/clients/client-opsworks/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { OpsWorksServiceException as __BaseException } from "./OpsWorksServiceException"; /** *

Describes the configuration manager.

@@ -331,25 +334,39 @@ export namespace AssignInstanceRequest { /** *

Indicates that a resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

Indicates that a request was not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** - *

The exception message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface AssignVolumeRequest { diff --git a/clients/client-opsworks/src/protocols/Aws_json1_1.ts b/clients/client-opsworks/src/protocols/Aws_json1_1.ts index f360f1684ab58..73ee2c6328770 100644 --- a/clients/client-opsworks/src/protocols/Aws_json1_1.ts +++ b/clients/client-opsworks/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectString as __expectString, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssignInstanceCommandInput, AssignInstanceCommandOutput } from "../commands/AssignInstanceCommand"; @@ -325,6 +324,7 @@ import { VolumeConfiguration, WeeklyAutoScalingSchedule, } from "../models/models_0"; +import { OpsWorksServiceException as __BaseException } from "../models/OpsWorksServiceException"; export const serializeAws_json1_1AssignInstanceCommand = async ( input: AssignInstanceCommandInput, @@ -1308,41 +1308,25 @@ const deserializeAws_json1_1AssignInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssignVolumeCommand = async ( @@ -1367,41 +1351,25 @@ const deserializeAws_json1_1AssignVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateElasticIpCommand = async ( @@ -1426,41 +1394,25 @@ const deserializeAws_json1_1AssociateElasticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachElasticLoadBalancerCommand = async ( @@ -1485,41 +1437,25 @@ const deserializeAws_json1_1AttachElasticLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CloneStackCommand = async ( @@ -1547,41 +1483,25 @@ const deserializeAws_json1_1CloneStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAppCommand = async ( @@ -1609,41 +1529,25 @@ const deserializeAws_json1_1CreateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDeploymentCommand = async ( @@ -1671,41 +1575,25 @@ const deserializeAws_json1_1CreateDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInstanceCommand = async ( @@ -1733,41 +1621,25 @@ const deserializeAws_json1_1CreateInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLayerCommand = async ( @@ -1795,41 +1667,25 @@ const deserializeAws_json1_1CreateLayerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStackCommand = async ( @@ -1857,33 +1713,22 @@ const deserializeAws_json1_1CreateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserProfileCommand = async ( @@ -1911,33 +1756,22 @@ const deserializeAws_json1_1CreateUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppCommand = async ( @@ -1962,41 +1796,25 @@ const deserializeAws_json1_1DeleteAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInstanceCommand = async ( @@ -2021,41 +1839,25 @@ const deserializeAws_json1_1DeleteInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLayerCommand = async ( @@ -2080,41 +1882,25 @@ const deserializeAws_json1_1DeleteLayerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStackCommand = async ( @@ -2139,41 +1925,25 @@ const deserializeAws_json1_1DeleteStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserProfileCommand = async ( @@ -2198,41 +1968,25 @@ const deserializeAws_json1_1DeleteUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterEcsClusterCommand = async ( @@ -2257,41 +2011,25 @@ const deserializeAws_json1_1DeregisterEcsClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterElasticIpCommand = async ( @@ -2316,41 +2054,25 @@ const deserializeAws_json1_1DeregisterElasticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterInstanceCommand = async ( @@ -2375,41 +2097,25 @@ const deserializeAws_json1_1DeregisterInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterRdsDbInstanceCommand = async ( @@ -2434,41 +2140,25 @@ const deserializeAws_json1_1DeregisterRdsDbInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterVolumeCommand = async ( @@ -2493,41 +2183,25 @@ const deserializeAws_json1_1DeregisterVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAgentVersionsCommand = async ( @@ -2555,41 +2229,25 @@ const deserializeAws_json1_1DescribeAgentVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAppsCommand = async ( @@ -2617,41 +2275,25 @@ const deserializeAws_json1_1DescribeAppsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCommandsCommand = async ( @@ -2679,41 +2321,25 @@ const deserializeAws_json1_1DescribeCommandsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDeploymentsCommand = async ( @@ -2741,41 +2367,25 @@ const deserializeAws_json1_1DescribeDeploymentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEcsClustersCommand = async ( @@ -2803,41 +2413,25 @@ const deserializeAws_json1_1DescribeEcsClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeElasticIpsCommand = async ( @@ -2865,41 +2459,25 @@ const deserializeAws_json1_1DescribeElasticIpsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeElasticLoadBalancersCommand = async ( @@ -2927,41 +2505,25 @@ const deserializeAws_json1_1DescribeElasticLoadBalancersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstancesCommand = async ( @@ -2989,41 +2551,25 @@ const deserializeAws_json1_1DescribeInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLayersCommand = async ( @@ -3051,41 +2597,25 @@ const deserializeAws_json1_1DescribeLayersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLoadBasedAutoScalingCommand = async ( @@ -3113,41 +2643,25 @@ const deserializeAws_json1_1DescribeLoadBasedAutoScalingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMyUserProfileCommand = async ( @@ -3175,25 +2689,19 @@ const deserializeAws_json1_1DescribeMyUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOperatingSystemsCommand = async ( @@ -3221,25 +2729,19 @@ const deserializeAws_json1_1DescribeOperatingSystemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePermissionsCommand = async ( @@ -3267,41 +2769,25 @@ const deserializeAws_json1_1DescribePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRaidArraysCommand = async ( @@ -3329,41 +2815,25 @@ const deserializeAws_json1_1DescribeRaidArraysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRdsDbInstancesCommand = async ( @@ -3391,41 +2861,25 @@ const deserializeAws_json1_1DescribeRdsDbInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServiceErrorsCommand = async ( @@ -3453,41 +2907,25 @@ const deserializeAws_json1_1DescribeServiceErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStackProvisioningParametersCommand = async ( @@ -3515,41 +2953,25 @@ const deserializeAws_json1_1DescribeStackProvisioningParametersCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStacksCommand = async ( @@ -3577,41 +2999,25 @@ const deserializeAws_json1_1DescribeStacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStackSummaryCommand = async ( @@ -3639,41 +3045,25 @@ const deserializeAws_json1_1DescribeStackSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTimeBasedAutoScalingCommand = async ( @@ -3701,41 +3091,25 @@ const deserializeAws_json1_1DescribeTimeBasedAutoScalingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserProfilesCommand = async ( @@ -3763,41 +3137,25 @@ const deserializeAws_json1_1DescribeUserProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVolumesCommand = async ( @@ -3825,41 +3183,25 @@ const deserializeAws_json1_1DescribeVolumesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachElasticLoadBalancerCommand = async ( @@ -3884,33 +3226,22 @@ const deserializeAws_json1_1DetachElasticLoadBalancerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateElasticIpCommand = async ( @@ -3935,41 +3266,25 @@ const deserializeAws_json1_1DisassociateElasticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetHostnameSuggestionCommand = async ( @@ -3997,41 +3312,25 @@ const deserializeAws_json1_1GetHostnameSuggestionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GrantAccessCommand = async ( @@ -4059,41 +3358,25 @@ const deserializeAws_json1_1GrantAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -4121,41 +3404,25 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebootInstanceCommand = async ( @@ -4180,41 +3447,25 @@ const deserializeAws_json1_1RebootInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterEcsClusterCommand = async ( @@ -4242,41 +3493,25 @@ const deserializeAws_json1_1RegisterEcsClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterElasticIpCommand = async ( @@ -4304,41 +3539,25 @@ const deserializeAws_json1_1RegisterElasticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterInstanceCommand = async ( @@ -4366,41 +3585,25 @@ const deserializeAws_json1_1RegisterInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterRdsDbInstanceCommand = async ( @@ -4425,41 +3628,25 @@ const deserializeAws_json1_1RegisterRdsDbInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterVolumeCommand = async ( @@ -4487,41 +3674,25 @@ const deserializeAws_json1_1RegisterVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetLoadBasedAutoScalingCommand = async ( @@ -4546,41 +3717,25 @@ const deserializeAws_json1_1SetLoadBasedAutoScalingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetPermissionCommand = async ( @@ -4605,41 +3760,25 @@ const deserializeAws_json1_1SetPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetTimeBasedAutoScalingCommand = async ( @@ -4664,41 +3803,25 @@ const deserializeAws_json1_1SetTimeBasedAutoScalingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartInstanceCommand = async ( @@ -4723,41 +3846,25 @@ const deserializeAws_json1_1StartInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartStackCommand = async ( @@ -4782,41 +3889,25 @@ const deserializeAws_json1_1StartStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopInstanceCommand = async ( @@ -4841,41 +3932,25 @@ const deserializeAws_json1_1StopInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopStackCommand = async ( @@ -4900,41 +3975,25 @@ const deserializeAws_json1_1StopStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4959,41 +4018,25 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnassignInstanceCommand = async ( @@ -5018,41 +4061,25 @@ const deserializeAws_json1_1UnassignInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnassignVolumeCommand = async ( @@ -5077,41 +4104,25 @@ const deserializeAws_json1_1UnassignVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -5136,41 +4147,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAppCommand = async ( @@ -5195,41 +4190,25 @@ const deserializeAws_json1_1UpdateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateElasticIpCommand = async ( @@ -5254,41 +4233,25 @@ const deserializeAws_json1_1UpdateElasticIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateInstanceCommand = async ( @@ -5313,41 +4276,25 @@ const deserializeAws_json1_1UpdateInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLayerCommand = async ( @@ -5372,41 +4319,25 @@ const deserializeAws_json1_1UpdateLayerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMyUserProfileCommand = async ( @@ -5431,33 +4362,22 @@ const deserializeAws_json1_1UpdateMyUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRdsDbInstanceCommand = async ( @@ -5482,41 +4402,25 @@ const deserializeAws_json1_1UpdateRdsDbInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateStackCommand = async ( @@ -5541,41 +4445,25 @@ const deserializeAws_json1_1UpdateStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserProfileCommand = async ( @@ -5600,41 +4488,25 @@ const deserializeAws_json1_1UpdateUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVolumeCommand = async ( @@ -5659,41 +4531,25 @@ const deserializeAws_json1_1UpdateVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworks#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworks#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -5702,13 +4558,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -5717,13 +4571,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AppAttributes = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-opsworkscm/src/index.ts b/clients/client-opsworkscm/src/index.ts index 8f4e9584db7b3..0dd967aa0deb2 100644 --- a/clients/client-opsworkscm/src/index.ts +++ b/clients/client-opsworkscm/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { OpsWorksCMServiceException } from "./models/OpsWorksCMServiceException"; diff --git a/clients/client-opsworkscm/src/models/OpsWorksCMServiceException.ts b/clients/client-opsworkscm/src/models/OpsWorksCMServiceException.ts new file mode 100644 index 0000000000000..9494b80dc9455 --- /dev/null +++ b/clients/client-opsworkscm/src/models/OpsWorksCMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from OpsWorksCM service. + */ +export class OpsWorksCMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, OpsWorksCMServiceException.prototype); + } +} diff --git a/clients/client-opsworkscm/src/models/models_0.ts b/clients/client-opsworkscm/src/models/models_0.ts index 15a73b33b0d11..990884ccf309d 100644 --- a/clients/client-opsworkscm/src/models/models_0.ts +++ b/clients/client-opsworkscm/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { OpsWorksCMServiceException as __BaseException } from "./OpsWorksCMServiceException"; /** *

Stores account attributes. @@ -158,43 +160,79 @@ export namespace AssociateNodeResponse { *

The resource is in a state that does not allow you to perform a specified action. *

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; /** *

Error or informational message that provides more detail if a resource is * in a state that is not valid for performing a specified action. *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource does not exist, or access was denied. *

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Error or informational message that can contain more detail about problems locating or accessing a resource. *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

One or more of the provided request parameters are not valid. *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

Error or informational message that can contain more detail about a validation failure. *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum BackupType { @@ -493,14 +531,26 @@ export namespace CreateBackupResponse { *

The limit of servers or backups has been reached. *

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; /** *

Error or informational message that the maximum allowed number of servers or backups has been exceeded. *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface CreateServerRequest { @@ -1043,14 +1093,26 @@ export namespace CreateServerResponse { *

The requested resource cannot be created because it already exists. *

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Error or informational message in response to a CreateServer request that a resource cannot be created because it already exists. *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface DeleteBackupRequest { @@ -1197,14 +1259,26 @@ export namespace DescribeBackupsResponse { *

This occurs when the provided nextToken is not valid. *

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; /** *

Error or informational message that can contain more detail about a nextToken failure. *

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface DescribeEventsRequest { diff --git a/clients/client-opsworkscm/src/protocols/Aws_json1_1.ts b/clients/client-opsworkscm/src/protocols/Aws_json1_1.ts index c3f70ac8b722e..acf807b8865ed 100644 --- a/clients/client-opsworkscm/src/protocols/Aws_json1_1.ts +++ b/clients/client-opsworkscm/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssociateNodeCommandInput, AssociateNodeCommandOutput } from "../commands/AssociateNodeCommand"; @@ -102,6 +101,7 @@ import { UpdateServerResponse, ValidationException, } from "../models/models_0"; +import { OpsWorksCMServiceException as __BaseException } from "../models/OpsWorksCMServiceException"; export const serializeAws_json1_1AssociateNodeCommand = async ( input: AssociateNodeCommandInput, @@ -375,49 +375,28 @@ const deserializeAws_json1_1AssociateNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBackupCommand = async ( @@ -445,57 +424,31 @@ const deserializeAws_json1_1CreateBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.opsworkscm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateServerCommand = async ( @@ -523,57 +476,31 @@ const deserializeAws_json1_1CreateServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededException": case "com.amazonaws.opsworkscm#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.opsworkscm#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBackupCommand = async ( @@ -601,49 +528,28 @@ const deserializeAws_json1_1DeleteBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServerCommand = async ( @@ -671,49 +577,28 @@ const deserializeAws_json1_1DeleteServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountAttributesCommand = async ( @@ -741,25 +626,19 @@ const deserializeAws_json1_1DescribeAccountAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBackupsCommand = async ( @@ -787,49 +666,28 @@ const deserializeAws_json1_1DescribeBackupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.opsworkscm#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventsCommand = async ( @@ -857,49 +715,28 @@ const deserializeAws_json1_1DescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.opsworkscm#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNodeAssociationStatusCommand = async ( @@ -927,41 +764,25 @@ const deserializeAws_json1_1DescribeNodeAssociationStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServersCommand = async ( @@ -989,49 +810,28 @@ const deserializeAws_json1_1DescribeServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.opsworkscm#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateNodeCommand = async ( @@ -1059,49 +859,28 @@ const deserializeAws_json1_1DisassociateNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExportServerEngineAttributeCommand = async ( @@ -1129,49 +908,28 @@ const deserializeAws_json1_1ExportServerEngineAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1199,41 +957,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreServerCommand = async ( @@ -1261,49 +1003,28 @@ const deserializeAws_json1_1RestoreServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMaintenanceCommand = async ( @@ -1331,49 +1052,28 @@ const deserializeAws_json1_1StartMaintenanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1401,49 +1101,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1471,49 +1150,28 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServerCommand = async ( @@ -1541,49 +1199,28 @@ const deserializeAws_json1_1UpdateServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServerEngineAttributesCommand = async ( @@ -1611,49 +1248,28 @@ const deserializeAws_json1_1UpdateServerEngineAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.opsworkscm#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.opsworkscm#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.opsworkscm#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -1662,13 +1278,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -1677,13 +1291,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1692,13 +1304,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -1707,13 +1317,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -1722,13 +1330,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -1737,13 +1343,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateNodeRequest = (input: AssociateNodeRequest, context: __SerdeContext): any => { diff --git a/clients/client-organizations/src/index.ts b/clients/client-organizations/src/index.ts index 8b114e1e67589..e5877766141bf 100644 --- a/clients/client-organizations/src/index.ts +++ b/clients/client-organizations/src/index.ts @@ -3,3 +3,4 @@ export * from "./OrganizationsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { OrganizationsServiceException } from "./models/OrganizationsServiceException"; diff --git a/clients/client-organizations/src/models/OrganizationsServiceException.ts b/clients/client-organizations/src/models/OrganizationsServiceException.ts new file mode 100644 index 0000000000000..3d8d42203b797 --- /dev/null +++ b/clients/client-organizations/src/models/OrganizationsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Organizations service. + */ +export class OrganizationsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, OrganizationsServiceException.prototype); + } +} diff --git a/clients/client-organizations/src/models/models_0.ts b/clients/client-organizations/src/models/models_0.ts index ab1e59c7c0f90..1b65fcfaf90e4 100644 --- a/clients/client-organizations/src/models/models_0.ts +++ b/clients/client-organizations/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { OrganizationsServiceException as __BaseException } from "./OrganizationsServiceException"; export interface AcceptHandshakeRequest { /** @@ -86,10 +88,22 @@ export enum HandshakeState { * IAM User Guide. *

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum AccessDeniedForDependencyExceptionReason { @@ -102,41 +116,90 @@ export enum AccessDeniedForDependencyExceptionReason { * organizations.amazonaws.com permission so that AWS Organizations can create the * required service-linked role. You don't have that permission.

*/ -export interface AccessDeniedForDependencyException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedForDependencyException"; - $fault: "client"; +export class AccessDeniedForDependencyException extends __BaseException { + readonly name: "AccessDeniedForDependencyException" = "AccessDeniedForDependencyException"; + readonly $fault: "client" = "client"; Message?: string; Reason?: AccessDeniedForDependencyExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedForDependencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedForDependencyException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } /** *

Your account isn't a member of an organization. To make this request, you must use the * credentials of an account that belongs to an organization.

*/ -export interface AWSOrganizationsNotInUseException extends __SmithyException, $MetadataBearer { - name: "AWSOrganizationsNotInUseException"; - $fault: "client"; +export class AWSOrganizationsNotInUseException extends __BaseException { + readonly name: "AWSOrganizationsNotInUseException" = "AWSOrganizationsNotInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AWSOrganizationsNotInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AWSOrganizationsNotInUseException.prototype); + this.Message = opts.Message; + } } /** *

The target of the operation is currently being modified by a different request. Try * again later.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** *

The specified handshake is already in the requested state. For example, you can't * accept a handshake that was already accepted.

*/ -export interface HandshakeAlreadyInStateException extends __SmithyException, $MetadataBearer { - name: "HandshakeAlreadyInStateException"; - $fault: "client"; +export class HandshakeAlreadyInStateException extends __BaseException { + readonly name: "HandshakeAlreadyInStateException" = "HandshakeAlreadyInStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HandshakeAlreadyInStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HandshakeAlreadyInStateException.prototype); + this.Message = opts.Message; + } } export enum HandshakeConstraintViolationExceptionReason { @@ -211,20 +274,45 @@ export enum HandshakeConstraintViolationExceptionReason { * * */ -export interface HandshakeConstraintViolationException extends __SmithyException, $MetadataBearer { - name: "HandshakeConstraintViolationException"; - $fault: "client"; +export class HandshakeConstraintViolationException extends __BaseException { + readonly name: "HandshakeConstraintViolationException" = "HandshakeConstraintViolationException"; + readonly $fault: "client" = "client"; Message?: string; Reason?: HandshakeConstraintViolationExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HandshakeConstraintViolationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HandshakeConstraintViolationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } /** *

We can't find a handshake with the HandshakeId that you specified.

*/ -export interface HandshakeNotFoundException extends __SmithyException, $MetadataBearer { - name: "HandshakeNotFoundException"; - $fault: "client"; +export class HandshakeNotFoundException extends __BaseException { + readonly name: "HandshakeNotFoundException" = "HandshakeNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HandshakeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HandshakeNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -232,10 +320,22 @@ export interface HandshakeNotFoundException extends __SmithyException, $Metadata * you can't cancel a handshake that was already accepted or accept a handshake that was * already declined.

*/ -export interface InvalidHandshakeTransitionException extends __SmithyException, $MetadataBearer { - name: "InvalidHandshakeTransitionException"; - $fault: "client"; +export class InvalidHandshakeTransitionException extends __BaseException { + readonly name: "InvalidHandshakeTransitionException" = "InvalidHandshakeTransitionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidHandshakeTransitionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidHandshakeTransitionException.prototype); + this.Message = opts.Message; + } } export enum InvalidInputExceptionReason { @@ -369,21 +469,46 @@ export enum InvalidInputExceptionReason { * * */ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; Reason?: InvalidInputExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } /** *

AWS Organizations can't complete your request because of an internal service error. Try again * later.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + this.Message = opts.Message; + } } /** @@ -393,11 +518,24 @@ export interface ServiceException extends __SmithyException, $MetadataBearer { * AWS Organizations User Guide. *

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Type?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Type = opts.Type; + this.Message = opts.Message; + } } export enum AccountJoinedMethod { @@ -475,10 +613,22 @@ export namespace Account { *

The specified account is already a delegated administrator for this AWS * service.

*/ -export interface AccountAlreadyRegisteredException extends __SmithyException, $MetadataBearer { - name: "AccountAlreadyRegisteredException"; - $fault: "client"; +export class AccountAlreadyRegisteredException extends __BaseException { + readonly name: "AccountAlreadyRegisteredException" = "AccountAlreadyRegisteredException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountAlreadyRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountAlreadyRegisteredException.prototype); + this.Message = opts.Message; + } } /** @@ -486,19 +636,43 @@ export interface AccountAlreadyRegisteredException extends __SmithyException, $M * the account whose credentials you used to make this request isn't a member of an * organization.

*/ -export interface AccountNotFoundException extends __SmithyException, $MetadataBearer { - name: "AccountNotFoundException"; - $fault: "client"; +export class AccountNotFoundException extends __BaseException { + readonly name: "AccountNotFoundException" = "AccountNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The specified account is not a delegated administrator for this AWS service.

*/ -export interface AccountNotRegisteredException extends __SmithyException, $MetadataBearer { - name: "AccountNotRegisteredException"; - $fault: "client"; +export class AccountNotRegisteredException extends __BaseException { + readonly name: "AccountNotRegisteredException" = "AccountNotRegisteredException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountNotRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountNotRegisteredException.prototype); + this.Message = opts.Message; + } } /** @@ -508,20 +682,44 @@ export interface AccountNotRegisteredException extends __SmithyException, $Metad * Address Verification in the AWS Organizations User Guide. *

*/ -export interface AccountOwnerNotVerifiedException extends __SmithyException, $MetadataBearer { - name: "AccountOwnerNotVerifiedException"; - $fault: "client"; +export class AccountOwnerNotVerifiedException extends __BaseException { + readonly name: "AccountOwnerNotVerifiedException" = "AccountOwnerNotVerifiedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountOwnerNotVerifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountOwnerNotVerifiedException.prototype); + this.Message = opts.Message; + } } /** *

This account is already a member of an organization. An account can belong to only one * organization at a time.

*/ -export interface AlreadyInOrganizationException extends __SmithyException, $MetadataBearer { - name: "AlreadyInOrganizationException"; - $fault: "client"; +export class AlreadyInOrganizationException extends __BaseException { + readonly name: "AlreadyInOrganizationException" = "AlreadyInOrganizationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyInOrganizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyInOrganizationException.prototype); + this.Message = opts.Message; + } } export interface AttachPolicyRequest { @@ -771,39 +969,88 @@ export enum ConstraintViolationExceptionReason { * * */ -export interface ConstraintViolationException extends __SmithyException, $MetadataBearer { - name: "ConstraintViolationException"; - $fault: "client"; +export class ConstraintViolationException extends __BaseException { + readonly name: "ConstraintViolationException" = "ConstraintViolationException"; + readonly $fault: "client" = "client"; Message?: string; Reason?: ConstraintViolationExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConstraintViolationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConstraintViolationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } /** *

The selected policy is already attached to the specified target.

*/ -export interface DuplicatePolicyAttachmentException extends __SmithyException, $MetadataBearer { - name: "DuplicatePolicyAttachmentException"; - $fault: "client"; +export class DuplicatePolicyAttachmentException extends __BaseException { + readonly name: "DuplicatePolicyAttachmentException" = "DuplicatePolicyAttachmentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicatePolicyAttachmentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicatePolicyAttachmentException.prototype); + this.Message = opts.Message; + } } /** *

Changes to the effective policy are in progress, and its contents can't be returned. * Try the operation again later.

*/ -export interface PolicyChangesInProgressException extends __SmithyException, $MetadataBearer { - name: "PolicyChangesInProgressException"; - $fault: "client"; +export class PolicyChangesInProgressException extends __BaseException { + readonly name: "PolicyChangesInProgressException" = "PolicyChangesInProgressException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyChangesInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyChangesInProgressException.prototype); + this.Message = opts.Message; + } } /** *

We can't find a policy with the PolicyId that you specified.

*/ -export interface PolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "PolicyNotFoundException"; - $fault: "client"; +export class PolicyNotFoundException extends __BaseException { + readonly name: "PolicyNotFoundException" = "PolicyNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -813,29 +1060,65 @@ export interface PolicyNotFoundException extends __SmithyException, $MetadataBea * in Your Organization in the AWS Organizations User Guide. *

*/ -export interface PolicyTypeNotEnabledException extends __SmithyException, $MetadataBearer { - name: "PolicyTypeNotEnabledException"; - $fault: "client"; +export class PolicyTypeNotEnabledException extends __BaseException { + readonly name: "PolicyTypeNotEnabledException" = "PolicyTypeNotEnabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyTypeNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyTypeNotEnabledException.prototype); + this.Message = opts.Message; + } } /** *

We can't find a root, OU, account, or policy with the TargetId that you * specified.

*/ -export interface TargetNotFoundException extends __SmithyException, $MetadataBearer { - name: "TargetNotFoundException"; - $fault: "client"; +export class TargetNotFoundException extends __BaseException { + readonly name: "TargetNotFoundException" = "TargetNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

This action isn't available in the current AWS Region.

*/ -export interface UnsupportedAPIEndpointException extends __SmithyException, $MetadataBearer { - name: "UnsupportedAPIEndpointException"; - $fault: "client"; +export class UnsupportedAPIEndpointException extends __BaseException { + readonly name: "UnsupportedAPIEndpointException" = "UnsupportedAPIEndpointException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedAPIEndpointException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedAPIEndpointException.prototype); + this.Message = opts.Message; + } } export interface CancelHandshakeRequest { @@ -1158,10 +1441,22 @@ export namespace CreateAccountResponse { * continue to receive this error, contact AWS * Support.

*/ -export interface FinalizingOrganizationException extends __SmithyException, $MetadataBearer { - name: "FinalizingOrganizationException"; - $fault: "client"; +export class FinalizingOrganizationException extends __BaseException { + readonly name: "FinalizingOrganizationException" = "FinalizingOrganizationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FinalizingOrganizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FinalizingOrganizationException.prototype); + this.Message = opts.Message; + } } export interface CreateGovCloudAccountRequest { @@ -1542,19 +1837,43 @@ export namespace CreateOrganizationalUnitResponse { /** *

An OU with the same name already exists.

*/ -export interface DuplicateOrganizationalUnitException extends __SmithyException, $MetadataBearer { - name: "DuplicateOrganizationalUnitException"; - $fault: "client"; +export class DuplicateOrganizationalUnitException extends __BaseException { + readonly name: "DuplicateOrganizationalUnitException" = "DuplicateOrganizationalUnitException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateOrganizationalUnitException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateOrganizationalUnitException.prototype); + this.Message = opts.Message; + } } /** *

We can't find a root or OU with the ParentId that you specified.

*/ -export interface ParentNotFoundException extends __SmithyException, $MetadataBearer { - name: "ParentNotFoundException"; - $fault: "client"; +export class ParentNotFoundException extends __BaseException { + readonly name: "ParentNotFoundException" = "ParentNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParentNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParentNotFoundException.prototype); + this.Message = opts.Message; + } } export interface CreatePolicyRequest { @@ -1726,10 +2045,22 @@ export namespace CreatePolicyResponse { /** *

A policy with the same name already exists.

*/ -export interface DuplicatePolicyException extends __SmithyException, $MetadataBearer { - name: "DuplicatePolicyException"; - $fault: "client"; +export class DuplicatePolicyException extends __BaseException { + readonly name: "DuplicatePolicyException" = "DuplicatePolicyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicatePolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicatePolicyException.prototype); + this.Message = opts.Message; + } } /** @@ -1739,10 +2070,22 @@ export interface DuplicatePolicyException extends __SmithyException, $MetadataBe * Syntax in the AWS Organizations User Guide. *

*/ -export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer { - name: "MalformedPolicyDocumentException"; - $fault: "client"; +export class MalformedPolicyDocumentException extends __BaseException { + readonly name: "MalformedPolicyDocumentException" = "MalformedPolicyDocumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedPolicyDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype); + this.Message = opts.Message; + } } /** @@ -1752,10 +2095,22 @@ export interface MalformedPolicyDocumentException extends __SmithyException, $Me * AWS Organizations Policiesin the AWS Organizations User Guide. *

*/ -export interface PolicyTypeNotAvailableForOrganizationException extends __SmithyException, $MetadataBearer { - name: "PolicyTypeNotAvailableForOrganizationException"; - $fault: "client"; +export class PolicyTypeNotAvailableForOrganizationException extends __BaseException { + readonly name: "PolicyTypeNotAvailableForOrganizationException" = "PolicyTypeNotAvailableForOrganizationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyTypeNotAvailableForOrganizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyTypeNotAvailableForOrganizationException.prototype); + this.Message = opts.Message; + } } export interface DeclineHandshakeRequest { @@ -1781,10 +2136,22 @@ export namespace DeclineHandshakeRequest { *

The organization isn't empty. To delete an organization, you must first remove all * accounts except the management account, delete all OUs, and delete all policies.

*/ -export interface OrganizationNotEmptyException extends __SmithyException, $MetadataBearer { - name: "OrganizationNotEmptyException"; - $fault: "client"; +export class OrganizationNotEmptyException extends __BaseException { + readonly name: "OrganizationNotEmptyException" = "OrganizationNotEmptyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationNotEmptyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationNotEmptyException.prototype); + this.Message = opts.Message; + } } export interface DeleteOrganizationalUnitRequest { @@ -1812,20 +2179,44 @@ export namespace DeleteOrganizationalUnitRequest { *

The specified OU is not empty. Move all accounts to another root or to other OUs, * remove all child OUs, and try the operation again.

*/ -export interface OrganizationalUnitNotEmptyException extends __SmithyException, $MetadataBearer { - name: "OrganizationalUnitNotEmptyException"; - $fault: "client"; +export class OrganizationalUnitNotEmptyException extends __BaseException { + readonly name: "OrganizationalUnitNotEmptyException" = "OrganizationalUnitNotEmptyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationalUnitNotEmptyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationalUnitNotEmptyException.prototype); + this.Message = opts.Message; + } } /** *

We can't find an OU with the OrganizationalUnitId that you * specified.

*/ -export interface OrganizationalUnitNotFoundException extends __SmithyException, $MetadataBearer { - name: "OrganizationalUnitNotFoundException"; - $fault: "client"; +export class OrganizationalUnitNotFoundException extends __BaseException { + readonly name: "OrganizationalUnitNotFoundException" = "OrganizationalUnitNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationalUnitNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationalUnitNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeletePolicyRequest { @@ -1852,10 +2243,22 @@ export namespace DeletePolicyRequest { *

The policy is attached to one or more entities. You must detach it from all roots, * OUs, and accounts before performing this operation.

*/ -export interface PolicyInUseException extends __SmithyException, $MetadataBearer { - name: "PolicyInUseException"; - $fault: "client"; +export class PolicyInUseException extends __BaseException { + readonly name: "PolicyInUseException" = "PolicyInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyInUseException.prototype); + this.Message = opts.Message; + } } export interface DeregisterDelegatedAdministratorRequest { @@ -1925,10 +2328,22 @@ export namespace DescribeAccountResponse { *

We can't find an create account request with the CreateAccountRequestId * that you specified.

*/ -export interface CreateAccountStatusNotFoundException extends __SmithyException, $MetadataBearer { - name: "CreateAccountStatusNotFoundException"; - $fault: "client"; +export class CreateAccountStatusNotFoundException extends __BaseException { + readonly name: "CreateAccountStatusNotFoundException" = "CreateAccountStatusNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CreateAccountStatusNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CreateAccountStatusNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeCreateAccountStatusRequest { @@ -2075,10 +2490,22 @@ export namespace DescribeEffectivePolicyResponse { * this type. Contact the administrator of your organization about attaching a policy of * this type to the account.

*/ -export interface EffectivePolicyNotFoundException extends __SmithyException, $MetadataBearer { - name: "EffectivePolicyNotFoundException"; - $fault: "client"; +export class EffectivePolicyNotFoundException extends __BaseException { + readonly name: "EffectivePolicyNotFoundException" = "EffectivePolicyNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EffectivePolicyNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EffectivePolicyNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeHandshakeRequest { @@ -2249,10 +2676,22 @@ export namespace DetachPolicyRequest { /** *

The policy isn't attached to the specified target in the specified root.

*/ -export interface PolicyNotAttachedException extends __SmithyException, $MetadataBearer { - name: "PolicyNotAttachedException"; - $fault: "client"; +export class PolicyNotAttachedException extends __BaseException { + readonly name: "PolicyNotAttachedException" = "PolicyNotAttachedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyNotAttachedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyNotAttachedException.prototype); + this.Message = opts.Message; + } } export interface DisableAWSServiceAccessRequest { @@ -2390,10 +2829,22 @@ export namespace DisablePolicyTypeResponse { /** *

We can't find a root with the RootId that you specified.

*/ -export interface RootNotFoundException extends __SmithyException, $MetadataBearer { - name: "RootNotFoundException"; - $fault: "client"; +export class RootNotFoundException extends __BaseException { + readonly name: "RootNotFoundException" = "RootNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RootNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RootNotFoundException.prototype); + this.Message = opts.Message; + } } export interface EnableAllFeaturesRequest {} @@ -2492,10 +2943,22 @@ export namespace EnablePolicyTypeResponse { /** *

The specified policy type is already enabled in the specified root.

*/ -export interface PolicyTypeAlreadyEnabledException extends __SmithyException, $MetadataBearer { - name: "PolicyTypeAlreadyEnabledException"; - $fault: "client"; +export class PolicyTypeAlreadyEnabledException extends __BaseException { + readonly name: "PolicyTypeAlreadyEnabledException" = "PolicyTypeAlreadyEnabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PolicyTypeAlreadyEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PolicyTypeAlreadyEnabledException.prototype); + this.Message = opts.Message; + } } /** @@ -2505,10 +2968,22 @@ export interface PolicyTypeAlreadyEnabledException extends __SmithyException, $M * account, ensure that existing handshakes that might be considered duplicates are * canceled or declined.

*/ -export interface DuplicateHandshakeException extends __SmithyException, $MetadataBearer { - name: "DuplicateHandshakeException"; - $fault: "client"; +export class DuplicateHandshakeException extends __BaseException { + readonly name: "DuplicateHandshakeException" = "DuplicateHandshakeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateHandshakeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateHandshakeException.prototype); + this.Message = opts.Message; + } } export interface InviteAccountToOrganizationRequest { @@ -2582,10 +3057,22 @@ export namespace InviteAccountToOrganizationRequest { * account to become a member account in another organization, you must first delete the * current organization of the management account.

*/ -export interface MasterCannotLeaveOrganizationException extends __SmithyException, $MetadataBearer { - name: "MasterCannotLeaveOrganizationException"; - $fault: "client"; +export class MasterCannotLeaveOrganizationException extends __BaseException { + readonly name: "MasterCannotLeaveOrganizationException" = "MasterCannotLeaveOrganizationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MasterCannotLeaveOrganizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MasterCannotLeaveOrganizationException.prototype); + this.Message = opts.Message; + } } export interface ListAccountsRequest { @@ -3401,10 +3888,22 @@ export namespace ListOrganizationalUnitsForParentResponse { *

We can't find an organizational unit (OU) or AWS account with the * ChildId that you specified.

*/ -export interface ChildNotFoundException extends __SmithyException, $MetadataBearer { - name: "ChildNotFoundException"; - $fault: "client"; +export class ChildNotFoundException extends __BaseException { + readonly name: "ChildNotFoundException" = "ChildNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ChildNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ChildNotFoundException.prototype); + this.Message = opts.Message; + } } export interface ListParentsRequest { @@ -3984,19 +4483,43 @@ export namespace ListTargetsForPolicyResponse { *

We can't find the destination container (a root or OU) with the ParentId * that you specified.

*/ -export interface DestinationParentNotFoundException extends __SmithyException, $MetadataBearer { - name: "DestinationParentNotFoundException"; - $fault: "client"; +export class DestinationParentNotFoundException extends __BaseException { + readonly name: "DestinationParentNotFoundException" = "DestinationParentNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DestinationParentNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DestinationParentNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

That account is already present in the specified destination.

*/ -export interface DuplicateAccountException extends __SmithyException, $MetadataBearer { - name: "DuplicateAccountException"; - $fault: "client"; +export class DuplicateAccountException extends __BaseException { + readonly name: "DuplicateAccountException" = "DuplicateAccountException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateAccountException.prototype); + this.Message = opts.Message; + } } export interface MoveAccountRequest { @@ -4063,10 +4586,22 @@ export namespace MoveAccountRequest { *

We can't find a source root or OU with the ParentId that you * specified.

*/ -export interface SourceParentNotFoundException extends __SmithyException, $MetadataBearer { - name: "SourceParentNotFoundException"; - $fault: "client"; +export class SourceParentNotFoundException extends __BaseException { + readonly name: "SourceParentNotFoundException" = "SourceParentNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceParentNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceParentNotFoundException.prototype); + this.Message = opts.Message; + } } export interface RegisterDelegatedAdministratorRequest { diff --git a/clients/client-organizations/src/protocols/Aws_json1_1.ts b/clients/client-organizations/src/protocols/Aws_json1_1.ts index 1efb5f3d41ec4..f1c86821a411f 100644 --- a/clients/client-organizations/src/protocols/Aws_json1_1.ts +++ b/clients/client-organizations/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AcceptHandshakeCommandInput, AcceptHandshakeCommandOutput } from "../commands/AcceptHandshakeCommand"; @@ -293,6 +292,7 @@ import { UpdatePolicyRequest, UpdatePolicyResponse, } from "../models/models_0"; +import { OrganizationsServiceException as __BaseException } from "../models/OrganizationsServiceException"; export const serializeAws_json1_1AcceptHandshakeCommand = async ( input: AcceptHandshakeCommandInput, @@ -979,113 +979,52 @@ const deserializeAws_json1_1AcceptHandshakeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccessDeniedForDependencyException": case "com.amazonaws.organizations#AccessDeniedForDependencyException": - response = { - ...(await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "HandshakeAlreadyInStateException": case "com.amazonaws.organizations#HandshakeAlreadyInStateException": - response = { - ...(await deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse(parsedOutput, context); case "HandshakeConstraintViolationException": case "com.amazonaws.organizations#HandshakeConstraintViolationException": - response = { - ...(await deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse(parsedOutput, context); case "HandshakeNotFoundException": case "com.amazonaws.organizations#HandshakeNotFoundException": - response = { - ...(await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context); case "InvalidHandshakeTransitionException": case "com.amazonaws.organizations#InvalidHandshakeTransitionException": - response = { - ...(await deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachPolicyCommand = async ( @@ -1110,129 +1049,58 @@ const deserializeAws_json1_1AttachPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "DuplicatePolicyAttachmentException": case "com.amazonaws.organizations#DuplicatePolicyAttachmentException": - response = { - ...(await deserializeAws_json1_1DuplicatePolicyAttachmentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicatePolicyAttachmentExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyChangesInProgressException": case "com.amazonaws.organizations#PolicyChangesInProgressException": - response = { - ...(await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.organizations#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); case "PolicyTypeNotEnabledException": case "com.amazonaws.organizations#PolicyTypeNotEnabledException": - response = { - ...(await deserializeAws_json1_1PolicyTypeNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyTypeNotEnabledExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelHandshakeCommand = async ( @@ -1260,89 +1128,43 @@ const deserializeAws_json1_1CancelHandshakeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "HandshakeAlreadyInStateException": case "com.amazonaws.organizations#HandshakeAlreadyInStateException": - response = { - ...(await deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse(parsedOutput, context); case "HandshakeNotFoundException": case "com.amazonaws.organizations#HandshakeNotFoundException": - response = { - ...(await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context); case "InvalidHandshakeTransitionException": case "com.amazonaws.organizations#InvalidHandshakeTransitionException": - response = { - ...(await deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAccountCommand = async ( @@ -1370,97 +1192,46 @@ const deserializeAws_json1_1CreateAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "FinalizingOrganizationException": case "com.amazonaws.organizations#FinalizingOrganizationException": - response = { - ...(await deserializeAws_json1_1FinalizingOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FinalizingOrganizationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGovCloudAccountCommand = async ( @@ -1488,97 +1259,46 @@ const deserializeAws_json1_1CreateGovCloudAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "FinalizingOrganizationException": case "com.amazonaws.organizations#FinalizingOrganizationException": - response = { - ...(await deserializeAws_json1_1FinalizingOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FinalizingOrganizationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateOrganizationCommand = async ( @@ -1606,89 +1326,43 @@ const deserializeAws_json1_1CreateOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccessDeniedForDependencyException": case "com.amazonaws.organizations#AccessDeniedForDependencyException": - response = { - ...(await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context); case "AlreadyInOrganizationException": case "com.amazonaws.organizations#AlreadyInOrganizationException": - response = { - ...(await deserializeAws_json1_1AlreadyInOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyInOrganizationExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateOrganizationalUnitCommand = async ( @@ -1716,97 +1390,46 @@ const deserializeAws_json1_1CreateOrganizationalUnitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "DuplicateOrganizationalUnitException": case "com.amazonaws.organizations#DuplicateOrganizationalUnitException": - response = { - ...(await deserializeAws_json1_1DuplicateOrganizationalUnitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateOrganizationalUnitExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ParentNotFoundException": case "com.amazonaws.organizations#ParentNotFoundException": - response = { - ...(await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePolicyCommand = async ( @@ -1834,113 +1457,52 @@ const deserializeAws_json1_1CreatePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "DuplicatePolicyException": case "com.amazonaws.organizations#DuplicatePolicyException": - response = { - ...(await deserializeAws_json1_1DuplicatePolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicatePolicyExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.organizations#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PolicyTypeNotAvailableForOrganizationException": case "com.amazonaws.organizations#PolicyTypeNotAvailableForOrganizationException": - response = { - ...(await deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeclineHandshakeCommand = async ( @@ -1968,89 +1530,43 @@ const deserializeAws_json1_1DeclineHandshakeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "HandshakeAlreadyInStateException": case "com.amazonaws.organizations#HandshakeAlreadyInStateException": - response = { - ...(await deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse(parsedOutput, context); case "HandshakeNotFoundException": case "com.amazonaws.organizations#HandshakeNotFoundException": - response = { - ...(await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context); case "InvalidHandshakeTransitionException": case "com.amazonaws.organizations#InvalidHandshakeTransitionException": - response = { - ...(await deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOrganizationCommand = async ( @@ -2075,81 +1591,40 @@ const deserializeAws_json1_1DeleteOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OrganizationNotEmptyException": case "com.amazonaws.organizations#OrganizationNotEmptyException": - response = { - ...(await deserializeAws_json1_1OrganizationNotEmptyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotEmptyExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOrganizationalUnitCommand = async ( @@ -2174,89 +1649,43 @@ const deserializeAws_json1_1DeleteOrganizationalUnitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OrganizationalUnitNotEmptyException": case "com.amazonaws.organizations#OrganizationalUnitNotEmptyException": - response = { - ...(await deserializeAws_json1_1OrganizationalUnitNotEmptyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationalUnitNotEmptyExceptionResponse(parsedOutput, context); case "OrganizationalUnitNotFoundException": case "com.amazonaws.organizations#OrganizationalUnitNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePolicyCommand = async ( @@ -2281,97 +1710,46 @@ const deserializeAws_json1_1DeletePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyInUseException": case "com.amazonaws.organizations#PolicyInUseException": - response = { - ...(await deserializeAws_json1_1PolicyInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyInUseExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.organizations#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterDelegatedAdministratorCommand = async ( @@ -2396,105 +1774,49 @@ const deserializeAws_json1_1DeregisterDelegatedAdministratorCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AccountNotRegisteredException": case "com.amazonaws.organizations#AccountNotRegisteredException": - response = { - ...(await deserializeAws_json1_1AccountNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotRegisteredExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountCommand = async ( @@ -2522,73 +1844,37 @@ const deserializeAws_json1_1DescribeAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCreateAccountStatusCommand = async ( @@ -2616,81 +1902,40 @@ const deserializeAws_json1_1DescribeCreateAccountStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "CreateAccountStatusNotFoundException": case "com.amazonaws.organizations#CreateAccountStatusNotFoundException": - response = { - ...(await deserializeAws_json1_1CreateAccountStatusNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CreateAccountStatusNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEffectivePolicyCommand = async ( @@ -2718,97 +1963,46 @@ const deserializeAws_json1_1DescribeEffectivePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "EffectivePolicyNotFoundException": case "com.amazonaws.organizations#EffectivePolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1EffectivePolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EffectivePolicyNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHandshakeCommand = async ( @@ -2836,73 +2030,37 @@ const deserializeAws_json1_1DescribeHandshakeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "HandshakeNotFoundException": case "com.amazonaws.organizations#HandshakeNotFoundException": - response = { - ...(await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationCommand = async ( @@ -2930,65 +2088,34 @@ const deserializeAws_json1_1DescribeOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationalUnitCommand = async ( @@ -3016,73 +2143,37 @@ const deserializeAws_json1_1DescribeOrganizationalUnitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OrganizationalUnitNotFoundException": case "com.amazonaws.organizations#OrganizationalUnitNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePolicyCommand = async ( @@ -3110,81 +2201,40 @@ const deserializeAws_json1_1DescribePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.organizations#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachPolicyCommand = async ( @@ -3209,121 +2259,55 @@ const deserializeAws_json1_1DetachPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyChangesInProgressException": case "com.amazonaws.organizations#PolicyChangesInProgressException": - response = { - ...(await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context); case "PolicyNotAttachedException": case "com.amazonaws.organizations#PolicyNotAttachedException": - response = { - ...(await deserializeAws_json1_1PolicyNotAttachedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotAttachedExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.organizations#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableAWSServiceAccessCommand = async ( @@ -3348,89 +2332,43 @@ const deserializeAws_json1_1DisableAWSServiceAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisablePolicyTypeCommand = async ( @@ -3458,113 +2396,52 @@ const deserializeAws_json1_1DisablePolicyTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyChangesInProgressException": case "com.amazonaws.organizations#PolicyChangesInProgressException": - response = { - ...(await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context); case "PolicyTypeNotEnabledException": case "com.amazonaws.organizations#PolicyTypeNotEnabledException": - response = { - ...(await deserializeAws_json1_1PolicyTypeNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyTypeNotEnabledExceptionResponse(parsedOutput, context); case "RootNotFoundException": case "com.amazonaws.organizations#RootNotFoundException": - response = { - ...(await deserializeAws_json1_1RootNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RootNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableAllFeaturesCommand = async ( @@ -3592,81 +2469,40 @@ const deserializeAws_json1_1EnableAllFeaturesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "HandshakeConstraintViolationException": case "com.amazonaws.organizations#HandshakeConstraintViolationException": - response = { - ...(await deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableAWSServiceAccessCommand = async ( @@ -3691,89 +2527,43 @@ const deserializeAws_json1_1EnableAWSServiceAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnablePolicyTypeCommand = async ( @@ -3801,121 +2591,55 @@ const deserializeAws_json1_1EnablePolicyTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyChangesInProgressException": case "com.amazonaws.organizations#PolicyChangesInProgressException": - response = { - ...(await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context); case "PolicyTypeAlreadyEnabledException": case "com.amazonaws.organizations#PolicyTypeAlreadyEnabledException": - response = { - ...(await deserializeAws_json1_1PolicyTypeAlreadyEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyTypeAlreadyEnabledExceptionResponse(parsedOutput, context); case "PolicyTypeNotAvailableForOrganizationException": case "com.amazonaws.organizations#PolicyTypeNotAvailableForOrganizationException": - response = { - ...(await deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationExceptionResponse(parsedOutput, context); case "RootNotFoundException": case "com.amazonaws.organizations#RootNotFoundException": - response = { - ...(await deserializeAws_json1_1RootNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RootNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1InviteAccountToOrganizationCommand = async ( @@ -3943,113 +2667,52 @@ const deserializeAws_json1_1InviteAccountToOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountOwnerNotVerifiedException": case "com.amazonaws.organizations#AccountOwnerNotVerifiedException": - response = { - ...(await deserializeAws_json1_1AccountOwnerNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountOwnerNotVerifiedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "DuplicateHandshakeException": case "com.amazonaws.organizations#DuplicateHandshakeException": - response = { - ...(await deserializeAws_json1_1DuplicateHandshakeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateHandshakeExceptionResponse(parsedOutput, context); case "FinalizingOrganizationException": case "com.amazonaws.organizations#FinalizingOrganizationException": - response = { - ...(await deserializeAws_json1_1FinalizingOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FinalizingOrganizationExceptionResponse(parsedOutput, context); case "HandshakeConstraintViolationException": case "com.amazonaws.organizations#HandshakeConstraintViolationException": - response = { - ...(await deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1LeaveOrganizationCommand = async ( @@ -4074,97 +2737,46 @@ const deserializeAws_json1_1LeaveOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "MasterCannotLeaveOrganizationException": case "com.amazonaws.organizations#MasterCannotLeaveOrganizationException": - response = { - ...(await deserializeAws_json1_1MasterCannotLeaveOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MasterCannotLeaveOrganizationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountsCommand = async ( @@ -4192,65 +2804,34 @@ const deserializeAws_json1_1ListAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountsForParentCommand = async ( @@ -4278,73 +2859,37 @@ const deserializeAws_json1_1ListAccountsForParentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ParentNotFoundException": case "com.amazonaws.organizations#ParentNotFoundException": - response = { - ...(await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAWSServiceAccessForOrganizationCommand = async ( @@ -4372,81 +2917,40 @@ const deserializeAws_json1_1ListAWSServiceAccessForOrganizationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListChildrenCommand = async ( @@ -4474,73 +2978,37 @@ const deserializeAws_json1_1ListChildrenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ParentNotFoundException": case "com.amazonaws.organizations#ParentNotFoundException": - response = { - ...(await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCreateAccountStatusCommand = async ( @@ -4568,73 +3036,37 @@ const deserializeAws_json1_1ListCreateAccountStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDelegatedAdministratorsCommand = async ( @@ -4662,81 +3094,40 @@ const deserializeAws_json1_1ListDelegatedAdministratorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDelegatedServicesForAccountCommand = async ( @@ -4764,97 +3155,46 @@ const deserializeAws_json1_1ListDelegatedServicesForAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AccountNotRegisteredException": case "com.amazonaws.organizations#AccountNotRegisteredException": - response = { - ...(await deserializeAws_json1_1AccountNotRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotRegisteredExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHandshakesForAccountCommand = async ( @@ -4882,65 +3222,34 @@ const deserializeAws_json1_1ListHandshakesForAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHandshakesForOrganizationCommand = async ( @@ -4968,73 +3277,37 @@ const deserializeAws_json1_1ListHandshakesForOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOrganizationalUnitsForParentCommand = async ( @@ -5062,73 +3335,37 @@ const deserializeAws_json1_1ListOrganizationalUnitsForParentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ParentNotFoundException": case "com.amazonaws.organizations#ParentNotFoundException": - response = { - ...(await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParentNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListParentsCommand = async ( @@ -5156,73 +3393,37 @@ const deserializeAws_json1_1ListParentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ChildNotFoundException": case "com.amazonaws.organizations#ChildNotFoundException": - response = { - ...(await deserializeAws_json1_1ChildNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ChildNotFoundExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPoliciesCommand = async ( @@ -5250,73 +3451,37 @@ const deserializeAws_json1_1ListPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPoliciesForTargetCommand = async ( @@ -5344,81 +3509,40 @@ const deserializeAws_json1_1ListPoliciesForTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRootsCommand = async ( @@ -5446,65 +3570,34 @@ const deserializeAws_json1_1ListRootsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5532,73 +3625,37 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTargetsForPolicyCommand = async ( @@ -5626,81 +3683,40 @@ const deserializeAws_json1_1ListTargetsForPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.organizations#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MoveAccountCommand = async ( @@ -5725,105 +3741,49 @@ const deserializeAws_json1_1MoveAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "DestinationParentNotFoundException": case "com.amazonaws.organizations#DestinationParentNotFoundException": - response = { - ...(await deserializeAws_json1_1DestinationParentNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DestinationParentNotFoundExceptionResponse(parsedOutput, context); case "DuplicateAccountException": case "com.amazonaws.organizations#DuplicateAccountException": - response = { - ...(await deserializeAws_json1_1DuplicateAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateAccountExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "SourceParentNotFoundException": case "com.amazonaws.organizations#SourceParentNotFoundException": - response = { - ...(await deserializeAws_json1_1SourceParentNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SourceParentNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterDelegatedAdministratorCommand = async ( @@ -5848,105 +3808,49 @@ const deserializeAws_json1_1RegisterDelegatedAdministratorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountAlreadyRegisteredException": case "com.amazonaws.organizations#AccountAlreadyRegisteredException": - response = { - ...(await deserializeAws_json1_1AccountAlreadyRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountAlreadyRegisteredExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveAccountFromOrganizationCommand = async ( @@ -5971,97 +3875,46 @@ const deserializeAws_json1_1RemoveAccountFromOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AccountNotFoundException": case "com.amazonaws.organizations#AccountNotFoundException": - response = { - ...(await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccountNotFoundExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "MasterCannotLeaveOrganizationException": case "com.amazonaws.organizations#MasterCannotLeaveOrganizationException": - response = { - ...(await deserializeAws_json1_1MasterCannotLeaveOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MasterCannotLeaveOrganizationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6086,89 +3939,43 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6193,89 +4000,43 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TargetNotFoundException": case "com.amazonaws.organizations#TargetNotFoundException": - response = { - ...(await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateOrganizationalUnitCommand = async ( @@ -6303,89 +4064,43 @@ const deserializeAws_json1_1UpdateOrganizationalUnitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "DuplicateOrganizationalUnitException": case "com.amazonaws.organizations#DuplicateOrganizationalUnitException": - response = { - ...(await deserializeAws_json1_1DuplicateOrganizationalUnitExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateOrganizationalUnitExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "OrganizationalUnitNotFoundException": case "com.amazonaws.organizations#OrganizationalUnitNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePolicyCommand = async ( @@ -6413,121 +4128,55 @@ const deserializeAws_json1_1UpdatePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.organizations#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSOrganizationsNotInUseException": case "com.amazonaws.organizations#AWSOrganizationsNotInUseException": - response = { - ...(await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.organizations#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.organizations#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "DuplicatePolicyException": case "com.amazonaws.organizations#DuplicatePolicyException": - response = { - ...(await deserializeAws_json1_1DuplicatePolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicatePolicyExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.organizations#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.organizations#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PolicyChangesInProgressException": case "com.amazonaws.organizations#PolicyChangesInProgressException": - response = { - ...(await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyChangesInProgressExceptionResponse(parsedOutput, context); case "PolicyNotFoundException": case "com.amazonaws.organizations#PolicyNotFoundException": - response = { - ...(await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PolicyNotFoundExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.organizations#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.organizations#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedAPIEndpointException": case "com.amazonaws.organizations#UnsupportedAPIEndpointException": - response = { - ...(await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -6536,13 +4185,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse = async ( @@ -6551,13 +4198,11 @@ const deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedForDependencyException(body, context); - const contents: AccessDeniedForDependencyException = { - name: "AccessDeniedForDependencyException", - $fault: "client", + const exception = new AccessDeniedForDependencyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccountAlreadyRegisteredExceptionResponse = async ( @@ -6566,13 +4211,11 @@ const deserializeAws_json1_1AccountAlreadyRegisteredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccountAlreadyRegisteredException(body, context); - const contents: AccountAlreadyRegisteredException = { - name: "AccountAlreadyRegisteredException", - $fault: "client", + const exception = new AccountAlreadyRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccountNotFoundExceptionResponse = async ( @@ -6581,13 +4224,11 @@ const deserializeAws_json1_1AccountNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccountNotFoundException(body, context); - const contents: AccountNotFoundException = { - name: "AccountNotFoundException", - $fault: "client", + const exception = new AccountNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccountNotRegisteredExceptionResponse = async ( @@ -6596,13 +4237,11 @@ const deserializeAws_json1_1AccountNotRegisteredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccountNotRegisteredException(body, context); - const contents: AccountNotRegisteredException = { - name: "AccountNotRegisteredException", - $fault: "client", + const exception = new AccountNotRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccountOwnerNotVerifiedExceptionResponse = async ( @@ -6611,13 +4250,11 @@ const deserializeAws_json1_1AccountOwnerNotVerifiedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccountOwnerNotVerifiedException(body, context); - const contents: AccountOwnerNotVerifiedException = { - name: "AccountOwnerNotVerifiedException", - $fault: "client", + const exception = new AccountOwnerNotVerifiedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AlreadyInOrganizationExceptionResponse = async ( @@ -6626,13 +4263,11 @@ const deserializeAws_json1_1AlreadyInOrganizationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AlreadyInOrganizationException(body, context); - const contents: AlreadyInOrganizationException = { - name: "AlreadyInOrganizationException", - $fault: "client", + const exception = new AlreadyInOrganizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse = async ( @@ -6641,13 +4276,11 @@ const deserializeAws_json1_1AWSOrganizationsNotInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AWSOrganizationsNotInUseException(body, context); - const contents: AWSOrganizationsNotInUseException = { - name: "AWSOrganizationsNotInUseException", - $fault: "client", + const exception = new AWSOrganizationsNotInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ChildNotFoundExceptionResponse = async ( @@ -6656,13 +4289,11 @@ const deserializeAws_json1_1ChildNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ChildNotFoundException(body, context); - const contents: ChildNotFoundException = { - name: "ChildNotFoundException", - $fault: "client", + const exception = new ChildNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -6671,13 +4302,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConstraintViolationExceptionResponse = async ( @@ -6686,13 +4315,11 @@ const deserializeAws_json1_1ConstraintViolationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConstraintViolationException(body, context); - const contents: ConstraintViolationException = { - name: "ConstraintViolationException", - $fault: "client", + const exception = new ConstraintViolationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CreateAccountStatusNotFoundExceptionResponse = async ( @@ -6701,13 +4328,11 @@ const deserializeAws_json1_1CreateAccountStatusNotFoundExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CreateAccountStatusNotFoundException(body, context); - const contents: CreateAccountStatusNotFoundException = { - name: "CreateAccountStatusNotFoundException", - $fault: "client", + const exception = new CreateAccountStatusNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DestinationParentNotFoundExceptionResponse = async ( @@ -6716,13 +4341,11 @@ const deserializeAws_json1_1DestinationParentNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DestinationParentNotFoundException(body, context); - const contents: DestinationParentNotFoundException = { - name: "DestinationParentNotFoundException", - $fault: "client", + const exception = new DestinationParentNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateAccountExceptionResponse = async ( @@ -6731,13 +4354,11 @@ const deserializeAws_json1_1DuplicateAccountExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateAccountException(body, context); - const contents: DuplicateAccountException = { - name: "DuplicateAccountException", - $fault: "client", + const exception = new DuplicateAccountException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateHandshakeExceptionResponse = async ( @@ -6746,13 +4367,11 @@ const deserializeAws_json1_1DuplicateHandshakeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateHandshakeException(body, context); - const contents: DuplicateHandshakeException = { - name: "DuplicateHandshakeException", - $fault: "client", + const exception = new DuplicateHandshakeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateOrganizationalUnitExceptionResponse = async ( @@ -6761,13 +4380,11 @@ const deserializeAws_json1_1DuplicateOrganizationalUnitExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateOrganizationalUnitException(body, context); - const contents: DuplicateOrganizationalUnitException = { - name: "DuplicateOrganizationalUnitException", - $fault: "client", + const exception = new DuplicateOrganizationalUnitException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicatePolicyAttachmentExceptionResponse = async ( @@ -6776,13 +4393,11 @@ const deserializeAws_json1_1DuplicatePolicyAttachmentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicatePolicyAttachmentException(body, context); - const contents: DuplicatePolicyAttachmentException = { - name: "DuplicatePolicyAttachmentException", - $fault: "client", + const exception = new DuplicatePolicyAttachmentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicatePolicyExceptionResponse = async ( @@ -6791,13 +4406,11 @@ const deserializeAws_json1_1DuplicatePolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicatePolicyException(body, context); - const contents: DuplicatePolicyException = { - name: "DuplicatePolicyException", - $fault: "client", + const exception = new DuplicatePolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EffectivePolicyNotFoundExceptionResponse = async ( @@ -6806,13 +4419,11 @@ const deserializeAws_json1_1EffectivePolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EffectivePolicyNotFoundException(body, context); - const contents: EffectivePolicyNotFoundException = { - name: "EffectivePolicyNotFoundException", - $fault: "client", + const exception = new EffectivePolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FinalizingOrganizationExceptionResponse = async ( @@ -6821,13 +4432,11 @@ const deserializeAws_json1_1FinalizingOrganizationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FinalizingOrganizationException(body, context); - const contents: FinalizingOrganizationException = { - name: "FinalizingOrganizationException", - $fault: "client", + const exception = new FinalizingOrganizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse = async ( @@ -6836,13 +4445,11 @@ const deserializeAws_json1_1HandshakeAlreadyInStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HandshakeAlreadyInStateException(body, context); - const contents: HandshakeAlreadyInStateException = { - name: "HandshakeAlreadyInStateException", - $fault: "client", + const exception = new HandshakeAlreadyInStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse = async ( @@ -6851,13 +4458,11 @@ const deserializeAws_json1_1HandshakeConstraintViolationExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HandshakeConstraintViolationException(body, context); - const contents: HandshakeConstraintViolationException = { - name: "HandshakeConstraintViolationException", - $fault: "client", + const exception = new HandshakeConstraintViolationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HandshakeNotFoundExceptionResponse = async ( @@ -6866,13 +4471,11 @@ const deserializeAws_json1_1HandshakeNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HandshakeNotFoundException(body, context); - const contents: HandshakeNotFoundException = { - name: "HandshakeNotFoundException", - $fault: "client", + const exception = new HandshakeNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse = async ( @@ -6881,13 +4484,11 @@ const deserializeAws_json1_1InvalidHandshakeTransitionExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidHandshakeTransitionException(body, context); - const contents: InvalidHandshakeTransitionException = { - name: "InvalidHandshakeTransitionException", - $fault: "client", + const exception = new InvalidHandshakeTransitionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -6896,13 +4497,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse = async ( @@ -6911,13 +4510,11 @@ const deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MalformedPolicyDocumentException(body, context); - const contents: MalformedPolicyDocumentException = { - name: "MalformedPolicyDocumentException", - $fault: "client", + const exception = new MalformedPolicyDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MasterCannotLeaveOrganizationExceptionResponse = async ( @@ -6926,13 +4523,11 @@ const deserializeAws_json1_1MasterCannotLeaveOrganizationExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MasterCannotLeaveOrganizationException(body, context); - const contents: MasterCannotLeaveOrganizationException = { - name: "MasterCannotLeaveOrganizationException", - $fault: "client", + const exception = new MasterCannotLeaveOrganizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationalUnitNotEmptyExceptionResponse = async ( @@ -6941,13 +4536,11 @@ const deserializeAws_json1_1OrganizationalUnitNotEmptyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationalUnitNotEmptyException(body, context); - const contents: OrganizationalUnitNotEmptyException = { - name: "OrganizationalUnitNotEmptyException", - $fault: "client", + const exception = new OrganizationalUnitNotEmptyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse = async ( @@ -6956,13 +4549,11 @@ const deserializeAws_json1_1OrganizationalUnitNotFoundExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationalUnitNotFoundException(body, context); - const contents: OrganizationalUnitNotFoundException = { - name: "OrganizationalUnitNotFoundException", - $fault: "client", + const exception = new OrganizationalUnitNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationNotEmptyExceptionResponse = async ( @@ -6971,13 +4562,11 @@ const deserializeAws_json1_1OrganizationNotEmptyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationNotEmptyException(body, context); - const contents: OrganizationNotEmptyException = { - name: "OrganizationNotEmptyException", - $fault: "client", + const exception = new OrganizationNotEmptyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParentNotFoundExceptionResponse = async ( @@ -6986,13 +4575,11 @@ const deserializeAws_json1_1ParentNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParentNotFoundException(body, context); - const contents: ParentNotFoundException = { - name: "ParentNotFoundException", - $fault: "client", + const exception = new ParentNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyChangesInProgressExceptionResponse = async ( @@ -7001,13 +4588,11 @@ const deserializeAws_json1_1PolicyChangesInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyChangesInProgressException(body, context); - const contents: PolicyChangesInProgressException = { - name: "PolicyChangesInProgressException", - $fault: "client", + const exception = new PolicyChangesInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyInUseExceptionResponse = async ( @@ -7016,13 +4601,11 @@ const deserializeAws_json1_1PolicyInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyInUseException(body, context); - const contents: PolicyInUseException = { - name: "PolicyInUseException", - $fault: "client", + const exception = new PolicyInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyNotAttachedExceptionResponse = async ( @@ -7031,13 +4614,11 @@ const deserializeAws_json1_1PolicyNotAttachedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyNotAttachedException(body, context); - const contents: PolicyNotAttachedException = { - name: "PolicyNotAttachedException", - $fault: "client", + const exception = new PolicyNotAttachedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyNotFoundExceptionResponse = async ( @@ -7046,13 +4627,11 @@ const deserializeAws_json1_1PolicyNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyNotFoundException(body, context); - const contents: PolicyNotFoundException = { - name: "PolicyNotFoundException", - $fault: "client", + const exception = new PolicyNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyTypeAlreadyEnabledExceptionResponse = async ( @@ -7061,13 +4640,11 @@ const deserializeAws_json1_1PolicyTypeAlreadyEnabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyTypeAlreadyEnabledException(body, context); - const contents: PolicyTypeAlreadyEnabledException = { - name: "PolicyTypeAlreadyEnabledException", - $fault: "client", + const exception = new PolicyTypeAlreadyEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationExceptionResponse = async ( @@ -7076,13 +4653,11 @@ const deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyTypeNotAvailableForOrganizationException(body, context); - const contents: PolicyTypeNotAvailableForOrganizationException = { - name: "PolicyTypeNotAvailableForOrganizationException", - $fault: "client", + const exception = new PolicyTypeNotAvailableForOrganizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PolicyTypeNotEnabledExceptionResponse = async ( @@ -7091,13 +4666,11 @@ const deserializeAws_json1_1PolicyTypeNotEnabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PolicyTypeNotEnabledException(body, context); - const contents: PolicyTypeNotEnabledException = { - name: "PolicyTypeNotEnabledException", - $fault: "client", + const exception = new PolicyTypeNotEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RootNotFoundExceptionResponse = async ( @@ -7106,13 +4679,11 @@ const deserializeAws_json1_1RootNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RootNotFoundException(body, context); - const contents: RootNotFoundException = { - name: "RootNotFoundException", - $fault: "client", + const exception = new RootNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceExceptionResponse = async ( @@ -7121,13 +4692,11 @@ const deserializeAws_json1_1ServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceException(body, context); - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", + const exception = new ServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SourceParentNotFoundExceptionResponse = async ( @@ -7136,13 +4705,11 @@ const deserializeAws_json1_1SourceParentNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SourceParentNotFoundException(body, context); - const contents: SourceParentNotFoundException = { - name: "SourceParentNotFoundException", - $fault: "client", + const exception = new SourceParentNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetNotFoundExceptionResponse = async ( @@ -7151,13 +4718,11 @@ const deserializeAws_json1_1TargetNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetNotFoundException(body, context); - const contents: TargetNotFoundException = { - name: "TargetNotFoundException", - $fault: "client", + const exception = new TargetNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -7166,13 +4731,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse = async ( @@ -7181,13 +4744,11 @@ const deserializeAws_json1_1UnsupportedAPIEndpointExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedAPIEndpointException(body, context); - const contents: UnsupportedAPIEndpointException = { - name: "UnsupportedAPIEndpointException", - $fault: "client", + const exception = new UnsupportedAPIEndpointException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptHandshakeRequest = (input: AcceptHandshakeRequest, context: __SerdeContext): any => { diff --git a/clients/client-outposts/src/index.ts b/clients/client-outposts/src/index.ts index 9c8ee0e6881e0..a0e60b85a3602 100644 --- a/clients/client-outposts/src/index.ts +++ b/clients/client-outposts/src/index.ts @@ -3,3 +3,4 @@ export * from "./OutpostsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { OutpostsServiceException } from "./models/OutpostsServiceException"; diff --git a/clients/client-outposts/src/models/OutpostsServiceException.ts b/clients/client-outposts/src/models/OutpostsServiceException.ts new file mode 100644 index 0000000000000..1bcad5b5062a7 --- /dev/null +++ b/clients/client-outposts/src/models/OutpostsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Outposts service. + */ +export class OutpostsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, OutpostsServiceException.prototype); + } +} diff --git a/clients/client-outposts/src/models/models_0.ts b/clients/client-outposts/src/models/models_0.ts index 0ce4be2b3f9f2..737fdeee77c54 100644 --- a/clients/client-outposts/src/models/models_0.ts +++ b/clients/client-outposts/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { OutpostsServiceException as __BaseException } from "./OutpostsServiceException"; /** *

You do not have permission to perform this operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -122,9 +137,9 @@ export enum ResourceType { /** *

Updating or deleting this resource can cause an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The ID of the resource causing the conflict.

@@ -135,33 +150,83 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource causing the conflict.

*/ ResourceType?: ResourceType | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

An internal error has occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The specified request is not valid.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } /** *

A parameter is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -501,10 +566,22 @@ export namespace CreateOrderOutput { /** *

You have exceeded a service quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export enum SupportedHardwareType { diff --git a/clients/client-outposts/src/protocols/Aws_restJson1.ts b/clients/client-outposts/src/protocols/Aws_restJson1.ts index 570f3febecddd..9e8588c05af7b 100644 --- a/clients/client-outposts/src/protocols/Aws_restJson1.ts +++ b/clients/client-outposts/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelOrderCommandInput, CancelOrderCommandOutput } from "../commands/CancelOrderCommand"; @@ -70,6 +69,7 @@ import { SupportedStorageEnum, ValidationException, } from "../models/models_0"; +import { OutpostsServiceException as __BaseException } from "../models/OutpostsServiceException"; export const serializeAws_restJson1CancelOrderCommand = async ( input: CancelOrderCommandInput, @@ -819,65 +819,34 @@ const deserializeAws_restJson1CancelOrderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateOrderCommand = async ( @@ -906,73 +875,37 @@ const deserializeAws_restJson1CreateOrderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.outposts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateOutpostCommand = async ( @@ -1001,73 +934,37 @@ const deserializeAws_restJson1CreateOutpostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.outposts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSiteCommand = async ( @@ -1096,65 +993,34 @@ const deserializeAws_restJson1CreateSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.outposts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteOutpostCommand = async ( @@ -1179,65 +1045,34 @@ const deserializeAws_restJson1DeleteOutpostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSiteCommand = async ( @@ -1262,65 +1097,34 @@ const deserializeAws_restJson1DeleteSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCatalogItemCommand = async ( @@ -1349,49 +1153,28 @@ const deserializeAws_restJson1GetCatalogItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetOrderCommand = async ( @@ -1420,49 +1203,28 @@ const deserializeAws_restJson1GetOrderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetOutpostCommand = async ( @@ -1491,57 +1253,31 @@ const deserializeAws_restJson1GetOutpostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetOutpostInstanceTypesCommand = async ( @@ -1582,57 +1318,31 @@ const deserializeAws_restJson1GetOutpostInstanceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSiteCommand = async ( @@ -1661,57 +1371,31 @@ const deserializeAws_restJson1GetSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSiteAddressCommand = async ( @@ -1748,57 +1432,31 @@ const deserializeAws_restJson1GetSiteAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCatalogItemsCommand = async ( @@ -1831,49 +1489,28 @@ const deserializeAws_restJson1ListCatalogItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOrdersCommand = async ( @@ -1906,57 +1543,31 @@ const deserializeAws_restJson1ListOrdersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOutpostsCommand = async ( @@ -1989,49 +1600,28 @@ const deserializeAws_restJson1ListOutpostsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSitesCommand = async ( @@ -2064,49 +1654,28 @@ const deserializeAws_restJson1ListSitesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2135,49 +1704,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2202,49 +1750,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2269,49 +1796,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOutpostCommand = async ( @@ -2340,65 +1846,34 @@ const deserializeAws_restJson1UpdateOutpostCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSiteCommand = async ( @@ -2427,65 +1902,34 @@ const deserializeAws_restJson1UpdateSiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSiteAddressCommand = async ( @@ -2518,65 +1962,34 @@ const deserializeAws_restJson1UpdateSiteAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSiteRackPhysicalPropertiesCommand = async ( @@ -2605,96 +2018,57 @@ const deserializeAws_restJson1UpdateSiteRackPhysicalPropertiesCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.outposts#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2705,75 +2079,75 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Address = (input: Address, context: __SerdeContext): any => { diff --git a/clients/client-panorama/src/index.ts b/clients/client-panorama/src/index.ts index 9b299dfabed7b..14427d2733b9f 100644 --- a/clients/client-panorama/src/index.ts +++ b/clients/client-panorama/src/index.ts @@ -3,3 +3,4 @@ export * from "./PanoramaClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { PanoramaServiceException } from "./models/PanoramaServiceException"; diff --git a/clients/client-panorama/src/models/PanoramaServiceException.ts b/clients/client-panorama/src/models/PanoramaServiceException.ts new file mode 100644 index 0000000000000..af360836adaa0 --- /dev/null +++ b/clients/client-panorama/src/models/PanoramaServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Panorama service. + */ +export class PanoramaServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PanoramaServiceException.prototype); + } +} diff --git a/clients/client-panorama/src/models/models_0.ts b/clients/client-panorama/src/models/models_0.ts index 4b778d279d37b..e01ce7a685080 100644 --- a/clients/client-panorama/src/models/models_0.ts +++ b/clients/client-panorama/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PanoramaServiceException as __BaseException } from "./PanoramaServiceException"; /** *

The requestor does not have permission to access the target action or resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ApplicationInstanceHealthStatus { @@ -125,9 +139,9 @@ export namespace ConflictExceptionErrorArgument { /** *

The target resource is in use.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The resource's ID.

@@ -148,6 +162,22 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

A list of attributes that led to the exception and their values.

*/ ErrorArguments?: ConflictExceptionErrorArgument[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.ErrorId = opts.ErrorId; + this.ErrorArguments = opts.ErrorArguments; + } } export enum ConnectionType { @@ -312,22 +342,35 @@ export namespace CreateApplicationInstanceResponse { /** *

An internal error occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; /** *

The number of seconds a client should wait before retrying the call.

*/ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

The request would cause a limit to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The target resource's ID.

@@ -348,6 +391,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The name of the service.

*/ ServiceCode: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } /** @@ -408,9 +467,9 @@ export enum ValidationExceptionReason { /** *

The request contains an invalid parameter value.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The reason that validation failed.

@@ -431,6 +490,22 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

A list of request parameters that failed validation.

*/ Fields?: ValidationExceptionField[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.ErrorId = opts.ErrorId; + this.ErrorArguments = opts.ErrorArguments; + this.Fields = opts.Fields; + } } /** @@ -544,9 +619,9 @@ export namespace CreateJobForDevicesResponse { /** *

The target resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The resource's ID.

@@ -557,6 +632,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The resource's type.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } export enum JobResourceType { diff --git a/clients/client-panorama/src/protocols/Aws_restJson1.ts b/clients/client-panorama/src/protocols/Aws_restJson1.ts index faafdc2830371..3abba7fd82c32 100644 --- a/clients/client-panorama/src/protocols/Aws_restJson1.ts +++ b/clients/client-panorama/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -151,6 +150,7 @@ import { ValidationExceptionErrorArgument, ValidationExceptionField, } from "../models/models_0"; +import { PanoramaServiceException as __BaseException } from "../models/PanoramaServiceException"; export const serializeAws_restJson1CreateApplicationInstanceCommand = async ( input: CreateApplicationInstanceCommandInput, @@ -1230,57 +1230,31 @@ const deserializeAws_restJson1CreateApplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.panorama#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJobForDevicesCommand = async ( @@ -1309,65 +1283,34 @@ const deserializeAws_restJson1CreateJobForDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNodeFromTemplateJobCommand = async ( @@ -1396,57 +1339,31 @@ const deserializeAws_restJson1CreateNodeFromTemplateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePackageCommand = async ( @@ -1483,57 +1400,31 @@ const deserializeAws_restJson1CreatePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePackageImportJobCommand = async ( @@ -1562,57 +1453,31 @@ const deserializeAws_restJson1CreatePackageImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDeviceCommand = async ( @@ -1641,65 +1506,34 @@ const deserializeAws_restJson1DeleteDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePackageCommand = async ( @@ -1724,65 +1558,34 @@ const deserializeAws_restJson1DeletePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterPackageVersionCommand = async ( @@ -1807,65 +1610,34 @@ const deserializeAws_restJson1DeregisterPackageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeApplicationInstanceCommand = async ( @@ -1946,65 +1718,34 @@ const deserializeAws_restJson1DescribeApplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeApplicationInstanceDetailsCommand = async ( @@ -2064,65 +1805,34 @@ const deserializeAws_restJson1DescribeApplicationInstanceDetailsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeviceCommand = async ( @@ -2207,57 +1917,31 @@ const deserializeAws_restJson1DescribeDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeviceJobCommand = async ( @@ -2314,65 +1998,34 @@ const deserializeAws_restJson1DescribeDeviceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeNodeCommand = async ( @@ -2453,65 +2106,34 @@ const deserializeAws_restJson1DescribeNodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeNodeFromTemplateJobCommand = async ( @@ -2584,57 +2206,31 @@ const deserializeAws_restJson1DescribeNodeFromTemplateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackageCommand = async ( @@ -2694,65 +2290,34 @@ const deserializeAws_restJson1DescribePackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackageImportJobCommand = async ( @@ -2821,57 +2386,31 @@ const deserializeAws_restJson1DescribePackageImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribePackageVersionCommand = async ( @@ -2936,65 +2475,34 @@ const deserializeAws_restJson1DescribePackageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationInstanceDependenciesCommand = async ( @@ -3027,41 +2535,25 @@ const deserializeAws_restJson1ListApplicationInstanceDependenciesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationInstanceNodeInstancesCommand = async ( @@ -3094,41 +2586,25 @@ const deserializeAws_restJson1ListApplicationInstanceNodeInstancesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationInstancesCommand = async ( @@ -3161,41 +2637,25 @@ const deserializeAws_restJson1ListApplicationInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevicesCommand = async ( @@ -3228,57 +2688,31 @@ const deserializeAws_restJson1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevicesJobsCommand = async ( @@ -3311,65 +2745,34 @@ const deserializeAws_restJson1ListDevicesJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNodeFromTemplateJobsCommand = async ( @@ -3402,57 +2805,31 @@ const deserializeAws_restJson1ListNodeFromTemplateJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNodesCommand = async ( @@ -3485,49 +2862,28 @@ const deserializeAws_restJson1ListNodesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackageImportJobsCommand = async ( @@ -3560,57 +2916,31 @@ const deserializeAws_restJson1ListPackageImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPackagesCommand = async ( @@ -3643,65 +2973,34 @@ const deserializeAws_restJson1ListPackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3730,49 +3029,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ProvisionDeviceCommand = async ( @@ -3817,65 +3095,34 @@ const deserializeAws_restJson1ProvisionDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.panorama#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterPackageVersionCommand = async ( @@ -3900,57 +3147,31 @@ const deserializeAws_restJson1RegisterPackageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveApplicationInstanceCommand = async ( @@ -3975,65 +3196,34 @@ const deserializeAws_restJson1RemoveApplicationInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4058,49 +3248,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4125,49 +3294,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeviceMetadataCommand = async ( @@ -4196,98 +3344,57 @@ const deserializeAws_restJson1UpdateDeviceMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.panorama#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.panorama#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.panorama#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.panorama#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.panorama#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorArguments: undefined, - ErrorId: undefined, - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorArguments !== undefined && data.ErrorArguments !== null) { contents.ErrorArguments = deserializeAws_restJson1ConflictExceptionErrorArgumentList(data.ErrorArguments, context); @@ -4304,20 +3411,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RetryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.RetryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -4325,21 +3430,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -4350,23 +3452,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - ResourceId: undefined, - ResourceType: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -4383,23 +3480,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorArguments: undefined, - ErrorId: undefined, - Fields: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.ErrorArguments !== undefined && data.ErrorArguments !== null) { contents.ErrorArguments = deserializeAws_restJson1ValidationExceptionErrorArgumentList( @@ -4419,7 +3511,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DeviceIdList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-personalize-events/src/index.ts b/clients/client-personalize-events/src/index.ts index ef1e3473f32bb..07ba90823d3a4 100644 --- a/clients/client-personalize-events/src/index.ts +++ b/clients/client-personalize-events/src/index.ts @@ -2,3 +2,4 @@ export * from "./PersonalizeEvents"; export * from "./PersonalizeEventsClient"; export * from "./commands"; export * from "./models"; +export { PersonalizeEventsServiceException } from "./models/PersonalizeEventsServiceException"; diff --git a/clients/client-personalize-events/src/models/PersonalizeEventsServiceException.ts b/clients/client-personalize-events/src/models/PersonalizeEventsServiceException.ts new file mode 100644 index 0000000000000..8968feef074e6 --- /dev/null +++ b/clients/client-personalize-events/src/models/PersonalizeEventsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from PersonalizeEvents service. + */ +export class PersonalizeEventsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PersonalizeEventsServiceException.prototype); + } +} diff --git a/clients/client-personalize-events/src/models/models_0.ts b/clients/client-personalize-events/src/models/models_0.ts index af9c24782abe1..9b2b9131b0981 100644 --- a/clients/client-personalize-events/src/models/models_0.ts +++ b/clients/client-personalize-events/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PersonalizeEventsServiceException as __BaseException } from "./PersonalizeEventsServiceException"; /** *

Provide a valid value for the field or parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - message?: string; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + } } /** @@ -170,19 +185,39 @@ export namespace PutItemsRequest { /** *

The specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

Could not find the specified resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** diff --git a/clients/client-personalize-events/src/protocols/Aws_restJson1.ts b/clients/client-personalize-events/src/protocols/Aws_restJson1.ts index 2a2ccb910e0ad..aa415b40538a5 100644 --- a/clients/client-personalize-events/src/protocols/Aws_restJson1.ts +++ b/clients/client-personalize-events/src/protocols/Aws_restJson1.ts @@ -1,15 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectString as __expectString, LazyJsonString as __LazyJsonString, serializeFloat as __serializeFloat, } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { PutEventsCommandInput, PutEventsCommandOutput } from "../commands/PutEventsCommand"; @@ -23,6 +22,7 @@ import { ResourceNotFoundException, User, } from "../models/models_0"; +import { PersonalizeEventsServiceException as __BaseException } from "../models/PersonalizeEventsServiceException"; export const serializeAws_restJson1PutEventsCommand = async ( input: PutEventsCommandInput, @@ -126,33 +126,22 @@ const deserializeAws_restJson1PutEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalizeevents#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutItemsCommand = async ( @@ -177,49 +166,28 @@ const deserializeAws_restJson1PutItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalizeevents#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalizeevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalizeevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutUsersCommand = async ( @@ -244,100 +212,76 @@ const deserializeAws_restJson1PutUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalizeevents#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalizeevents#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalizeevents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InvalidInputExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidInputException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Event = (input: Event, context: __SerdeContext): any => { diff --git a/clients/client-personalize-runtime/src/index.ts b/clients/client-personalize-runtime/src/index.ts index f88810b7ed386..41161746e9bf3 100644 --- a/clients/client-personalize-runtime/src/index.ts +++ b/clients/client-personalize-runtime/src/index.ts @@ -2,3 +2,4 @@ export * from "./PersonalizeRuntime"; export * from "./PersonalizeRuntimeClient"; export * from "./commands"; export * from "./models"; +export { PersonalizeRuntimeServiceException } from "./models/PersonalizeRuntimeServiceException"; diff --git a/clients/client-personalize-runtime/src/models/PersonalizeRuntimeServiceException.ts b/clients/client-personalize-runtime/src/models/PersonalizeRuntimeServiceException.ts new file mode 100644 index 0000000000000..d886c7e080ad7 --- /dev/null +++ b/clients/client-personalize-runtime/src/models/PersonalizeRuntimeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from PersonalizeRuntime service. + */ +export class PersonalizeRuntimeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PersonalizeRuntimeServiceException.prototype); + } +} diff --git a/clients/client-personalize-runtime/src/models/models_0.ts b/clients/client-personalize-runtime/src/models/models_0.ts index b3d044a14e6b8..4f0c8133fabaa 100644 --- a/clients/client-personalize-runtime/src/models/models_0.ts +++ b/clients/client-personalize-runtime/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PersonalizeRuntimeServiceException as __BaseException } from "./PersonalizeRuntimeServiceException"; export interface GetPersonalizedRankingRequest { /** @@ -110,19 +112,39 @@ export namespace GetPersonalizedRankingResponse { /** *

Provide a valid value for the field or parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - message?: string; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + } } /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface GetRecommendationsRequest { diff --git a/clients/client-personalize-runtime/src/protocols/Aws_restJson1.ts b/clients/client-personalize-runtime/src/protocols/Aws_restJson1.ts index 1771ba1e37011..e1fe2db53da2e 100644 --- a/clients/client-personalize-runtime/src/protocols/Aws_restJson1.ts +++ b/clients/client-personalize-runtime/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -19,6 +18,7 @@ import { } from "../commands/GetPersonalizedRankingCommand"; import { GetRecommendationsCommandInput, GetRecommendationsCommandOutput } from "../commands/GetRecommendationsCommand"; import { InvalidInputException, PredictedItem, ResourceNotFoundException } from "../models/models_0"; +import { PersonalizeRuntimeServiceException as __BaseException } from "../models/PersonalizeRuntimeServiceException"; export const serializeAws_restJson1GetPersonalizedRankingCommand = async ( input: GetPersonalizedRankingCommandInput, @@ -116,41 +116,25 @@ const deserializeAws_restJson1GetPersonalizedRankingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalizeruntime#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalizeruntime#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecommendationsCommand = async ( @@ -183,75 +167,57 @@ const deserializeAws_restJson1GetRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalizeruntime#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalizeruntime#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InvalidInputExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidInputException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Context = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-personalize/src/index.ts b/clients/client-personalize/src/index.ts index 0d971875f2ea2..645fd21ebbac9 100644 --- a/clients/client-personalize/src/index.ts +++ b/clients/client-personalize/src/index.ts @@ -3,3 +3,4 @@ export * from "./PersonalizeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { PersonalizeServiceException } from "./models/PersonalizeServiceException"; diff --git a/clients/client-personalize/src/models/PersonalizeServiceException.ts b/clients/client-personalize/src/models/PersonalizeServiceException.ts new file mode 100644 index 0000000000000..3eb90b4ec9ce6 --- /dev/null +++ b/clients/client-personalize/src/models/PersonalizeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Personalize service. + */ +export class PersonalizeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PersonalizeServiceException.prototype); + } +} diff --git a/clients/client-personalize/src/models/models_0.ts b/clients/client-personalize/src/models/models_0.ts index ff832087ea813..5ee00937d6d87 100644 --- a/clients/client-personalize/src/models/models_0.ts +++ b/clients/client-personalize/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PersonalizeServiceException as __BaseException } from "./PersonalizeServiceException"; /** *

Describes an algorithm image.

@@ -385,46 +387,96 @@ export namespace CreateBatchInferenceJobResponse { /** *

Provide a valid value for the field or parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; - message?: string; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + } } /** *

The limit on the number of requests per second has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** *

The specified resource is in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; - message?: string; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + } } /** *

Could not find the specified resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -3595,10 +3647,20 @@ export namespace GetSolutionMetricsResponse { /** *

The token is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; - message?: string; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } export interface ListBatchInferenceJobsRequest { diff --git a/clients/client-personalize/src/protocols/Aws_json1_1.ts b/clients/client-personalize/src/protocols/Aws_json1_1.ts index 3f3b08279d953..bb078fba5e69c 100644 --- a/clients/client-personalize/src/protocols/Aws_json1_1.ts +++ b/clients/client-personalize/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -301,6 +300,7 @@ import { UpdateRecommenderRequest, UpdateRecommenderResponse, } from "../models/models_0"; +import { PersonalizeServiceException as __BaseException } from "../models/PersonalizeServiceException"; export const serializeAws_json1_1CreateBatchInferenceJobCommand = async ( input: CreateBatchInferenceJobCommandInput, @@ -1042,65 +1042,34 @@ const deserializeAws_json1_1CreateBatchInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateBatchSegmentJobCommand = async ( @@ -1128,65 +1097,34 @@ const deserializeAws_json1_1CreateBatchSegmentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCampaignCommand = async ( @@ -1214,65 +1152,34 @@ const deserializeAws_json1_1CreateCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetCommand = async ( @@ -1300,65 +1207,34 @@ const deserializeAws_json1_1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetExportJobCommand = async ( @@ -1386,65 +1262,34 @@ const deserializeAws_json1_1CreateDatasetExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetGroupCommand = async ( @@ -1472,49 +1317,28 @@ const deserializeAws_json1_1CreateDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetImportJobCommand = async ( @@ -1542,65 +1366,34 @@ const deserializeAws_json1_1CreateDatasetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEventTrackerCommand = async ( @@ -1628,65 +1421,34 @@ const deserializeAws_json1_1CreateEventTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFilterCommand = async ( @@ -1714,57 +1476,31 @@ const deserializeAws_json1_1CreateFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRecommenderCommand = async ( @@ -1792,57 +1528,31 @@ const deserializeAws_json1_1CreateRecommenderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSchemaCommand = async ( @@ -1870,49 +1580,28 @@ const deserializeAws_json1_1CreateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSolutionCommand = async ( @@ -1940,65 +1629,34 @@ const deserializeAws_json1_1CreateSolutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.personalize#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSolutionVersionCommand = async ( @@ -2026,57 +1684,31 @@ const deserializeAws_json1_1CreateSolutionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.personalize#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCampaignCommand = async ( @@ -2101,49 +1733,28 @@ const deserializeAws_json1_1DeleteCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatasetCommand = async ( @@ -2168,49 +1779,28 @@ const deserializeAws_json1_1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatasetGroupCommand = async ( @@ -2235,49 +1825,28 @@ const deserializeAws_json1_1DeleteDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEventTrackerCommand = async ( @@ -2302,49 +1871,28 @@ const deserializeAws_json1_1DeleteEventTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFilterCommand = async ( @@ -2369,49 +1917,28 @@ const deserializeAws_json1_1DeleteFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRecommenderCommand = async ( @@ -2436,49 +1963,28 @@ const deserializeAws_json1_1DeleteRecommenderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSchemaCommand = async ( @@ -2503,49 +2009,28 @@ const deserializeAws_json1_1DeleteSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSolutionCommand = async ( @@ -2570,49 +2055,28 @@ const deserializeAws_json1_1DeleteSolutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAlgorithmCommand = async ( @@ -2640,41 +2104,25 @@ const deserializeAws_json1_1DescribeAlgorithmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBatchInferenceJobCommand = async ( @@ -2702,41 +2150,25 @@ const deserializeAws_json1_1DescribeBatchInferenceJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBatchSegmentJobCommand = async ( @@ -2764,41 +2196,25 @@ const deserializeAws_json1_1DescribeBatchSegmentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCampaignCommand = async ( @@ -2826,41 +2242,25 @@ const deserializeAws_json1_1DescribeCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetCommand = async ( @@ -2888,41 +2288,25 @@ const deserializeAws_json1_1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetExportJobCommand = async ( @@ -2950,41 +2334,25 @@ const deserializeAws_json1_1DescribeDatasetExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetGroupCommand = async ( @@ -3012,41 +2380,25 @@ const deserializeAws_json1_1DescribeDatasetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetImportJobCommand = async ( @@ -3074,41 +2426,25 @@ const deserializeAws_json1_1DescribeDatasetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEventTrackerCommand = async ( @@ -3136,41 +2472,25 @@ const deserializeAws_json1_1DescribeEventTrackerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFeatureTransformationCommand = async ( @@ -3198,41 +2518,25 @@ const deserializeAws_json1_1DescribeFeatureTransformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFilterCommand = async ( @@ -3260,41 +2564,25 @@ const deserializeAws_json1_1DescribeFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRecipeCommand = async ( @@ -3322,41 +2610,25 @@ const deserializeAws_json1_1DescribeRecipeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRecommenderCommand = async ( @@ -3384,41 +2656,25 @@ const deserializeAws_json1_1DescribeRecommenderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSchemaCommand = async ( @@ -3446,41 +2702,25 @@ const deserializeAws_json1_1DescribeSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSolutionCommand = async ( @@ -3508,41 +2748,25 @@ const deserializeAws_json1_1DescribeSolutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSolutionVersionCommand = async ( @@ -3570,41 +2794,25 @@ const deserializeAws_json1_1DescribeSolutionVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSolutionMetricsCommand = async ( @@ -3632,49 +2840,28 @@ const deserializeAws_json1_1GetSolutionMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBatchInferenceJobsCommand = async ( @@ -3702,41 +2889,25 @@ const deserializeAws_json1_1ListBatchInferenceJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBatchSegmentJobsCommand = async ( @@ -3764,41 +2935,25 @@ const deserializeAws_json1_1ListBatchSegmentJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCampaignsCommand = async ( @@ -3826,41 +2981,25 @@ const deserializeAws_json1_1ListCampaignsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetExportJobsCommand = async ( @@ -3888,41 +3027,25 @@ const deserializeAws_json1_1ListDatasetExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetGroupsCommand = async ( @@ -3950,33 +3073,22 @@ const deserializeAws_json1_1ListDatasetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetImportJobsCommand = async ( @@ -4004,41 +3116,25 @@ const deserializeAws_json1_1ListDatasetImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetsCommand = async ( @@ -4066,41 +3162,25 @@ const deserializeAws_json1_1ListDatasetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEventTrackersCommand = async ( @@ -4128,41 +3208,25 @@ const deserializeAws_json1_1ListEventTrackersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFiltersCommand = async ( @@ -4190,41 +3254,25 @@ const deserializeAws_json1_1ListFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRecipesCommand = async ( @@ -4252,41 +3300,25 @@ const deserializeAws_json1_1ListRecipesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRecommendersCommand = async ( @@ -4314,41 +3346,25 @@ const deserializeAws_json1_1ListRecommendersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSchemasCommand = async ( @@ -4376,33 +3392,22 @@ const deserializeAws_json1_1ListSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSolutionsCommand = async ( @@ -4430,41 +3435,25 @@ const deserializeAws_json1_1ListSolutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSolutionVersionsCommand = async ( @@ -4492,49 +3481,28 @@ const deserializeAws_json1_1ListSolutionVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.personalize#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopSolutionVersionCreationCommand = async ( @@ -4559,49 +3527,28 @@ const deserializeAws_json1_1StopSolutionVersionCreationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCampaignCommand = async ( @@ -4629,49 +3576,28 @@ const deserializeAws_json1_1UpdateCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRecommenderCommand = async ( @@ -4699,49 +3625,28 @@ const deserializeAws_json1_1UpdateRecommenderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInputException": case "com.amazonaws.personalize#InvalidInputException": - response = { - ...(await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.personalize#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.personalize#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InvalidInputExceptionResponse = async ( @@ -4750,13 +3655,11 @@ const deserializeAws_json1_1InvalidInputExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputException(body, context); - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", + const exception = new InvalidInputException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -4765,13 +3668,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -4780,13 +3681,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -4795,13 +3694,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -4810,13 +3707,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -4825,13 +3720,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ArnList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-pi/src/index.ts b/clients/client-pi/src/index.ts index 011f57ad11989..e842609eada32 100644 --- a/clients/client-pi/src/index.ts +++ b/clients/client-pi/src/index.ts @@ -3,3 +3,4 @@ export * from "./PIClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { PIServiceException } from "./models/PIServiceException"; diff --git a/clients/client-pi/src/models/PIServiceException.ts b/clients/client-pi/src/models/PIServiceException.ts new file mode 100644 index 0000000000000..910441d6139ff --- /dev/null +++ b/clients/client-pi/src/models/PIServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from PI service. + */ +export class PIServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PIServiceException.prototype); + } +} diff --git a/clients/client-pi/src/models/models_0.ts b/clients/client-pi/src/models/models_0.ts index 76da7e1db0924..29dd0c059d536 100644 --- a/clients/client-pi/src/models/models_0.ts +++ b/clients/client-pi/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PIServiceException as __BaseException } from "./PIServiceException"; /** *

A timestamp, and a single numerical value, which together represent a measurement at a particular point in time.

@@ -450,28 +453,64 @@ export namespace DescribeDimensionKeysResponse { /** *

The request failed due to an unknown error.

*/ -export interface InternalServiceError extends __SmithyException, $MetadataBearer { - name: "InternalServiceError"; - $fault: "server"; +export class InternalServiceError extends __BaseException { + readonly name: "InternalServiceError" = "InternalServiceError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceError.prototype); + this.Message = opts.Message; + } } /** *

One of the arguments provided is invalid for this request.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } /** *

The user is not authorized to perform this request.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + this.Message = opts.Message; + } } export enum DetailStatus { diff --git a/clients/client-pi/src/protocols/Aws_json1_1.ts b/clients/client-pi/src/protocols/Aws_json1_1.ts index 76966af73a496..979f31de48fdc 100644 --- a/clients/client-pi/src/protocols/Aws_json1_1.ts +++ b/clients/client-pi/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -66,6 +65,7 @@ import { ResponseResourceMetric, ResponseResourceMetricKey, } from "../models/models_0"; +import { PIServiceException as __BaseException } from "../models/PIServiceException"; export const serializeAws_json1_1DescribeDimensionKeysCommand = async ( input: DescribeDimensionKeysCommandInput, @@ -170,49 +170,28 @@ const deserializeAws_json1_1DescribeDimensionKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.pi#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.pi#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.pi#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDimensionKeyDetailsCommand = async ( @@ -240,49 +219,28 @@ const deserializeAws_json1_1GetDimensionKeyDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.pi#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.pi#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.pi#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourceMetadataCommand = async ( @@ -310,49 +268,28 @@ const deserializeAws_json1_1GetResourceMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.pi#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.pi#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.pi#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourceMetricsCommand = async ( @@ -380,49 +317,28 @@ const deserializeAws_json1_1GetResourceMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.pi#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.pi#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.pi#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAvailableResourceDimensionsCommand = async ( @@ -450,49 +366,28 @@ const deserializeAws_json1_1ListAvailableResourceDimensionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.pi#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.pi#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.pi#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAvailableResourceMetricsCommand = async ( @@ -520,49 +415,28 @@ const deserializeAws_json1_1ListAvailableResourceMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.pi#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.pi#InvalidArgumentException": - response = { - ...(await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.pi#NotAuthorizedException": - response = { - ...(await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotAuthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServiceErrorResponse = async ( @@ -571,13 +445,11 @@ const deserializeAws_json1_1InternalServiceErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceError(body, context); - const contents: InternalServiceError = { - name: "InternalServiceError", - $fault: "server", + const exception = new InternalServiceError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( @@ -586,13 +458,11 @@ const deserializeAws_json1_1InvalidArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidArgumentException(body, context); - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", + const exception = new InvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotAuthorizedExceptionResponse = async ( @@ -601,13 +471,11 @@ const deserializeAws_json1_1NotAuthorizedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotAuthorizedException(body, context); - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", + const exception = new NotAuthorizedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AdditionalMetricsList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-pinpoint-email/src/index.ts b/clients/client-pinpoint-email/src/index.ts index 410e0ef76427d..55a29e2d0a521 100644 --- a/clients/client-pinpoint-email/src/index.ts +++ b/clients/client-pinpoint-email/src/index.ts @@ -3,3 +3,4 @@ export * from "./PinpointEmailClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { PinpointEmailServiceException } from "./models/PinpointEmailServiceException"; diff --git a/clients/client-pinpoint-email/src/models/PinpointEmailServiceException.ts b/clients/client-pinpoint-email/src/models/PinpointEmailServiceException.ts new file mode 100644 index 0000000000000..2eceb908b873b --- /dev/null +++ b/clients/client-pinpoint-email/src/models/PinpointEmailServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from PinpointEmail service. + */ +export class PinpointEmailServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PinpointEmailServiceException.prototype); + } +} diff --git a/clients/client-pinpoint-email/src/models/models_0.ts b/clients/client-pinpoint-email/src/models/models_0.ts index 58ebf8058858b..759237e8ae5a3 100644 --- a/clients/client-pinpoint-email/src/models/models_0.ts +++ b/clients/client-pinpoint-email/src/models/models_0.ts @@ -1,40 +1,83 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PinpointEmailServiceException as __BaseException } from "./PinpointEmailServiceException"; /** *

The message can't be sent because the account's ability to send email has been * permanently restricted.

*/ -export interface AccountSuspendedException extends __SmithyException, $MetadataBearer { - name: "AccountSuspendedException"; - $fault: "client"; - message?: string; +export class AccountSuspendedException extends __BaseException { + readonly name: "AccountSuspendedException" = "AccountSuspendedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountSuspendedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountSuspendedException.prototype); + } } /** *

The resource specified in your request already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; - message?: string; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + } } /** *

The input you provided is invalid.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } /** *

The resource is being modified by another operation or thread.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "server"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } export enum TlsPolicy { @@ -272,28 +315,58 @@ export namespace CreateConfigurationSetResponse { /** *

There are too many instances of the specified resource type.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource you attempted to access doesn't exist.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** *

Too many requests have been made to the operation.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - message?: string; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } export enum DimensionValueSource { @@ -891,29 +964,59 @@ export namespace CreateDeliverabilityTestReportResponse { /** *

The message can't be sent because the sending domain isn't verified.

*/ -export interface MailFromDomainNotVerifiedException extends __SmithyException, $MetadataBearer { - name: "MailFromDomainNotVerifiedException"; - $fault: "client"; - message?: string; +export class MailFromDomainNotVerifiedException extends __BaseException { + readonly name: "MailFromDomainNotVerifiedException" = "MailFromDomainNotVerifiedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MailFromDomainNotVerifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MailFromDomainNotVerifiedException.prototype); + } } /** *

The message can't be sent because it contains invalid content.

*/ -export interface MessageRejected extends __SmithyException, $MetadataBearer { - name: "MessageRejected"; - $fault: "client"; - message?: string; +export class MessageRejected extends __BaseException { + readonly name: "MessageRejected" = "MessageRejected"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MessageRejected", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MessageRejected.prototype); + } } /** *

The message can't be sent because the account's ability to send email is currently * paused.

*/ -export interface SendingPausedException extends __SmithyException, $MetadataBearer { - name: "SendingPausedException"; - $fault: "client"; - message?: string; +export class SendingPausedException extends __BaseException { + readonly name: "SendingPausedException" = "SendingPausedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SendingPausedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SendingPausedException.prototype); + } } /** diff --git a/clients/client-pinpoint-email/src/protocols/Aws_restJson1.ts b/clients/client-pinpoint-email/src/protocols/Aws_restJson1.ts index f3a82a6d40846..e1065210be430 100644 --- a/clients/client-pinpoint-email/src/protocols/Aws_restJson1.ts +++ b/clients/client-pinpoint-email/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -215,6 +214,7 @@ import { TrackingOptions, VolumeStatistics, } from "../models/models_0"; +import { PinpointEmailServiceException as __BaseException } from "../models/PinpointEmailServiceException"; export const serializeAws_restJson1CreateConfigurationSetCommand = async ( input: CreateConfigurationSetCommandInput, @@ -1549,73 +1549,37 @@ const deserializeAws_restJson1CreateConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.pinpointemail#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigurationSetEventDestinationCommand = async ( @@ -1640,65 +1604,34 @@ const deserializeAws_restJson1CreateConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.pinpointemail#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDedicatedIpPoolCommand = async ( @@ -1723,65 +1656,34 @@ const deserializeAws_restJson1CreateDedicatedIpPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.pinpointemail#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeliverabilityTestReportCommand = async ( @@ -1814,97 +1716,46 @@ const deserializeAws_restJson1CreateDeliverabilityTestReportCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSuspendedException": case "com.amazonaws.pinpointemail#AccountSuspendedException": - response = { - ...(await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.pinpointemail#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.pinpointemail#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "SendingPausedException": case "com.amazonaws.pinpointemail#SendingPausedException": - response = { - ...(await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEmailIdentityCommand = async ( @@ -1941,57 +1792,31 @@ const deserializeAws_restJson1CreateEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationSetCommand = async ( @@ -2016,57 +1841,31 @@ const deserializeAws_restJson1DeleteConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationSetEventDestinationCommand = async ( @@ -2091,49 +1890,28 @@ const deserializeAws_restJson1DeleteConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDedicatedIpPoolCommand = async ( @@ -2158,57 +1936,31 @@ const deserializeAws_restJson1DeleteDedicatedIpPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEmailIdentityCommand = async ( @@ -2233,57 +1985,31 @@ const deserializeAws_restJson1DeleteEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountCommand = async ( @@ -2328,41 +2054,25 @@ const deserializeAws_restJson1GetAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBlacklistReportsCommand = async ( @@ -2391,49 +2101,28 @@ const deserializeAws_restJson1GetBlacklistReportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationSetCommand = async ( @@ -2482,49 +2171,28 @@ const deserializeAws_restJson1GetConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationSetEventDestinationsCommand = async ( @@ -2553,49 +2221,28 @@ const deserializeAws_restJson1GetConfigurationSetEventDestinationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDedicatedIpCommand = async ( @@ -2624,49 +2271,28 @@ const deserializeAws_restJson1GetDedicatedIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDedicatedIpsCommand = async ( @@ -2699,49 +2325,28 @@ const deserializeAws_restJson1GetDedicatedIpsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeliverabilityDashboardOptionsCommand = async ( @@ -2794,49 +2399,28 @@ const deserializeAws_restJson1GetDeliverabilityDashboardOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeliverabilityTestReportCommand = async ( @@ -2884,49 +2468,28 @@ const deserializeAws_restJson1GetDeliverabilityTestReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainDeliverabilityCampaignCommand = async ( @@ -2958,49 +2521,28 @@ const deserializeAws_restJson1GetDomainDeliverabilityCampaignCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainStatisticsReportCommand = async ( @@ -3033,49 +2575,28 @@ const deserializeAws_restJson1GetDomainStatisticsReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEmailIdentityCommand = async ( @@ -3124,49 +2645,28 @@ const deserializeAws_restJson1GetEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationSetsCommand = async ( @@ -3199,41 +2699,25 @@ const deserializeAws_restJson1ListConfigurationSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDedicatedIpPoolsCommand = async ( @@ -3266,41 +2750,25 @@ const deserializeAws_restJson1ListDedicatedIpPoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeliverabilityTestReportsCommand = async ( @@ -3336,49 +2804,28 @@ const deserializeAws_restJson1ListDeliverabilityTestReportsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainDeliverabilityCampaignsCommand = async ( @@ -3414,49 +2861,28 @@ const deserializeAws_restJson1ListDomainDeliverabilityCampaignsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEmailIdentitiesCommand = async ( @@ -3489,41 +2915,25 @@ const deserializeAws_restJson1ListEmailIdentitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3552,49 +2962,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountDedicatedIpWarmupAttributesCommand = async ( @@ -3619,41 +3008,25 @@ const deserializeAws_restJson1PutAccountDedicatedIpWarmupAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountSendingAttributesCommand = async ( @@ -3678,41 +3051,25 @@ const deserializeAws_restJson1PutAccountSendingAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetDeliveryOptionsCommand = async ( @@ -3737,49 +3094,28 @@ const deserializeAws_restJson1PutConfigurationSetDeliveryOptionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetReputationOptionsCommand = async ( @@ -3804,49 +3140,28 @@ const deserializeAws_restJson1PutConfigurationSetReputationOptionsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetSendingOptionsCommand = async ( @@ -3871,49 +3186,28 @@ const deserializeAws_restJson1PutConfigurationSetSendingOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetTrackingOptionsCommand = async ( @@ -3938,49 +3232,28 @@ const deserializeAws_restJson1PutConfigurationSetTrackingOptionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDedicatedIpInPoolCommand = async ( @@ -4005,49 +3278,28 @@ const deserializeAws_restJson1PutDedicatedIpInPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDedicatedIpWarmupAttributesCommand = async ( @@ -4072,49 +3324,28 @@ const deserializeAws_restJson1PutDedicatedIpWarmupAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDeliverabilityDashboardOptionCommand = async ( @@ -4139,65 +3370,34 @@ const deserializeAws_restJson1PutDeliverabilityDashboardOptionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.pinpointemail#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityDkimAttributesCommand = async ( @@ -4222,49 +3422,28 @@ const deserializeAws_restJson1PutEmailIdentityDkimAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityFeedbackAttributesCommand = async ( @@ -4289,49 +3468,28 @@ const deserializeAws_restJson1PutEmailIdentityFeedbackAttributesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityMailFromAttributesCommand = async ( @@ -4356,49 +3514,28 @@ const deserializeAws_restJson1PutEmailIdentityMailFromAttributesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendEmailCommand = async ( @@ -4427,89 +3564,43 @@ const deserializeAws_restJson1SendEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSuspendedException": case "com.amazonaws.pinpointemail#AccountSuspendedException": - response = { - ...(await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointemail#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.pinpointemail#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.pinpointemail#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "SendingPausedException": case "com.amazonaws.pinpointemail#SendingPausedException": - response = { - ...(await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4534,57 +3625,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4609,57 +3674,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.pinpointemail#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigurationSetEventDestinationCommand = async ( @@ -4684,219 +3723,188 @@ const deserializeAws_restJson1UpdateConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointemail#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointemail#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointemail#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccountSuspendedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccountSuspendedException = { - name: "AccountSuspendedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccountSuspendedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MailFromDomainNotVerifiedException = { - name: "MailFromDomainNotVerifiedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MailFromDomainNotVerifiedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MessageRejectedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MessageRejected = { - name: "MessageRejected", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MessageRejected({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SendingPausedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SendingPausedException = { - name: "SendingPausedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SendingPausedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Body = (input: Body, context: __SerdeContext): any => { diff --git a/clients/client-pinpoint-sms-voice/src/index.ts b/clients/client-pinpoint-sms-voice/src/index.ts index 725cb1dc87bea..a88273d56b0d2 100644 --- a/clients/client-pinpoint-sms-voice/src/index.ts +++ b/clients/client-pinpoint-sms-voice/src/index.ts @@ -2,3 +2,4 @@ export * from "./PinpointSMSVoice"; export * from "./PinpointSMSVoiceClient"; export * from "./commands"; export * from "./models"; +export { PinpointSMSVoiceServiceException } from "./models/PinpointSMSVoiceServiceException"; diff --git a/clients/client-pinpoint-sms-voice/src/models/PinpointSMSVoiceServiceException.ts b/clients/client-pinpoint-sms-voice/src/models/PinpointSMSVoiceServiceException.ts new file mode 100644 index 0000000000000..f12b32d50c52e --- /dev/null +++ b/clients/client-pinpoint-sms-voice/src/models/PinpointSMSVoiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from PinpointSMSVoice service. + */ +export class PinpointSMSVoiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PinpointSMSVoiceServiceException.prototype); + } +} diff --git a/clients/client-pinpoint-sms-voice/src/models/models_0.ts b/clients/client-pinpoint-sms-voice/src/models/models_0.ts index bb365fecbc5b8..3f1136b2ab595 100644 --- a/clients/client-pinpoint-sms-voice/src/models/models_0.ts +++ b/clients/client-pinpoint-sms-voice/src/models/models_0.ts @@ -1,21 +1,48 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PinpointSMSVoiceServiceException as __BaseException } from "./PinpointSMSVoiceServiceException"; /** * The resource specified in your request already exists. */ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** * The input you provided is invalid. */ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** @@ -97,28 +124,64 @@ export namespace CreateConfigurationSetResponse { /** * The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future. */ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + this.Message = opts.Message; + } } /** * There are too many instances of the specified resource type. */ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** * You've issued too many requests to the resource. Wait a few minutes, and then try again. */ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** @@ -259,10 +322,22 @@ export namespace CreateConfigurationSetEventDestinationResponse { /** * The resource you attempted to access doesn't exist. */ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteConfigurationSetRequest { diff --git a/clients/client-pinpoint-sms-voice/src/protocols/Aws_restJson1.ts b/clients/client-pinpoint-sms-voice/src/protocols/Aws_restJson1.ts index 30ed17936c2c2..0c96ec1382d6d 100644 --- a/clients/client-pinpoint-sms-voice/src/protocols/Aws_restJson1.ts +++ b/clients/client-pinpoint-sms-voice/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -61,6 +60,7 @@ import { TooManyRequestsException, VoiceMessageContent, } from "../models/models_0"; +import { PinpointSMSVoiceServiceException as __BaseException } from "../models/PinpointSMSVoiceServiceException"; export const serializeAws_restJson1CreateConfigurationSetCommand = async ( input: CreateConfigurationSetCommandInput, @@ -354,65 +354,34 @@ const deserializeAws_restJson1CreateConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.pinpointsmsvoice#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointsmsvoice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigurationSetEventDestinationCommand = async ( @@ -437,73 +406,37 @@ const deserializeAws_restJson1CreateConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.pinpointsmsvoice#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.pinpointsmsvoice#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointsmsvoice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationSetCommand = async ( @@ -528,57 +461,31 @@ const deserializeAws_restJson1DeleteConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointsmsvoice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationSetEventDestinationCommand = async ( @@ -603,57 +510,31 @@ const deserializeAws_restJson1DeleteConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointsmsvoice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationSetEventDestinationsCommand = async ( @@ -682,57 +563,31 @@ const deserializeAws_restJson1GetConfigurationSetEventDestinationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointsmsvoice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationSetsCommand = async ( @@ -765,49 +620,28 @@ const deserializeAws_restJson1ListConfigurationSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendVoiceMessageCommand = async ( @@ -836,49 +670,28 @@ const deserializeAws_restJson1SendVoiceMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigurationSetEventDestinationCommand = async ( @@ -903,159 +716,127 @@ const deserializeAws_restJson1UpdateConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpointsmsvoice#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.pinpointsmsvoice#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpointsmsvoice#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpointsmsvoice#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CallInstructionsMessageType = ( diff --git a/clients/client-pinpoint/src/index.ts b/clients/client-pinpoint/src/index.ts index d0992eca3ab9d..fb1c1c73a2483 100644 --- a/clients/client-pinpoint/src/index.ts +++ b/clients/client-pinpoint/src/index.ts @@ -2,3 +2,4 @@ export * from "./Pinpoint"; export * from "./PinpointClient"; export * from "./commands"; export * from "./models"; +export { PinpointServiceException } from "./models/PinpointServiceException"; diff --git a/clients/client-pinpoint/src/models/PinpointServiceException.ts b/clients/client-pinpoint/src/models/PinpointServiceException.ts new file mode 100644 index 0000000000000..2c6ae6402dcee --- /dev/null +++ b/clients/client-pinpoint/src/models/PinpointServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Pinpoint service. + */ +export class PinpointServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PinpointServiceException.prototype); + } +} diff --git a/clients/client-pinpoint/src/models/models_0.ts b/clients/client-pinpoint/src/models/models_0.ts index 5dfe60dd2e689..598cf1bb755a6 100644 --- a/clients/client-pinpoint/src/models/models_0.ts +++ b/clients/client-pinpoint/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PinpointServiceException as __BaseException } from "./PinpointServiceException"; export enum __EndpointTypesElement { ADM = "ADM", @@ -2410,9 +2413,9 @@ export namespace AttributesResource { /** *

Provides information about an API request or response.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -2422,6 +2425,19 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** @@ -3643,9 +3659,9 @@ export namespace ChannelsResponse { /** *

Provides information about an API request or response.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -3655,6 +3671,19 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** @@ -3716,9 +3745,9 @@ export namespace CreateAppResponse { /** *

Provides information about an API request or response.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -3728,14 +3757,27 @@ export interface ForbiddenException extends __SmithyException, $MetadataBearer { *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** *

Provides information about an API request or response.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** *

The message that's returned from the API.

*/ @@ -3745,14 +3787,27 @@ export interface InternalServerErrorException extends __SmithyException, $Metada *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** *

Provides information about an API request or response.

*/ -export interface MethodNotAllowedException extends __SmithyException, $MetadataBearer { - name: "MethodNotAllowedException"; - $fault: "client"; +export class MethodNotAllowedException extends __BaseException { + readonly name: "MethodNotAllowedException" = "MethodNotAllowedException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -3762,14 +3817,27 @@ export interface MethodNotAllowedException extends __SmithyException, $MetadataB *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MethodNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MethodNotAllowedException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** *

Provides information about an API request or response.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -3779,14 +3847,27 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** *

Provides information about an API request or response.

*/ -export interface PayloadTooLargeException extends __SmithyException, $MetadataBearer { - name: "PayloadTooLargeException"; - $fault: "client"; +export class PayloadTooLargeException extends __BaseException { + readonly name: "PayloadTooLargeException" = "PayloadTooLargeException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -3796,14 +3877,27 @@ export interface PayloadTooLargeException extends __SmithyException, $MetadataBe *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PayloadTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PayloadTooLargeException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** *

Provides information about an API request or response.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

The message that's returned from the API.

*/ @@ -3813,6 +3907,19 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe *

The unique identifier for the request or response.

*/ RequestID?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + this.RequestID = opts.RequestID; + } } /** diff --git a/clients/client-pinpoint/src/protocols/Aws_restJson1.ts b/clients/client-pinpoint/src/protocols/Aws_restJson1.ts index b3a2ed6796b57..e508f664e63c4 100644 --- a/clients/client-pinpoint/src/protocols/Aws_restJson1.ts +++ b/clients/client-pinpoint/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateAppCommandInput, CreateAppCommandOutput } from "../commands/CreateAppCommand"; @@ -465,6 +464,7 @@ import { WriteApplicationSettingsRequest, WriteEventStream, } from "../models/models_1"; +import { PinpointServiceException as __BaseException } from "../models/PinpointServiceException"; export const serializeAws_restJson1CreateAppCommand = async ( input: CreateAppCommandInput, @@ -4842,81 +4842,40 @@ const deserializeAws_restJson1CreateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCampaignCommand = async ( @@ -4943,81 +4902,40 @@ const deserializeAws_restJson1CreateCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEmailTemplateCommand = async ( @@ -5044,65 +4962,34 @@ const deserializeAws_restJson1CreateEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateExportJobCommand = async ( @@ -5129,81 +5016,40 @@ const deserializeAws_restJson1CreateExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateImportJobCommand = async ( @@ -5230,81 +5076,40 @@ const deserializeAws_restJson1CreateImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInAppTemplateCommand = async ( @@ -5331,65 +5136,34 @@ const deserializeAws_restJson1CreateInAppTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateJourneyCommand = async ( @@ -5416,81 +5190,40 @@ const deserializeAws_restJson1CreateJourneyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePushTemplateCommand = async ( @@ -5517,65 +5250,34 @@ const deserializeAws_restJson1CreatePushTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRecommenderConfigurationCommand = async ( @@ -5602,81 +5304,40 @@ const deserializeAws_restJson1CreateRecommenderConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSegmentCommand = async ( @@ -5703,81 +5364,40 @@ const deserializeAws_restJson1CreateSegmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSmsTemplateCommand = async ( @@ -5804,65 +5424,34 @@ const deserializeAws_restJson1CreateSmsTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateVoiceTemplateCommand = async ( @@ -5889,65 +5478,34 @@ const deserializeAws_restJson1CreateVoiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAdmChannelCommand = async ( @@ -5974,81 +5532,40 @@ const deserializeAws_restJson1DeleteAdmChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApnsChannelCommand = async ( @@ -6075,81 +5592,40 @@ const deserializeAws_restJson1DeleteApnsChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApnsSandboxChannelCommand = async ( @@ -6176,81 +5652,40 @@ const deserializeAws_restJson1DeleteApnsSandboxChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApnsVoipChannelCommand = async ( @@ -6277,81 +5712,40 @@ const deserializeAws_restJson1DeleteApnsVoipChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApnsVoipSandboxChannelCommand = async ( @@ -6378,81 +5772,40 @@ const deserializeAws_restJson1DeleteApnsVoipSandboxChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppCommand = async ( @@ -6479,81 +5832,40 @@ const deserializeAws_restJson1DeleteAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBaiduChannelCommand = async ( @@ -6580,81 +5892,40 @@ const deserializeAws_restJson1DeleteBaiduChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCampaignCommand = async ( @@ -6681,81 +5952,40 @@ const deserializeAws_restJson1DeleteCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEmailChannelCommand = async ( @@ -6782,81 +6012,40 @@ const deserializeAws_restJson1DeleteEmailChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEmailTemplateCommand = async ( @@ -6883,81 +6072,40 @@ const deserializeAws_restJson1DeleteEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEndpointCommand = async ( @@ -6984,81 +6132,40 @@ const deserializeAws_restJson1DeleteEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEventStreamCommand = async ( @@ -7085,81 +6192,40 @@ const deserializeAws_restJson1DeleteEventStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGcmChannelCommand = async ( @@ -7186,81 +6252,40 @@ const deserializeAws_restJson1DeleteGcmChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInAppTemplateCommand = async ( @@ -7287,81 +6312,40 @@ const deserializeAws_restJson1DeleteInAppTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteJourneyCommand = async ( @@ -7388,81 +6372,40 @@ const deserializeAws_restJson1DeleteJourneyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePushTemplateCommand = async ( @@ -7489,81 +6432,40 @@ const deserializeAws_restJson1DeletePushTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecommenderConfigurationCommand = async ( @@ -7590,81 +6492,40 @@ const deserializeAws_restJson1DeleteRecommenderConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSegmentCommand = async ( @@ -7691,81 +6552,40 @@ const deserializeAws_restJson1DeleteSegmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSmsChannelCommand = async ( @@ -7792,81 +6612,40 @@ const deserializeAws_restJson1DeleteSmsChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSmsTemplateCommand = async ( @@ -7893,81 +6672,40 @@ const deserializeAws_restJson1DeleteSmsTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserEndpointsCommand = async ( @@ -7994,81 +6732,40 @@ const deserializeAws_restJson1DeleteUserEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceChannelCommand = async ( @@ -8095,81 +6792,40 @@ const deserializeAws_restJson1DeleteVoiceChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteVoiceTemplateCommand = async ( @@ -8196,81 +6852,40 @@ const deserializeAws_restJson1DeleteVoiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAdmChannelCommand = async ( @@ -8297,81 +6912,40 @@ const deserializeAws_restJson1GetAdmChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApnsChannelCommand = async ( @@ -8398,81 +6972,40 @@ const deserializeAws_restJson1GetApnsChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApnsSandboxChannelCommand = async ( @@ -8499,81 +7032,40 @@ const deserializeAws_restJson1GetApnsSandboxChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApnsVoipChannelCommand = async ( @@ -8600,81 +7092,40 @@ const deserializeAws_restJson1GetApnsVoipChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApnsVoipSandboxChannelCommand = async ( @@ -8701,81 +7152,40 @@ const deserializeAws_restJson1GetApnsVoipSandboxChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppCommand = async ( @@ -8802,81 +7212,40 @@ const deserializeAws_restJson1GetAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationDateRangeKpiCommand = async ( @@ -8903,81 +7272,40 @@ const deserializeAws_restJson1GetApplicationDateRangeKpiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationSettingsCommand = async ( @@ -9004,81 +7332,40 @@ const deserializeAws_restJson1GetApplicationSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppsCommand = async ( @@ -9105,81 +7392,40 @@ const deserializeAws_restJson1GetAppsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBaiduChannelCommand = async ( @@ -9206,81 +7452,40 @@ const deserializeAws_restJson1GetBaiduChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCampaignCommand = async ( @@ -9307,81 +7512,40 @@ const deserializeAws_restJson1GetCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCampaignActivitiesCommand = async ( @@ -9408,81 +7572,40 @@ const deserializeAws_restJson1GetCampaignActivitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCampaignDateRangeKpiCommand = async ( @@ -9509,81 +7632,40 @@ const deserializeAws_restJson1GetCampaignDateRangeKpiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCampaignsCommand = async ( @@ -9610,81 +7692,40 @@ const deserializeAws_restJson1GetCampaignsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCampaignVersionCommand = async ( @@ -9711,81 +7752,40 @@ const deserializeAws_restJson1GetCampaignVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCampaignVersionsCommand = async ( @@ -9812,81 +7812,40 @@ const deserializeAws_restJson1GetCampaignVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetChannelsCommand = async ( @@ -9913,81 +7872,40 @@ const deserializeAws_restJson1GetChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEmailChannelCommand = async ( @@ -10014,81 +7932,40 @@ const deserializeAws_restJson1GetEmailChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEmailTemplateCommand = async ( @@ -10115,81 +7992,40 @@ const deserializeAws_restJson1GetEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEndpointCommand = async ( @@ -10216,81 +8052,40 @@ const deserializeAws_restJson1GetEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEventStreamCommand = async ( @@ -10317,81 +8112,40 @@ const deserializeAws_restJson1GetEventStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExportJobCommand = async ( @@ -10418,81 +8172,40 @@ const deserializeAws_restJson1GetExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetExportJobsCommand = async ( @@ -10519,81 +8232,40 @@ const deserializeAws_restJson1GetExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGcmChannelCommand = async ( @@ -10620,81 +8292,40 @@ const deserializeAws_restJson1GetGcmChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImportJobCommand = async ( @@ -10721,81 +8352,40 @@ const deserializeAws_restJson1GetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImportJobsCommand = async ( @@ -10822,81 +8412,40 @@ const deserializeAws_restJson1GetImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInAppMessagesCommand = async ( @@ -10923,81 +8472,40 @@ const deserializeAws_restJson1GetInAppMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInAppTemplateCommand = async ( @@ -11024,81 +8532,40 @@ const deserializeAws_restJson1GetInAppTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJourneyCommand = async ( @@ -11125,81 +8592,40 @@ const deserializeAws_restJson1GetJourneyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJourneyDateRangeKpiCommand = async ( @@ -11226,81 +8652,40 @@ const deserializeAws_restJson1GetJourneyDateRangeKpiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJourneyExecutionActivityMetricsCommand = async ( @@ -11330,81 +8715,40 @@ const deserializeAws_restJson1GetJourneyExecutionActivityMetricsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetJourneyExecutionMetricsCommand = async ( @@ -11431,81 +8775,40 @@ const deserializeAws_restJson1GetJourneyExecutionMetricsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPushTemplateCommand = async ( @@ -11532,81 +8835,40 @@ const deserializeAws_restJson1GetPushTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecommenderConfigurationCommand = async ( @@ -11633,81 +8895,40 @@ const deserializeAws_restJson1GetRecommenderConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecommenderConfigurationsCommand = async ( @@ -11737,81 +8958,40 @@ const deserializeAws_restJson1GetRecommenderConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSegmentCommand = async ( @@ -11838,81 +9018,40 @@ const deserializeAws_restJson1GetSegmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSegmentExportJobsCommand = async ( @@ -11939,81 +9078,40 @@ const deserializeAws_restJson1GetSegmentExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSegmentImportJobsCommand = async ( @@ -12040,81 +9138,40 @@ const deserializeAws_restJson1GetSegmentImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSegmentsCommand = async ( @@ -12141,81 +9198,40 @@ const deserializeAws_restJson1GetSegmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSegmentVersionCommand = async ( @@ -12242,81 +9258,40 @@ const deserializeAws_restJson1GetSegmentVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSegmentVersionsCommand = async ( @@ -12343,81 +9318,40 @@ const deserializeAws_restJson1GetSegmentVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSmsChannelCommand = async ( @@ -12444,81 +9378,40 @@ const deserializeAws_restJson1GetSmsChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSmsTemplateCommand = async ( @@ -12545,81 +9438,40 @@ const deserializeAws_restJson1GetSmsTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUserEndpointsCommand = async ( @@ -12646,81 +9498,40 @@ const deserializeAws_restJson1GetUserEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceChannelCommand = async ( @@ -12747,81 +9558,40 @@ const deserializeAws_restJson1GetVoiceChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetVoiceTemplateCommand = async ( @@ -12848,81 +9618,40 @@ const deserializeAws_restJson1GetVoiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJourneysCommand = async ( @@ -12949,81 +9678,40 @@ const deserializeAws_restJson1ListJourneysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -13050,25 +9738,19 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTemplatesCommand = async ( @@ -13095,65 +9777,34 @@ const deserializeAws_restJson1ListTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTemplateVersionsCommand = async ( @@ -13180,81 +9831,40 @@ const deserializeAws_restJson1ListTemplateVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PhoneNumberValidateCommand = async ( @@ -13281,81 +9891,40 @@ const deserializeAws_restJson1PhoneNumberValidateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEventsCommand = async ( @@ -13382,81 +9951,40 @@ const deserializeAws_restJson1PutEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEventStreamCommand = async ( @@ -13483,81 +10011,40 @@ const deserializeAws_restJson1PutEventStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveAttributesCommand = async ( @@ -13584,81 +10071,40 @@ const deserializeAws_restJson1RemoveAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendMessagesCommand = async ( @@ -13685,81 +10131,40 @@ const deserializeAws_restJson1SendMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendOTPMessageCommand = async ( @@ -13786,81 +10191,40 @@ const deserializeAws_restJson1SendOTPMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendUsersMessagesCommand = async ( @@ -13887,81 +10251,40 @@ const deserializeAws_restJson1SendUsersMessagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -13986,25 +10309,19 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -14029,25 +10346,19 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAdmChannelCommand = async ( @@ -14074,81 +10385,40 @@ const deserializeAws_restJson1UpdateAdmChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApnsChannelCommand = async ( @@ -14175,81 +10445,40 @@ const deserializeAws_restJson1UpdateApnsChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApnsSandboxChannelCommand = async ( @@ -14276,81 +10505,40 @@ const deserializeAws_restJson1UpdateApnsSandboxChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApnsVoipChannelCommand = async ( @@ -14377,81 +10565,40 @@ const deserializeAws_restJson1UpdateApnsVoipChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApnsVoipSandboxChannelCommand = async ( @@ -14478,81 +10625,40 @@ const deserializeAws_restJson1UpdateApnsVoipSandboxChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApplicationSettingsCommand = async ( @@ -14579,81 +10685,40 @@ const deserializeAws_restJson1UpdateApplicationSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBaiduChannelCommand = async ( @@ -14680,81 +10745,40 @@ const deserializeAws_restJson1UpdateBaiduChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCampaignCommand = async ( @@ -14781,81 +10805,40 @@ const deserializeAws_restJson1UpdateCampaignCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEmailChannelCommand = async ( @@ -14882,81 +10865,40 @@ const deserializeAws_restJson1UpdateEmailChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEmailTemplateCommand = async ( @@ -14983,81 +10925,40 @@ const deserializeAws_restJson1UpdateEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEndpointCommand = async ( @@ -15084,81 +10985,40 @@ const deserializeAws_restJson1UpdateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEndpointsBatchCommand = async ( @@ -15185,81 +11045,40 @@ const deserializeAws_restJson1UpdateEndpointsBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGcmChannelCommand = async ( @@ -15286,81 +11105,40 @@ const deserializeAws_restJson1UpdateGcmChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInAppTemplateCommand = async ( @@ -15387,81 +11165,40 @@ const deserializeAws_restJson1UpdateInAppTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateJourneyCommand = async ( @@ -15488,89 +11225,43 @@ const deserializeAws_restJson1UpdateJourneyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.pinpoint#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateJourneyStateCommand = async ( @@ -15597,81 +11288,40 @@ const deserializeAws_restJson1UpdateJourneyStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePushTemplateCommand = async ( @@ -15698,81 +11348,40 @@ const deserializeAws_restJson1UpdatePushTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRecommenderConfigurationCommand = async ( @@ -15799,81 +11408,40 @@ const deserializeAws_restJson1UpdateRecommenderConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSegmentCommand = async ( @@ -15900,81 +11468,40 @@ const deserializeAws_restJson1UpdateSegmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSmsChannelCommand = async ( @@ -16001,81 +11528,40 @@ const deserializeAws_restJson1UpdateSmsChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSmsTemplateCommand = async ( @@ -16102,81 +11588,40 @@ const deserializeAws_restJson1UpdateSmsTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTemplateActiveVersionCommand = async ( @@ -16203,81 +11648,40 @@ const deserializeAws_restJson1UpdateTemplateActiveVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVoiceChannelCommand = async ( @@ -16304,81 +11708,40 @@ const deserializeAws_restJson1UpdateVoiceChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateVoiceTemplateCommand = async ( @@ -16405,81 +11768,40 @@ const deserializeAws_restJson1UpdateVoiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1VerifyOTPMessageCommand = async ( @@ -16506,94 +11828,47 @@ const deserializeAws_restJson1VerifyOTPMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.pinpoint#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.pinpoint#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.pinpoint#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.pinpoint#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pinpoint#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PayloadTooLargeException": case "com.amazonaws.pinpoint#PayloadTooLargeException": - response = { - ...(await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PayloadTooLargeExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.pinpoint#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16601,20 +11876,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16622,20 +11895,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16643,20 +11914,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16664,20 +11933,18 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MethodNotAllowedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MethodNotAllowedException = { - name: "MethodNotAllowedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16685,20 +11952,18 @@ const deserializeAws_restJson1MethodNotAllowedExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new MethodNotAllowedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16706,20 +11971,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PayloadTooLargeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PayloadTooLargeException = { - name: "PayloadTooLargeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16727,20 +11990,18 @@ const deserializeAws_restJson1PayloadTooLargeExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new PayloadTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestID: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -16748,7 +12009,11 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.RequestID !== undefined && data.RequestID !== null) { contents.RequestID = __expectString(data.RequestID); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Activity = (input: Activity, context: __SerdeContext): any => { diff --git a/clients/client-polly/src/index.ts b/clients/client-polly/src/index.ts index f921fd87344c5..6788d118a680b 100644 --- a/clients/client-polly/src/index.ts +++ b/clients/client-polly/src/index.ts @@ -3,3 +3,4 @@ export * from "./PollyClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { PollyServiceException } from "./models/PollyServiceException"; diff --git a/clients/client-polly/src/models/PollyServiceException.ts b/clients/client-polly/src/models/PollyServiceException.ts new file mode 100644 index 0000000000000..0a95adf0891f1 --- /dev/null +++ b/clients/client-polly/src/models/PollyServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Polly service. + */ +export class PollyServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PollyServiceException.prototype); + } +} diff --git a/clients/client-polly/src/models/models_0.ts b/clients/client-polly/src/models/models_0.ts index de3c03a2e03dc..1d95d7cfa057e 100644 --- a/clients/client-polly/src/models/models_0.ts +++ b/clients/client-polly/src/models/models_0.ts @@ -1,7 +1,9 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { PollyServiceException as __BaseException } from "./PollyServiceException"; + export interface DeleteLexiconInput { /** *

The name of the lexicon to delete. Must be an existing lexicon in @@ -37,19 +39,39 @@ export namespace DeleteLexiconOutput { *

Verify that the lexicon exists, is in the region (see ListLexicons) and that you spelled its name is spelled * correctly. Then try again.

*/ -export interface LexiconNotFoundException extends __SmithyException, $MetadataBearer { - name: "LexiconNotFoundException"; - $fault: "client"; - message?: string; +export class LexiconNotFoundException extends __BaseException { + readonly name: "LexiconNotFoundException" = "LexiconNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LexiconNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LexiconNotFoundException.prototype); + } } /** *

An unknown condition has caused a service failure.

*/ -export interface ServiceFailureException extends __SmithyException, $MetadataBearer { - name: "ServiceFailureException"; - $fault: "server"; - message?: string; +export class ServiceFailureException extends __BaseException { + readonly name: "ServiceFailureException" = "ServiceFailureException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceFailureException.prototype); + } } export enum Engine { @@ -286,10 +308,20 @@ export namespace DescribeVoicesOutput { *

The NextToken is invalid. Verify that it's spelled correctly, and * then try again.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; - message?: string; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } /** @@ -297,10 +329,20 @@ export interface InvalidNextTokenException extends __SmithyException, $MetadataB * Choose a new voice that is compatible with the engine or change the engine * and restart the operation.

*/ -export interface EngineNotSupportedException extends __SmithyException, $MetadataBearer { - name: "EngineNotSupportedException"; - $fault: "client"; - message?: string; +export class EngineNotSupportedException extends __BaseException { + readonly name: "EngineNotSupportedException" = "EngineNotSupportedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EngineNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EngineNotSupportedException.prototype); + } } export interface GetLexiconInput { @@ -596,89 +638,179 @@ export namespace GetSpeechSynthesisTaskOutput { *

The provided Task ID is not valid. Please provide a valid Task ID and * try again.

*/ -export interface InvalidTaskIdException extends __SmithyException, $MetadataBearer { - name: "InvalidTaskIdException"; - $fault: "client"; - message?: string; +export class InvalidTaskIdException extends __BaseException { + readonly name: "InvalidTaskIdException" = "InvalidTaskIdException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTaskIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTaskIdException.prototype); + } } /** *

The Speech Synthesis task with requested Task ID cannot be * found.

*/ -export interface SynthesisTaskNotFoundException extends __SmithyException, $MetadataBearer { - name: "SynthesisTaskNotFoundException"; - $fault: "client"; - message?: string; +export class SynthesisTaskNotFoundException extends __BaseException { + readonly name: "SynthesisTaskNotFoundException" = "SynthesisTaskNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SynthesisTaskNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SynthesisTaskNotFoundException.prototype); + } } /** *

Amazon Polly can't find the specified lexicon. Verify that the lexicon's * name is spelled correctly, and then try again.

*/ -export interface InvalidLexiconException extends __SmithyException, $MetadataBearer { - name: "InvalidLexiconException"; - $fault: "client"; - message?: string; +export class InvalidLexiconException extends __BaseException { + readonly name: "InvalidLexiconException" = "InvalidLexiconException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLexiconException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLexiconException.prototype); + } } /** *

The provided Amazon S3 bucket name is invalid. Please check your input * with S3 bucket naming requirements and try again.

*/ -export interface InvalidS3BucketException extends __SmithyException, $MetadataBearer { - name: "InvalidS3BucketException"; - $fault: "client"; - message?: string; +export class InvalidS3BucketException extends __BaseException { + readonly name: "InvalidS3BucketException" = "InvalidS3BucketException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3BucketException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3BucketException.prototype); + } } /** *

The provided Amazon S3 key prefix is invalid. Please provide a valid * S3 object key name.

*/ -export interface InvalidS3KeyException extends __SmithyException, $MetadataBearer { - name: "InvalidS3KeyException"; - $fault: "client"; - message?: string; +export class InvalidS3KeyException extends __BaseException { + readonly name: "InvalidS3KeyException" = "InvalidS3KeyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3KeyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3KeyException.prototype); + } } /** *

The specified sample rate is not valid.

*/ -export interface InvalidSampleRateException extends __SmithyException, $MetadataBearer { - name: "InvalidSampleRateException"; - $fault: "client"; - message?: string; +export class InvalidSampleRateException extends __BaseException { + readonly name: "InvalidSampleRateException" = "InvalidSampleRateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSampleRateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSampleRateException.prototype); + } } /** *

The provided SNS topic ARN is invalid. Please provide a valid SNS * topic ARN and try again.

*/ -export interface InvalidSnsTopicArnException extends __SmithyException, $MetadataBearer { - name: "InvalidSnsTopicArnException"; - $fault: "client"; - message?: string; +export class InvalidSnsTopicArnException extends __BaseException { + readonly name: "InvalidSnsTopicArnException" = "InvalidSnsTopicArnException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSnsTopicArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSnsTopicArnException.prototype); + } } /** *

The SSML you provided is invalid. Verify the SSML syntax, spelling * of tags and values, and then try again.

*/ -export interface InvalidSsmlException extends __SmithyException, $MetadataBearer { - name: "InvalidSsmlException"; - $fault: "client"; - message?: string; +export class InvalidSsmlException extends __BaseException { + readonly name: "InvalidSsmlException" = "InvalidSsmlException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSsmlException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSsmlException.prototype); + } } /** *

The language specified is not currently supported by Amazon Polly in this * capacity.

*/ -export interface LanguageNotSupportedException extends __SmithyException, $MetadataBearer { - name: "LanguageNotSupportedException"; - $fault: "client"; - message?: string; +export class LanguageNotSupportedException extends __BaseException { + readonly name: "LanguageNotSupportedException" = "LanguageNotSupportedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LanguageNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LanguageNotSupportedException.prototype); + } } /** @@ -709,10 +841,20 @@ export namespace LexiconDescription { *

The maximum size of the specified lexicon would be exceeded by this * operation.

*/ -export interface LexiconSizeExceededException extends __SmithyException, $MetadataBearer { - name: "LexiconSizeExceededException"; - $fault: "client"; - message?: string; +export class LexiconSizeExceededException extends __BaseException { + readonly name: "LexiconSizeExceededException" = "LexiconSizeExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LexiconSizeExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LexiconSizeExceededException.prototype); + } } export interface ListLexiconsInput { @@ -815,30 +957,60 @@ export namespace ListSpeechSynthesisTasksOutput { * selected. Speech marks are only available for content in json * format.

*/ -export interface MarksNotSupportedForFormatException extends __SmithyException, $MetadataBearer { - name: "MarksNotSupportedForFormatException"; - $fault: "client"; - message?: string; +export class MarksNotSupportedForFormatException extends __BaseException { + readonly name: "MarksNotSupportedForFormatException" = "MarksNotSupportedForFormatException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MarksNotSupportedForFormatException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MarksNotSupportedForFormatException.prototype); + } } /** *

The maximum size of the lexeme would be exceeded by this * operation.

*/ -export interface MaxLexemeLengthExceededException extends __SmithyException, $MetadataBearer { - name: "MaxLexemeLengthExceededException"; - $fault: "client"; - message?: string; +export class MaxLexemeLengthExceededException extends __BaseException { + readonly name: "MaxLexemeLengthExceededException" = "MaxLexemeLengthExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxLexemeLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxLexemeLengthExceededException.prototype); + } } /** *

The maximum number of lexicons would be exceeded by this * operation.

*/ -export interface MaxLexiconsNumberExceededException extends __SmithyException, $MetadataBearer { - name: "MaxLexiconsNumberExceededException"; - $fault: "client"; - message?: string; +export class MaxLexiconsNumberExceededException extends __BaseException { + readonly name: "MaxLexiconsNumberExceededException" = "MaxLexiconsNumberExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxLexiconsNumberExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxLexiconsNumberExceededException.prototype); + } } export interface PutLexiconInput { @@ -880,30 +1052,60 @@ export namespace PutLexiconOutput { *

The alphabet specified by the lexicon is not a supported alphabet. * Valid values are x-sampa and ipa.

*/ -export interface UnsupportedPlsAlphabetException extends __SmithyException, $MetadataBearer { - name: "UnsupportedPlsAlphabetException"; - $fault: "client"; - message?: string; +export class UnsupportedPlsAlphabetException extends __BaseException { + readonly name: "UnsupportedPlsAlphabetException" = "UnsupportedPlsAlphabetException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedPlsAlphabetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedPlsAlphabetException.prototype); + } } /** *

The language specified in the lexicon is unsupported. For a list of * supported languages, see Lexicon Attributes.

*/ -export interface UnsupportedPlsLanguageException extends __SmithyException, $MetadataBearer { - name: "UnsupportedPlsLanguageException"; - $fault: "client"; - message?: string; +export class UnsupportedPlsLanguageException extends __BaseException { + readonly name: "UnsupportedPlsLanguageException" = "UnsupportedPlsLanguageException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedPlsLanguageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedPlsLanguageException.prototype); + } } /** *

SSML speech marks are not supported for plain text-type * input.

*/ -export interface SsmlMarksNotSupportedForTextTypeException extends __SmithyException, $MetadataBearer { - name: "SsmlMarksNotSupportedForTextTypeException"; - $fault: "client"; - message?: string; +export class SsmlMarksNotSupportedForTextTypeException extends __BaseException { + readonly name: "SsmlMarksNotSupportedForTextTypeException" = "SsmlMarksNotSupportedForTextTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SsmlMarksNotSupportedForTextTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SsmlMarksNotSupportedForTextTypeException.prototype); + } } export interface StartSpeechSynthesisTaskInput { @@ -1025,10 +1227,20 @@ export namespace StartSpeechSynthesisTaskOutput { * billed characters. SSML tags are not counted as billed * characters.

*/ -export interface TextLengthExceededException extends __SmithyException, $MetadataBearer { - name: "TextLengthExceededException"; - $fault: "client"; - message?: string; +export class TextLengthExceededException extends __BaseException { + readonly name: "TextLengthExceededException" = "TextLengthExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TextLengthExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TextLengthExceededException.prototype); + } } export interface SynthesizeSpeechInput { diff --git a/clients/client-polly/src/protocols/Aws_restJson1.ts b/clients/client-polly/src/protocols/Aws_restJson1.ts index ac17cc7ae3e21..5d7ceabcfda88 100644 --- a/clients/client-polly/src/protocols/Aws_restJson1.ts +++ b/clients/client-polly/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteLexiconCommandInput, DeleteLexiconCommandOutput } from "../commands/DeleteLexiconCommand"; @@ -66,6 +65,7 @@ import { UnsupportedPlsLanguageException, Voice, } from "../models/models_0"; +import { PollyServiceException as __BaseException } from "../models/PollyServiceException"; export const serializeAws_restJson1DeleteLexiconCommand = async ( input: DeleteLexiconCommandInput, @@ -364,41 +364,25 @@ const deserializeAws_restJson1DeleteLexiconCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LexiconNotFoundException": case "com.amazonaws.polly#LexiconNotFoundException": - response = { - ...(await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeVoicesCommand = async ( @@ -431,41 +415,25 @@ const deserializeAws_restJson1DescribeVoicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.polly#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLexiconCommand = async ( @@ -498,41 +466,25 @@ const deserializeAws_restJson1GetLexiconCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LexiconNotFoundException": case "com.amazonaws.polly#LexiconNotFoundException": - response = { - ...(await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSpeechSynthesisTaskCommand = async ( @@ -561,49 +513,28 @@ const deserializeAws_restJson1GetSpeechSynthesisTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTaskIdException": case "com.amazonaws.polly#InvalidTaskIdException": - response = { - ...(await deserializeAws_restJson1InvalidTaskIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidTaskIdExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "SynthesisTaskNotFoundException": case "com.amazonaws.polly#SynthesisTaskNotFoundException": - response = { - ...(await deserializeAws_restJson1SynthesisTaskNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SynthesisTaskNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLexiconsCommand = async ( @@ -636,41 +567,25 @@ const deserializeAws_restJson1ListLexiconsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.polly#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSpeechSynthesisTasksCommand = async ( @@ -703,41 +618,25 @@ const deserializeAws_restJson1ListSpeechSynthesisTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.polly#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutLexiconCommand = async ( @@ -762,81 +661,40 @@ const deserializeAws_restJson1PutLexiconCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLexiconException": case "com.amazonaws.polly#InvalidLexiconException": - response = { - ...(await deserializeAws_restJson1InvalidLexiconExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidLexiconExceptionResponse(parsedOutput, context); case "LexiconSizeExceededException": case "com.amazonaws.polly#LexiconSizeExceededException": - response = { - ...(await deserializeAws_restJson1LexiconSizeExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LexiconSizeExceededExceptionResponse(parsedOutput, context); case "MaxLexemeLengthExceededException": case "com.amazonaws.polly#MaxLexemeLengthExceededException": - response = { - ...(await deserializeAws_restJson1MaxLexemeLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MaxLexemeLengthExceededExceptionResponse(parsedOutput, context); case "MaxLexiconsNumberExceededException": case "com.amazonaws.polly#MaxLexiconsNumberExceededException": - response = { - ...(await deserializeAws_restJson1MaxLexiconsNumberExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MaxLexiconsNumberExceededExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "UnsupportedPlsAlphabetException": case "com.amazonaws.polly#UnsupportedPlsAlphabetException": - response = { - ...(await deserializeAws_restJson1UnsupportedPlsAlphabetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedPlsAlphabetExceptionResponse(parsedOutput, context); case "UnsupportedPlsLanguageException": case "com.amazonaws.polly#UnsupportedPlsLanguageException": - response = { - ...(await deserializeAws_restJson1UnsupportedPlsLanguageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedPlsLanguageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartSpeechSynthesisTaskCommand = async ( @@ -865,121 +723,55 @@ const deserializeAws_restJson1StartSpeechSynthesisTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EngineNotSupportedException": case "com.amazonaws.polly#EngineNotSupportedException": - response = { - ...(await deserializeAws_restJson1EngineNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EngineNotSupportedExceptionResponse(parsedOutput, context); case "InvalidS3BucketException": case "com.amazonaws.polly#InvalidS3BucketException": - response = { - ...(await deserializeAws_restJson1InvalidS3BucketExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidS3BucketExceptionResponse(parsedOutput, context); case "InvalidS3KeyException": case "com.amazonaws.polly#InvalidS3KeyException": - response = { - ...(await deserializeAws_restJson1InvalidS3KeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidS3KeyExceptionResponse(parsedOutput, context); case "InvalidSampleRateException": case "com.amazonaws.polly#InvalidSampleRateException": - response = { - ...(await deserializeAws_restJson1InvalidSampleRateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSampleRateExceptionResponse(parsedOutput, context); case "InvalidSnsTopicArnException": case "com.amazonaws.polly#InvalidSnsTopicArnException": - response = { - ...(await deserializeAws_restJson1InvalidSnsTopicArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSnsTopicArnExceptionResponse(parsedOutput, context); case "InvalidSsmlException": case "com.amazonaws.polly#InvalidSsmlException": - response = { - ...(await deserializeAws_restJson1InvalidSsmlExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSsmlExceptionResponse(parsedOutput, context); case "LanguageNotSupportedException": case "com.amazonaws.polly#LanguageNotSupportedException": - response = { - ...(await deserializeAws_restJson1LanguageNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LanguageNotSupportedExceptionResponse(parsedOutput, context); case "LexiconNotFoundException": case "com.amazonaws.polly#LexiconNotFoundException": - response = { - ...(await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context); case "MarksNotSupportedForFormatException": case "com.amazonaws.polly#MarksNotSupportedForFormatException": - response = { - ...(await deserializeAws_restJson1MarksNotSupportedForFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MarksNotSupportedForFormatExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "SsmlMarksNotSupportedForTextTypeException": case "com.amazonaws.polly#SsmlMarksNotSupportedForTextTypeException": - response = { - ...(await deserializeAws_restJson1SsmlMarksNotSupportedForTextTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SsmlMarksNotSupportedForTextTypeExceptionResponse(parsedOutput, context); case "TextLengthExceededException": case "com.amazonaws.polly#TextLengthExceededException": - response = { - ...(await deserializeAws_restJson1TextLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TextLengthExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SynthesizeSpeechCommand = async ( @@ -1014,454 +806,382 @@ const deserializeAws_restJson1SynthesizeSpeechCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EngineNotSupportedException": case "com.amazonaws.polly#EngineNotSupportedException": - response = { - ...(await deserializeAws_restJson1EngineNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EngineNotSupportedExceptionResponse(parsedOutput, context); case "InvalidSampleRateException": case "com.amazonaws.polly#InvalidSampleRateException": - response = { - ...(await deserializeAws_restJson1InvalidSampleRateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSampleRateExceptionResponse(parsedOutput, context); case "InvalidSsmlException": case "com.amazonaws.polly#InvalidSsmlException": - response = { - ...(await deserializeAws_restJson1InvalidSsmlExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidSsmlExceptionResponse(parsedOutput, context); case "LanguageNotSupportedException": case "com.amazonaws.polly#LanguageNotSupportedException": - response = { - ...(await deserializeAws_restJson1LanguageNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LanguageNotSupportedExceptionResponse(parsedOutput, context); case "LexiconNotFoundException": case "com.amazonaws.polly#LexiconNotFoundException": - response = { - ...(await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LexiconNotFoundExceptionResponse(parsedOutput, context); case "MarksNotSupportedForFormatException": case "com.amazonaws.polly#MarksNotSupportedForFormatException": - response = { - ...(await deserializeAws_restJson1MarksNotSupportedForFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MarksNotSupportedForFormatExceptionResponse(parsedOutput, context); case "ServiceFailureException": case "com.amazonaws.polly#ServiceFailureException": - response = { - ...(await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceFailureExceptionResponse(parsedOutput, context); case "SsmlMarksNotSupportedForTextTypeException": case "com.amazonaws.polly#SsmlMarksNotSupportedForTextTypeException": - response = { - ...(await deserializeAws_restJson1SsmlMarksNotSupportedForTextTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SsmlMarksNotSupportedForTextTypeExceptionResponse(parsedOutput, context); case "TextLengthExceededException": case "com.amazonaws.polly#TextLengthExceededException": - response = { - ...(await deserializeAws_restJson1TextLengthExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TextLengthExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1EngineNotSupportedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EngineNotSupportedException = { - name: "EngineNotSupportedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new EngineNotSupportedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidLexiconExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidLexiconException = { - name: "InvalidLexiconException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidLexiconException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidS3BucketExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidS3BucketException = { - name: "InvalidS3BucketException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidS3BucketException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidS3KeyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidS3KeyException = { - name: "InvalidS3KeyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidS3KeyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidSampleRateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSampleRateException = { - name: "InvalidSampleRateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidSampleRateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidSnsTopicArnExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSnsTopicArnException = { - name: "InvalidSnsTopicArnException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidSnsTopicArnException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidSsmlExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSsmlException = { - name: "InvalidSsmlException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidSsmlException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidTaskIdExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTaskIdException = { - name: "InvalidTaskIdException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidTaskIdException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LanguageNotSupportedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LanguageNotSupportedException = { - name: "LanguageNotSupportedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LanguageNotSupportedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LexiconNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LexiconNotFoundException = { - name: "LexiconNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LexiconNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LexiconSizeExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LexiconSizeExceededException = { - name: "LexiconSizeExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LexiconSizeExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MarksNotSupportedForFormatExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MarksNotSupportedForFormatException = { - name: "MarksNotSupportedForFormatException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MarksNotSupportedForFormatException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MaxLexemeLengthExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MaxLexemeLengthExceededException = { - name: "MaxLexemeLengthExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MaxLexemeLengthExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MaxLexiconsNumberExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MaxLexiconsNumberExceededException = { - name: "MaxLexiconsNumberExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MaxLexiconsNumberExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceFailureException = { - name: "ServiceFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SsmlMarksNotSupportedForTextTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SsmlMarksNotSupportedForTextTypeException = { - name: "SsmlMarksNotSupportedForTextTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SsmlMarksNotSupportedForTextTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SynthesisTaskNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SynthesisTaskNotFoundException = { - name: "SynthesisTaskNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SynthesisTaskNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TextLengthExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TextLengthExceededException = { - name: "TextLengthExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TextLengthExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedPlsAlphabetExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedPlsAlphabetException = { - name: "UnsupportedPlsAlphabetException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedPlsAlphabetException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedPlsLanguageExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedPlsLanguageException = { - name: "UnsupportedPlsLanguageException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnsupportedPlsLanguageException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1LexiconNameList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-pricing/src/index.ts b/clients/client-pricing/src/index.ts index c9ca11e78ff3e..23557301b88e6 100644 --- a/clients/client-pricing/src/index.ts +++ b/clients/client-pricing/src/index.ts @@ -3,3 +3,4 @@ export * from "./PricingClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { PricingServiceException } from "./models/PricingServiceException"; diff --git a/clients/client-pricing/src/models/PricingServiceException.ts b/clients/client-pricing/src/models/PricingServiceException.ts new file mode 100644 index 0000000000000..709dc9f115821 --- /dev/null +++ b/clients/client-pricing/src/models/PricingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Pricing service. + */ +export class PricingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, PricingServiceException.prototype); + } +} diff --git a/clients/client-pricing/src/models/models_0.ts b/clients/client-pricing/src/models/models_0.ts index 85b149066c7d3..2b6fb201dc020 100644 --- a/clients/client-pricing/src/models/models_0.ts +++ b/clients/client-pricing/src/models/models_0.ts @@ -1,5 +1,10 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { PricingServiceException as __BaseException } from "./PricingServiceException"; /** *

The values of a given attribute, such as Throughput Optimized HDD or Provisioned @@ -111,46 +116,106 @@ export namespace DescribeServicesResponse { /** *

The pagination token expired. Try again without a pagination token.

*/ -export interface ExpiredNextTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredNextTokenException"; - $fault: "client"; +export class ExpiredNextTokenException extends __BaseException { + readonly name: "ExpiredNextTokenException" = "ExpiredNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredNextTokenException.prototype); + this.Message = opts.Message; + } } /** *

An error on the server occurred during the processing of your request. Try again later.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + this.Message = opts.Message; + } } /** *

The pagination token is invalid. Try again without a pagination token.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } /** *

One or more parameters had an invalid value.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource can't be found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface GetAttributeValuesRequest { diff --git a/clients/client-pricing/src/protocols/Aws_json1_1.ts b/clients/client-pricing/src/protocols/Aws_json1_1.ts index bf2c9e1cc147e..685da84d4a1c3 100644 --- a/clients/client-pricing/src/protocols/Aws_json1_1.ts +++ b/clients/client-pricing/src/protocols/Aws_json1_1.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectString as __expectString, LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectString as __expectString, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DescribeServicesCommandInput, DescribeServicesCommandOutput } from "../commands/DescribeServicesCommand"; @@ -28,6 +30,7 @@ import { NotFoundException, Service, } from "../models/models_0"; +import { PricingServiceException as __BaseException } from "../models/PricingServiceException"; export const serializeAws_json1_1DescribeServicesCommand = async ( input: DescribeServicesCommandInput, @@ -93,65 +96,34 @@ const deserializeAws_json1_1DescribeServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredNextTokenException": case "com.amazonaws.pricing#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.pricing#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.pricing#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.pricing#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pricing#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAttributeValuesCommand = async ( @@ -179,65 +151,34 @@ const deserializeAws_json1_1GetAttributeValuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredNextTokenException": case "com.amazonaws.pricing#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.pricing#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.pricing#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.pricing#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pricing#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetProductsCommand = async ( @@ -265,65 +206,34 @@ const deserializeAws_json1_1GetProductsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredNextTokenException": case "com.amazonaws.pricing#ExpiredNextTokenException": - response = { - ...(await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExpiredNextTokenExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.pricing#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.pricing#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.pricing#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.pricing#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ExpiredNextTokenExceptionResponse = async ( @@ -332,13 +242,11 @@ const deserializeAws_json1_1ExpiredNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExpiredNextTokenException(body, context); - const contents: ExpiredNextTokenException = { - name: "ExpiredNextTokenException", - $fault: "client", + const exception = new ExpiredNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -347,13 +255,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -362,13 +268,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -377,13 +281,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -392,13 +294,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1DescribeServicesRequest = (input: DescribeServicesRequest, context: __SerdeContext): any => { diff --git a/clients/client-proton/src/index.ts b/clients/client-proton/src/index.ts index fa12d9e050e7b..ead2c0e327601 100644 --- a/clients/client-proton/src/index.ts +++ b/clients/client-proton/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { ProtonServiceException } from "./models/ProtonServiceException"; diff --git a/clients/client-proton/src/models/ProtonServiceException.ts b/clients/client-proton/src/models/ProtonServiceException.ts new file mode 100644 index 0000000000000..409f94a95c13d --- /dev/null +++ b/clients/client-proton/src/models/ProtonServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Proton service. + */ +export class ProtonServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ProtonServiceException.prototype); + } +} diff --git a/clients/client-proton/src/models/models_0.ts b/clients/client-proton/src/models/models_0.ts index 23fc41291d49c..6fa812f04087d 100644 --- a/clients/client-proton/src/models/models_0.ts +++ b/clients/client-proton/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ProtonServiceException as __BaseException } from "./ProtonServiceException"; export interface AcceptEnvironmentAccountConnectionInput { /** @@ -101,59 +103,119 @@ export namespace AcceptEnvironmentAccountConnectionOutput { /** *

There isn't sufficient access for performing this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

The request couldn't be made due to a conflicting operation or resource.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** *

The request failed to register with the service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The requested resource wasn't found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: { - throttling: true; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The input is invalid or an out-of-range value was supplied for the input parameter.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export enum RepositoryProvider { @@ -802,10 +864,20 @@ export namespace CreateEnvironmentAccountConnectionOutput { *

A quota was exceeded. For more information, see Proton Quotas in the Proton Administrator * Guide.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface DeleteEnvironmentAccountConnectionInput { diff --git a/clients/client-proton/src/protocols/Aws_json1_0.ts b/clients/client-proton/src/protocols/Aws_json1_0.ts index 0ede5e050df3b..af7281e83a6ec 100644 --- a/clients/client-proton/src/protocols/Aws_json1_0.ts +++ b/clients/client-proton/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -407,6 +406,7 @@ import { UpdateTemplateSyncConfigOutput, ValidationException, } from "../models/models_0"; +import { ProtonServiceException as __BaseException } from "../models/ProtonServiceException"; export const serializeAws_json1_0AcceptEnvironmentAccountConnectionCommand = async ( input: AcceptEnvironmentAccountConnectionCommandInput, @@ -1304,73 +1304,37 @@ const deserializeAws_json1_0AcceptEnvironmentAccountConnectionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CancelEnvironmentDeploymentCommand = async ( @@ -1398,73 +1362,37 @@ const deserializeAws_json1_0CancelEnvironmentDeploymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CancelServiceInstanceDeploymentCommand = async ( @@ -1492,73 +1420,37 @@ const deserializeAws_json1_0CancelServiceInstanceDeploymentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CancelServicePipelineDeploymentCommand = async ( @@ -1586,73 +1478,37 @@ const deserializeAws_json1_0CancelServicePipelineDeploymentCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateEnvironmentCommand = async ( @@ -1680,81 +1536,40 @@ const deserializeAws_json1_0CreateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateEnvironmentAccountConnectionCommand = async ( @@ -1782,73 +1597,37 @@ const deserializeAws_json1_0CreateEnvironmentAccountConnectionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateEnvironmentTemplateCommand = async ( @@ -1876,73 +1655,37 @@ const deserializeAws_json1_0CreateEnvironmentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateEnvironmentTemplateVersionCommand = async ( @@ -1970,81 +1713,40 @@ const deserializeAws_json1_0CreateEnvironmentTemplateVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateRepositoryCommand = async ( @@ -2072,73 +1774,37 @@ const deserializeAws_json1_0CreateRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateServiceCommand = async ( @@ -2166,81 +1832,40 @@ const deserializeAws_json1_0CreateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateServiceTemplateCommand = async ( @@ -2268,73 +1893,37 @@ const deserializeAws_json1_0CreateServiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateServiceTemplateVersionCommand = async ( @@ -2362,81 +1951,40 @@ const deserializeAws_json1_0CreateServiceTemplateVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateTemplateSyncConfigCommand = async ( @@ -2464,73 +2012,37 @@ const deserializeAws_json1_0CreateTemplateSyncConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteEnvironmentCommand = async ( @@ -2558,73 +2070,37 @@ const deserializeAws_json1_0DeleteEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteEnvironmentAccountConnectionCommand = async ( @@ -2652,73 +2128,37 @@ const deserializeAws_json1_0DeleteEnvironmentAccountConnectionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteEnvironmentTemplateCommand = async ( @@ -2746,73 +2186,37 @@ const deserializeAws_json1_0DeleteEnvironmentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteEnvironmentTemplateVersionCommand = async ( @@ -2840,73 +2244,37 @@ const deserializeAws_json1_0DeleteEnvironmentTemplateVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteRepositoryCommand = async ( @@ -2934,73 +2302,37 @@ const deserializeAws_json1_0DeleteRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteServiceCommand = async ( @@ -3028,73 +2360,37 @@ const deserializeAws_json1_0DeleteServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteServiceTemplateCommand = async ( @@ -3122,73 +2418,37 @@ const deserializeAws_json1_0DeleteServiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteServiceTemplateVersionCommand = async ( @@ -3216,73 +2476,37 @@ const deserializeAws_json1_0DeleteServiceTemplateVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteTemplateSyncConfigCommand = async ( @@ -3310,73 +2534,37 @@ const deserializeAws_json1_0DeleteTemplateSyncConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetAccountSettingsCommand = async ( @@ -3404,65 +2592,34 @@ const deserializeAws_json1_0GetAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEnvironmentCommand = async ( @@ -3490,65 +2647,34 @@ const deserializeAws_json1_0GetEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEnvironmentAccountConnectionCommand = async ( @@ -3576,65 +2702,34 @@ const deserializeAws_json1_0GetEnvironmentAccountConnectionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEnvironmentTemplateCommand = async ( @@ -3662,65 +2757,34 @@ const deserializeAws_json1_0GetEnvironmentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetEnvironmentTemplateVersionCommand = async ( @@ -3748,65 +2812,34 @@ const deserializeAws_json1_0GetEnvironmentTemplateVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetRepositoryCommand = async ( @@ -3834,65 +2867,34 @@ const deserializeAws_json1_0GetRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetRepositorySyncStatusCommand = async ( @@ -3920,65 +2922,34 @@ const deserializeAws_json1_0GetRepositorySyncStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetServiceCommand = async ( @@ -4006,65 +2977,34 @@ const deserializeAws_json1_0GetServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetServiceInstanceCommand = async ( @@ -4092,65 +3032,34 @@ const deserializeAws_json1_0GetServiceInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetServiceTemplateCommand = async ( @@ -4178,65 +3087,34 @@ const deserializeAws_json1_0GetServiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetServiceTemplateVersionCommand = async ( @@ -4264,65 +3142,34 @@ const deserializeAws_json1_0GetServiceTemplateVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetTemplateSyncConfigCommand = async ( @@ -4350,65 +3197,34 @@ const deserializeAws_json1_0GetTemplateSyncConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetTemplateSyncStatusCommand = async ( @@ -4436,65 +3252,34 @@ const deserializeAws_json1_0GetTemplateSyncStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListEnvironmentAccountConnectionsCommand = async ( @@ -4522,57 +3307,31 @@ const deserializeAws_json1_0ListEnvironmentAccountConnectionsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListEnvironmentOutputsCommand = async ( @@ -4600,65 +3359,34 @@ const deserializeAws_json1_0ListEnvironmentOutputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListEnvironmentProvisionedResourcesCommand = async ( @@ -4686,65 +3414,34 @@ const deserializeAws_json1_0ListEnvironmentProvisionedResourcesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListEnvironmentsCommand = async ( @@ -4772,65 +3469,34 @@ const deserializeAws_json1_0ListEnvironmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListEnvironmentTemplatesCommand = async ( @@ -4858,57 +3524,31 @@ const deserializeAws_json1_0ListEnvironmentTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListEnvironmentTemplateVersionsCommand = async ( @@ -4936,65 +3576,34 @@ const deserializeAws_json1_0ListEnvironmentTemplateVersionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListRepositoriesCommand = async ( @@ -5022,65 +3631,34 @@ const deserializeAws_json1_0ListRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListRepositorySyncDefinitionsCommand = async ( @@ -5108,57 +3686,31 @@ const deserializeAws_json1_0ListRepositorySyncDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServiceInstanceOutputsCommand = async ( @@ -5186,65 +3738,34 @@ const deserializeAws_json1_0ListServiceInstanceOutputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServiceInstanceProvisionedResourcesCommand = async ( @@ -5272,65 +3793,34 @@ const deserializeAws_json1_0ListServiceInstanceProvisionedResourcesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServiceInstancesCommand = async ( @@ -5358,65 +3848,34 @@ const deserializeAws_json1_0ListServiceInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServicePipelineOutputsCommand = async ( @@ -5444,65 +3903,34 @@ const deserializeAws_json1_0ListServicePipelineOutputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServicePipelineProvisionedResourcesCommand = async ( @@ -5530,65 +3958,34 @@ const deserializeAws_json1_0ListServicePipelineProvisionedResourcesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServicesCommand = async ( @@ -5616,57 +4013,31 @@ const deserializeAws_json1_0ListServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServiceTemplatesCommand = async ( @@ -5694,57 +4065,31 @@ const deserializeAws_json1_0ListServiceTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListServiceTemplateVersionsCommand = async ( @@ -5772,65 +4117,34 @@ const deserializeAws_json1_0ListServiceTemplateVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -5858,65 +4172,34 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0NotifyResourceDeploymentStatusChangeCommand = async ( @@ -5944,81 +4227,40 @@ const deserializeAws_json1_0NotifyResourceDeploymentStatusChangeCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RejectEnvironmentAccountConnectionCommand = async ( @@ -6046,73 +4288,37 @@ const deserializeAws_json1_0RejectEnvironmentAccountConnectionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -6140,73 +4346,37 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -6234,73 +4404,37 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateAccountSettingsCommand = async ( @@ -6328,65 +4462,34 @@ const deserializeAws_json1_0UpdateAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateEnvironmentCommand = async ( @@ -6414,73 +4517,37 @@ const deserializeAws_json1_0UpdateEnvironmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateEnvironmentAccountConnectionCommand = async ( @@ -6508,73 +4575,37 @@ const deserializeAws_json1_0UpdateEnvironmentAccountConnectionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateEnvironmentTemplateCommand = async ( @@ -6602,73 +4633,37 @@ const deserializeAws_json1_0UpdateEnvironmentTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateEnvironmentTemplateVersionCommand = async ( @@ -6696,73 +4691,37 @@ const deserializeAws_json1_0UpdateEnvironmentTemplateVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateServiceCommand = async ( @@ -6790,81 +4749,40 @@ const deserializeAws_json1_0UpdateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.proton#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateServiceInstanceCommand = async ( @@ -6892,73 +4810,37 @@ const deserializeAws_json1_0UpdateServiceInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateServicePipelineCommand = async ( @@ -6986,73 +4868,37 @@ const deserializeAws_json1_0UpdateServicePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateServiceTemplateCommand = async ( @@ -7080,73 +4926,37 @@ const deserializeAws_json1_0UpdateServiceTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateServiceTemplateVersionCommand = async ( @@ -7174,73 +4984,37 @@ const deserializeAws_json1_0UpdateServiceTemplateVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateTemplateSyncConfigCommand = async ( @@ -7268,73 +5042,37 @@ const deserializeAws_json1_0UpdateTemplateSyncConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.proton#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.proton#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.proton#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.proton#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.proton#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.proton#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -7343,13 +5081,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -7358,13 +5094,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -7373,14 +5107,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -7389,13 +5120,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( @@ -7404,13 +5133,11 @@ const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -7419,16 +5146,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: { - throttling: true, - }, + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -7437,13 +5159,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0AcceptEnvironmentAccountConnectionInput = ( diff --git a/clients/client-qldb-session/src/index.ts b/clients/client-qldb-session/src/index.ts index ed92e70edda30..783ee549b15e2 100644 --- a/clients/client-qldb-session/src/index.ts +++ b/clients/client-qldb-session/src/index.ts @@ -2,3 +2,4 @@ export * from "./QLDBSession"; export * from "./QLDBSessionClient"; export * from "./commands"; export * from "./models"; +export { QLDBSessionServiceException } from "./models/QLDBSessionServiceException"; diff --git a/clients/client-qldb-session/src/models/QLDBSessionServiceException.ts b/clients/client-qldb-session/src/models/QLDBSessionServiceException.ts new file mode 100644 index 0000000000000..3ea04bd47b961 --- /dev/null +++ b/clients/client-qldb-session/src/models/QLDBSessionServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from QLDBSession service. + */ +export class QLDBSessionServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, QLDBSessionServiceException.prototype); + } +} diff --git a/clients/client-qldb-session/src/models/models_0.ts b/clients/client-qldb-session/src/models/models_0.ts index 588e109dcac19..ae4deb5173a2b 100644 --- a/clients/client-qldb-session/src/models/models_0.ts +++ b/clients/client-qldb-session/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { QLDBSessionServiceException as __BaseException } from "./QLDBSessionServiceException"; /** *

Contains the details of the transaction to abort.

@@ -59,20 +62,45 @@ export namespace AbortTransactionResult { *

Returned if the request is malformed or contains an error such as an invalid parameter * value or a missing required parameter.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Returned when the request exceeds the processing capacity of the ledger.

*/ -export interface CapacityExceededException extends __SmithyException, $MetadataBearer { - name: "CapacityExceededException"; - $fault: "server"; +export class CapacityExceededException extends __BaseException { + readonly name: "CapacityExceededException" = "CapacityExceededException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CapacityExceededException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, CapacityExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -358,39 +386,88 @@ export namespace FetchPageResult { /** *

Returned if the session doesn't exist anymore because it timed out or expired.

*/ -export interface InvalidSessionException extends __SmithyException, $MetadataBearer { - name: "InvalidSessionException"; - $fault: "client"; +export class InvalidSessionException extends __BaseException { + readonly name: "InvalidSessionException" = "InvalidSessionException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSessionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSessionException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Returned if a resource limit such as number of active sessions is exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Returned when a transaction cannot be written to the journal due to a failure in the * verification phase of optimistic concurrency control (OCC).

*/ -export interface OccConflictException extends __SmithyException, $MetadataBearer { - name: "OccConflictException"; - $fault: "client"; +export class OccConflictException extends __BaseException { + readonly name: "OccConflictException" = "OccConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OccConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OccConflictException.prototype); + this.Message = opts.Message; + } } /** *

Returned when the rate of requests exceeds the allowed throughput.

*/ -export interface RateExceededException extends __SmithyException, $MetadataBearer { - name: "RateExceededException"; - $fault: "client"; +export class RateExceededException extends __BaseException { + readonly name: "RateExceededException" = "RateExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RateExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RateExceededException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-qldb-session/src/protocols/Aws_json1_0.ts b/clients/client-qldb-session/src/protocols/Aws_json1_0.ts index 45ce775ea44dd..a2d5eac956667 100644 --- a/clients/client-qldb-session/src/protocols/Aws_json1_0.ts +++ b/clients/client-qldb-session/src/protocols/Aws_json1_0.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectLong as __expectLong, expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectLong as __expectLong, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { SendCommandCommandInput, SendCommandCommandOutput } from "../commands/SendCommandCommand"; @@ -38,6 +40,7 @@ import { TimingInformation, ValueHolder, } from "../models/models_0"; +import { QLDBSessionServiceException as __BaseException } from "../models/QLDBSessionServiceException"; export const serializeAws_json1_0SendCommandCommand = async ( input: SendCommandCommandInput, @@ -77,73 +80,37 @@ const deserializeAws_json1_0SendCommandCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.qldbsession#BadRequestException": - response = { - ...(await deserializeAws_json1_0BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0BadRequestExceptionResponse(parsedOutput, context); case "CapacityExceededException": case "com.amazonaws.qldbsession#CapacityExceededException": - response = { - ...(await deserializeAws_json1_0CapacityExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0CapacityExceededExceptionResponse(parsedOutput, context); case "InvalidSessionException": case "com.amazonaws.qldbsession#InvalidSessionException": - response = { - ...(await deserializeAws_json1_0InvalidSessionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidSessionExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.qldbsession#LimitExceededException": - response = { - ...(await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededExceptionResponse(parsedOutput, context); case "OccConflictException": case "com.amazonaws.qldbsession#OccConflictException": - response = { - ...(await deserializeAws_json1_0OccConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OccConflictExceptionResponse(parsedOutput, context); case "RateExceededException": case "com.amazonaws.qldbsession#RateExceededException": - response = { - ...(await deserializeAws_json1_0RateExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RateExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0BadRequestExceptionResponse = async ( @@ -152,13 +119,11 @@ const deserializeAws_json1_0BadRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0BadRequestException(body, context); - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", + const exception = new BadRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0CapacityExceededExceptionResponse = async ( @@ -167,13 +132,11 @@ const deserializeAws_json1_0CapacityExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0CapacityExceededException(body, context); - const contents: CapacityExceededException = { - name: "CapacityExceededException", - $fault: "server", + const exception = new CapacityExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidSessionExceptionResponse = async ( @@ -182,13 +145,11 @@ const deserializeAws_json1_0InvalidSessionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidSessionException(body, context); - const contents: InvalidSessionException = { - name: "InvalidSessionException", - $fault: "client", + const exception = new InvalidSessionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededExceptionResponse = async ( @@ -197,13 +158,11 @@ const deserializeAws_json1_0LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0OccConflictExceptionResponse = async ( @@ -212,13 +171,11 @@ const deserializeAws_json1_0OccConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0OccConflictException(body, context); - const contents: OccConflictException = { - name: "OccConflictException", - $fault: "client", + const exception = new OccConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0RateExceededExceptionResponse = async ( @@ -227,13 +184,11 @@ const deserializeAws_json1_0RateExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0RateExceededException(body, context); - const contents: RateExceededException = { - name: "RateExceededException", - $fault: "client", + const exception = new RateExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0AbortTransactionRequest = (input: AbortTransactionRequest, context: __SerdeContext): any => { diff --git a/clients/client-qldb/src/index.ts b/clients/client-qldb/src/index.ts index c2ec8f32fee43..429877cd09bc3 100644 --- a/clients/client-qldb/src/index.ts +++ b/clients/client-qldb/src/index.ts @@ -3,3 +3,4 @@ export * from "./QLDBClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { QLDBServiceException } from "./models/QLDBServiceException"; diff --git a/clients/client-qldb/src/models/QLDBServiceException.ts b/clients/client-qldb/src/models/QLDBServiceException.ts new file mode 100644 index 0000000000000..d1f85b0e88b93 --- /dev/null +++ b/clients/client-qldb/src/models/QLDBServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from QLDB service. + */ +export class QLDBServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, QLDBServiceException.prototype); + } +} diff --git a/clients/client-qldb/src/models/models_0.ts b/clients/client-qldb/src/models/models_0.ts index 7e09a72112d7c..da210672e7b52 100644 --- a/clients/client-qldb/src/models/models_0.ts +++ b/clients/client-qldb/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { QLDBServiceException as __BaseException } from "./QLDBServiceException"; export interface CancelJournalKinesisStreamRequest { /** @@ -42,22 +44,35 @@ export namespace CancelJournalKinesisStreamResponse { /** *

One or more parameters in the request aren't valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The name of the invalid parameter.

*/ ParameterName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + this.ParameterName = opts.ParameterName; + } } /** *

The specified resource doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource.

@@ -68,14 +83,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The name of the resource.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ResourceName = opts.ResourceName; + } } /** *

The operation failed because a condition wasn't satisfied in advance.

*/ -export interface ResourcePreconditionNotMetException extends __SmithyException, $MetadataBearer { - name: "ResourcePreconditionNotMetException"; - $fault: "client"; +export class ResourcePreconditionNotMetException extends __BaseException { + readonly name: "ResourcePreconditionNotMetException" = "ResourcePreconditionNotMetException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource.

@@ -86,6 +115,20 @@ export interface ResourcePreconditionNotMetException extends __SmithyException, *

The name of the resource.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourcePreconditionNotMetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourcePreconditionNotMetException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ResourceName = opts.ResourceName; + } } export enum PermissionsMode { @@ -275,22 +318,35 @@ export namespace CreateLedgerResponse { /** *

You have reached the limit on the maximum number of resources allowed.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource.

@@ -301,14 +357,28 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

The name of the resource.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ResourceName = opts.ResourceName; + } } /** *

The specified resource can't be modified at this time.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource.

@@ -319,6 +389,20 @@ export interface ResourceInUseException extends __SmithyException, $MetadataBear *

The name of the resource.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ResourceName = opts.ResourceName; + } } export interface DeleteLedgerRequest { diff --git a/clients/client-qldb/src/protocols/Aws_restJson1.ts b/clients/client-qldb/src/protocols/Aws_restJson1.ts index ab3701f8a9f22..ae699bb6c6a5f 100644 --- a/clients/client-qldb/src/protocols/Aws_restJson1.ts +++ b/clients/client-qldb/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -79,6 +78,7 @@ import { S3ExportConfiguration, ValueHolder, } from "../models/models_0"; +import { QLDBServiceException as __BaseException } from "../models/QLDBServiceException"; export const serializeAws_restJson1CancelJournalKinesisStreamCommand = async ( input: CancelJournalKinesisStreamCommandInput, @@ -786,49 +786,28 @@ const deserializeAws_restJson1CancelJournalKinesisStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLedgerCommand = async ( @@ -881,57 +860,31 @@ const deserializeAws_restJson1CreateLedgerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.qldb#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.qldb#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.qldb#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLedgerCommand = async ( @@ -956,57 +909,31 @@ const deserializeAws_restJson1DeleteLedgerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.qldb#ResourceInUseException": - response = { - ...(await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJournalKinesisStreamCommand = async ( @@ -1035,49 +962,28 @@ const deserializeAws_restJson1DescribeJournalKinesisStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeJournalS3ExportCommand = async ( @@ -1106,33 +1012,22 @@ const deserializeAws_restJson1DescribeJournalS3ExportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeLedgerCommand = async ( @@ -1188,41 +1083,25 @@ const deserializeAws_restJson1DescribeLedgerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportJournalToS3Command = async ( @@ -1251,41 +1130,25 @@ const deserializeAws_restJson1ExportJournalToS3CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBlockCommand = async ( @@ -1318,49 +1181,28 @@ const deserializeAws_restJson1GetBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDigestCommand = async ( @@ -1393,49 +1235,28 @@ const deserializeAws_restJson1GetDigestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRevisionCommand = async ( @@ -1468,49 +1289,28 @@ const deserializeAws_restJson1GetRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJournalKinesisStreamsForLedgerCommand = async ( @@ -1543,49 +1343,28 @@ const deserializeAws_restJson1ListJournalKinesisStreamsForLedgerCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJournalS3ExportsCommand = async ( @@ -1618,25 +1397,19 @@ const deserializeAws_restJson1ListJournalS3ExportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListJournalS3ExportsForLedgerCommand = async ( @@ -1669,25 +1442,19 @@ const deserializeAws_restJson1ListJournalS3ExportsForLedgerCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLedgersCommand = async ( @@ -1720,25 +1487,19 @@ const deserializeAws_restJson1ListLedgersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1767,41 +1528,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StreamJournalToKinesisCommand = async ( @@ -1830,49 +1575,28 @@ const deserializeAws_restJson1StreamJournalToKinesisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourcePreconditionNotMetException": case "com.amazonaws.qldb#ResourcePreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1897,41 +1621,25 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1956,41 +1664,25 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLedgerCommand = async ( @@ -2042,41 +1734,25 @@ const deserializeAws_restJson1UpdateLedgerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLedgerPermissionsModeCommand = async ( @@ -2113,54 +1789,32 @@ const deserializeAws_restJson1UpdateLedgerPermissionsModeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.qldb#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.qldb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ParameterName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2168,20 +1822,18 @@ const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( if (data.ParameterName !== undefined && data.ParameterName !== null) { contents.ParameterName = __expectString(data.ParameterName); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2189,21 +1841,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2214,21 +1863,18 @@ const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2239,21 +1885,18 @@ const deserializeAws_restJson1ResourceInUseExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceInUseException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2264,21 +1907,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourcePreconditionNotMetException = { - name: "ResourcePreconditionNotMetException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2289,7 +1929,11 @@ const deserializeAws_restJson1ResourcePreconditionNotMetExceptionResponse = asyn if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourcePreconditionNotMetException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1KinesisConfiguration = (input: KinesisConfiguration, context: __SerdeContext): any => { diff --git a/clients/client-quicksight/src/index.ts b/clients/client-quicksight/src/index.ts index cce35d838650c..71fedade26687 100644 --- a/clients/client-quicksight/src/index.ts +++ b/clients/client-quicksight/src/index.ts @@ -3,3 +3,4 @@ export * from "./QuickSightClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { QuickSightServiceException } from "./models/QuickSightServiceException"; diff --git a/clients/client-quicksight/src/models/QuickSightServiceException.ts b/clients/client-quicksight/src/models/QuickSightServiceException.ts new file mode 100644 index 0000000000000..3c554e8b4e10c --- /dev/null +++ b/clients/client-quicksight/src/models/QuickSightServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from QuickSight service. + */ +export class QuickSightServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, QuickSightServiceException.prototype); + } +} diff --git a/clients/client-quicksight/src/models/models_0.ts b/clients/client-quicksight/src/models/models_0.ts index 8e6c3bb11e315..386cb8e20d241 100644 --- a/clients/client-quicksight/src/models/models_0.ts +++ b/clients/client-quicksight/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { QuickSightServiceException as __BaseException } from "./QuickSightServiceException"; /** *

You don't have access to this item. The provided credentials couldn't be @@ -7,14 +9,27 @@ import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException * account is authorized to use the Amazon QuickSight service, that your policies have the * correct permissions, and that you are using the correct access keys.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -713,27 +728,53 @@ export namespace CancelIngestionResponse { /** *

An internal failure occurred.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

One or more parameters has a value that isn't valid.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum ExceptionResourceType { @@ -751,9 +792,9 @@ export enum ExceptionResourceType { /** *

The resource specified already exists.

*/ -export interface ResourceExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceExistsException"; - $fault: "client"; +export class ResourceExistsException extends __BaseException { + readonly name: "ResourceExistsException" = "ResourceExistsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The resource type for this request.

@@ -764,14 +805,28 @@ export interface ResourceExistsException extends __SmithyException, $MetadataBea *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceExistsException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.RequestId = opts.RequestId; + } } /** *

One or more resources can't be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The resource type for this request.

@@ -782,19 +837,46 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.RequestId = opts.RequestId; + } } /** *

Access is throttled.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum ColumnDataType { @@ -1057,24 +1139,50 @@ export enum ColumnTagName { *

A resource is already in a state that indicates an operation is happening that must complete * before a new update can be applied.

*/ -export interface ConcurrentUpdatingException extends __SmithyException, $MetadataBearer { - name: "ConcurrentUpdatingException"; - $fault: "server"; +export class ConcurrentUpdatingException extends __BaseException { + readonly name: "ConcurrentUpdatingException" = "ConcurrentUpdatingException"; + readonly $fault: "server" = "server"; Message?: string; RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentUpdatingException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentUpdatingException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** *

Updating or deleting a resource can cause an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -1184,9 +1292,9 @@ export namespace CreateAccountCustomizationResponse { /** *

This resource is currently unavailable.

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "server"; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; /** *

The resource type for this request.

@@ -1197,6 +1305,20 @@ export interface ResourceUnavailableException extends __SmithyException, $Metada *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.RequestId = opts.RequestId; + } } /** @@ -1471,14 +1593,27 @@ export namespace CreateAnalysisResponse { * Amazon QuickSight currently has Standard Edition and Enterprise Edition. Not every operation and * capability is available in every edition.

*/ -export interface UnsupportedUserEditionException extends __SmithyException, $MetadataBearer { - name: "UnsupportedUserEditionException"; - $fault: "client"; +export class UnsupportedUserEditionException extends __BaseException { + readonly name: "UnsupportedUserEditionException" = "UnsupportedUserEditionException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedUserEditionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedUserEditionException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -2780,9 +2915,9 @@ export namespace CreateDataSetResponse { /** *

A limit is exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; /** *

Limit exceeded.

@@ -2793,6 +2928,20 @@ export interface LimitExceededException extends __SmithyException, $MetadataBear *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.RequestId = opts.RequestId; + } } /** @@ -4570,14 +4719,27 @@ export namespace CreateGroupResponse { /** *

One or more preconditions aren't met.

*/ -export interface PreconditionNotMetException extends __SmithyException, $MetadataBearer { - name: "PreconditionNotMetException"; - $fault: "client"; +export class PreconditionNotMetException extends __BaseException { + readonly name: "PreconditionNotMetException" = "PreconditionNotMetException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionNotMetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionNotMetException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface CreateGroupMembershipRequest { @@ -8224,14 +8386,27 @@ export namespace DescribeIAMPolicyAssignmentResponse { /** *

The NextToken value isn't valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface DescribeIngestionRequest { diff --git a/clients/client-quicksight/src/models/models_1.ts b/clients/client-quicksight/src/models/models_1.ts index 8b2b9cc14363f..8d21c3642c35b 100644 --- a/clients/client-quicksight/src/models/models_1.ts +++ b/clients/client-quicksight/src/models/models_1.ts @@ -1,5 +1,5 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { _Parameters, @@ -47,6 +47,7 @@ import { ThemeType, VpcConnectionProperties, } from "./models_0"; +import { QuickSightServiceException as __BaseException } from "./QuickSightServiceException"; export enum UserRole { ADMIN = "ADMIN", @@ -197,14 +198,27 @@ export namespace DescribeUserResponse { *

The domain specified isn't on the allow list. All domains for embedded dashboards must be * added to the approved list by an Amazon QuickSight admin.

*/ -export interface DomainNotWhitelistedException extends __SmithyException, $MetadataBearer { - name: "DomainNotWhitelistedException"; - $fault: "client"; +export class DomainNotWhitelistedException extends __BaseException { + readonly name: "DomainNotWhitelistedException" = "DomainNotWhitelistedException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainNotWhitelistedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainNotWhitelistedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export enum EmbeddingIdentityType { @@ -414,14 +428,27 @@ export namespace GenerateEmbedUrlForAnonymousUserResponse { *

The number of minutes specified for the lifetime of a session isn't valid. The session * lifetime must be 15-600 minutes.

*/ -export interface SessionLifetimeInMinutesInvalidException extends __SmithyException, $MetadataBearer { - name: "SessionLifetimeInMinutesInvalidException"; - $fault: "client"; +export class SessionLifetimeInMinutesInvalidException extends __BaseException { + readonly name: "SessionLifetimeInMinutesInvalidException" = "SessionLifetimeInMinutesInvalidException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SessionLifetimeInMinutesInvalidException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SessionLifetimeInMinutesInvalidException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -435,14 +462,27 @@ export interface SessionLifetimeInMinutesInvalidException extends __SmithyExcept *
API operation with the * --identity-type ANONYMOUS option.

*/ -export interface UnsupportedPricingPlanException extends __SmithyException, $MetadataBearer { - name: "UnsupportedPricingPlanException"; - $fault: "client"; +export class UnsupportedPricingPlanException extends __BaseException { + readonly name: "UnsupportedPricingPlanException" = "UnsupportedPricingPlanException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedPricingPlanException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedPricingPlanException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } /** @@ -667,14 +707,27 @@ export namespace GenerateEmbedUrlForRegisteredUserResponse { * that requires finding a user based on a provided user name, such as * DeleteUser, DescribeUser, and so on.

*/ -export interface QuickSightUserNotFoundException extends __SmithyException, $MetadataBearer { - name: "QuickSightUserNotFoundException"; - $fault: "client"; +export class QuickSightUserNotFoundException extends __BaseException { + readonly name: "QuickSightUserNotFoundException" = "QuickSightUserNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QuickSightUserNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QuickSightUserNotFoundException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface GetDashboardEmbedUrlRequest { @@ -806,14 +859,27 @@ export namespace GetDashboardEmbedUrlResponse { *

The identity type specified isn't supported. Supported identity types include * IAM and QUICKSIGHT.

*/ -export interface IdentityTypeNotSupportedException extends __SmithyException, $MetadataBearer { - name: "IdentityTypeNotSupportedException"; - $fault: "client"; +export class IdentityTypeNotSupportedException extends __BaseException { + readonly name: "IdentityTypeNotSupportedException" = "IdentityTypeNotSupportedException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The Amazon Web Services request ID for this request.

*/ RequestId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdentityTypeNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdentityTypeNotSupportedException.prototype); + this.Message = opts.Message; + this.RequestId = opts.RequestId; + } } export interface GetSessionEmbedUrlRequest { diff --git a/clients/client-quicksight/src/protocols/Aws_restJson1.ts b/clients/client-quicksight/src/protocols/Aws_restJson1.ts index 7f912c4bae990..61f78899779fc 100644 --- a/clients/client-quicksight/src/protocols/Aws_restJson1.ts +++ b/clients/client-quicksight/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelIngestionCommandInput, CancelIngestionCommandOutput } from "../commands/CancelIngestionCommand"; @@ -444,6 +443,7 @@ import { UnsupportedPricingPlanException, User, } from "../models/models_1"; +import { QuickSightServiceException as __BaseException } from "../models/QuickSightServiceException"; export const serializeAws_restJson1CancelIngestionCommand = async ( input: CancelIngestionCommandInput, @@ -5781,73 +5781,37 @@ const deserializeAws_restJson1CancelIngestionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAccountCustomizationCommand = async ( @@ -5896,89 +5860,43 @@ const deserializeAws_restJson1CreateAccountCustomizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAnalysisCommand = async ( @@ -6023,81 +5941,40 @@ const deserializeAws_restJson1CreateAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDashboardCommand = async ( @@ -6146,81 +6023,40 @@ const deserializeAws_restJson1CreateDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataSetCommand = async ( @@ -6269,97 +6105,46 @@ const deserializeAws_restJson1CreateDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDataSourceCommand = async ( @@ -6404,89 +6189,43 @@ const deserializeAws_restJson1CreateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFolderCommand = async ( @@ -6527,97 +6266,46 @@ const deserializeAws_restJson1CreateFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFolderMembershipCommand = async ( @@ -6654,89 +6342,43 @@ const deserializeAws_restJson1CreateFolderMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGroupCommand = async ( @@ -6773,97 +6415,46 @@ const deserializeAws_restJson1CreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGroupMembershipCommand = async ( @@ -6900,81 +6491,40 @@ const deserializeAws_restJson1CreateGroupMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIAMPolicyAssignmentCommand = async ( @@ -7027,81 +6577,40 @@ const deserializeAws_restJson1CreateIAMPolicyAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentUpdatingException": case "com.amazonaws.quicksight#ConcurrentUpdatingException": - response = { - ...(await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIngestionCommand = async ( @@ -7146,81 +6655,40 @@ const deserializeAws_restJson1CreateIngestionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNamespaceCommand = async ( @@ -7273,105 +6741,49 @@ const deserializeAws_restJson1CreateNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTemplateCommand = async ( @@ -7420,97 +6832,46 @@ const deserializeAws_restJson1CreateTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTemplateAliasCommand = async ( @@ -7547,81 +6908,40 @@ const deserializeAws_restJson1CreateTemplateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThemeCommand = async ( @@ -7670,89 +6990,43 @@ const deserializeAws_restJson1CreateThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateThemeAliasCommand = async ( @@ -7789,89 +7063,43 @@ const deserializeAws_restJson1CreateThemeAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAccountCustomizationCommand = async ( @@ -7904,81 +7132,40 @@ const deserializeAws_restJson1DeleteAccountCustomizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAnalysisCommand = async ( @@ -8023,73 +7210,37 @@ const deserializeAws_restJson1DeleteAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDashboardCommand = async ( @@ -8130,73 +7281,37 @@ const deserializeAws_restJson1DeleteDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataSetCommand = async ( @@ -8237,65 +7352,34 @@ const deserializeAws_restJson1DeleteDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDataSourceCommand = async ( @@ -8336,65 +7420,34 @@ const deserializeAws_restJson1DeleteDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFolderCommand = async ( @@ -8435,89 +7488,43 @@ const deserializeAws_restJson1DeleteFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFolderMembershipCommand = async ( @@ -8550,73 +7557,37 @@ const deserializeAws_restJson1DeleteFolderMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGroupCommand = async ( @@ -8649,81 +7620,40 @@ const deserializeAws_restJson1DeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGroupMembershipCommand = async ( @@ -8756,81 +7686,40 @@ const deserializeAws_restJson1DeleteGroupMembershipCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIAMPolicyAssignmentCommand = async ( @@ -8867,81 +7756,40 @@ const deserializeAws_restJson1DeleteIAMPolicyAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentUpdatingException": case "com.amazonaws.quicksight#ConcurrentUpdatingException": - response = { - ...(await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteNamespaceCommand = async ( @@ -8974,81 +7822,40 @@ const deserializeAws_restJson1DeleteNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTemplateCommand = async ( @@ -9089,81 +7896,40 @@ const deserializeAws_restJson1DeleteTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTemplateAliasCommand = async ( @@ -9208,65 +7974,34 @@ const deserializeAws_restJson1DeleteTemplateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThemeCommand = async ( @@ -9307,81 +8042,40 @@ const deserializeAws_restJson1DeleteThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteThemeAliasCommand = async ( @@ -9426,73 +8120,37 @@ const deserializeAws_restJson1DeleteThemeAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserCommand = async ( @@ -9525,81 +8183,40 @@ const deserializeAws_restJson1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserByPrincipalIdCommand = async ( @@ -9632,81 +8249,40 @@ const deserializeAws_restJson1DeleteUserByPrincipalIdCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccountCustomizationCommand = async ( @@ -9755,73 +8331,37 @@ const deserializeAws_restJson1DescribeAccountCustomizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAccountSettingsCommand = async ( @@ -9858,73 +8398,37 @@ const deserializeAws_restJson1DescribeAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAnalysisCommand = async ( @@ -9961,73 +8465,37 @@ const deserializeAws_restJson1DescribeAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAnalysisPermissionsCommand = async ( @@ -10072,65 +8540,34 @@ const deserializeAws_restJson1DescribeAnalysisPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDashboardCommand = async ( @@ -10167,73 +8604,37 @@ const deserializeAws_restJson1DescribeDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDashboardPermissionsCommand = async ( @@ -10285,65 +8686,34 @@ const deserializeAws_restJson1DescribeDashboardPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDataSetCommand = async ( @@ -10380,65 +8750,34 @@ const deserializeAws_restJson1DescribeDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDataSetPermissionsCommand = async ( @@ -10483,65 +8822,34 @@ const deserializeAws_restJson1DescribeDataSetPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDataSourceCommand = async ( @@ -10578,65 +8886,34 @@ const deserializeAws_restJson1DescribeDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDataSourcePermissionsCommand = async ( @@ -10681,65 +8958,34 @@ const deserializeAws_restJson1DescribeDataSourcePermissionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFolderCommand = async ( @@ -10776,73 +9022,37 @@ const deserializeAws_restJson1DescribeFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFolderPermissionsCommand = async ( @@ -10887,73 +9097,37 @@ const deserializeAws_restJson1DescribeFolderPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFolderResolvedPermissionsCommand = async ( @@ -10998,73 +9172,37 @@ const deserializeAws_restJson1DescribeFolderResolvedPermissionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGroupCommand = async ( @@ -11101,81 +9239,40 @@ const deserializeAws_restJson1DescribeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIAMPolicyAssignmentCommand = async ( @@ -11212,73 +9309,37 @@ const deserializeAws_restJson1DescribeIAMPolicyAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIngestionCommand = async ( @@ -11315,73 +9376,37 @@ const deserializeAws_restJson1DescribeIngestionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIpRestrictionCommand = async ( @@ -11426,65 +9451,34 @@ const deserializeAws_restJson1DescribeIpRestrictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeNamespaceCommand = async ( @@ -11521,73 +9515,37 @@ const deserializeAws_restJson1DescribeNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTemplateCommand = async ( @@ -11624,89 +9582,43 @@ const deserializeAws_restJson1DescribeTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTemplateAliasCommand = async ( @@ -11743,57 +9655,31 @@ const deserializeAws_restJson1DescribeTemplateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTemplatePermissionsCommand = async ( @@ -11838,73 +9724,37 @@ const deserializeAws_restJson1DescribeTemplatePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThemeCommand = async ( @@ -11941,81 +9791,40 @@ const deserializeAws_restJson1DescribeThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThemeAliasCommand = async ( @@ -12052,73 +9861,37 @@ const deserializeAws_restJson1DescribeThemeAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeThemePermissionsCommand = async ( @@ -12163,73 +9936,37 @@ const deserializeAws_restJson1DescribeThemePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUserCommand = async ( @@ -12266,81 +10003,40 @@ const deserializeAws_restJson1DescribeUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GenerateEmbedUrlForAnonymousUserCommand = async ( @@ -12377,89 +10073,43 @@ const deserializeAws_restJson1GenerateEmbedUrlForAnonymousUserCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SessionLifetimeInMinutesInvalidException": case "com.amazonaws.quicksight#SessionLifetimeInMinutesInvalidException": - response = { - ...(await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedPricingPlanException": case "com.amazonaws.quicksight#UnsupportedPricingPlanException": - response = { - ...(await deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GenerateEmbedUrlForRegisteredUserCommand = async ( @@ -12496,97 +10146,46 @@ const deserializeAws_restJson1GenerateEmbedUrlForRegisteredUserCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "QuickSightUserNotFoundException": case "com.amazonaws.quicksight#QuickSightUserNotFoundException": - response = { - ...(await deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SessionLifetimeInMinutesInvalidException": case "com.amazonaws.quicksight#SessionLifetimeInMinutesInvalidException": - response = { - ...(await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedPricingPlanException": case "com.amazonaws.quicksight#UnsupportedPricingPlanException": - response = { - ...(await deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDashboardEmbedUrlCommand = async ( @@ -12623,121 +10222,55 @@ const deserializeAws_restJson1GetDashboardEmbedUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "DomainNotWhitelistedException": case "com.amazonaws.quicksight#DomainNotWhitelistedException": - response = { - ...(await deserializeAws_restJson1DomainNotWhitelistedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DomainNotWhitelistedExceptionResponse(parsedOutput, context); case "IdentityTypeNotSupportedException": case "com.amazonaws.quicksight#IdentityTypeNotSupportedException": - response = { - ...(await deserializeAws_restJson1IdentityTypeNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdentityTypeNotSupportedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "QuickSightUserNotFoundException": case "com.amazonaws.quicksight#QuickSightUserNotFoundException": - response = { - ...(await deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SessionLifetimeInMinutesInvalidException": case "com.amazonaws.quicksight#SessionLifetimeInMinutesInvalidException": - response = { - ...(await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedPricingPlanException": case "com.amazonaws.quicksight#UnsupportedPricingPlanException": - response = { - ...(await deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSessionEmbedUrlCommand = async ( @@ -12774,97 +10307,46 @@ const deserializeAws_restJson1GetSessionEmbedUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "QuickSightUserNotFoundException": case "com.amazonaws.quicksight#QuickSightUserNotFoundException": - response = { - ...(await deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "SessionLifetimeInMinutesInvalidException": case "com.amazonaws.quicksight#SessionLifetimeInMinutesInvalidException": - response = { - ...(await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnalysesCommand = async ( @@ -12905,57 +10387,31 @@ const deserializeAws_restJson1ListAnalysesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDashboardsCommand = async ( @@ -12996,57 +10452,31 @@ const deserializeAws_restJson1ListDashboardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDashboardVersionsCommand = async ( @@ -13090,73 +10520,37 @@ const deserializeAws_restJson1ListDashboardVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataSetsCommand = async ( @@ -13197,65 +10591,34 @@ const deserializeAws_restJson1ListDataSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDataSourcesCommand = async ( @@ -13296,65 +10659,34 @@ const deserializeAws_restJson1ListDataSourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFolderMembersCommand = async ( @@ -13395,81 +10727,40 @@ const deserializeAws_restJson1ListFolderMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFoldersCommand = async ( @@ -13510,81 +10801,40 @@ const deserializeAws_restJson1ListFoldersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupMembershipsCommand = async ( @@ -13625,89 +10875,43 @@ const deserializeAws_restJson1ListGroupMembershipsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupsCommand = async ( @@ -13748,89 +10952,43 @@ const deserializeAws_restJson1ListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIAMPolicyAssignmentsCommand = async ( @@ -13874,73 +11032,37 @@ const deserializeAws_restJson1ListIAMPolicyAssignmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIAMPolicyAssignmentsForUserCommand = async ( @@ -13981,81 +11103,40 @@ const deserializeAws_restJson1ListIAMPolicyAssignmentsForUserCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentUpdatingException": case "com.amazonaws.quicksight#ConcurrentUpdatingException": - response = { - ...(await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIngestionsCommand = async ( @@ -14096,81 +11177,40 @@ const deserializeAws_restJson1ListIngestionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNamespacesCommand = async ( @@ -14211,89 +11251,43 @@ const deserializeAws_restJson1ListNamespacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -14330,65 +11324,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTemplateAliasesCommand = async ( @@ -14429,65 +11392,34 @@ const deserializeAws_restJson1ListTemplateAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTemplatesCommand = async ( @@ -14528,73 +11460,37 @@ const deserializeAws_restJson1ListTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTemplateVersionsCommand = async ( @@ -14638,73 +11534,37 @@ const deserializeAws_restJson1ListTemplateVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThemeAliasesCommand = async ( @@ -14745,81 +11605,40 @@ const deserializeAws_restJson1ListThemeAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThemesCommand = async ( @@ -14860,81 +11679,40 @@ const deserializeAws_restJson1ListThemesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListThemeVersionsCommand = async ( @@ -14978,81 +11756,40 @@ const deserializeAws_restJson1ListThemeVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUserGroupsCommand = async ( @@ -15093,81 +11830,40 @@ const deserializeAws_restJson1ListUserGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUsersCommand = async ( @@ -15208,89 +11904,43 @@ const deserializeAws_restJson1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterUserCommand = async ( @@ -15331,97 +11981,46 @@ const deserializeAws_restJson1RegisterUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RestoreAnalysisCommand = async ( @@ -15462,73 +12061,37 @@ const deserializeAws_restJson1RestoreAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchAnalysesCommand = async ( @@ -15569,73 +12132,37 @@ const deserializeAws_restJson1SearchAnalysesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchDashboardsCommand = async ( @@ -15676,73 +12203,37 @@ const deserializeAws_restJson1SearchDashboardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchFoldersCommand = async ( @@ -15783,81 +12274,40 @@ const deserializeAws_restJson1SearchFoldersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.quicksight#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -15890,73 +12340,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -15989,65 +12403,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccountCustomizationCommand = async ( @@ -16096,81 +12479,40 @@ const deserializeAws_restJson1UpdateAccountCustomizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAccountSettingsCommand = async ( @@ -16203,73 +12545,37 @@ const deserializeAws_restJson1UpdateAccountSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAnalysisCommand = async ( @@ -16314,81 +12620,40 @@ const deserializeAws_restJson1UpdateAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAnalysisPermissionsCommand = async ( @@ -16433,73 +12698,37 @@ const deserializeAws_restJson1UpdateAnalysisPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDashboardCommand = async ( @@ -16548,81 +12777,40 @@ const deserializeAws_restJson1UpdateDashboardCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDashboardPermissionsCommand = async ( @@ -16674,73 +12862,37 @@ const deserializeAws_restJson1UpdateDashboardPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDashboardPublishedVersionCommand = async ( @@ -16781,73 +12933,37 @@ const deserializeAws_restJson1UpdateDashboardPublishedVersionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataSetCommand = async ( @@ -16896,89 +13012,43 @@ const deserializeAws_restJson1UpdateDataSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataSetPermissionsCommand = async ( @@ -17019,73 +13089,37 @@ const deserializeAws_restJson1UpdateDataSetPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataSourceCommand = async ( @@ -17130,73 +13164,37 @@ const deserializeAws_restJson1UpdateDataSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDataSourcePermissionsCommand = async ( @@ -17237,73 +13235,37 @@ const deserializeAws_restJson1UpdateDataSourcePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFolderCommand = async ( @@ -17344,89 +13306,43 @@ const deserializeAws_restJson1UpdateFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFolderPermissionsCommand = async ( @@ -17471,81 +13387,40 @@ const deserializeAws_restJson1UpdateFolderPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGroupCommand = async ( @@ -17582,81 +13457,40 @@ const deserializeAws_restJson1UpdateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIAMPolicyAssignmentCommand = async ( @@ -17709,81 +13543,40 @@ const deserializeAws_restJson1UpdateIAMPolicyAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConcurrentUpdatingException": case "com.amazonaws.quicksight#ConcurrentUpdatingException": - response = { - ...(await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentUpdatingExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIpRestrictionCommand = async ( @@ -17820,73 +13613,37 @@ const deserializeAws_restJson1UpdateIpRestrictionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTemplateCommand = async ( @@ -17935,89 +13692,43 @@ const deserializeAws_restJson1UpdateTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTemplateAliasCommand = async ( @@ -18054,65 +13765,34 @@ const deserializeAws_restJson1UpdateTemplateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTemplatePermissionsCommand = async ( @@ -18157,73 +13837,37 @@ const deserializeAws_restJson1UpdateTemplatePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThemeCommand = async ( @@ -18272,89 +13916,43 @@ const deserializeAws_restJson1UpdateThemeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.quicksight#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThemeAliasCommand = async ( @@ -18391,81 +13989,40 @@ const deserializeAws_restJson1UpdateThemeAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.quicksight#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.quicksight#ResourceExistsException": - response = { - ...(await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateThemePermissionsCommand = async ( @@ -18510,73 +14067,37 @@ const deserializeAws_restJson1UpdateThemePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedUserEditionException": case "com.amazonaws.quicksight#UnsupportedUserEditionException": - response = { - ...(await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedUserEditionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserCommand = async ( @@ -18613,94 +14134,47 @@ const deserializeAws_restJson1UpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.quicksight#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.quicksight#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.quicksight#InvalidParameterValueException": - response = { - ...(await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterValueExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.quicksight#PreconditionNotMetException": - response = { - ...(await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.quicksight#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.quicksight#ResourceUnavailableException": - response = { - ...(await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.quicksight#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18708,20 +14182,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentUpdatingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentUpdatingException = { - name: "ConcurrentUpdatingException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18729,20 +14201,18 @@ const deserializeAws_restJson1ConcurrentUpdatingExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new ConcurrentUpdatingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18750,20 +14220,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DomainNotWhitelistedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DomainNotWhitelistedException = { - name: "DomainNotWhitelistedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18771,20 +14239,18 @@ const deserializeAws_restJson1DomainNotWhitelistedExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new DomainNotWhitelistedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IdentityTypeNotSupportedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IdentityTypeNotSupportedException = { - name: "IdentityTypeNotSupportedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18792,20 +14258,18 @@ const deserializeAws_restJson1IdentityTypeNotSupportedExceptionResponse = async if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new IdentityTypeNotSupportedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18813,20 +14277,18 @@ const deserializeAws_restJson1InternalFailureExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18834,20 +14296,18 @@ const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18855,21 +14315,18 @@ const deserializeAws_restJson1InvalidParameterValueExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new InvalidParameterValueException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18880,20 +14337,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionNotMetExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionNotMetException = { - name: "PreconditionNotMetException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18901,20 +14356,18 @@ const deserializeAws_restJson1PreconditionNotMetExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new PreconditionNotMetException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: QuickSightUserNotFoundException = { - name: "QuickSightUserNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18922,21 +14375,18 @@ const deserializeAws_restJson1QuickSightUserNotFoundExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new QuickSightUserNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceExistsException = { - name: "ResourceExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18947,21 +14397,18 @@ const deserializeAws_restJson1ResourceExistsExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18972,21 +14419,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -18997,20 +14441,18 @@ const deserializeAws_restJson1ResourceUnavailableExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SessionLifetimeInMinutesInvalidException = { - name: "SessionLifetimeInMinutesInvalidException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -19018,20 +14460,18 @@ const deserializeAws_restJson1SessionLifetimeInMinutesInvalidExceptionResponse = if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new SessionLifetimeInMinutesInvalidException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -19039,20 +14479,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedPricingPlanException = { - name: "UnsupportedPricingPlanException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -19060,20 +14498,18 @@ const deserializeAws_restJson1UnsupportedPricingPlanExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new UnsupportedPricingPlanException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedUserEditionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedUserEditionException = { - name: "UnsupportedUserEditionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - RequestId: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -19081,7 +14517,11 @@ const deserializeAws_restJson1UnsupportedUserEditionExceptionResponse = async ( if (data.RequestId !== undefined && data.RequestId !== null) { contents.RequestId = __expectString(data.RequestId); } - return contents; + const exception = new UnsupportedUserEditionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountCustomization = (input: AccountCustomization, context: __SerdeContext): any => { diff --git a/clients/client-ram/src/index.ts b/clients/client-ram/src/index.ts index e36ba97526c07..e36347ad20a71 100644 --- a/clients/client-ram/src/index.ts +++ b/clients/client-ram/src/index.ts @@ -3,3 +3,4 @@ export * from "./RAMClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { RAMServiceException } from "./models/RAMServiceException"; diff --git a/clients/client-ram/src/models/RAMServiceException.ts b/clients/client-ram/src/models/RAMServiceException.ts new file mode 100644 index 0000000000000..01c9d68557396 --- /dev/null +++ b/clients/client-ram/src/models/RAMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RAM service. + */ +export class RAMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RAMServiceException.prototype); + } +} diff --git a/clients/client-ram/src/models/models_0.ts b/clients/client-ram/src/models/models_0.ts index 4074689830814..095ba3ccbd059 100644 --- a/clients/client-ram/src/models/models_0.ts +++ b/clients/client-ram/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RAMServiceException as __BaseException } from "./RAMServiceException"; export interface AcceptResourceShareInvitationRequest { /** @@ -214,91 +217,191 @@ export namespace AcceptResourceShareInvitationResponse { * operation, but at least one of the other input parameters is different from the previous * call.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; - message: string | undefined; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + } } /** *

The client token is not valid.

*/ -export interface InvalidClientTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidClientTokenException"; - $fault: "client"; - message: string | undefined; +export class InvalidClientTokenException extends __BaseException { + readonly name: "InvalidClientTokenException" = "InvalidClientTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientTokenException.prototype); + } } /** *

The format of an Amazon Resource Name (ARN) is not valid.

*/ -export interface MalformedArnException extends __SmithyException, $MetadataBearer { - name: "MalformedArnException"; - $fault: "client"; - message: string | undefined; +export class MalformedArnException extends __BaseException { + readonly name: "MalformedArnException" = "MalformedArnException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedArnException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedArnException.prototype); + } } /** *

The requested operation is not permitted.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; - message: string | undefined; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + } } /** *

The specified invitation was already accepted.

*/ -export interface ResourceShareInvitationAlreadyAcceptedException extends __SmithyException, $MetadataBearer { - name: "ResourceShareInvitationAlreadyAcceptedException"; - $fault: "client"; - message: string | undefined; +export class ResourceShareInvitationAlreadyAcceptedException extends __BaseException { + readonly name: "ResourceShareInvitationAlreadyAcceptedException" = "ResourceShareInvitationAlreadyAcceptedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceShareInvitationAlreadyAcceptedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceShareInvitationAlreadyAcceptedException.prototype); + } } /** *

The specified invitation was already rejected.

*/ -export interface ResourceShareInvitationAlreadyRejectedException extends __SmithyException, $MetadataBearer { - name: "ResourceShareInvitationAlreadyRejectedException"; - $fault: "client"; - message: string | undefined; +export class ResourceShareInvitationAlreadyRejectedException extends __BaseException { + readonly name: "ResourceShareInvitationAlreadyRejectedException" = "ResourceShareInvitationAlreadyRejectedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceShareInvitationAlreadyRejectedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceShareInvitationAlreadyRejectedException.prototype); + } } /** *

The specified Amazon Resource Name (ARN) for an invitation was not found.

*/ -export interface ResourceShareInvitationArnNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceShareInvitationArnNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceShareInvitationArnNotFoundException extends __BaseException { + readonly name: "ResourceShareInvitationArnNotFoundException" = "ResourceShareInvitationArnNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceShareInvitationArnNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceShareInvitationArnNotFoundException.prototype); + } } /** *

The specified invitation is expired.

*/ -export interface ResourceShareInvitationExpiredException extends __SmithyException, $MetadataBearer { - name: "ResourceShareInvitationExpiredException"; - $fault: "client"; - message: string | undefined; +export class ResourceShareInvitationExpiredException extends __BaseException { + readonly name: "ResourceShareInvitationExpiredException" = "ResourceShareInvitationExpiredException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceShareInvitationExpiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceShareInvitationExpiredException.prototype); + } } /** *

The service could not respond to the request due to an internal problem.

*/ -export interface ServerInternalException extends __SmithyException, $MetadataBearer { - name: "ServerInternalException"; - $fault: "server"; - message: string | undefined; +export class ServerInternalException extends __BaseException { + readonly name: "ServerInternalException" = "ServerInternalException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerInternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServerInternalException.prototype); + } } /** *

The service is not available.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message: string | undefined; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } export interface AssociateResourceShareRequest { @@ -403,47 +506,97 @@ export namespace AssociateResourceShareResponse { /** *

A parameter is not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message: string | undefined; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

The requested state transition is not valid.

*/ -export interface InvalidStateTransitionException extends __SmithyException, $MetadataBearer { - name: "InvalidStateTransitionException"; - $fault: "client"; - message: string | undefined; +export class InvalidStateTransitionException extends __BaseException { + readonly name: "InvalidStateTransitionException" = "InvalidStateTransitionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateTransitionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateTransitionException.prototype); + } } /** *

This request would exceed the limit for resource shares for your account.

*/ -export interface ResourceShareLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceShareLimitExceededException"; - $fault: "client"; - message: string | undefined; +export class ResourceShareLimitExceededException extends __BaseException { + readonly name: "ResourceShareLimitExceededException" = "ResourceShareLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceShareLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceShareLimitExceededException.prototype); + } } /** *

You exceeded the rate at which you are allowed to perform this operation. Please try * again later.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

A specified resource was not found.

*/ -export interface UnknownResourceException extends __SmithyException, $MetadataBearer { - name: "UnknownResourceException"; - $fault: "client"; - message: string | undefined; +export class UnknownResourceException extends __BaseException { + readonly name: "UnknownResourceException" = "UnknownResourceException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnknownResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnknownResourceException.prototype); + } } export interface AssociateResourceSharePermissionRequest { @@ -770,10 +923,20 @@ export namespace CreateResourceShareResponse { /** *

The specified tag key is a reserved word and can't be used.

*/ -export interface TagPolicyViolationException extends __SmithyException, $MetadataBearer { - name: "TagPolicyViolationException"; - $fault: "client"; - message: string | undefined; +export class TagPolicyViolationException extends __BaseException { + readonly name: "TagPolicyViolationException" = "TagPolicyViolationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagPolicyViolationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagPolicyViolationException.prototype); + } } export interface DeleteResourceShareRequest { @@ -1188,19 +1351,39 @@ export namespace GetResourcePoliciesResponse { /** *

The specified value for NextToken is not valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; - message: string | undefined; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } /** *

The specified Amazon Resource Name (ARN) was not found.

*/ -export interface ResourceArnNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceArnNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceArnNotFoundException extends __BaseException { + readonly name: "ResourceArnNotFoundException" = "ResourceArnNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceArnNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceArnNotFoundException.prototype); + } } export interface GetResourceShareAssociationsRequest { @@ -1379,10 +1562,20 @@ export namespace GetResourceShareInvitationsResponse { /** *

The specified value for MaxResults is not valid.

*/ -export interface InvalidMaxResultsException extends __SmithyException, $MetadataBearer { - name: "InvalidMaxResultsException"; - $fault: "client"; - message: string | undefined; +export class InvalidMaxResultsException extends __BaseException { + readonly name: "InvalidMaxResultsException" = "InvalidMaxResultsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMaxResultsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMaxResultsException.prototype); + } } export enum ResourceOwner { @@ -1704,10 +1897,20 @@ export namespace ListPendingInvitationResourcesResponse { /** *

A required input parameter is missing.

*/ -export interface MissingRequiredParameterException extends __SmithyException, $MetadataBearer { - name: "MissingRequiredParameterException"; - $fault: "client"; - message: string | undefined; +export class MissingRequiredParameterException extends __BaseException { + readonly name: "MissingRequiredParameterException" = "MissingRequiredParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingRequiredParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingRequiredParameterException.prototype); + } } export interface ListPermissionsRequest { @@ -2082,10 +2285,20 @@ export namespace ListPrincipalsResponse { /** *

The specified resource type is not valid.

*/ -export interface InvalidResourceTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceTypeException"; - $fault: "client"; - message: string | undefined; +export class InvalidResourceTypeException extends __BaseException { + readonly name: "InvalidResourceTypeException" = "InvalidResourceTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceTypeException.prototype); + } } export interface ListResourcesRequest { @@ -2494,10 +2707,20 @@ export namespace RejectResourceShareInvitationResponse { /** *

This request would exceed the limit for tags for your account.

*/ -export interface TagLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagLimitExceededException"; - $fault: "client"; - message: string | undefined; +export class TagLimitExceededException extends __BaseException { + readonly name: "TagLimitExceededException" = "TagLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagLimitExceededException.prototype); + } } export interface TagResourceRequest { diff --git a/clients/client-ram/src/protocols/Aws_restJson1.ts b/clients/client-ram/src/protocols/Aws_restJson1.ts index 33a1f5a4e71dd..677ccab7d6975 100644 --- a/clients/client-ram/src/protocols/Aws_restJson1.ts +++ b/clients/client-ram/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -126,6 +125,7 @@ import { ThrottlingException, UnknownResourceException, } from "../models/models_0"; +import { RAMServiceException as __BaseException } from "../models/RAMServiceException"; export const serializeAws_restJson1AcceptResourceShareInvitationCommand = async ( input: AcceptResourceShareInvitationCommandInput, @@ -915,111 +915,55 @@ const deserializeAws_restJson1AcceptResourceShareInvitationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceShareInvitationAlreadyAcceptedException": case "com.amazonaws.ram#ResourceShareInvitationAlreadyAcceptedException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationAlreadyAcceptedExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationAlreadyAcceptedExceptionResponse( + parsedOutput, + context + ); case "ResourceShareInvitationAlreadyRejectedException": case "com.amazonaws.ram#ResourceShareInvitationAlreadyRejectedException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse( + parsedOutput, + context + ); case "ResourceShareInvitationArnNotFoundException": case "com.amazonaws.ram#ResourceShareInvitationArnNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context); case "ResourceShareInvitationExpiredException": case "com.amazonaws.ram#ResourceShareInvitationExpiredException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateResourceShareCommand = async ( @@ -1055,113 +999,52 @@ const deserializeAws_restJson1AssociateResourceShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.ram#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceShareLimitExceededException": case "com.amazonaws.ram#ResourceShareLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ram#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateResourceSharePermissionCommand = async ( @@ -1194,81 +1077,40 @@ const deserializeAws_restJson1AssociateResourceSharePermissionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourceShareCommand = async ( @@ -1301,113 +1143,52 @@ const deserializeAws_restJson1CreateResourceShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.ram#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceShareLimitExceededException": case "com.amazonaws.ram#ResourceShareLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TagPolicyViolationException": case "com.amazonaws.ram#TagPolicyViolationException": - response = { - ...(await deserializeAws_restJson1TagPolicyViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagPolicyViolationExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourceShareCommand = async ( @@ -1440,97 +1221,46 @@ const deserializeAws_restJson1DeleteResourceShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.ram#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateResourceShareCommand = async ( @@ -1566,105 +1296,49 @@ const deserializeAws_restJson1DisassociateResourceShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.ram#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceShareLimitExceededException": case "com.amazonaws.ram#ResourceShareLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateResourceSharePermissionCommand = async ( @@ -1697,89 +1371,43 @@ const deserializeAws_restJson1DisassociateResourceSharePermissionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidStateTransitionException": case "com.amazonaws.ram#InvalidStateTransitionException": - response = { - ...(await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidStateTransitionExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableSharingWithAwsOrganizationCommand = async ( @@ -1808,49 +1436,28 @@ const deserializeAws_restJson1EnableSharingWithAwsOrganizationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPermissionCommand = async ( @@ -1879,73 +1486,37 @@ const deserializeAws_restJson1GetPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcePoliciesCommand = async ( @@ -1978,73 +1549,37 @@ const deserializeAws_restJson1GetResourcePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "ResourceArnNotFoundException": case "com.amazonaws.ram#ResourceArnNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceArnNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceArnNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceShareAssociationsCommand = async ( @@ -2080,81 +1615,40 @@ const deserializeAws_restJson1GetResourceShareAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceShareInvitationsCommand = async ( @@ -2190,89 +1684,43 @@ const deserializeAws_restJson1GetResourceShareInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidMaxResultsException": case "com.amazonaws.ram#InvalidMaxResultsException": - response = { - ...(await deserializeAws_restJson1InvalidMaxResultsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidMaxResultsExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "ResourceShareInvitationArnNotFoundException": case "com.amazonaws.ram#ResourceShareInvitationArnNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceSharesCommand = async ( @@ -2305,73 +1753,37 @@ const deserializeAws_restJson1GetResourceSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPendingInvitationResourcesCommand = async ( @@ -2404,100 +1816,49 @@ const deserializeAws_restJson1ListPendingInvitationResourcesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.ram#MissingRequiredParameterException": - response = { - ...(await deserializeAws_restJson1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "ResourceShareInvitationAlreadyRejectedException": case "com.amazonaws.ram#ResourceShareInvitationAlreadyRejectedException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse( + parsedOutput, + context + ); case "ResourceShareInvitationArnNotFoundException": case "com.amazonaws.ram#ResourceShareInvitationArnNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context); case "ResourceShareInvitationExpiredException": case "com.amazonaws.ram#ResourceShareInvitationExpiredException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPermissionsCommand = async ( @@ -2530,65 +1891,34 @@ const deserializeAws_restJson1ListPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPermissionVersionsCommand = async ( @@ -2621,81 +1951,40 @@ const deserializeAws_restJson1ListPermissionVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPrincipalsCommand = async ( @@ -2728,73 +2017,37 @@ const deserializeAws_restJson1ListPrincipalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourcesCommand = async ( @@ -2827,81 +2080,40 @@ const deserializeAws_restJson1ListResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidResourceTypeException": case "com.amazonaws.ram#InvalidResourceTypeException": - response = { - ...(await deserializeAws_restJson1InvalidResourceTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidResourceTypeExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourceSharePermissionsCommand = async ( @@ -2934,81 +2146,40 @@ const deserializeAws_restJson1ListResourceSharePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourceTypesCommand = async ( @@ -3041,57 +2212,31 @@ const deserializeAws_restJson1ListResourceTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.ram#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PromoteResourceShareCreatedFromPolicyCommand = async ( @@ -3120,89 +2265,43 @@ const deserializeAws_restJson1PromoteResourceShareCreatedFromPolicyCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.ram#MissingRequiredParameterException": - response = { - ...(await deserializeAws_restJson1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceShareLimitExceededException": case "com.amazonaws.ram#ResourceShareLimitExceededException": - response = { - ...(await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RejectResourceShareInvitationCommand = async ( @@ -3238,111 +2337,55 @@ const deserializeAws_restJson1RejectResourceShareInvitationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ResourceShareInvitationAlreadyAcceptedException": case "com.amazonaws.ram#ResourceShareInvitationAlreadyAcceptedException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationAlreadyAcceptedExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationAlreadyAcceptedExceptionResponse( + parsedOutput, + context + ); case "ResourceShareInvitationAlreadyRejectedException": case "com.amazonaws.ram#ResourceShareInvitationAlreadyRejectedException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse( + parsedOutput, + context + ); case "ResourceShareInvitationArnNotFoundException": case "com.amazonaws.ram#ResourceShareInvitationArnNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse(parsedOutput, context); case "ResourceShareInvitationExpiredException": case "com.amazonaws.ram#ResourceShareInvitationExpiredException": - response = { - ...(await deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3367,89 +2410,43 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "ResourceArnNotFoundException": case "com.amazonaws.ram#ResourceArnNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceArnNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceArnNotFoundExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.ram#TagLimitExceededException": - response = { - ...(await deserializeAws_restJson1TagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagLimitExceededExceptionResponse(parsedOutput, context); case "TagPolicyViolationException": case "com.amazonaws.ram#TagPolicyViolationException": - response = { - ...(await deserializeAws_restJson1TagPolicyViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TagPolicyViolationExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3474,49 +2471,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceShareCommand = async ( @@ -3549,471 +2525,398 @@ const deserializeAws_restJson1UpdateResourceShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.ram#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InvalidClientTokenException": case "com.amazonaws.ram#InvalidClientTokenException": - response = { - ...(await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.ram#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "MalformedArnException": case "com.amazonaws.ram#MalformedArnException": - response = { - ...(await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MalformedArnExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.ram#MissingRequiredParameterException": - response = { - ...(await deserializeAws_restJson1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.ram#OperationNotPermittedException": - response = { - ...(await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ServerInternalException": case "com.amazonaws.ram#ServerInternalException": - response = { - ...(await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServerInternalExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.ram#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.ram#UnknownResourceException": - response = { - ...(await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new IdempotentParameterMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidClientTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidClientTokenException = { - name: "InvalidClientTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidClientTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidMaxResultsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidMaxResultsException = { - name: "InvalidMaxResultsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidMaxResultsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidResourceTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidResourceTypeException = { - name: "InvalidResourceTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidResourceTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidStateTransitionExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidStateTransitionException = { - name: "InvalidStateTransitionException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidStateTransitionException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MalformedArnExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MalformedArnException = { - name: "MalformedArnException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MalformedArnException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MissingRequiredParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MissingRequiredParameterException = { - name: "MissingRequiredParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MissingRequiredParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1OperationNotPermittedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new OperationNotPermittedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceArnNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceArnNotFoundException = { - name: "ResourceArnNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceArnNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceShareInvitationAlreadyAcceptedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceShareInvitationAlreadyAcceptedException = { - name: "ResourceShareInvitationAlreadyAcceptedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceShareInvitationAlreadyAcceptedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceShareInvitationAlreadyRejectedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceShareInvitationAlreadyRejectedException = { - name: "ResourceShareInvitationAlreadyRejectedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceShareInvitationAlreadyRejectedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceShareInvitationArnNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceShareInvitationArnNotFoundException = { - name: "ResourceShareInvitationArnNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceShareInvitationArnNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceShareInvitationExpiredExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceShareInvitationExpiredException = { - name: "ResourceShareInvitationExpiredException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceShareInvitationExpiredException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceShareLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceShareLimitExceededException = { - name: "ResourceShareLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceShareLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServerInternalExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServerInternalException = { - name: "ServerInternalException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServerInternalException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TagLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TagLimitExceededException = { - name: "TagLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TagLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TagPolicyViolationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TagPolicyViolationException = { - name: "TagPolicyViolationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TagPolicyViolationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnknownResourceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnknownResourceException = { - name: "UnknownResourceException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnknownResourceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1PermissionArnList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-rbin/src/index.ts b/clients/client-rbin/src/index.ts index 699a868c21f7d..f4ffd8ed00115 100644 --- a/clients/client-rbin/src/index.ts +++ b/clients/client-rbin/src/index.ts @@ -3,3 +3,4 @@ export * from "./RbinClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { RbinServiceException } from "./models/RbinServiceException"; diff --git a/clients/client-rbin/src/models/RbinServiceException.ts b/clients/client-rbin/src/models/RbinServiceException.ts new file mode 100644 index 0000000000000..bd65c90163cc7 --- /dev/null +++ b/clients/client-rbin/src/models/RbinServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Rbin service. + */ +export class RbinServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RbinServiceException.prototype); + } +} diff --git a/clients/client-rbin/src/models/models_0.ts b/clients/client-rbin/src/models/models_0.ts index 552acf4981758..69d80e2d52278 100644 --- a/clients/client-rbin/src/models/models_0.ts +++ b/clients/client-rbin/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RbinServiceException as __BaseException } from "./RbinServiceException"; /** *

Information about the resource tags used to identify resources that are retained by the retention @@ -185,10 +188,22 @@ export namespace CreateRuleResponse { /** *

The service could not respond to the request due to an internal problem.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } export enum ServiceQuotaExceededExceptionReason { @@ -198,14 +213,27 @@ export enum ServiceQuotaExceededExceptionReason { /** *

The request would cause a service quota for the number of tags per resource to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason?: ServiceQuotaExceededExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export enum ValidationExceptionReason { @@ -216,14 +244,27 @@ export enum ValidationExceptionReason { /** *

One or more of the parameters in the request is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason?: ValidationExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export interface DeleteRuleRequest { @@ -260,14 +301,27 @@ export enum ResourceNotFoundExceptionReason { /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The reason for the exception.

*/ Reason?: ResourceNotFoundExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + } } export interface GetRuleRequest { diff --git a/clients/client-rbin/src/protocols/Aws_restJson1.ts b/clients/client-rbin/src/protocols/Aws_restJson1.ts index 9dc6dddfd4cc3..903f59d33db04 100644 --- a/clients/client-rbin/src/protocols/Aws_restJson1.ts +++ b/clients/client-rbin/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateRuleCommandInput, CreateRuleCommandOutput } from "../commands/CreateRuleCommand"; @@ -35,6 +34,7 @@ import { Tag, ValidationException, } from "../models/models_0"; +import { RbinServiceException as __BaseException } from "../models/RbinServiceException"; export const serializeAws_restJson1CreateRuleCommand = async ( input: CreateRuleCommandInput, @@ -337,49 +337,28 @@ const deserializeAws_restJson1CreateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rbin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRuleCommand = async ( @@ -404,49 +383,28 @@ const deserializeAws_restJson1DeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rbin#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRuleCommand = async ( @@ -495,49 +453,28 @@ const deserializeAws_restJson1GetRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rbin#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRulesCommand = async ( @@ -570,41 +507,25 @@ const deserializeAws_restJson1ListRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -633,49 +554,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rbin#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -700,57 +600,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rbin#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rbin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -775,49 +649,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rbin#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRuleCommand = async ( @@ -866,79 +719,51 @@ const deserializeAws_restJson1UpdateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rbin#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rbin#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rbin#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -946,20 +771,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -967,20 +790,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -988,7 +809,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ResourceTag = (input: ResourceTag, context: __SerdeContext): any => { diff --git a/clients/client-rds-data/src/index.ts b/clients/client-rds-data/src/index.ts index afac2730524f0..2bbd9cf5f1211 100644 --- a/clients/client-rds-data/src/index.ts +++ b/clients/client-rds-data/src/index.ts @@ -2,3 +2,4 @@ export * from "./RDSData"; export * from "./RDSDataClient"; export * from "./commands"; export * from "./models"; +export { RDSDataServiceException } from "./models/RDSDataServiceException"; diff --git a/clients/client-rds-data/src/models/RDSDataServiceException.ts b/clients/client-rds-data/src/models/RDSDataServiceException.ts new file mode 100644 index 0000000000000..1285c0f38ede6 --- /dev/null +++ b/clients/client-rds-data/src/models/RDSDataServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RDSData service. + */ +export class RDSDataServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RDSDataServiceException.prototype); + } +} diff --git a/clients/client-rds-data/src/models/models_0.ts b/clients/client-rds-data/src/models/models_0.ts index 68148741d18fa..ab5d6c4d8aba0 100644 --- a/clients/client-rds-data/src/models/models_0.ts +++ b/clients/client-rds-data/src/models/models_0.ts @@ -1,15 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RDSDataServiceException as __BaseException } from "./RDSDataServiceException"; /** *

There is an error in the call or in a SQL statement.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** - *

The error message returned by this BadRequestException error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } export enum TypeHint { @@ -24,47 +34,84 @@ export enum TypeHint { /** *

There are insufficient privileges to make the call.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** - *

The error message returned by this ForbiddenException error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + } } /** *

An internal error occurred.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + } } /** *

The service specified by the resourceArn parameter is not * available.

*/ -export interface ServiceUnavailableError extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableError"; - $fault: "server"; +export class ServiceUnavailableError extends __BaseException { + readonly name: "ServiceUnavailableError" = "ServiceUnavailableError"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableError.prototype); + } } /** *

The execution of the SQL statement timed out.

*/ -export interface StatementTimeoutException extends __SmithyException, $MetadataBearer { - name: "StatementTimeoutException"; - $fault: "client"; +export class StatementTimeoutException extends __BaseException { + readonly name: "StatementTimeoutException" = "StatementTimeoutException"; + readonly $fault: "client" = "client"; /** - *

The error message returned by this StatementTimeoutException error.

+ *

The database connection ID that executed the SQL statement.

*/ - message?: string; + dbConnectionId?: number; /** - *

The database connection ID that executed the SQL statement.

+ * @internal */ - dbConnectionId?: number; + constructor(opts: __ExceptionOptionType) { + super({ + name: "StatementTimeoutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StatementTimeoutException.prototype); + this.dbConnectionId = opts.dbConnectionId; + } } /** @@ -257,13 +304,20 @@ export namespace CommitTransactionResponse { /** *

The resourceArn, secretArn, or transactionId value can't be found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** - *

The error message returned by this NotFoundException error.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } export enum DecimalReturnType { diff --git a/clients/client-rds-data/src/protocols/Aws_restJson1.ts b/clients/client-rds-data/src/protocols/Aws_restJson1.ts index 71f0d11f59f9b..62ef0ac89e680 100644 --- a/clients/client-rds-data/src/protocols/Aws_restJson1.ts +++ b/clients/client-rds-data/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -51,6 +50,7 @@ import { UpdateResult, Value, } from "../models/models_0"; +import { RDSDataServiceException as __BaseException } from "../models/RDSDataServiceException"; export const serializeAws_restJson1BatchExecuteStatementCommand = async ( input: BatchExecuteStatementCommandInput, @@ -259,65 +259,34 @@ const deserializeAws_restJson1BatchExecuteStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.rdsdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.rdsdata#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.rdsdata#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.rdsdata#ServiceUnavailableError": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context); case "StatementTimeoutException": case "com.amazonaws.rdsdata#StatementTimeoutException": - response = { - ...(await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BeginTransactionCommand = async ( @@ -346,65 +315,34 @@ const deserializeAws_restJson1BeginTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.rdsdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.rdsdata#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.rdsdata#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.rdsdata#ServiceUnavailableError": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context); case "StatementTimeoutException": case "com.amazonaws.rdsdata#StatementTimeoutException": - response = { - ...(await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CommitTransactionCommand = async ( @@ -433,73 +371,37 @@ const deserializeAws_restJson1CommitTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.rdsdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.rdsdata#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.rdsdata#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.rdsdata#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.rdsdata#ServiceUnavailableError": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context); case "StatementTimeoutException": case "com.amazonaws.rdsdata#StatementTimeoutException": - response = { - ...(await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExecuteSqlCommand = async ( @@ -528,57 +430,31 @@ const deserializeAws_restJson1ExecuteSqlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.rdsdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.rdsdata#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.rdsdata#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.rdsdata#ServiceUnavailableError": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExecuteStatementCommand = async ( @@ -619,65 +495,34 @@ const deserializeAws_restJson1ExecuteStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.rdsdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.rdsdata#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.rdsdata#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.rdsdata#ServiceUnavailableError": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context); case "StatementTimeoutException": case "com.amazonaws.rdsdata#StatementTimeoutException": - response = { - ...(await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RollbackTransactionCommand = async ( @@ -706,163 +551,118 @@ const deserializeAws_restJson1RollbackTransactionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.rdsdata#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.rdsdata#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.rdsdata#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.rdsdata#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.rdsdata#ServiceUnavailableError": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableErrorResponse(parsedOutput, context); case "StatementTimeoutException": case "com.amazonaws.rdsdata#StatementTimeoutException": - response = { - ...(await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StatementTimeoutExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableError = { - name: "ServiceUnavailableError", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ServiceUnavailableError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1StatementTimeoutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StatementTimeoutException = { - name: "StatementTimeoutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - dbConnectionId: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.dbConnectionId !== undefined && data.dbConnectionId !== null) { contents.dbConnectionId = __expectLong(data.dbConnectionId); @@ -870,7 +670,11 @@ const deserializeAws_restJson1StatementTimeoutExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new StatementTimeoutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ArrayOfArray = (input: ArrayValue[], context: __SerdeContext): any => { diff --git a/clients/client-rds/src/index.ts b/clients/client-rds/src/index.ts index 2fc4746b6e0f2..e288c0c75f7cd 100644 --- a/clients/client-rds/src/index.ts +++ b/clients/client-rds/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { RDSServiceException } from "./models/RDSServiceException"; diff --git a/clients/client-rds/src/models/RDSServiceException.ts b/clients/client-rds/src/models/RDSServiceException.ts new file mode 100644 index 0000000000000..2259d93c452f6 --- /dev/null +++ b/clients/client-rds/src/models/RDSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RDS service. + */ +export class RDSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RDSServiceException.prototype); + } +} diff --git a/clients/client-rds/src/models/models_0.ts b/clients/client-rds/src/models/models_0.ts index 9be54ebdf76ce..fb249ede2f75a 100644 --- a/clients/client-rds/src/models/models_0.ts +++ b/clients/client-rds/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RDSServiceException as __BaseException } from "./RDSServiceException"; /** *

Describes a quota for an Amazon Web Services account.

@@ -196,37 +198,77 @@ export namespace AddRoleToDBClusterMessage { * DBClusterIdentifier doesn't refer to an existing DB cluster. *

*/ -export interface DBClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterNotFoundFault extends __BaseException { + readonly name: "DBClusterNotFoundFault" = "DBClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterNotFoundFault.prototype); + } } /** *

The specified IAM role Amazon Resource Name (ARN) is already associated with the specified DB cluster.

*/ -export interface DBClusterRoleAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterRoleAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBClusterRoleAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterRoleAlreadyExistsFault" = "DBClusterRoleAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterRoleAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterRoleAlreadyExistsFault.prototype); + } } /** *

You have exceeded the maximum number of IAM roles that can be associated with the specified DB cluster.

*/ -export interface DBClusterRoleQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterRoleQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBClusterRoleQuotaExceededFault extends __BaseException { + readonly name: "DBClusterRoleQuotaExceededFault" = "DBClusterRoleQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterRoleQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterRoleQuotaExceededFault.prototype); + } } /** *

The requested operation can't be performed while the cluster is in this state.

*/ -export interface InvalidDBClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBClusterStateFault extends __BaseException { + readonly name: "InvalidDBClusterStateFault" = "InvalidDBClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterStateFault.prototype); + } } export interface AddRoleToDBInstanceMessage { @@ -263,37 +305,77 @@ export namespace AddRoleToDBInstanceMessage { * DBInstanceIdentifier doesn't refer to an existing DB instance. *

*/ -export interface DBInstanceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceNotFoundFault"; - $fault: "client"; - message?: string; +export class DBInstanceNotFoundFault extends __BaseException { + readonly name: "DBInstanceNotFoundFault" = "DBInstanceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceNotFoundFault.prototype); + } } /** *

The specified RoleArn or FeatureName value is already associated with the DB instance.

*/ -export interface DBInstanceRoleAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceRoleAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBInstanceRoleAlreadyExistsFault extends __BaseException { + readonly name: "DBInstanceRoleAlreadyExistsFault" = "DBInstanceRoleAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceRoleAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceRoleAlreadyExistsFault.prototype); + } } /** *

You can't associate any more Amazon Web Services Identity and Access Management (IAM) roles with the DB instance because the quota has been reached.

*/ -export interface DBInstanceRoleQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceRoleQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBInstanceRoleQuotaExceededFault extends __BaseException { + readonly name: "DBInstanceRoleQuotaExceededFault" = "DBInstanceRoleQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceRoleQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceRoleQuotaExceededFault.prototype); + } } /** *

The DB instance isn't in a valid state.

*/ -export interface InvalidDBInstanceStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBInstanceStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBInstanceStateFault extends __BaseException { + readonly name: "InvalidDBInstanceStateFault" = "InvalidDBInstanceStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBInstanceStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBInstanceStateFault.prototype); + } } /** @@ -430,19 +512,39 @@ export namespace AddSourceIdentifierToSubscriptionResult { /** *

The requested source could not be found.

*/ -export interface SourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SourceNotFoundFault"; - $fault: "client"; - message?: string; +export class SourceNotFoundFault extends __BaseException { + readonly name: "SourceNotFoundFault" = "SourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceNotFoundFault.prototype); + } } /** *

The subscription name does not exist.

*/ -export interface SubscriptionNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionNotFoundFault extends __BaseException { + readonly name: "SubscriptionNotFoundFault" = "SubscriptionNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionNotFoundFault.prototype); + } } /** @@ -499,19 +601,39 @@ export namespace AddTagsToResourceMessage { /** *

The specified proxy name doesn't correspond to a proxy owned by your Amazon Web Services account in the specified Amazon Web Services Region.

*/ -export interface DBProxyNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBProxyNotFoundFault"; - $fault: "client"; - message?: string; +export class DBProxyNotFoundFault extends __BaseException { + readonly name: "DBProxyNotFoundFault" = "DBProxyNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyNotFoundFault.prototype); + } } /** *

The specified target group isn't available for a proxy owned by your Amazon Web Services account in the specified Amazon Web Services Region.

*/ -export interface DBProxyTargetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBProxyTargetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBProxyTargetGroupNotFoundFault extends __BaseException { + readonly name: "DBProxyTargetGroupNotFoundFault" = "DBProxyTargetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyTargetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyTargetGroupNotFoundFault.prototype); + } } /** @@ -519,10 +641,20 @@ export interface DBProxyTargetGroupNotFoundFault extends __SmithyException, $Met * DBSnapshotIdentifier doesn't refer to an existing DB snapshot. *

*/ -export interface DBSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class DBSnapshotNotFoundFault extends __BaseException { + readonly name: "DBSnapshotNotFoundFault" = "DBSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSnapshotNotFoundFault.prototype); + } } /** @@ -678,29 +810,59 @@ export namespace ApplyPendingMaintenanceActionResult { /** *

The specified resource ID was not found.

*/ -export interface ResourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundFault"; - $fault: "client"; - message?: string; +export class ResourceNotFoundFault extends __BaseException { + readonly name: "ResourceNotFoundFault" = "ResourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundFault.prototype); + } } /** *

The specified CIDR IP range or Amazon EC2 security group is already authorized for * the specified DB security group.

*/ -export interface AuthorizationAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class AuthorizationAlreadyExistsFault extends __BaseException { + readonly name: "AuthorizationAlreadyExistsFault" = "AuthorizationAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationAlreadyExistsFault.prototype); + } } /** *

The DB security group authorization quota has been reached.

*/ -export interface AuthorizationQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationQuotaExceededFault"; - $fault: "client"; - message?: string; +export class AuthorizationQuotaExceededFault extends __BaseException { + readonly name: "AuthorizationQuotaExceededFault" = "AuthorizationQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationQuotaExceededFault.prototype); + } } /** @@ -919,19 +1081,39 @@ export namespace AuthorizeDBSecurityGroupIngressResult { * DBSecurityGroupName doesn't refer to an existing DB security group. *

*/ -export interface DBSecurityGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSecurityGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBSecurityGroupNotFoundFault extends __BaseException { + readonly name: "DBSecurityGroupNotFoundFault" = "DBSecurityGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSecurityGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSecurityGroupNotFoundFault.prototype); + } } /** *

The state of the DB security group doesn't allow deletion.

*/ -export interface InvalidDBSecurityGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSecurityGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSecurityGroupStateFault extends __BaseException { + readonly name: "InvalidDBSecurityGroupStateFault" = "InvalidDBSecurityGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSecurityGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSecurityGroupStateFault.prototype); + } } /** @@ -1206,19 +1388,39 @@ export namespace ExportTask { /** *

The export task doesn't exist.

*/ -export interface ExportTaskNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ExportTaskNotFoundFault"; - $fault: "client"; - message?: string; +export class ExportTaskNotFoundFault extends __BaseException { + readonly name: "ExportTaskNotFoundFault" = "ExportTaskNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExportTaskNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExportTaskNotFoundFault.prototype); + } } /** *

You can't cancel an export task that has completed.

*/ -export interface InvalidExportTaskStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidExportTaskStateFault"; - $fault: "client"; - message?: string; +export class InvalidExportTaskStateFault extends __BaseException { + readonly name: "InvalidExportTaskStateFault" = "InvalidExportTaskStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExportTaskStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExportTaskStateFault.prototype); + } } export interface CopyDBClusterParameterGroupMessage { @@ -1341,10 +1543,20 @@ export namespace CopyDBClusterParameterGroupResult { /** *

A DB parameter group with the same name exists.

*/ -export interface DBParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBParameterGroupAlreadyExistsFault" = "DBParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupAlreadyExistsFault.prototype); + } } /** @@ -1353,20 +1565,40 @@ export interface DBParameterGroupAlreadyExistsFault extends __SmithyException, $ * existing DB parameter group. *

*/ -export interface DBParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBParameterGroupNotFoundFault extends __BaseException { + readonly name: "DBParameterGroupNotFoundFault" = "DBParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupNotFoundFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of DB parameter * groups.

*/ -export interface DBParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBParameterGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "DBParameterGroupQuotaExceededFault" = "DBParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBParameterGroupQuotaExceededFault.prototype); + } } /** @@ -1674,10 +1906,20 @@ export namespace CopyDBClusterSnapshotResult { /** *

The user already has a DB cluster snapshot with the given identifier.

*/ -export interface DBClusterSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterSnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBClusterSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterSnapshotAlreadyExistsFault" = "DBClusterSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterSnapshotAlreadyExistsFault.prototype); + } } /** @@ -1685,38 +1927,78 @@ export interface DBClusterSnapshotAlreadyExistsFault extends __SmithyException, * DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. *

*/ -export interface DBClusterSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterSnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterSnapshotNotFoundFault extends __BaseException { + readonly name: "DBClusterSnapshotNotFoundFault" = "DBClusterSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterSnapshotNotFoundFault.prototype); + } } /** *

The supplied value isn't a valid DB cluster snapshot state.

*/ -export interface InvalidDBClusterSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBClusterSnapshotStateFault extends __BaseException { + readonly name: "InvalidDBClusterSnapshotStateFault" = "InvalidDBClusterSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterSnapshotStateFault.prototype); + } } /** *

An error occurred accessing an Amazon Web Services KMS key.

*/ -export interface KMSKeyNotAccessibleFault extends __SmithyException, $MetadataBearer { - name: "KMSKeyNotAccessibleFault"; - $fault: "client"; - message?: string; +export class KMSKeyNotAccessibleFault extends __BaseException { + readonly name: "KMSKeyNotAccessibleFault" = "KMSKeyNotAccessibleFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSKeyNotAccessibleFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSKeyNotAccessibleFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of DB * snapshots.

*/ -export interface SnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SnapshotQuotaExceededFault extends __BaseException { + readonly name: "SnapshotQuotaExceededFault" = "SnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotQuotaExceededFault.prototype); + } } /** @@ -2337,10 +2619,20 @@ export namespace CopyDBSnapshotResult { * CustomAvailabilityZoneId doesn't refer to an existing custom * Availability Zone identifier.

*/ -export interface CustomAvailabilityZoneNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CustomAvailabilityZoneNotFoundFault"; - $fault: "client"; - message?: string; +export class CustomAvailabilityZoneNotFoundFault extends __BaseException { + readonly name: "CustomAvailabilityZoneNotFoundFault" = "CustomAvailabilityZoneNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomAvailabilityZoneNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomAvailabilityZoneNotFoundFault.prototype); + } } /** @@ -2348,19 +2640,39 @@ export interface CustomAvailabilityZoneNotFoundFault extends __SmithyException, * DBSnapshotIdentifier is already used by an existing snapshot. *

*/ -export interface DBSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "DBSnapshotAlreadyExistsFault" = "DBSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSnapshotAlreadyExistsFault.prototype); + } } /** *

The state of the DB snapshot doesn't allow deletion.

*/ -export interface InvalidDBSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSnapshotStateFault extends __BaseException { + readonly name: "InvalidDBSnapshotStateFault" = "InvalidDBSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSnapshotStateFault.prototype); + } } /** @@ -2692,28 +3004,58 @@ export namespace CopyOptionGroupResult { /** *

The option group you are trying to create already exists.

*/ -export interface OptionGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "OptionGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class OptionGroupAlreadyExistsFault extends __BaseException { + readonly name: "OptionGroupAlreadyExistsFault" = "OptionGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptionGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptionGroupAlreadyExistsFault.prototype); + } } /** *

The specified option group could not be found.

*/ -export interface OptionGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "OptionGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class OptionGroupNotFoundFault extends __BaseException { + readonly name: "OptionGroupNotFoundFault" = "OptionGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptionGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptionGroupNotFoundFault.prototype); + } } /** *

The quota of 20 option groups was exceeded for this Amazon Web Services account.

*/ -export interface OptionGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "OptionGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class OptionGroupQuotaExceededFault extends __BaseException { + readonly name: "OptionGroupQuotaExceededFault" = "OptionGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptionGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptionGroupQuotaExceededFault.prototype); + } } /** @@ -2871,19 +3213,39 @@ export namespace CreateCustomAvailabilityZoneResult { * CustomAvailabilityZoneName is already used by an existing custom * Availability Zone.

*/ -export interface CustomAvailabilityZoneAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "CustomAvailabilityZoneAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class CustomAvailabilityZoneAlreadyExistsFault extends __BaseException { + readonly name: "CustomAvailabilityZoneAlreadyExistsFault" = "CustomAvailabilityZoneAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomAvailabilityZoneAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomAvailabilityZoneAlreadyExistsFault.prototype); + } } /** *

You have exceeded the maximum number of custom Availability Zones.

*/ -export interface CustomAvailabilityZoneQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "CustomAvailabilityZoneQuotaExceededFault"; - $fault: "client"; - message?: string; +export class CustomAvailabilityZoneQuotaExceededFault extends __BaseException { + readonly name: "CustomAvailabilityZoneQuotaExceededFault" = "CustomAvailabilityZoneQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomAvailabilityZoneQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomAvailabilityZoneQuotaExceededFault.prototype); + } } export interface CreateCustomDBEngineVersionMessage { @@ -2983,19 +3345,39 @@ export namespace CreateCustomDBEngineVersionMessage { /** *

A CEV with the specified name already exists.

*/ -export interface CustomDBEngineVersionAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "CustomDBEngineVersionAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class CustomDBEngineVersionAlreadyExistsFault extends __BaseException { + readonly name: "CustomDBEngineVersionAlreadyExistsFault" = "CustomDBEngineVersionAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomDBEngineVersionAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomDBEngineVersionAlreadyExistsFault.prototype); + } } /** *

You have exceeded your CEV quota.

*/ -export interface CustomDBEngineVersionQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "CustomDBEngineVersionQuotaExceededFault"; - $fault: "client"; - message?: string; +export class CustomDBEngineVersionQuotaExceededFault extends __BaseException { + readonly name: "CustomDBEngineVersionQuotaExceededFault" = "CustomDBEngineVersionQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomDBEngineVersionQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomDBEngineVersionQuotaExceededFault.prototype); + } } /** @@ -4751,10 +5133,20 @@ export namespace CreateDBClusterResult { /** *

The user already has a DB cluster with the given identifier.

*/ -export interface DBClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBClusterAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterAlreadyExistsFault" = "DBClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterAlreadyExistsFault.prototype); + } } /** @@ -4762,29 +5154,59 @@ export interface DBClusterAlreadyExistsFault extends __SmithyException, $Metadat * DBClusterParameterGroupName doesn't refer to an existing DB * cluster parameter group.

*/ -export interface DBClusterParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterParameterGroupNotFoundFault extends __BaseException { + readonly name: "DBClusterParameterGroupNotFoundFault" = "DBClusterParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterParameterGroupNotFoundFault.prototype); + } } /** *

The user attempted to create a new DB cluster and the user has already reached the * maximum allowed DB cluster quota.

*/ -export interface DBClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBClusterQuotaExceededFault extends __BaseException { + readonly name: "DBClusterQuotaExceededFault" = "DBClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterQuotaExceededFault.prototype); + } } /** *

Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.

*/ -export interface DBSubnetGroupDoesNotCoverEnoughAZs extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupDoesNotCoverEnoughAZs"; - $fault: "client"; - message?: string; +export class DBSubnetGroupDoesNotCoverEnoughAZs extends __BaseException { + readonly name: "DBSubnetGroupDoesNotCoverEnoughAZs" = "DBSubnetGroupDoesNotCoverEnoughAZs"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupDoesNotCoverEnoughAZs", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupDoesNotCoverEnoughAZs.prototype); + } } /** @@ -4792,10 +5214,20 @@ export interface DBSubnetGroupDoesNotCoverEnoughAZs extends __SmithyException, $ * DBSubnetGroupName doesn't refer to an existing DB subnet group. *

*/ -export interface DBSubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupNotFoundFault extends __BaseException { + readonly name: "DBSubnetGroupNotFoundFault" = "DBSubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupNotFoundFault.prototype); + } } /** @@ -4803,19 +5235,39 @@ export interface DBSubnetGroupNotFoundFault extends __SmithyException, $Metadata * Domain doesn't refer to an existing Active Directory domain. *

*/ -export interface DomainNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DomainNotFoundFault"; - $fault: "client"; - message?: string; +export class DomainNotFoundFault extends __BaseException { + readonly name: "DomainNotFoundFault" = "DomainNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainNotFoundFault.prototype); + } } /** *

The GlobalClusterIdentifier doesn't refer to an existing global database cluster.

*/ -export interface GlobalClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "GlobalClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class GlobalClusterNotFoundFault extends __BaseException { + readonly name: "GlobalClusterNotFoundFault" = "GlobalClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalClusterNotFoundFault.prototype); + } } /** @@ -4823,57 +5275,117 @@ export interface GlobalClusterNotFoundFault extends __SmithyException, $Metadata * resolve this error by updating your subnet group to use different Availability Zones * that have more storage available.

*/ -export interface InsufficientStorageClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientStorageClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientStorageClusterCapacityFault extends __BaseException { + readonly name: "InsufficientStorageClusterCapacityFault" = "InsufficientStorageClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientStorageClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientStorageClusterCapacityFault.prototype); + } } /** *

The DB subnet group cannot be deleted because it's in use.

*/ -export interface InvalidDBSubnetGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSubnetGroupStateFault extends __BaseException { + readonly name: "InvalidDBSubnetGroupStateFault" = "InvalidDBSubnetGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetGroupStateFault.prototype); + } } /** *

The global cluster is in an invalid state and can't perform the requested operation.

*/ -export interface InvalidGlobalClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidGlobalClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidGlobalClusterStateFault extends __BaseException { + readonly name: "InvalidGlobalClusterStateFault" = "InvalidGlobalClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGlobalClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGlobalClusterStateFault.prototype); + } } /** *

The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; - message?: string; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

The DB subnet group doesn't cover all Availability Zones after it's * created because of users' change.

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; - message?: string; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

The request would result in the user exceeding the allowed amount of storage * available across all DB instances.

*/ -export interface StorageQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "StorageQuotaExceededFault"; - $fault: "client"; - message?: string; +export class StorageQuotaExceededFault extends __BaseException { + readonly name: "StorageQuotaExceededFault" = "StorageQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageQuotaExceededFault.prototype); + } } export interface CreateDBClusterEndpointMessage { @@ -5017,19 +5529,39 @@ export namespace DBClusterEndpoint { /** *

The specified custom endpoint can't be created because it already exists.

*/ -export interface DBClusterEndpointAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBClusterEndpointAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBClusterEndpointAlreadyExistsFault extends __BaseException { + readonly name: "DBClusterEndpointAlreadyExistsFault" = "DBClusterEndpointAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterEndpointAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterEndpointAlreadyExistsFault.prototype); + } } /** *

The cluster already has the maximum number of custom endpoints.

*/ -export interface DBClusterEndpointQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBClusterEndpointQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBClusterEndpointQuotaExceededFault extends __BaseException { + readonly name: "DBClusterEndpointQuotaExceededFault" = "DBClusterEndpointQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterEndpointQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterEndpointQuotaExceededFault.prototype); + } } /** @@ -5229,16 +5761,36 @@ export namespace CreateDBClusterSnapshotResult { *

Or, RDS might not be authorized to perform necessary actions using IAM on your * behalf.

*/ -export interface AuthorizationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationNotFoundFault"; - $fault: "client"; - message?: string; +export class AuthorizationNotFoundFault extends __BaseException { + readonly name: "AuthorizationNotFoundFault" = "AuthorizationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationNotFoundFault.prototype); + } } -export interface BackupPolicyNotFoundFault extends __SmithyException, $MetadataBearer { - name: "BackupPolicyNotFoundFault"; - $fault: "client"; - message?: string; +export class BackupPolicyNotFoundFault extends __BaseException { + readonly name: "BackupPolicyNotFoundFault" = "BackupPolicyNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BackupPolicyNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BackupPolicyNotFoundFault.prototype); + } } /** @@ -7429,49 +7981,99 @@ export namespace CreateDBInstanceResult { /** *

The user already has a DB instance with the given identifier.

*/ -export interface DBInstanceAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBInstanceAlreadyExistsFault extends __BaseException { + readonly name: "DBInstanceAlreadyExistsFault" = "DBInstanceAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceAlreadyExistsFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of DB * instances.

*/ -export interface InstanceQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "InstanceQuotaExceededFault"; - $fault: "client"; - message?: string; +export class InstanceQuotaExceededFault extends __BaseException { + readonly name: "InstanceQuotaExceededFault" = "InstanceQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceQuotaExceededFault.prototype); + } } /** *

The specified DB instance class isn't available in the specified Availability * Zone.

*/ -export interface InsufficientDBInstanceCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientDBInstanceCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientDBInstanceCapacityFault extends __BaseException { + readonly name: "InsufficientDBInstanceCapacityFault" = "InsufficientDBInstanceCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDBInstanceCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDBInstanceCapacityFault.prototype); + } } /** *

Provisioned IOPS not available in the specified Availability Zone.

*/ -export interface ProvisionedIopsNotAvailableInAZFault extends __SmithyException, $MetadataBearer { - name: "ProvisionedIopsNotAvailableInAZFault"; - $fault: "client"; - message?: string; +export class ProvisionedIopsNotAvailableInAZFault extends __BaseException { + readonly name: "ProvisionedIopsNotAvailableInAZFault" = "ProvisionedIopsNotAvailableInAZFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedIopsNotAvailableInAZFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedIopsNotAvailableInAZFault.prototype); + } } /** *

Storage of the StorageType specified can't be associated * with the DB instance.

*/ -export interface StorageTypeNotSupportedFault extends __SmithyException, $MetadataBearer { - name: "StorageTypeNotSupportedFault"; - $fault: "client"; - message?: string; +export class StorageTypeNotSupportedFault extends __BaseException { + readonly name: "StorageTypeNotSupportedFault" = "StorageTypeNotSupportedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageTypeNotSupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageTypeNotSupportedFault.prototype); + } } export interface CreateDBInstanceReadReplicaMessage { @@ -7971,20 +8573,40 @@ export namespace CreateDBInstanceReadReplicaResult { *

The DBSubnetGroup shouldn't be specified while creating read replicas that lie * in the same region as the source instance.

*/ -export interface DBSubnetGroupNotAllowedFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupNotAllowedFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupNotAllowedFault extends __BaseException { + readonly name: "DBSubnetGroupNotAllowedFault" = "DBSubnetGroupNotAllowedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupNotAllowedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupNotAllowedFault.prototype); + } } /** *

The DBSubnetGroup doesn't belong to the same VPC as that of an existing * cross-region read replica of the same source instance.

*/ -export interface InvalidDBSubnetGroupFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetGroupFault"; - $fault: "client"; - message?: string; +export class InvalidDBSubnetGroupFault extends __BaseException { + readonly name: "InvalidDBSubnetGroupFault" = "InvalidDBSubnetGroupFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetGroupFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetGroupFault.prototype); + } } /** @@ -8436,19 +9058,39 @@ export namespace CreateDBProxyResponse { /** *

The specified proxy name must be unique for all proxies owned by your Amazon Web Services account in the specified Amazon Web Services Region.

*/ -export interface DBProxyAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBProxyAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBProxyAlreadyExistsFault extends __BaseException { + readonly name: "DBProxyAlreadyExistsFault" = "DBProxyAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyAlreadyExistsFault.prototype); + } } /** *

Your Amazon Web Services account already has the maximum number of proxies in the specified Amazon Web Services Region.

*/ -export interface DBProxyQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBProxyQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBProxyQuotaExceededFault extends __BaseException { + readonly name: "DBProxyQuotaExceededFault" = "DBProxyQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyQuotaExceededFault.prototype); + } } export enum DBProxyEndpointTargetRole { @@ -8613,28 +9255,58 @@ export namespace CreateDBProxyEndpointResponse { /** *

The specified DB proxy endpoint name must be unique for all DB proxy endpoints owned by your Amazon Web Services account in the specified Amazon Web Services Region.

*/ -export interface DBProxyEndpointAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBProxyEndpointAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBProxyEndpointAlreadyExistsFault extends __BaseException { + readonly name: "DBProxyEndpointAlreadyExistsFault" = "DBProxyEndpointAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyEndpointAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyEndpointAlreadyExistsFault.prototype); + } } /** *

The DB proxy already has the maximum number of endpoints.

*/ -export interface DBProxyEndpointQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBProxyEndpointQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBProxyEndpointQuotaExceededFault extends __BaseException { + readonly name: "DBProxyEndpointQuotaExceededFault" = "DBProxyEndpointQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyEndpointQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyEndpointQuotaExceededFault.prototype); + } } /** *

The requested operation can't be performed while the proxy is in this state.

*/ -export interface InvalidDBProxyStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBProxyStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBProxyStateFault extends __BaseException { + readonly name: "InvalidDBProxyStateFault" = "InvalidDBProxyStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBProxyStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBProxyStateFault.prototype); + } } /** @@ -8709,29 +9381,59 @@ export namespace CreateDBSecurityGroupResult { * DBSecurityGroupName already exists. *

*/ -export interface DBSecurityGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSecurityGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBSecurityGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBSecurityGroupAlreadyExistsFault" = "DBSecurityGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSecurityGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSecurityGroupAlreadyExistsFault.prototype); + } } /** *

A DB security group isn't allowed for this action.

*/ -export interface DBSecurityGroupNotSupportedFault extends __SmithyException, $MetadataBearer { - name: "DBSecurityGroupNotSupportedFault"; - $fault: "client"; - message?: string; +export class DBSecurityGroupNotSupportedFault extends __BaseException { + readonly name: "DBSecurityGroupNotSupportedFault" = "DBSecurityGroupNotSupportedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSecurityGroupNotSupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSecurityGroupNotSupportedFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of DB security * groups.

*/ -export interface DBSecurityGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSecurityGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBSecurityGroupQuotaExceededFault extends __BaseException { + readonly name: "DBSecurityGroupQuotaExceededFault" = "DBSecurityGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSecurityGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSecurityGroupQuotaExceededFault.prototype); + } } /** @@ -8881,30 +9583,60 @@ export namespace CreateDBSubnetGroupResult { * DBSubnetGroupName is already used by an existing DB subnet group. *

*/ -export interface DBSubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "DBSubnetGroupAlreadyExistsFault" = "DBSubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupAlreadyExistsFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of DB subnet * groups.

*/ -export interface DBSubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBSubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "DBSubnetGroupQuotaExceededFault" = "DBSubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetGroupQuotaExceededFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of subnets in a * DB subnet groups.

*/ -export interface DBSubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBSubnetQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBSubnetQuotaExceededFault extends __BaseException { + readonly name: "DBSubnetQuotaExceededFault" = "DBSubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBSubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBSubnetQuotaExceededFault.prototype); + } } /** @@ -9021,55 +9753,115 @@ export namespace CreateEventSubscriptionResult { /** *

You have reached the maximum number of event subscriptions.

*/ -export interface EventSubscriptionQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "EventSubscriptionQuotaExceededFault"; - $fault: "client"; - message?: string; +export class EventSubscriptionQuotaExceededFault extends __BaseException { + readonly name: "EventSubscriptionQuotaExceededFault" = "EventSubscriptionQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventSubscriptionQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventSubscriptionQuotaExceededFault.prototype); + } } /** *

SNS has responded that there is a problem with the SNS topic specified.

*/ -export interface SNSInvalidTopicFault extends __SmithyException, $MetadataBearer { - name: "SNSInvalidTopicFault"; - $fault: "client"; - message?: string; +export class SNSInvalidTopicFault extends __BaseException { + readonly name: "SNSInvalidTopicFault" = "SNSInvalidTopicFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSInvalidTopicFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSInvalidTopicFault.prototype); + } } /** *

You do not have permission to publish to the SNS topic ARN.

*/ -export interface SNSNoAuthorizationFault extends __SmithyException, $MetadataBearer { - name: "SNSNoAuthorizationFault"; - $fault: "client"; - message?: string; +export class SNSNoAuthorizationFault extends __BaseException { + readonly name: "SNSNoAuthorizationFault" = "SNSNoAuthorizationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSNoAuthorizationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSNoAuthorizationFault.prototype); + } } /** *

The SNS topic ARN does not exist.

*/ -export interface SNSTopicArnNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SNSTopicArnNotFoundFault"; - $fault: "client"; - message?: string; +export class SNSTopicArnNotFoundFault extends __BaseException { + readonly name: "SNSTopicArnNotFoundFault" = "SNSTopicArnNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSTopicArnNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSTopicArnNotFoundFault.prototype); + } } /** *

The supplied subscription name already exists.

*/ -export interface SubscriptionAlreadyExistFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionAlreadyExistFault"; - $fault: "client"; - message?: string; +export class SubscriptionAlreadyExistFault extends __BaseException { + readonly name: "SubscriptionAlreadyExistFault" = "SubscriptionAlreadyExistFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionAlreadyExistFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionAlreadyExistFault.prototype); + } } /** *

The supplied category does not exist.

*/ -export interface SubscriptionCategoryNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionCategoryNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionCategoryNotFoundFault extends __BaseException { + readonly name: "SubscriptionCategoryNotFoundFault" = "SubscriptionCategoryNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionCategoryNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionCategoryNotFoundFault.prototype); + } } export interface CreateGlobalClusterMessage { @@ -9339,19 +10131,39 @@ export namespace CreateGlobalClusterResult { /** *

The GlobalClusterIdentifier already exists. Choose a new global database identifier (unique name) to create a new global database cluster.

*/ -export interface GlobalClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "GlobalClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class GlobalClusterAlreadyExistsFault extends __BaseException { + readonly name: "GlobalClusterAlreadyExistsFault" = "GlobalClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalClusterAlreadyExistsFault.prototype); + } } /** *

The number of global database clusters for this account is already at the maximum allowed.

*/ -export interface GlobalClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "GlobalClusterQuotaExceededFault"; - $fault: "client"; - message?: string; +export class GlobalClusterQuotaExceededFault extends __BaseException { + readonly name: "GlobalClusterQuotaExceededFault" = "GlobalClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GlobalClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GlobalClusterQuotaExceededFault.prototype); + } } /** @@ -9524,10 +10336,20 @@ export namespace DeleteCustomAvailabilityZoneResult { /** *

The specified CEV was not found.

*/ -export interface CustomDBEngineVersionNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CustomDBEngineVersionNotFoundFault"; - $fault: "client"; - message?: string; +export class CustomDBEngineVersionNotFoundFault extends __BaseException { + readonly name: "CustomDBEngineVersionNotFoundFault" = "CustomDBEngineVersionNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomDBEngineVersionNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomDBEngineVersionNotFoundFault.prototype); + } } export interface DeleteCustomDBEngineVersionMessage { @@ -9556,10 +10378,20 @@ export namespace DeleteCustomDBEngineVersionMessage { /** *

You can't delete the CEV.

*/ -export interface InvalidCustomDBEngineVersionStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidCustomDBEngineVersionStateFault"; - $fault: "client"; - message?: string; +export class InvalidCustomDBEngineVersionStateFault extends __BaseException { + readonly name: "InvalidCustomDBEngineVersionStateFault" = "InvalidCustomDBEngineVersionStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCustomDBEngineVersionStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCustomDBEngineVersionStateFault.prototype); + } } /** @@ -9663,10 +10495,20 @@ export namespace DeleteDBClusterResult { /** *

The specified custom endpoint doesn't exist.

*/ -export interface DBClusterEndpointNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterEndpointNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterEndpointNotFoundFault extends __BaseException { + readonly name: "DBClusterEndpointNotFoundFault" = "DBClusterEndpointNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterEndpointNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterEndpointNotFoundFault.prototype); + } } export interface DeleteDBClusterEndpointMessage { @@ -9688,10 +10530,20 @@ export namespace DeleteDBClusterEndpointMessage { /** *

The requested operation can't be performed on the endpoint while the endpoint is in this state.

*/ -export interface InvalidDBClusterEndpointStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterEndpointStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBClusterEndpointStateFault extends __BaseException { + readonly name: "InvalidDBClusterEndpointStateFault" = "InvalidDBClusterEndpointStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterEndpointStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterEndpointStateFault.prototype); + } } /** @@ -9730,10 +10582,20 @@ export namespace DeleteDBClusterParameterGroupMessage { * to delete the parameter group, you can't delete it when the parameter group is in * this state.

*/ -export interface InvalidDBParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBParameterGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBParameterGroupStateFault extends __BaseException { + readonly name: "InvalidDBParameterGroupStateFault" = "InvalidDBParameterGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBParameterGroupStateFault.prototype); + } } /** @@ -9781,10 +10643,20 @@ export namespace DeleteDBClusterSnapshotResult { * from retaining any additional automated backups. The retained automated backups * quota is the same as your DB Instance quota.

*/ -export interface DBInstanceAutomatedBackupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceAutomatedBackupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class DBInstanceAutomatedBackupQuotaExceededFault extends __BaseException { + readonly name: "DBInstanceAutomatedBackupQuotaExceededFault" = "DBInstanceAutomatedBackupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceAutomatedBackupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceAutomatedBackupQuotaExceededFault.prototype); + } } /** @@ -9887,10 +10759,20 @@ export namespace DeleteDBInstanceResult { /** *

No automated backup for this DB instance was found.

*/ -export interface DBInstanceAutomatedBackupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceAutomatedBackupNotFoundFault"; - $fault: "client"; - message?: string; +export class DBInstanceAutomatedBackupNotFoundFault extends __BaseException { + readonly name: "DBInstanceAutomatedBackupNotFoundFault" = "DBInstanceAutomatedBackupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceAutomatedBackupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceAutomatedBackupNotFoundFault.prototype); + } } /** @@ -10141,10 +11023,20 @@ export namespace DeleteDBInstanceAutomatedBackupResult { *

The automated backup is in an invalid state. * For example, this automated backup is associated with an active instance.

*/ -export interface InvalidDBInstanceAutomatedBackupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBInstanceAutomatedBackupStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBInstanceAutomatedBackupStateFault extends __BaseException { + readonly name: "InvalidDBInstanceAutomatedBackupStateFault" = "InvalidDBInstanceAutomatedBackupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBInstanceAutomatedBackupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBInstanceAutomatedBackupStateFault.prototype); + } } /** @@ -10213,10 +11105,20 @@ export namespace DeleteDBProxyResponse { /** *

The DB proxy endpoint doesn't exist.

*/ -export interface DBProxyEndpointNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBProxyEndpointNotFoundFault"; - $fault: "client"; - message?: string; +export class DBProxyEndpointNotFoundFault extends __BaseException { + readonly name: "DBProxyEndpointNotFoundFault" = "DBProxyEndpointNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyEndpointNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyEndpointNotFoundFault.prototype); + } } export interface DeleteDBProxyEndpointRequest { @@ -10254,10 +11156,20 @@ export namespace DeleteDBProxyEndpointResponse { /** *

You can't perform this operation while the DB proxy endpoint is in a particular state.

*/ -export interface InvalidDBProxyEndpointStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBProxyEndpointStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBProxyEndpointStateFault extends __BaseException { + readonly name: "InvalidDBProxyEndpointStateFault" = "InvalidDBProxyEndpointStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBProxyEndpointStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBProxyEndpointStateFault.prototype); + } } /** @@ -10367,10 +11279,20 @@ export namespace DeleteDBSubnetGroupMessage { * The DB subnet isn't in the available state. *

*/ -export interface InvalidDBSubnetStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBSubnetStateFault"; - $fault: "client"; - message?: string; +export class InvalidDBSubnetStateFault extends __BaseException { + readonly name: "InvalidDBSubnetStateFault" = "InvalidDBSubnetStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBSubnetStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBSubnetStateFault.prototype); + } } /** @@ -10411,10 +11333,20 @@ export namespace DeleteEventSubscriptionResult { /** *

This error can occur if someone else is modifying a subscription. You should retry the action.

*/ -export interface InvalidEventSubscriptionStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidEventSubscriptionStateFault"; - $fault: "client"; - message?: string; +export class InvalidEventSubscriptionStateFault extends __BaseException { + readonly name: "InvalidEventSubscriptionStateFault" = "InvalidEventSubscriptionStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEventSubscriptionStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEventSubscriptionStateFault.prototype); + } } export interface DeleteGlobalClusterMessage { @@ -10547,10 +11479,20 @@ export namespace InstallationMedia { *

* InstallationMediaID doesn't refer to an existing installation medium.

*/ -export interface InstallationMediaNotFoundFault extends __SmithyException, $MetadataBearer { - name: "InstallationMediaNotFoundFault"; - $fault: "client"; - message?: string; +export class InstallationMediaNotFoundFault extends __BaseException { + readonly name: "InstallationMediaNotFoundFault" = "InstallationMediaNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstallationMediaNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstallationMediaNotFoundFault.prototype); + } } /** @@ -10580,19 +11522,39 @@ export namespace DeleteOptionGroupMessage { * The option group isn't in the available state. *

*/ -export interface InvalidOptionGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidOptionGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidOptionGroupStateFault extends __BaseException { + readonly name: "InvalidOptionGroupStateFault" = "InvalidOptionGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOptionGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOptionGroupStateFault.prototype); + } } /** *

The specified RDS DB instance or Aurora DB cluster isn't available for a proxy owned by your Amazon Web Services account in the specified Amazon Web Services Region.

*/ -export interface DBProxyTargetNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBProxyTargetNotFoundFault"; - $fault: "client"; - message?: string; +export class DBProxyTargetNotFoundFault extends __BaseException { + readonly name: "DBProxyTargetNotFoundFault" = "DBProxyTargetNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyTargetNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyTargetNotFoundFault.prototype); + } } export interface DeregisterDBProxyTargetsRequest { @@ -10742,10 +11704,20 @@ export namespace CertificateMessage { * existing certificate. *

*/ -export interface CertificateNotFoundFault extends __SmithyException, $MetadataBearer { - name: "CertificateNotFoundFault"; - $fault: "client"; - message?: string; +export class CertificateNotFoundFault extends __BaseException { + readonly name: "CertificateNotFoundFault" = "CertificateNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CertificateNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CertificateNotFoundFault.prototype); + } } /** @@ -10955,10 +11927,20 @@ export namespace DBClusterBacktrackMessage { *

* BacktrackIdentifier doesn't refer to an existing backtrack.

*/ -export interface DBClusterBacktrackNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterBacktrackNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterBacktrackNotFoundFault extends __BaseException { + readonly name: "DBClusterBacktrackNotFoundFault" = "DBClusterBacktrackNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterBacktrackNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterBacktrackNotFoundFault.prototype); + } } /** diff --git a/clients/client-rds/src/models/models_1.ts b/clients/client-rds/src/models/models_1.ts index 31540e170833f..04c99a6f9bf4f 100644 --- a/clients/client-rds/src/models/models_1.ts +++ b/clients/client-rds/src/models/models_1.ts @@ -1,4 +1,5 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { ActivityStreamMode, @@ -31,6 +32,7 @@ import { Tag, UserAuthConfig, } from "./models_0"; +import { RDSServiceException as __BaseException } from "./RDSServiceException"; export enum TargetRole { READ_ONLY = "READ_ONLY", @@ -2632,10 +2634,20 @@ export namespace ReservedDBInstanceMessage { /** *

The specified reserved DB Instance not found.

*/ -export interface ReservedDBInstanceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedDBInstanceNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedDBInstanceNotFoundFault extends __BaseException { + readonly name: "ReservedDBInstanceNotFoundFault" = "ReservedDBInstanceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedDBInstanceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedDBInstanceNotFoundFault.prototype); + } } /** @@ -2817,10 +2829,20 @@ export namespace ReservedDBInstancesOfferingMessage { /** *

Specified offering does not exist.

*/ -export interface ReservedDBInstancesOfferingNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedDBInstancesOfferingNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedDBInstancesOfferingNotFoundFault extends __BaseException { + readonly name: "ReservedDBInstancesOfferingNotFoundFault" = "ReservedDBInstancesOfferingNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedDBInstancesOfferingNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedDBInstancesOfferingNotFoundFault.prototype); + } } /** @@ -3120,10 +3142,20 @@ export namespace DescribeValidDBInstanceModificationsResult { *

* LogFileName doesn't refer to an existing DB log file.

*/ -export interface DBLogFileNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBLogFileNotFoundFault"; - $fault: "client"; - message?: string; +export class DBLogFileNotFoundFault extends __BaseException { + readonly name: "DBLogFileNotFoundFault" = "DBLogFileNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBLogFileNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBLogFileNotFoundFault.prototype); + } } /** @@ -3424,10 +3456,20 @@ export namespace ImportInstallationMediaMessage { /** *

The specified installation medium has already been imported.

*/ -export interface InstallationMediaAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "InstallationMediaAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class InstallationMediaAlreadyExistsFault extends __BaseException { + readonly name: "InstallationMediaAlreadyExistsFault" = "InstallationMediaAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstallationMediaAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstallationMediaAlreadyExistsFault.prototype); + } } /** @@ -3561,10 +3603,20 @@ export namespace DBClusterCapacityInfo { * capacity. Valid capacity values are 2, 4, 8, 16, * 32, 64, 128, and 256.

*/ -export interface InvalidDBClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InvalidDBClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InvalidDBClusterCapacityFault extends __BaseException { + readonly name: "InvalidDBClusterCapacityFault" = "InvalidDBClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDBClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDBClusterCapacityFault.prototype); + } } export interface ModifyCurrentDBClusterCapacityMessage { @@ -4321,20 +4373,40 @@ export namespace ModifyDBClusterSnapshotAttributeResult { /** *

You have exceeded the maximum number of accounts that you can share a manual DB snapshot with.

*/ -export interface SharedSnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SharedSnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SharedSnapshotQuotaExceededFault extends __BaseException { + readonly name: "SharedSnapshotQuotaExceededFault" = "SharedSnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SharedSnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SharedSnapshotQuotaExceededFault.prototype); + } } /** *

The DB upgrade failed because a resource the DB depends on can't be * modified.

*/ -export interface DBUpgradeDependencyFailureFault extends __SmithyException, $MetadataBearer { - name: "DBUpgradeDependencyFailureFault"; - $fault: "client"; - message?: string; +export class DBUpgradeDependencyFailureFault extends __BaseException { + readonly name: "DBUpgradeDependencyFailureFault" = "DBUpgradeDependencyFailureFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBUpgradeDependencyFailureFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBUpgradeDependencyFailureFault.prototype); + } } /** @@ -5628,10 +5700,20 @@ export namespace ModifyDBSubnetGroupResult { /** *

The DB subnet is already in use in the Availability Zone.

*/ -export interface SubnetAlreadyInUse extends __SmithyException, $MetadataBearer { - name: "SubnetAlreadyInUse"; - $fault: "client"; - message?: string; +export class SubnetAlreadyInUse extends __BaseException { + readonly name: "SubnetAlreadyInUse" = "SubnetAlreadyInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetAlreadyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetAlreadyInUse.prototype); + } } /** @@ -6117,19 +6199,39 @@ export namespace PurchaseReservedDBInstancesOfferingResult { /** *

User already has a reservation with the given identifier.

*/ -export interface ReservedDBInstanceAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ReservedDBInstanceAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ReservedDBInstanceAlreadyExistsFault extends __BaseException { + readonly name: "ReservedDBInstanceAlreadyExistsFault" = "ReservedDBInstanceAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedDBInstanceAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedDBInstanceAlreadyExistsFault.prototype); + } } /** *

Request would exceed the user's DB Instance quota.

*/ -export interface ReservedDBInstanceQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ReservedDBInstanceQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ReservedDBInstanceQuotaExceededFault extends __BaseException { + readonly name: "ReservedDBInstanceQuotaExceededFault" = "ReservedDBInstanceQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedDBInstanceQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedDBInstanceQuotaExceededFault.prototype); + } } export interface RebootDBClusterMessage { @@ -6250,10 +6352,20 @@ export namespace RebootDBInstanceResult { /** *

The proxy is already associated with the specified RDS DB instance or Aurora DB cluster.

*/ -export interface DBProxyTargetAlreadyRegisteredFault extends __SmithyException, $MetadataBearer { - name: "DBProxyTargetAlreadyRegisteredFault"; - $fault: "client"; - message?: string; +export class DBProxyTargetAlreadyRegisteredFault extends __BaseException { + readonly name: "DBProxyTargetAlreadyRegisteredFault" = "DBProxyTargetAlreadyRegisteredFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBProxyTargetAlreadyRegisteredFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBProxyTargetAlreadyRegisteredFault.prototype); + } } /** @@ -6261,10 +6373,20 @@ export interface DBProxyTargetAlreadyRegisteredFault extends __SmithyException, * in the proxy's subnets. Add more CIDR blocks to the VPC or remove IP address that aren't required * from the subnets.

*/ -export interface InsufficientAvailableIPsInSubnetFault extends __SmithyException, $MetadataBearer { - name: "InsufficientAvailableIPsInSubnetFault"; - $fault: "client"; - message?: string; +export class InsufficientAvailableIPsInSubnetFault extends __BaseException { + readonly name: "InsufficientAvailableIPsInSubnetFault" = "InsufficientAvailableIPsInSubnetFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientAvailableIPsInSubnetFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientAvailableIPsInSubnetFault.prototype); + } } export interface RegisterDBProxyTargetsRequest { @@ -6358,10 +6480,20 @@ export namespace RemoveFromGlobalClusterResult { /** *

The specified IAM role Amazon Resource Name (ARN) isn't associated with the specified DB cluster.

*/ -export interface DBClusterRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBClusterRoleNotFoundFault"; - $fault: "client"; - message?: string; +export class DBClusterRoleNotFoundFault extends __BaseException { + readonly name: "DBClusterRoleNotFoundFault" = "DBClusterRoleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBClusterRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBClusterRoleNotFoundFault.prototype); + } } export interface RemoveRoleFromDBClusterMessage { @@ -6396,10 +6528,20 @@ export namespace RemoveRoleFromDBClusterMessage { *

The specified RoleArn value doesn't match the specified feature for * the DB instance.

*/ -export interface DBInstanceRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "DBInstanceRoleNotFoundFault"; - $fault: "client"; - message?: string; +export class DBInstanceRoleNotFoundFault extends __BaseException { + readonly name: "DBInstanceRoleNotFoundFault" = "DBInstanceRoleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DBInstanceRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DBInstanceRoleNotFoundFault.prototype); + } } export interface RemoveRoleFromDBInstanceMessage { @@ -6601,10 +6743,20 @@ export namespace ResetDBParameterGroupMessage { *

The specified Amazon S3 bucket name can't be found or Amazon RDS isn't * authorized to access the specified Amazon S3 bucket. Verify the SourceS3BucketName and S3IngestionRoleArn values and try again.

*/ -export interface InvalidS3BucketFault extends __SmithyException, $MetadataBearer { - name: "InvalidS3BucketFault"; - $fault: "client"; - message?: string; +export class InvalidS3BucketFault extends __BaseException { + readonly name: "InvalidS3BucketFault" = "InvalidS3BucketFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3BucketFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3BucketFault.prototype); + } } export interface RestoreDBClusterFromS3Message { @@ -6971,19 +7123,39 @@ export namespace RestoreDBClusterFromS3Result { /** *

The DB cluster doesn't have enough capacity for the current operation.

*/ -export interface InsufficientDBClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientDBClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientDBClusterCapacityFault extends __BaseException { + readonly name: "InsufficientDBClusterCapacityFault" = "InsufficientDBClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientDBClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientDBClusterCapacityFault.prototype); + } } /** *

Cannot restore from VPC backup to non-VPC DB instance.

*/ -export interface InvalidRestoreFault extends __SmithyException, $MetadataBearer { - name: "InvalidRestoreFault"; - $fault: "client"; - message?: string; +export class InvalidRestoreFault extends __BaseException { + readonly name: "InvalidRestoreFault" = "InvalidRestoreFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRestoreFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRestoreFault.prototype); + } } /** @@ -8658,10 +8830,20 @@ export namespace RestoreDBInstanceFromS3Result { * BackupRetentionPeriod equal to 0. *

*/ -export interface PointInTimeRestoreNotEnabledFault extends __SmithyException, $MetadataBearer { - name: "PointInTimeRestoreNotEnabledFault"; - $fault: "client"; - message?: string; +export class PointInTimeRestoreNotEnabledFault extends __BaseException { + readonly name: "PointInTimeRestoreNotEnabledFault" = "PointInTimeRestoreNotEnabledFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PointInTimeRestoreNotEnabledFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PointInTimeRestoreNotEnabledFault.prototype); + } } /** @@ -9437,46 +9619,96 @@ export namespace StartDBInstanceAutomatedBackupsReplicationResult { /** *

You can't start an export task that's already running.

*/ -export interface ExportTaskAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ExportTaskAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ExportTaskAlreadyExistsFault extends __BaseException { + readonly name: "ExportTaskAlreadyExistsFault" = "ExportTaskAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExportTaskAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExportTaskAlreadyExistsFault.prototype); + } } /** *

The IAM role requires additional permissions to export to an Amazon S3 bucket.

*/ -export interface IamRoleMissingPermissionsFault extends __SmithyException, $MetadataBearer { - name: "IamRoleMissingPermissionsFault"; - $fault: "client"; - message?: string; +export class IamRoleMissingPermissionsFault extends __BaseException { + readonly name: "IamRoleMissingPermissionsFault" = "IamRoleMissingPermissionsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IamRoleMissingPermissionsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IamRoleMissingPermissionsFault.prototype); + } } /** *

The IAM role is missing for exporting to an Amazon S3 bucket.

*/ -export interface IamRoleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "IamRoleNotFoundFault"; - $fault: "client"; - message?: string; +export class IamRoleNotFoundFault extends __BaseException { + readonly name: "IamRoleNotFoundFault" = "IamRoleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IamRoleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IamRoleNotFoundFault.prototype); + } } /** *

The export is invalid for exporting to an Amazon S3 bucket.

*/ -export interface InvalidExportOnlyFault extends __SmithyException, $MetadataBearer { - name: "InvalidExportOnlyFault"; - $fault: "client"; - message?: string; +export class InvalidExportOnlyFault extends __BaseException { + readonly name: "InvalidExportOnlyFault" = "InvalidExportOnlyFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExportOnlyFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExportOnlyFault.prototype); + } } /** *

The state of the export snapshot is invalid for exporting to an Amazon S3 bucket.

*/ -export interface InvalidExportSourceStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidExportSourceStateFault"; - $fault: "client"; - message?: string; +export class InvalidExportSourceStateFault extends __BaseException { + readonly name: "InvalidExportSourceStateFault" = "InvalidExportSourceStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExportSourceStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExportSourceStateFault.prototype); + } } export interface StartExportTaskMessage { diff --git a/clients/client-rds/src/protocols/Aws_query.ts b/clients/client-rds/src/protocols/Aws_query.ts index a7ae5ca2ea2ec..a999b0f2c9729 100644 --- a/clients/client-rds/src/protocols/Aws_query.ts +++ b/clients/client-rds/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -952,6 +951,7 @@ import { ValidDBInstanceModificationsMessage, ValidStorageOptions, } from "../models/models_1"; +import { RDSServiceException as __BaseException } from "../models/RDSServiceException"; export const serializeAws_queryAddRoleToDBClusterCommand = async ( input: AddRoleToDBClusterCommandInput, @@ -3231,57 +3231,31 @@ const deserializeAws_queryAddRoleToDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterRoleAlreadyExistsFault": case "com.amazonaws.rds#DBClusterRoleAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterRoleQuotaExceededFault": case "com.amazonaws.rds#DBClusterRoleQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddRoleToDBInstanceCommand = async ( @@ -3306,57 +3280,31 @@ const deserializeAws_queryAddRoleToDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBInstanceRoleAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceRoleAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceRoleAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceRoleAlreadyExistsFaultResponse(parsedOutput, context); case "DBInstanceRoleQuotaExceededFault": case "com.amazonaws.rds#DBInstanceRoleQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBInstanceRoleQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceRoleQuotaExceededFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddSourceIdentifierToSubscriptionCommand = async ( @@ -3387,41 +3335,25 @@ const deserializeAws_queryAddSourceIdentifierToSubscriptionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SourceNotFoundFault": case "com.amazonaws.rds#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.rds#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddTagsToResourceCommand = async ( @@ -3446,65 +3378,34 @@ const deserializeAws_queryAddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryApplyPendingMaintenanceActionCommand = async ( @@ -3532,49 +3433,28 @@ const deserializeAws_queryApplyPendingMaintenanceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.rds#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAuthorizeDBSecurityGroupIngressCommand = async ( @@ -3605,57 +3485,31 @@ const deserializeAws_queryAuthorizeDBSecurityGroupIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationAlreadyExistsFault": case "com.amazonaws.rds#AuthorizationAlreadyExistsFault": - response = { - ...(await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context); case "AuthorizationQuotaExceededFault": case "com.amazonaws.rds#AuthorizationQuotaExceededFault": - response = { - ...(await deserializeAws_queryAuthorizationQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationQuotaExceededFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.rds#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBacktrackDBClusterCommand = async ( @@ -3683,41 +3537,25 @@ const deserializeAws_queryBacktrackDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCancelExportTaskCommand = async ( @@ -3745,41 +3583,25 @@ const deserializeAws_queryCancelExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExportTaskNotFoundFault": case "com.amazonaws.rds#ExportTaskNotFoundFault": - response = { - ...(await deserializeAws_queryExportTaskNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryExportTaskNotFoundFaultResponse(parsedOutput, context); case "InvalidExportTaskStateFault": case "com.amazonaws.rds#InvalidExportTaskStateFault": - response = { - ...(await deserializeAws_queryInvalidExportTaskStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidExportTaskStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBClusterParameterGroupCommand = async ( @@ -3807,49 +3629,28 @@ const deserializeAws_queryCopyDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.rds#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.rds#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBClusterSnapshotCommand = async ( @@ -3877,73 +3678,37 @@ const deserializeAws_queryCopyDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBParameterGroupCommand = async ( @@ -3971,49 +3736,28 @@ const deserializeAws_queryCopyDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.rds#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.rds#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyDBSnapshotCommand = async ( @@ -4041,73 +3785,37 @@ const deserializeAws_queryCopyDBSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomAvailabilityZoneNotFoundFault": case "com.amazonaws.rds#CustomAvailabilityZoneNotFoundFault": - response = { - ...(await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.rds#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyOptionGroupCommand = async ( @@ -4135,49 +3843,28 @@ const deserializeAws_queryCopyOptionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OptionGroupAlreadyExistsFault": case "com.amazonaws.rds#OptionGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryOptionGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupAlreadyExistsFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "OptionGroupQuotaExceededFault": case "com.amazonaws.rds#OptionGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryOptionGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCustomAvailabilityZoneCommand = async ( @@ -4205,49 +3892,28 @@ const deserializeAws_queryCreateCustomAvailabilityZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomAvailabilityZoneAlreadyExistsFault": case "com.amazonaws.rds#CustomAvailabilityZoneAlreadyExistsFault": - response = { - ...(await deserializeAws_queryCustomAvailabilityZoneAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomAvailabilityZoneAlreadyExistsFaultResponse(parsedOutput, context); case "CustomAvailabilityZoneQuotaExceededFault": case "com.amazonaws.rds#CustomAvailabilityZoneQuotaExceededFault": - response = { - ...(await deserializeAws_queryCustomAvailabilityZoneQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomAvailabilityZoneQuotaExceededFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCustomDBEngineVersionCommand = async ( @@ -4275,49 +3941,28 @@ const deserializeAws_queryCreateCustomDBEngineVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomDBEngineVersionAlreadyExistsFault": case "com.amazonaws.rds#CustomDBEngineVersionAlreadyExistsFault": - response = { - ...(await deserializeAws_queryCustomDBEngineVersionAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomDBEngineVersionAlreadyExistsFaultResponse(parsedOutput, context); case "CustomDBEngineVersionQuotaExceededFault": case "com.amazonaws.rds#CustomDBEngineVersionQuotaExceededFault": - response = { - ...(await deserializeAws_queryCustomDBEngineVersionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomDBEngineVersionQuotaExceededFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterCommand = async ( @@ -4345,169 +3990,73 @@ const deserializeAws_queryCreateDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.rds#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.rds#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.rds#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterNotFoundFault": case "com.amazonaws.rds#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.rds#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.rds#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.rds#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterEndpointCommand = async ( @@ -4535,73 +4084,37 @@ const deserializeAws_queryCreateDBClusterEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterEndpointAlreadyExistsFault": case "com.amazonaws.rds#DBClusterEndpointAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterEndpointQuotaExceededFault": case "com.amazonaws.rds#DBClusterEndpointQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterParameterGroupCommand = async ( @@ -4629,41 +4142,25 @@ const deserializeAws_queryCreateDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.rds#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.rds#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBClusterSnapshotCommand = async ( @@ -4691,65 +4188,34 @@ const deserializeAws_queryCreateDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBInstanceCommand = async ( @@ -4777,177 +4243,76 @@ const deserializeAws_queryCreateDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "BackupPolicyNotFoundFault": case "com.amazonaws.rds#BackupPolicyNotFoundFault": - response = { - ...(await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.rds#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.rds#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBInstanceReadReplicaCommand = async ( @@ -4975,177 +4340,76 @@ const deserializeAws_queryCreateDBInstanceReadReplicaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotAllowedFault": case "com.amazonaws.rds#DBSubnetGroupNotAllowedFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotAllowedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotAllowedFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.rds#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupFault": case "com.amazonaws.rds#InvalidDBSubnetGroupFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.rds#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBParameterGroupCommand = async ( @@ -5173,41 +4437,25 @@ const deserializeAws_queryCreateDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupAlreadyExistsFault": case "com.amazonaws.rds#DBParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupQuotaExceededFault": case "com.amazonaws.rds#DBParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBProxyCommand = async ( @@ -5235,49 +4483,28 @@ const deserializeAws_queryCreateDBProxyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyAlreadyExistsFault": case "com.amazonaws.rds#DBProxyAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBProxyAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyAlreadyExistsFaultResponse(parsedOutput, context); case "DBProxyQuotaExceededFault": case "com.amazonaws.rds#DBProxyQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBProxyQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBProxyEndpointCommand = async ( @@ -5305,65 +4532,34 @@ const deserializeAws_queryCreateDBProxyEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyEndpointAlreadyExistsFault": case "com.amazonaws.rds#DBProxyEndpointAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBProxyEndpointAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyEndpointAlreadyExistsFaultResponse(parsedOutput, context); case "DBProxyEndpointQuotaExceededFault": case "com.amazonaws.rds#DBProxyEndpointQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBProxyEndpointQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyEndpointQuotaExceededFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBSecurityGroupCommand = async ( @@ -5391,49 +4587,28 @@ const deserializeAws_queryCreateDBSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSecurityGroupAlreadyExistsFault": case "com.amazonaws.rds#DBSecurityGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBSecurityGroupNotSupportedFault": case "com.amazonaws.rds#DBSecurityGroupNotSupportedFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotSupportedFaultResponse(parsedOutput, context); case "DBSecurityGroupQuotaExceededFault": case "com.amazonaws.rds#DBSecurityGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBSnapshotCommand = async ( @@ -5461,57 +4636,31 @@ const deserializeAws_queryCreateDBSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateDBSubnetGroupCommand = async ( @@ -5539,65 +4688,34 @@ const deserializeAws_queryCreateDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupAlreadyExistsFault": case "com.amazonaws.rds#DBSubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupQuotaExceededFault": case "com.amazonaws.rds#DBSubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "DBSubnetQuotaExceededFault": case "com.amazonaws.rds#DBSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateEventSubscriptionCommand = async ( @@ -5625,81 +4743,40 @@ const deserializeAws_queryCreateEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.rds#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.rds#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.rds#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.rds#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SourceNotFoundFault": case "com.amazonaws.rds#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionAlreadyExistFault": case "com.amazonaws.rds#SubscriptionAlreadyExistFault": - response = { - ...(await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.rds#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateGlobalClusterCommand = async ( @@ -5727,57 +4804,31 @@ const deserializeAws_queryCreateGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterAlreadyExistsFault": case "com.amazonaws.rds#GlobalClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse(parsedOutput, context); case "GlobalClusterQuotaExceededFault": case "com.amazonaws.rds#GlobalClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryGlobalClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterQuotaExceededFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateOptionGroupCommand = async ( @@ -5805,41 +4856,25 @@ const deserializeAws_queryCreateOptionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OptionGroupAlreadyExistsFault": case "com.amazonaws.rds#OptionGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryOptionGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupAlreadyExistsFaultResponse(parsedOutput, context); case "OptionGroupQuotaExceededFault": case "com.amazonaws.rds#OptionGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryOptionGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCustomAvailabilityZoneCommand = async ( @@ -5867,41 +4902,25 @@ const deserializeAws_queryDeleteCustomAvailabilityZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomAvailabilityZoneNotFoundFault": case "com.amazonaws.rds#CustomAvailabilityZoneNotFoundFault": - response = { - ...(await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCustomDBEngineVersionCommand = async ( @@ -5929,41 +4948,25 @@ const deserializeAws_queryDeleteCustomDBEngineVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomDBEngineVersionNotFoundFault": case "com.amazonaws.rds#CustomDBEngineVersionNotFoundFault": - response = { - ...(await deserializeAws_queryCustomDBEngineVersionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomDBEngineVersionNotFoundFaultResponse(parsedOutput, context); case "InvalidCustomDBEngineVersionStateFault": case "com.amazonaws.rds#InvalidCustomDBEngineVersionStateFault": - response = { - ...(await deserializeAws_queryInvalidCustomDBEngineVersionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCustomDBEngineVersionStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterCommand = async ( @@ -5991,65 +4994,34 @@ const deserializeAws_queryDeleteDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterEndpointCommand = async ( @@ -6077,49 +5049,28 @@ const deserializeAws_queryDeleteDBClusterEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterEndpointNotFoundFault": case "com.amazonaws.rds#DBClusterEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterEndpointStateFault": case "com.amazonaws.rds#InvalidDBClusterEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterParameterGroupCommand = async ( @@ -6144,41 +5095,25 @@ const deserializeAws_queryDeleteDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.rds#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBClusterSnapshotCommand = async ( @@ -6206,41 +5141,25 @@ const deserializeAws_queryDeleteDBClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBInstanceCommand = async ( @@ -6268,73 +5187,37 @@ const deserializeAws_queryDeleteDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceAutomatedBackupQuotaExceededFault": case "com.amazonaws.rds#DBInstanceAutomatedBackupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBInstanceAutomatedBackupCommand = async ( @@ -6365,41 +5248,25 @@ const deserializeAws_queryDeleteDBInstanceAutomatedBackupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceAutomatedBackupNotFoundFault": case "com.amazonaws.rds#DBInstanceAutomatedBackupNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceAutomatedBackupStateFault": case "com.amazonaws.rds#InvalidDBInstanceAutomatedBackupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceAutomatedBackupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceAutomatedBackupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBParameterGroupCommand = async ( @@ -6424,41 +5291,25 @@ const deserializeAws_queryDeleteDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.rds#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBProxyCommand = async ( @@ -6486,41 +5337,25 @@ const deserializeAws_queryDeleteDBProxyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBProxyEndpointCommand = async ( @@ -6548,41 +5383,25 @@ const deserializeAws_queryDeleteDBProxyEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyEndpointNotFoundFault": case "com.amazonaws.rds#DBProxyEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyEndpointStateFault": case "com.amazonaws.rds#InvalidDBProxyEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyEndpointStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBSecurityGroupCommand = async ( @@ -6607,41 +5426,25 @@ const deserializeAws_queryDeleteDBSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.rds#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBSnapshotCommand = async ( @@ -6669,41 +5472,25 @@ const deserializeAws_queryDeleteDBSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.rds#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteDBSubnetGroupCommand = async ( @@ -6728,49 +5515,28 @@ const deserializeAws_queryDeleteDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.rds#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetStateFault": case "com.amazonaws.rds#InvalidDBSubnetStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEventSubscriptionCommand = async ( @@ -6798,41 +5564,25 @@ const deserializeAws_queryDeleteEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEventSubscriptionStateFault": case "com.amazonaws.rds#InvalidEventSubscriptionStateFault": - response = { - ...(await deserializeAws_queryInvalidEventSubscriptionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEventSubscriptionStateFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.rds#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteGlobalClusterCommand = async ( @@ -6860,41 +5610,25 @@ const deserializeAws_queryDeleteGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalClusterNotFoundFault": case "com.amazonaws.rds#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.rds#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteInstallationMediaCommand = async ( @@ -6922,33 +5656,22 @@ const deserializeAws_queryDeleteInstallationMediaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstallationMediaNotFoundFault": case "com.amazonaws.rds#InstallationMediaNotFoundFault": - response = { - ...(await deserializeAws_queryInstallationMediaNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstallationMediaNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteOptionGroupCommand = async ( @@ -6973,41 +5696,25 @@ const deserializeAws_queryDeleteOptionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOptionGroupStateFault": case "com.amazonaws.rds#InvalidOptionGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidOptionGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOptionGroupStateFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeregisterDBProxyTargetsCommand = async ( @@ -7035,57 +5742,31 @@ const deserializeAws_queryDeregisterDBProxyTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetNotFoundFault": case "com.amazonaws.rds#DBProxyTargetNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountAttributesCommand = async ( @@ -7113,25 +5794,19 @@ const deserializeAws_queryDescribeAccountAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCertificatesCommand = async ( @@ -7159,33 +5834,22 @@ const deserializeAws_queryDescribeCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateNotFoundFault": case "com.amazonaws.rds#CertificateNotFoundFault": - response = { - ...(await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeCustomAvailabilityZonesCommand = async ( @@ -7213,33 +5877,22 @@ const deserializeAws_queryDescribeCustomAvailabilityZonesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomAvailabilityZoneNotFoundFault": case "com.amazonaws.rds#CustomAvailabilityZoneNotFoundFault": - response = { - ...(await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterBacktracksCommand = async ( @@ -7267,41 +5920,25 @@ const deserializeAws_queryDescribeDBClusterBacktracksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterBacktrackNotFoundFault": case "com.amazonaws.rds#DBClusterBacktrackNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterBacktrackNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterBacktrackNotFoundFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterEndpointsCommand = async ( @@ -7329,33 +5966,22 @@ const deserializeAws_queryDescribeDBClusterEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterParameterGroupsCommand = async ( @@ -7383,33 +6009,22 @@ const deserializeAws_queryDescribeDBClusterParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterParametersCommand = async ( @@ -7437,33 +6052,22 @@ const deserializeAws_queryDescribeDBClusterParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClustersCommand = async ( @@ -7491,33 +6095,22 @@ const deserializeAws_queryDescribeDBClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterSnapshotAttributesCommand = async ( @@ -7548,33 +6141,22 @@ const deserializeAws_queryDescribeDBClusterSnapshotAttributesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBClusterSnapshotsCommand = async ( @@ -7602,33 +6184,22 @@ const deserializeAws_queryDescribeDBClusterSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBEngineVersionsCommand = async ( @@ -7656,25 +6227,19 @@ const deserializeAws_queryDescribeDBEngineVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBInstanceAutomatedBackupsCommand = async ( @@ -7705,33 +6270,22 @@ const deserializeAws_queryDescribeDBInstanceAutomatedBackupsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceAutomatedBackupNotFoundFault": case "com.amazonaws.rds#DBInstanceAutomatedBackupNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBInstancesCommand = async ( @@ -7759,33 +6313,22 @@ const deserializeAws_queryDescribeDBInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBLogFilesCommand = async ( @@ -7813,33 +6356,22 @@ const deserializeAws_queryDescribeDBLogFilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBParameterGroupsCommand = async ( @@ -7867,33 +6399,22 @@ const deserializeAws_queryDescribeDBParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBParametersCommand = async ( @@ -7921,33 +6442,22 @@ const deserializeAws_queryDescribeDBParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBProxiesCommand = async ( @@ -7975,33 +6485,22 @@ const deserializeAws_queryDescribeDBProxiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBProxyEndpointsCommand = async ( @@ -8029,41 +6528,25 @@ const deserializeAws_queryDescribeDBProxyEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyEndpointNotFoundFault": case "com.amazonaws.rds#DBProxyEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyEndpointNotFoundFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBProxyTargetGroupsCommand = async ( @@ -8091,49 +6574,28 @@ const deserializeAws_queryDescribeDBProxyTargetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBProxyTargetsCommand = async ( @@ -8161,57 +6623,31 @@ const deserializeAws_queryDescribeDBProxyTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetNotFoundFault": case "com.amazonaws.rds#DBProxyTargetNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBSecurityGroupsCommand = async ( @@ -8239,33 +6675,22 @@ const deserializeAws_queryDescribeDBSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBSnapshotAttributesCommand = async ( @@ -8293,33 +6718,22 @@ const deserializeAws_queryDescribeDBSnapshotAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBSnapshotsCommand = async ( @@ -8347,33 +6761,22 @@ const deserializeAws_queryDescribeDBSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDBSubnetGroupsCommand = async ( @@ -8401,33 +6804,22 @@ const deserializeAws_queryDescribeDBSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEngineDefaultClusterParametersCommand = async ( @@ -8458,25 +6850,19 @@ const deserializeAws_queryDescribeEngineDefaultClusterParametersCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEngineDefaultParametersCommand = async ( @@ -8507,25 +6893,19 @@ const deserializeAws_queryDescribeEngineDefaultParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventCategoriesCommand = async ( @@ -8553,25 +6933,19 @@ const deserializeAws_queryDescribeEventCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventsCommand = async ( @@ -8599,25 +6973,19 @@ const deserializeAws_queryDescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventSubscriptionsCommand = async ( @@ -8645,33 +7013,22 @@ const deserializeAws_queryDescribeEventSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SubscriptionNotFoundFault": case "com.amazonaws.rds#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeExportTasksCommand = async ( @@ -8699,33 +7056,22 @@ const deserializeAws_queryDescribeExportTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExportTaskNotFoundFault": case "com.amazonaws.rds#ExportTaskNotFoundFault": - response = { - ...(await deserializeAws_queryExportTaskNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryExportTaskNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeGlobalClustersCommand = async ( @@ -8753,33 +7099,22 @@ const deserializeAws_queryDescribeGlobalClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalClusterNotFoundFault": case "com.amazonaws.rds#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeInstallationMediaCommand = async ( @@ -8807,33 +7142,22 @@ const deserializeAws_queryDescribeInstallationMediaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstallationMediaNotFoundFault": case "com.amazonaws.rds#InstallationMediaNotFoundFault": - response = { - ...(await deserializeAws_queryInstallationMediaNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstallationMediaNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeOptionGroupOptionsCommand = async ( @@ -8861,25 +7185,19 @@ const deserializeAws_queryDescribeOptionGroupOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeOptionGroupsCommand = async ( @@ -8907,33 +7225,22 @@ const deserializeAws_queryDescribeOptionGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeOrderableDBInstanceOptionsCommand = async ( @@ -8964,25 +7271,19 @@ const deserializeAws_queryDescribeOrderableDBInstanceOptionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePendingMaintenanceActionsCommand = async ( @@ -9013,33 +7314,22 @@ const deserializeAws_queryDescribePendingMaintenanceActionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundFault": case "com.amazonaws.rds#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedDBInstancesCommand = async ( @@ -9067,33 +7357,22 @@ const deserializeAws_queryDescribeReservedDBInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ReservedDBInstanceNotFoundFault": case "com.amazonaws.rds#ReservedDBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryReservedDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedDBInstanceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedDBInstancesOfferingsCommand = async ( @@ -9124,33 +7403,22 @@ const deserializeAws_queryDescribeReservedDBInstancesOfferingsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ReservedDBInstancesOfferingNotFoundFault": case "com.amazonaws.rds#ReservedDBInstancesOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedDBInstancesOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedDBInstancesOfferingNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeSourceRegionsCommand = async ( @@ -9178,25 +7446,19 @@ const deserializeAws_queryDescribeSourceRegionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeValidDBInstanceModificationsCommand = async ( @@ -9227,41 +7489,25 @@ const deserializeAws_queryDescribeValidDBInstanceModificationsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDownloadDBLogFilePortionCommand = async ( @@ -9289,41 +7535,25 @@ const deserializeAws_queryDownloadDBLogFilePortionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBLogFileNotFoundFault": case "com.amazonaws.rds#DBLogFileNotFoundFault": - response = { - ...(await deserializeAws_queryDBLogFileNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBLogFileNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFailoverDBClusterCommand = async ( @@ -9351,49 +7581,28 @@ const deserializeAws_queryFailoverDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFailoverGlobalClusterCommand = async ( @@ -9421,57 +7630,31 @@ const deserializeAws_queryFailoverGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterNotFoundFault": case "com.amazonaws.rds#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.rds#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryImportInstallationMediaCommand = async ( @@ -9499,41 +7682,25 @@ const deserializeAws_queryImportInstallationMediaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomAvailabilityZoneNotFoundFault": case "com.amazonaws.rds#CustomAvailabilityZoneNotFoundFault": - response = { - ...(await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse(parsedOutput, context); case "InstallationMediaAlreadyExistsFault": case "com.amazonaws.rds#InstallationMediaAlreadyExistsFault": - response = { - ...(await deserializeAws_queryInstallationMediaAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstallationMediaAlreadyExistsFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -9561,65 +7728,34 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyCertificatesCommand = async ( @@ -9647,33 +7783,22 @@ const deserializeAws_queryModifyCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CertificateNotFoundFault": case "com.amazonaws.rds#CertificateNotFoundFault": - response = { - ...(await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyCurrentDBClusterCapacityCommand = async ( @@ -9701,49 +7826,28 @@ const deserializeAws_queryModifyCurrentDBClusterCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterCapacityFault": case "com.amazonaws.rds#InvalidDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyCustomDBEngineVersionCommand = async ( @@ -9771,41 +7875,25 @@ const deserializeAws_queryModifyCustomDBEngineVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomDBEngineVersionNotFoundFault": case "com.amazonaws.rds#CustomDBEngineVersionNotFoundFault": - response = { - ...(await deserializeAws_queryCustomDBEngineVersionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomDBEngineVersionNotFoundFaultResponse(parsedOutput, context); case "InvalidCustomDBEngineVersionStateFault": case "com.amazonaws.rds#InvalidCustomDBEngineVersionStateFault": - response = { - ...(await deserializeAws_queryInvalidCustomDBEngineVersionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCustomDBEngineVersionStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterCommand = async ( @@ -9833,121 +7921,55 @@ const deserializeAws_queryModifyDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.rds#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.rds#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.rds#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.rds#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterEndpointCommand = async ( @@ -9975,65 +7997,34 @@ const deserializeAws_queryModifyDBClusterEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterEndpointNotFoundFault": case "com.amazonaws.rds#DBClusterEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterEndpointNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterEndpointStateFault": case "com.amazonaws.rds#InvalidDBClusterEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterParameterGroupCommand = async ( @@ -10061,41 +8052,25 @@ const deserializeAws_queryModifyDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.rds#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBClusterSnapshotAttributeCommand = async ( @@ -10126,49 +8101,28 @@ const deserializeAws_queryModifyDBClusterSnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "SharedSnapshotQuotaExceededFault": case "com.amazonaws.rds#SharedSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBInstanceCommand = async ( @@ -10196,177 +8150,76 @@ const deserializeAws_queryModifyDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "BackupPolicyNotFoundFault": case "com.amazonaws.rds#BackupPolicyNotFoundFault": - response = { - ...(await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context); case "CertificateNotFoundFault": case "com.amazonaws.rds#CertificateNotFoundFault": - response = { - ...(await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCertificateNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBUpgradeDependencyFailureFault": case "com.amazonaws.rds#DBUpgradeDependencyFailureFault": - response = { - ...(await deserializeAws_queryDBUpgradeDependencyFailureFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBUpgradeDependencyFailureFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.rds#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.rds#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBParameterGroupCommand = async ( @@ -10394,41 +8247,25 @@ const deserializeAws_queryModifyDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.rds#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBProxyCommand = async ( @@ -10456,49 +8293,28 @@ const deserializeAws_queryModifyDBProxyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyAlreadyExistsFault": case "com.amazonaws.rds#DBProxyAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBProxyAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyAlreadyExistsFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBProxyEndpointCommand = async ( @@ -10526,57 +8342,31 @@ const deserializeAws_queryModifyDBProxyEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyEndpointAlreadyExistsFault": case "com.amazonaws.rds#DBProxyEndpointAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBProxyEndpointAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyEndpointAlreadyExistsFaultResponse(parsedOutput, context); case "DBProxyEndpointNotFoundFault": case "com.amazonaws.rds#DBProxyEndpointNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyEndpointStateFault": case "com.amazonaws.rds#InvalidDBProxyEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyEndpointStateFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBProxyTargetGroupCommand = async ( @@ -10604,49 +8394,28 @@ const deserializeAws_queryModifyDBProxyTargetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBSnapshotCommand = async ( @@ -10674,33 +8443,22 @@ const deserializeAws_queryModifyDBSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBSnapshotAttributeCommand = async ( @@ -10728,49 +8486,28 @@ const deserializeAws_queryModifyDBSnapshotAttributeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.rds#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "SharedSnapshotQuotaExceededFault": case "com.amazonaws.rds#SharedSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySharedSnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyDBSubnetGroupCommand = async ( @@ -10798,65 +8535,34 @@ const deserializeAws_queryModifyDBSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetQuotaExceededFault": case "com.amazonaws.rds#DBSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetQuotaExceededFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "SubnetAlreadyInUse": case "com.amazonaws.rds#SubnetAlreadyInUse": - response = { - ...(await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyEventSubscriptionCommand = async ( @@ -10884,73 +8590,37 @@ const deserializeAws_queryModifyEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.rds#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.rds#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.rds#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.rds#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.rds#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.rds#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyGlobalClusterCommand = async ( @@ -10978,57 +8648,31 @@ const deserializeAws_queryModifyGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "GlobalClusterNotFoundFault": case "com.amazonaws.rds#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.rds#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyOptionGroupCommand = async ( @@ -11056,41 +8700,25 @@ const deserializeAws_queryModifyOptionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOptionGroupStateFault": case "com.amazonaws.rds#InvalidOptionGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidOptionGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidOptionGroupStateFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPromoteReadReplicaCommand = async ( @@ -11118,41 +8746,25 @@ const deserializeAws_queryPromoteReadReplicaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPromoteReadReplicaDBClusterCommand = async ( @@ -11180,41 +8792,25 @@ const deserializeAws_queryPromoteReadReplicaDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPurchaseReservedDBInstancesOfferingCommand = async ( @@ -11245,49 +8841,28 @@ const deserializeAws_queryPurchaseReservedDBInstancesOfferingCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ReservedDBInstanceAlreadyExistsFault": case "com.amazonaws.rds#ReservedDBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReservedDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "ReservedDBInstanceQuotaExceededFault": case "com.amazonaws.rds#ReservedDBInstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryReservedDBInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedDBInstanceQuotaExceededFaultResponse(parsedOutput, context); case "ReservedDBInstancesOfferingNotFoundFault": case "com.amazonaws.rds#ReservedDBInstancesOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedDBInstancesOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedDBInstancesOfferingNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebootDBClusterCommand = async ( @@ -11315,49 +8890,28 @@ const deserializeAws_queryRebootDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebootDBInstanceCommand = async ( @@ -11385,41 +8939,25 @@ const deserializeAws_queryRebootDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRegisterDBProxyTargetsCommand = async ( @@ -11447,97 +8985,46 @@ const deserializeAws_queryRegisterDBProxyTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetAlreadyRegisteredFault": case "com.amazonaws.rds#DBProxyTargetAlreadyRegisteredFault": - response = { - ...(await deserializeAws_queryDBProxyTargetAlreadyRegisteredFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetAlreadyRegisteredFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientAvailableIPsInSubnetFault": case "com.amazonaws.rds#InsufficientAvailableIPsInSubnetFault": - response = { - ...(await deserializeAws_queryInsufficientAvailableIPsInSubnetFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientAvailableIPsInSubnetFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidDBProxyStateFault": case "com.amazonaws.rds#InvalidDBProxyStateFault": - response = { - ...(await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBProxyStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveFromGlobalClusterCommand = async ( @@ -11565,49 +9052,28 @@ const deserializeAws_queryRemoveFromGlobalClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "GlobalClusterNotFoundFault": case "com.amazonaws.rds#GlobalClusterNotFoundFault": - response = { - ...(await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryGlobalClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidGlobalClusterStateFault": case "com.amazonaws.rds#InvalidGlobalClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGlobalClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveRoleFromDBClusterCommand = async ( @@ -11632,49 +9098,28 @@ const deserializeAws_queryRemoveRoleFromDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterRoleNotFoundFault": case "com.amazonaws.rds#DBClusterRoleNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterRoleNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveRoleFromDBInstanceCommand = async ( @@ -11699,49 +9144,28 @@ const deserializeAws_queryRemoveRoleFromDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBInstanceRoleNotFoundFault": case "com.amazonaws.rds#DBInstanceRoleNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceRoleNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveSourceIdentifierFromSubscriptionCommand = async ( @@ -11772,41 +9196,25 @@ const deserializeAws_queryRemoveSourceIdentifierFromSubscriptionCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "SourceNotFoundFault": case "com.amazonaws.rds#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.rds#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemoveTagsFromResourceCommand = async ( @@ -11831,65 +9239,34 @@ const deserializeAws_queryRemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBProxyNotFoundFault": case "com.amazonaws.rds#DBProxyNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyNotFoundFaultResponse(parsedOutput, context); case "DBProxyTargetGroupNotFoundFault": case "com.amazonaws.rds#DBProxyTargetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetDBClusterParameterGroupCommand = async ( @@ -11917,41 +9294,25 @@ const deserializeAws_queryResetDBClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.rds#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetDBParameterGroupCommand = async ( @@ -11979,41 +9340,25 @@ const deserializeAws_queryResetDBParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBParameterGroupStateFault": case "com.amazonaws.rds#InvalidDBParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterFromS3Command = async ( @@ -12041,137 +9386,61 @@ const deserializeAws_queryRestoreDBClusterFromS3CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.rds#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.rds#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.rds#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.rds#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBSubnetGroupStateFault": case "com.amazonaws.rds#InvalidDBSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidS3BucketFault": case "com.amazonaws.rds#InvalidS3BucketFault": - response = { - ...(await deserializeAws_queryInvalidS3BucketFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3BucketFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterFromSnapshotCommand = async ( @@ -12199,161 +9468,70 @@ const deserializeAws_queryRestoreDBClusterFromSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.rds#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.rds#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.rds#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBClusterCapacityFault": case "com.amazonaws.rds#InsufficientDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.rds#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.rds#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.rds#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBClusterToPointInTimeCommand = async ( @@ -12381,169 +9559,73 @@ const deserializeAws_queryRestoreDBClusterToPointInTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterAlreadyExistsFault": case "com.amazonaws.rds#DBClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterAlreadyExistsFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBClusterParameterGroupNotFoundFault": case "com.amazonaws.rds#DBClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBClusterQuotaExceededFault": case "com.amazonaws.rds#DBClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterQuotaExceededFaultResponse(parsedOutput, context); case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBClusterCapacityFault": case "com.amazonaws.rds#InsufficientDBClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBClusterCapacityFaultResponse(parsedOutput, context); case "InsufficientStorageClusterCapacityFault": case "com.amazonaws.rds#InsufficientStorageClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterSnapshotStateFault": case "com.amazonaws.rds#InvalidDBClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.rds#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.rds#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBInstanceFromDBSnapshotCommand = async ( @@ -12574,185 +9656,79 @@ const deserializeAws_queryRestoreDBInstanceFromDBSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "BackupPolicyNotFoundFault": case "com.amazonaws.rds#BackupPolicyNotFoundFault": - response = { - ...(await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.rds#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBSnapshotStateFault": case "com.amazonaws.rds#InvalidDBSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.rds#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.rds#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBInstanceFromS3Command = async ( @@ -12780,161 +9756,70 @@ const deserializeAws_queryRestoreDBInstanceFromS3CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "BackupPolicyNotFoundFault": case "com.amazonaws.rds#BackupPolicyNotFoundFault": - response = { - ...(await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.rds#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidS3BucketFault": case "com.amazonaws.rds#InvalidS3BucketFault": - response = { - ...(await deserializeAws_queryInvalidS3BucketFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3BucketFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.rds#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreDBInstanceToPointInTimeCommand = async ( @@ -12965,201 +9850,85 @@ const deserializeAws_queryRestoreDBInstanceToPointInTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "BackupPolicyNotFoundFault": case "com.amazonaws.rds#BackupPolicyNotFoundFault": - response = { - ...(await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBackupPolicyNotFoundFaultResponse(parsedOutput, context); case "DBInstanceAlreadyExistsFault": case "com.amazonaws.rds#DBInstanceAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAlreadyExistsFaultResponse(parsedOutput, context); case "DBInstanceAutomatedBackupNotFoundFault": case "com.amazonaws.rds#DBInstanceAutomatedBackupNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBParameterGroupNotFoundFault": case "com.amazonaws.rds#DBParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBParameterGroupNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DomainNotFoundFault": case "com.amazonaws.rds#DomainNotFoundFault": - response = { - ...(await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDomainNotFoundFaultResponse(parsedOutput, context); case "InstanceQuotaExceededFault": case "com.amazonaws.rds#InstanceQuotaExceededFault": - response = { - ...(await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInstanceQuotaExceededFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.rds#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "OptionGroupNotFoundFault": case "com.amazonaws.rds#OptionGroupNotFoundFault": - response = { - ...(await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptionGroupNotFoundFaultResponse(parsedOutput, context); case "PointInTimeRestoreNotEnabledFault": case "com.amazonaws.rds#PointInTimeRestoreNotEnabledFault": - response = { - ...(await deserializeAws_queryPointInTimeRestoreNotEnabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPointInTimeRestoreNotEnabledFaultResponse(parsedOutput, context); case "ProvisionedIopsNotAvailableInAZFault": case "com.amazonaws.rds#ProvisionedIopsNotAvailableInAZFault": - response = { - ...(await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse(parsedOutput, context); case "StorageQuotaExceededFault": case "com.amazonaws.rds#StorageQuotaExceededFault": - response = { - ...(await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageQuotaExceededFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRevokeDBSecurityGroupIngressCommand = async ( @@ -13187,49 +9956,28 @@ const deserializeAws_queryRevokeDBSecurityGroupIngressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "DBSecurityGroupNotFoundFault": case "com.amazonaws.rds#DBSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidDBSecurityGroupStateFault": case "com.amazonaws.rds#InvalidDBSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartActivityStreamCommand = async ( @@ -13257,73 +10005,37 @@ const deserializeAws_queryStartActivityStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.rds#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartDBClusterCommand = async ( @@ -13351,49 +10063,28 @@ const deserializeAws_queryStartDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartDBInstanceCommand = async ( @@ -13421,113 +10112,52 @@ const deserializeAws_queryStartDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.rds#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSubnetGroupDoesNotCoverEnoughAZs": case "com.amazonaws.rds#DBSubnetGroupDoesNotCoverEnoughAZs": - response = { - ...(await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse(parsedOutput, context); case "DBSubnetGroupNotFoundFault": case "com.amazonaws.rds#DBSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InsufficientDBInstanceCapacityFault": case "com.amazonaws.rds#InsufficientDBInstanceCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.rds#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.rds#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartDBInstanceAutomatedBackupsReplicationCommand = async ( @@ -13558,65 +10188,34 @@ const deserializeAws_queryStartDBInstanceAutomatedBackupsReplicationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceAutomatedBackupQuotaExceededFault": case "com.amazonaws.rds#DBInstanceAutomatedBackupQuotaExceededFault": - response = { - ...(await deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); case "StorageTypeNotSupportedFault": case "com.amazonaws.rds#StorageTypeNotSupportedFault": - response = { - ...(await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStorageTypeNotSupportedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStartExportTaskCommand = async ( @@ -13644,97 +10243,46 @@ const deserializeAws_queryStartExportTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterSnapshotNotFoundFault": case "com.amazonaws.rds#DBClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotNotFoundFault": case "com.amazonaws.rds#DBSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotNotFoundFaultResponse(parsedOutput, context); case "ExportTaskAlreadyExistsFault": case "com.amazonaws.rds#ExportTaskAlreadyExistsFault": - response = { - ...(await deserializeAws_queryExportTaskAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryExportTaskAlreadyExistsFaultResponse(parsedOutput, context); case "IamRoleMissingPermissionsFault": case "com.amazonaws.rds#IamRoleMissingPermissionsFault": - response = { - ...(await deserializeAws_queryIamRoleMissingPermissionsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIamRoleMissingPermissionsFaultResponse(parsedOutput, context); case "IamRoleNotFoundFault": case "com.amazonaws.rds#IamRoleNotFoundFault": - response = { - ...(await deserializeAws_queryIamRoleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIamRoleNotFoundFaultResponse(parsedOutput, context); case "InvalidExportOnlyFault": case "com.amazonaws.rds#InvalidExportOnlyFault": - response = { - ...(await deserializeAws_queryInvalidExportOnlyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidExportOnlyFaultResponse(parsedOutput, context); case "InvalidExportSourceStateFault": case "com.amazonaws.rds#InvalidExportSourceStateFault": - response = { - ...(await deserializeAws_queryInvalidExportSourceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidExportSourceStateFaultResponse(parsedOutput, context); case "InvalidS3BucketFault": case "com.amazonaws.rds#InvalidS3BucketFault": - response = { - ...(await deserializeAws_queryInvalidS3BucketFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3BucketFaultResponse(parsedOutput, context); case "KMSKeyNotAccessibleFault": case "com.amazonaws.rds#KMSKeyNotAccessibleFault": - response = { - ...(await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSKeyNotAccessibleFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopActivityStreamCommand = async ( @@ -13762,65 +10310,34 @@ const deserializeAws_queryStopActivityStreamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.rds#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopDBClusterCommand = async ( @@ -13848,49 +10365,28 @@ const deserializeAws_queryStopDBClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBClusterNotFoundFault": case "com.amazonaws.rds#DBClusterNotFoundFault": - response = { - ...(await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopDBInstanceCommand = async ( @@ -13918,65 +10414,34 @@ const deserializeAws_queryStopDBInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "DBSnapshotAlreadyExistsFault": case "com.amazonaws.rds#DBSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "InvalidDBClusterStateFault": case "com.amazonaws.rds#InvalidDBClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBClusterStateFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); case "SnapshotQuotaExceededFault": case "com.amazonaws.rds#SnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotQuotaExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryStopDBInstanceAutomatedBackupsReplicationCommand = async ( @@ -14007,41 +10472,25 @@ const deserializeAws_queryStopDBInstanceAutomatedBackupsReplicationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DBInstanceNotFoundFault": case "com.amazonaws.rds#DBInstanceNotFoundFault": - response = { - ...(await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDBInstanceNotFoundFaultResponse(parsedOutput, context); case "InvalidDBInstanceStateFault": case "com.amazonaws.rds#InvalidDBInstanceStateFault": - response = { - ...(await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDBInstanceStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAuthorizationAlreadyExistsFaultResponse = async ( @@ -14050,13 +10499,11 @@ const deserializeAws_queryAuthorizationAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationAlreadyExistsFault(body.Error, context); - const contents: AuthorizationAlreadyExistsFault = { - name: "AuthorizationAlreadyExistsFault", - $fault: "client", + const exception = new AuthorizationAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( @@ -14065,13 +10512,11 @@ const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationNotFoundFault(body.Error, context); - const contents: AuthorizationNotFoundFault = { - name: "AuthorizationNotFoundFault", - $fault: "client", + const exception = new AuthorizationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationQuotaExceededFaultResponse = async ( @@ -14080,13 +10525,11 @@ const deserializeAws_queryAuthorizationQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationQuotaExceededFault(body.Error, context); - const contents: AuthorizationQuotaExceededFault = { - name: "AuthorizationQuotaExceededFault", - $fault: "client", + const exception = new AuthorizationQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBackupPolicyNotFoundFaultResponse = async ( @@ -14095,13 +10538,11 @@ const deserializeAws_queryBackupPolicyNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBackupPolicyNotFoundFault(body.Error, context); - const contents: BackupPolicyNotFoundFault = { - name: "BackupPolicyNotFoundFault", - $fault: "client", + const exception = new BackupPolicyNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCertificateNotFoundFaultResponse = async ( @@ -14110,13 +10551,11 @@ const deserializeAws_queryCertificateNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCertificateNotFoundFault(body.Error, context); - const contents: CertificateNotFoundFault = { - name: "CertificateNotFoundFault", - $fault: "client", + const exception = new CertificateNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomAvailabilityZoneAlreadyExistsFaultResponse = async ( @@ -14125,13 +10564,11 @@ const deserializeAws_queryCustomAvailabilityZoneAlreadyExistsFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomAvailabilityZoneAlreadyExistsFault(body.Error, context); - const contents: CustomAvailabilityZoneAlreadyExistsFault = { - name: "CustomAvailabilityZoneAlreadyExistsFault", - $fault: "client", + const exception = new CustomAvailabilityZoneAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse = async ( @@ -14140,13 +10577,11 @@ const deserializeAws_queryCustomAvailabilityZoneNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomAvailabilityZoneNotFoundFault(body.Error, context); - const contents: CustomAvailabilityZoneNotFoundFault = { - name: "CustomAvailabilityZoneNotFoundFault", - $fault: "client", + const exception = new CustomAvailabilityZoneNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomAvailabilityZoneQuotaExceededFaultResponse = async ( @@ -14155,13 +10590,11 @@ const deserializeAws_queryCustomAvailabilityZoneQuotaExceededFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomAvailabilityZoneQuotaExceededFault(body.Error, context); - const contents: CustomAvailabilityZoneQuotaExceededFault = { - name: "CustomAvailabilityZoneQuotaExceededFault", - $fault: "client", + const exception = new CustomAvailabilityZoneQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomDBEngineVersionAlreadyExistsFaultResponse = async ( @@ -14170,13 +10603,11 @@ const deserializeAws_queryCustomDBEngineVersionAlreadyExistsFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomDBEngineVersionAlreadyExistsFault(body.Error, context); - const contents: CustomDBEngineVersionAlreadyExistsFault = { - name: "CustomDBEngineVersionAlreadyExistsFault", - $fault: "client", + const exception = new CustomDBEngineVersionAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomDBEngineVersionNotFoundFaultResponse = async ( @@ -14185,13 +10616,11 @@ const deserializeAws_queryCustomDBEngineVersionNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomDBEngineVersionNotFoundFault(body.Error, context); - const contents: CustomDBEngineVersionNotFoundFault = { - name: "CustomDBEngineVersionNotFoundFault", - $fault: "client", + const exception = new CustomDBEngineVersionNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomDBEngineVersionQuotaExceededFaultResponse = async ( @@ -14200,13 +10629,11 @@ const deserializeAws_queryCustomDBEngineVersionQuotaExceededFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomDBEngineVersionQuotaExceededFault(body.Error, context); - const contents: CustomDBEngineVersionQuotaExceededFault = { - name: "CustomDBEngineVersionQuotaExceededFault", - $fault: "client", + const exception = new CustomDBEngineVersionQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterAlreadyExistsFaultResponse = async ( @@ -14215,13 +10642,11 @@ const deserializeAws_queryDBClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterAlreadyExistsFault(body.Error, context); - const contents: DBClusterAlreadyExistsFault = { - name: "DBClusterAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterBacktrackNotFoundFaultResponse = async ( @@ -14230,13 +10655,11 @@ const deserializeAws_queryDBClusterBacktrackNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterBacktrackNotFoundFault(body.Error, context); - const contents: DBClusterBacktrackNotFoundFault = { - name: "DBClusterBacktrackNotFoundFault", - $fault: "client", + const exception = new DBClusterBacktrackNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse = async ( @@ -14245,13 +10668,11 @@ const deserializeAws_queryDBClusterEndpointAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterEndpointAlreadyExistsFault(body.Error, context); - const contents: DBClusterEndpointAlreadyExistsFault = { - name: "DBClusterEndpointAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterEndpointAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterEndpointNotFoundFaultResponse = async ( @@ -14260,13 +10681,11 @@ const deserializeAws_queryDBClusterEndpointNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterEndpointNotFoundFault(body.Error, context); - const contents: DBClusterEndpointNotFoundFault = { - name: "DBClusterEndpointNotFoundFault", - $fault: "client", + const exception = new DBClusterEndpointNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse = async ( @@ -14275,13 +10694,11 @@ const deserializeAws_queryDBClusterEndpointQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterEndpointQuotaExceededFault(body.Error, context); - const contents: DBClusterEndpointQuotaExceededFault = { - name: "DBClusterEndpointQuotaExceededFault", - $fault: "client", + const exception = new DBClusterEndpointQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterNotFoundFaultResponse = async ( @@ -14290,13 +10707,11 @@ const deserializeAws_queryDBClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterNotFoundFault(body.Error, context); - const contents: DBClusterNotFoundFault = { - name: "DBClusterNotFoundFault", - $fault: "client", + const exception = new DBClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse = async ( @@ -14305,13 +10720,11 @@ const deserializeAws_queryDBClusterParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterParameterGroupNotFoundFault(body.Error, context); - const contents: DBClusterParameterGroupNotFoundFault = { - name: "DBClusterParameterGroupNotFoundFault", - $fault: "client", + const exception = new DBClusterParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterQuotaExceededFaultResponse = async ( @@ -14320,13 +10733,11 @@ const deserializeAws_queryDBClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterQuotaExceededFault(body.Error, context); - const contents: DBClusterQuotaExceededFault = { - name: "DBClusterQuotaExceededFault", - $fault: "client", + const exception = new DBClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse = async ( @@ -14335,13 +10746,11 @@ const deserializeAws_queryDBClusterRoleAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterRoleAlreadyExistsFault(body.Error, context); - const contents: DBClusterRoleAlreadyExistsFault = { - name: "DBClusterRoleAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterRoleAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterRoleNotFoundFaultResponse = async ( @@ -14350,13 +10759,11 @@ const deserializeAws_queryDBClusterRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterRoleNotFoundFault(body.Error, context); - const contents: DBClusterRoleNotFoundFault = { - name: "DBClusterRoleNotFoundFault", - $fault: "client", + const exception = new DBClusterRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse = async ( @@ -14365,13 +10772,11 @@ const deserializeAws_queryDBClusterRoleQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterRoleQuotaExceededFault(body.Error, context); - const contents: DBClusterRoleQuotaExceededFault = { - name: "DBClusterRoleQuotaExceededFault", - $fault: "client", + const exception = new DBClusterRoleQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse = async ( @@ -14380,13 +10785,11 @@ const deserializeAws_queryDBClusterSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterSnapshotAlreadyExistsFault(body.Error, context); - const contents: DBClusterSnapshotAlreadyExistsFault = { - name: "DBClusterSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new DBClusterSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse = async ( @@ -14395,13 +10798,11 @@ const deserializeAws_queryDBClusterSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBClusterSnapshotNotFoundFault(body.Error, context); - const contents: DBClusterSnapshotNotFoundFault = { - name: "DBClusterSnapshotNotFoundFault", - $fault: "client", + const exception = new DBClusterSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceAlreadyExistsFaultResponse = async ( @@ -14410,13 +10811,11 @@ const deserializeAws_queryDBInstanceAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceAlreadyExistsFault(body.Error, context); - const contents: DBInstanceAlreadyExistsFault = { - name: "DBInstanceAlreadyExistsFault", - $fault: "client", + const exception = new DBInstanceAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse = async ( @@ -14425,13 +10824,11 @@ const deserializeAws_queryDBInstanceAutomatedBackupNotFoundFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceAutomatedBackupNotFoundFault(body.Error, context); - const contents: DBInstanceAutomatedBackupNotFoundFault = { - name: "DBInstanceAutomatedBackupNotFoundFault", - $fault: "client", + const exception = new DBInstanceAutomatedBackupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFaultResponse = async ( @@ -14440,13 +10837,11 @@ const deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFaultResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceAutomatedBackupQuotaExceededFault(body.Error, context); - const contents: DBInstanceAutomatedBackupQuotaExceededFault = { - name: "DBInstanceAutomatedBackupQuotaExceededFault", - $fault: "client", + const exception = new DBInstanceAutomatedBackupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceNotFoundFaultResponse = async ( @@ -14455,13 +10850,11 @@ const deserializeAws_queryDBInstanceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceNotFoundFault(body.Error, context); - const contents: DBInstanceNotFoundFault = { - name: "DBInstanceNotFoundFault", - $fault: "client", + const exception = new DBInstanceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceRoleAlreadyExistsFaultResponse = async ( @@ -14470,13 +10863,11 @@ const deserializeAws_queryDBInstanceRoleAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceRoleAlreadyExistsFault(body.Error, context); - const contents: DBInstanceRoleAlreadyExistsFault = { - name: "DBInstanceRoleAlreadyExistsFault", - $fault: "client", + const exception = new DBInstanceRoleAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceRoleNotFoundFaultResponse = async ( @@ -14485,13 +10876,11 @@ const deserializeAws_queryDBInstanceRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceRoleNotFoundFault(body.Error, context); - const contents: DBInstanceRoleNotFoundFault = { - name: "DBInstanceRoleNotFoundFault", - $fault: "client", + const exception = new DBInstanceRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBInstanceRoleQuotaExceededFaultResponse = async ( @@ -14500,13 +10889,11 @@ const deserializeAws_queryDBInstanceRoleQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBInstanceRoleQuotaExceededFault(body.Error, context); - const contents: DBInstanceRoleQuotaExceededFault = { - name: "DBInstanceRoleQuotaExceededFault", - $fault: "client", + const exception = new DBInstanceRoleQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBLogFileNotFoundFaultResponse = async ( @@ -14515,13 +10902,11 @@ const deserializeAws_queryDBLogFileNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBLogFileNotFoundFault(body.Error, context); - const contents: DBLogFileNotFoundFault = { - name: "DBLogFileNotFoundFault", - $fault: "client", + const exception = new DBLogFileNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse = async ( @@ -14530,13 +10915,11 @@ const deserializeAws_queryDBParameterGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupAlreadyExistsFault(body.Error, context); - const contents: DBParameterGroupAlreadyExistsFault = { - name: "DBParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupNotFoundFaultResponse = async ( @@ -14545,13 +10928,11 @@ const deserializeAws_queryDBParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupNotFoundFault(body.Error, context); - const contents: DBParameterGroupNotFoundFault = { - name: "DBParameterGroupNotFoundFault", - $fault: "client", + const exception = new DBParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse = async ( @@ -14560,13 +10941,11 @@ const deserializeAws_queryDBParameterGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBParameterGroupQuotaExceededFault(body.Error, context); - const contents: DBParameterGroupQuotaExceededFault = { - name: "DBParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new DBParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyAlreadyExistsFaultResponse = async ( @@ -14575,13 +10954,11 @@ const deserializeAws_queryDBProxyAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyAlreadyExistsFault(body.Error, context); - const contents: DBProxyAlreadyExistsFault = { - name: "DBProxyAlreadyExistsFault", - $fault: "client", + const exception = new DBProxyAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyEndpointAlreadyExistsFaultResponse = async ( @@ -14590,13 +10967,11 @@ const deserializeAws_queryDBProxyEndpointAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyEndpointAlreadyExistsFault(body.Error, context); - const contents: DBProxyEndpointAlreadyExistsFault = { - name: "DBProxyEndpointAlreadyExistsFault", - $fault: "client", + const exception = new DBProxyEndpointAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyEndpointNotFoundFaultResponse = async ( @@ -14605,13 +10980,11 @@ const deserializeAws_queryDBProxyEndpointNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyEndpointNotFoundFault(body.Error, context); - const contents: DBProxyEndpointNotFoundFault = { - name: "DBProxyEndpointNotFoundFault", - $fault: "client", + const exception = new DBProxyEndpointNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyEndpointQuotaExceededFaultResponse = async ( @@ -14620,13 +10993,11 @@ const deserializeAws_queryDBProxyEndpointQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyEndpointQuotaExceededFault(body.Error, context); - const contents: DBProxyEndpointQuotaExceededFault = { - name: "DBProxyEndpointQuotaExceededFault", - $fault: "client", + const exception = new DBProxyEndpointQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyNotFoundFaultResponse = async ( @@ -14635,13 +11006,11 @@ const deserializeAws_queryDBProxyNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyNotFoundFault(body.Error, context); - const contents: DBProxyNotFoundFault = { - name: "DBProxyNotFoundFault", - $fault: "client", + const exception = new DBProxyNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyQuotaExceededFaultResponse = async ( @@ -14650,13 +11019,11 @@ const deserializeAws_queryDBProxyQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyQuotaExceededFault(body.Error, context); - const contents: DBProxyQuotaExceededFault = { - name: "DBProxyQuotaExceededFault", - $fault: "client", + const exception = new DBProxyQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyTargetAlreadyRegisteredFaultResponse = async ( @@ -14665,13 +11032,11 @@ const deserializeAws_queryDBProxyTargetAlreadyRegisteredFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyTargetAlreadyRegisteredFault(body.Error, context); - const contents: DBProxyTargetAlreadyRegisteredFault = { - name: "DBProxyTargetAlreadyRegisteredFault", - $fault: "client", + const exception = new DBProxyTargetAlreadyRegisteredFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse = async ( @@ -14680,13 +11045,11 @@ const deserializeAws_queryDBProxyTargetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyTargetGroupNotFoundFault(body.Error, context); - const contents: DBProxyTargetGroupNotFoundFault = { - name: "DBProxyTargetGroupNotFoundFault", - $fault: "client", + const exception = new DBProxyTargetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBProxyTargetNotFoundFaultResponse = async ( @@ -14695,13 +11058,11 @@ const deserializeAws_queryDBProxyTargetNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBProxyTargetNotFoundFault(body.Error, context); - const contents: DBProxyTargetNotFoundFault = { - name: "DBProxyTargetNotFoundFault", - $fault: "client", + const exception = new DBProxyTargetNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSecurityGroupAlreadyExistsFaultResponse = async ( @@ -14710,13 +11071,11 @@ const deserializeAws_queryDBSecurityGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSecurityGroupAlreadyExistsFault(body.Error, context); - const contents: DBSecurityGroupAlreadyExistsFault = { - name: "DBSecurityGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBSecurityGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSecurityGroupNotFoundFaultResponse = async ( @@ -14725,13 +11084,11 @@ const deserializeAws_queryDBSecurityGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSecurityGroupNotFoundFault(body.Error, context); - const contents: DBSecurityGroupNotFoundFault = { - name: "DBSecurityGroupNotFoundFault", - $fault: "client", + const exception = new DBSecurityGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSecurityGroupNotSupportedFaultResponse = async ( @@ -14740,13 +11097,11 @@ const deserializeAws_queryDBSecurityGroupNotSupportedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSecurityGroupNotSupportedFault(body.Error, context); - const contents: DBSecurityGroupNotSupportedFault = { - name: "DBSecurityGroupNotSupportedFault", - $fault: "client", + const exception = new DBSecurityGroupNotSupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSecurityGroupQuotaExceededFaultResponse = async ( @@ -14755,13 +11110,11 @@ const deserializeAws_queryDBSecurityGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSecurityGroupQuotaExceededFault(body.Error, context); - const contents: DBSecurityGroupQuotaExceededFault = { - name: "DBSecurityGroupQuotaExceededFault", - $fault: "client", + const exception = new DBSecurityGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse = async ( @@ -14770,13 +11123,11 @@ const deserializeAws_queryDBSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSnapshotAlreadyExistsFault(body.Error, context); - const contents: DBSnapshotAlreadyExistsFault = { - name: "DBSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new DBSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSnapshotNotFoundFaultResponse = async ( @@ -14785,13 +11136,11 @@ const deserializeAws_queryDBSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSnapshotNotFoundFault(body.Error, context); - const contents: DBSnapshotNotFoundFault = { - name: "DBSnapshotNotFoundFault", - $fault: "client", + const exception = new DBSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse = async ( @@ -14800,13 +11149,11 @@ const deserializeAws_queryDBSubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupAlreadyExistsFault(body.Error, context); - const contents: DBSubnetGroupAlreadyExistsFault = { - name: "DBSubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new DBSubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse = async ( @@ -14815,13 +11162,11 @@ const deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupDoesNotCoverEnoughAZs(body.Error, context); - const contents: DBSubnetGroupDoesNotCoverEnoughAZs = { - name: "DBSubnetGroupDoesNotCoverEnoughAZs", - $fault: "client", + const exception = new DBSubnetGroupDoesNotCoverEnoughAZs({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupNotAllowedFaultResponse = async ( @@ -14830,13 +11175,11 @@ const deserializeAws_queryDBSubnetGroupNotAllowedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupNotAllowedFault(body.Error, context); - const contents: DBSubnetGroupNotAllowedFault = { - name: "DBSubnetGroupNotAllowedFault", - $fault: "client", + const exception = new DBSubnetGroupNotAllowedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupNotFoundFaultResponse = async ( @@ -14845,13 +11188,11 @@ const deserializeAws_queryDBSubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupNotFoundFault(body.Error, context); - const contents: DBSubnetGroupNotFoundFault = { - name: "DBSubnetGroupNotFoundFault", - $fault: "client", + const exception = new DBSubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse = async ( @@ -14860,13 +11201,11 @@ const deserializeAws_queryDBSubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetGroupQuotaExceededFault(body.Error, context); - const contents: DBSubnetGroupQuotaExceededFault = { - name: "DBSubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new DBSubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBSubnetQuotaExceededFaultResponse = async ( @@ -14875,13 +11214,11 @@ const deserializeAws_queryDBSubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBSubnetQuotaExceededFault(body.Error, context); - const contents: DBSubnetQuotaExceededFault = { - name: "DBSubnetQuotaExceededFault", - $fault: "client", + const exception = new DBSubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDBUpgradeDependencyFailureFaultResponse = async ( @@ -14890,13 +11227,11 @@ const deserializeAws_queryDBUpgradeDependencyFailureFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDBUpgradeDependencyFailureFault(body.Error, context); - const contents: DBUpgradeDependencyFailureFault = { - name: "DBUpgradeDependencyFailureFault", - $fault: "client", + const exception = new DBUpgradeDependencyFailureFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDomainNotFoundFaultResponse = async ( @@ -14905,13 +11240,11 @@ const deserializeAws_queryDomainNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDomainNotFoundFault(body.Error, context); - const contents: DomainNotFoundFault = { - name: "DomainNotFoundFault", - $fault: "client", + const exception = new DomainNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( @@ -14920,13 +11253,11 @@ const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEventSubscriptionQuotaExceededFault(body.Error, context); - const contents: EventSubscriptionQuotaExceededFault = { - name: "EventSubscriptionQuotaExceededFault", - $fault: "client", + const exception = new EventSubscriptionQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryExportTaskAlreadyExistsFaultResponse = async ( @@ -14935,13 +11266,11 @@ const deserializeAws_queryExportTaskAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryExportTaskAlreadyExistsFault(body.Error, context); - const contents: ExportTaskAlreadyExistsFault = { - name: "ExportTaskAlreadyExistsFault", - $fault: "client", + const exception = new ExportTaskAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryExportTaskNotFoundFaultResponse = async ( @@ -14950,13 +11279,11 @@ const deserializeAws_queryExportTaskNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryExportTaskNotFoundFault(body.Error, context); - const contents: ExportTaskNotFoundFault = { - name: "ExportTaskNotFoundFault", - $fault: "client", + const exception = new ExportTaskNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse = async ( @@ -14965,13 +11292,11 @@ const deserializeAws_queryGlobalClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalClusterAlreadyExistsFault(body.Error, context); - const contents: GlobalClusterAlreadyExistsFault = { - name: "GlobalClusterAlreadyExistsFault", - $fault: "client", + const exception = new GlobalClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalClusterNotFoundFaultResponse = async ( @@ -14980,13 +11305,11 @@ const deserializeAws_queryGlobalClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalClusterNotFoundFault(body.Error, context); - const contents: GlobalClusterNotFoundFault = { - name: "GlobalClusterNotFoundFault", - $fault: "client", + const exception = new GlobalClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryGlobalClusterQuotaExceededFaultResponse = async ( @@ -14995,13 +11318,11 @@ const deserializeAws_queryGlobalClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryGlobalClusterQuotaExceededFault(body.Error, context); - const contents: GlobalClusterQuotaExceededFault = { - name: "GlobalClusterQuotaExceededFault", - $fault: "client", + const exception = new GlobalClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryIamRoleMissingPermissionsFaultResponse = async ( @@ -15010,13 +11331,11 @@ const deserializeAws_queryIamRoleMissingPermissionsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryIamRoleMissingPermissionsFault(body.Error, context); - const contents: IamRoleMissingPermissionsFault = { - name: "IamRoleMissingPermissionsFault", - $fault: "client", + const exception = new IamRoleMissingPermissionsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryIamRoleNotFoundFaultResponse = async ( @@ -15025,13 +11344,11 @@ const deserializeAws_queryIamRoleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryIamRoleNotFoundFault(body.Error, context); - const contents: IamRoleNotFoundFault = { - name: "IamRoleNotFoundFault", - $fault: "client", + const exception = new IamRoleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInstallationMediaAlreadyExistsFaultResponse = async ( @@ -15040,13 +11357,11 @@ const deserializeAws_queryInstallationMediaAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInstallationMediaAlreadyExistsFault(body.Error, context); - const contents: InstallationMediaAlreadyExistsFault = { - name: "InstallationMediaAlreadyExistsFault", - $fault: "client", + const exception = new InstallationMediaAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInstallationMediaNotFoundFaultResponse = async ( @@ -15055,13 +11370,11 @@ const deserializeAws_queryInstallationMediaNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInstallationMediaNotFoundFault(body.Error, context); - const contents: InstallationMediaNotFoundFault = { - name: "InstallationMediaNotFoundFault", - $fault: "client", + const exception = new InstallationMediaNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInstanceQuotaExceededFaultResponse = async ( @@ -15070,13 +11383,11 @@ const deserializeAws_queryInstanceQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInstanceQuotaExceededFault(body.Error, context); - const contents: InstanceQuotaExceededFault = { - name: "InstanceQuotaExceededFault", - $fault: "client", + const exception = new InstanceQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientAvailableIPsInSubnetFaultResponse = async ( @@ -15085,13 +11396,11 @@ const deserializeAws_queryInsufficientAvailableIPsInSubnetFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientAvailableIPsInSubnetFault(body.Error, context); - const contents: InsufficientAvailableIPsInSubnetFault = { - name: "InsufficientAvailableIPsInSubnetFault", - $fault: "client", + const exception = new InsufficientAvailableIPsInSubnetFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientDBClusterCapacityFaultResponse = async ( @@ -15100,13 +11409,11 @@ const deserializeAws_queryInsufficientDBClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientDBClusterCapacityFault(body.Error, context); - const contents: InsufficientDBClusterCapacityFault = { - name: "InsufficientDBClusterCapacityFault", - $fault: "client", + const exception = new InsufficientDBClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse = async ( @@ -15115,13 +11422,11 @@ const deserializeAws_queryInsufficientDBInstanceCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientDBInstanceCapacityFault(body.Error, context); - const contents: InsufficientDBInstanceCapacityFault = { - name: "InsufficientDBInstanceCapacityFault", - $fault: "client", + const exception = new InsufficientDBInstanceCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse = async ( @@ -15130,13 +11435,11 @@ const deserializeAws_queryInsufficientStorageClusterCapacityFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientStorageClusterCapacityFault(body.Error, context); - const contents: InsufficientStorageClusterCapacityFault = { - name: "InsufficientStorageClusterCapacityFault", - $fault: "client", + const exception = new InsufficientStorageClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidCustomDBEngineVersionStateFaultResponse = async ( @@ -15145,13 +11448,11 @@ const deserializeAws_queryInvalidCustomDBEngineVersionStateFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidCustomDBEngineVersionStateFault(body.Error, context); - const contents: InvalidCustomDBEngineVersionStateFault = { - name: "InvalidCustomDBEngineVersionStateFault", - $fault: "client", + const exception = new InvalidCustomDBEngineVersionStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterCapacityFaultResponse = async ( @@ -15160,13 +11461,11 @@ const deserializeAws_queryInvalidDBClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterCapacityFault(body.Error, context); - const contents: InvalidDBClusterCapacityFault = { - name: "InvalidDBClusterCapacityFault", - $fault: "client", + const exception = new InvalidDBClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse = async ( @@ -15175,13 +11474,11 @@ const deserializeAws_queryInvalidDBClusterEndpointStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterEndpointStateFault(body.Error, context); - const contents: InvalidDBClusterEndpointStateFault = { - name: "InvalidDBClusterEndpointStateFault", - $fault: "client", + const exception = new InvalidDBClusterEndpointStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse = async ( @@ -15190,13 +11487,11 @@ const deserializeAws_queryInvalidDBClusterSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterSnapshotStateFault(body.Error, context); - const contents: InvalidDBClusterSnapshotStateFault = { - name: "InvalidDBClusterSnapshotStateFault", - $fault: "client", + const exception = new InvalidDBClusterSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBClusterStateFaultResponse = async ( @@ -15205,13 +11500,11 @@ const deserializeAws_queryInvalidDBClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBClusterStateFault(body.Error, context); - const contents: InvalidDBClusterStateFault = { - name: "InvalidDBClusterStateFault", - $fault: "client", + const exception = new InvalidDBClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBInstanceAutomatedBackupStateFaultResponse = async ( @@ -15220,13 +11513,11 @@ const deserializeAws_queryInvalidDBInstanceAutomatedBackupStateFaultResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBInstanceAutomatedBackupStateFault(body.Error, context); - const contents: InvalidDBInstanceAutomatedBackupStateFault = { - name: "InvalidDBInstanceAutomatedBackupStateFault", - $fault: "client", + const exception = new InvalidDBInstanceAutomatedBackupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBInstanceStateFaultResponse = async ( @@ -15235,13 +11526,11 @@ const deserializeAws_queryInvalidDBInstanceStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBInstanceStateFault(body.Error, context); - const contents: InvalidDBInstanceStateFault = { - name: "InvalidDBInstanceStateFault", - $fault: "client", + const exception = new InvalidDBInstanceStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBParameterGroupStateFaultResponse = async ( @@ -15250,13 +11539,11 @@ const deserializeAws_queryInvalidDBParameterGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBParameterGroupStateFault(body.Error, context); - const contents: InvalidDBParameterGroupStateFault = { - name: "InvalidDBParameterGroupStateFault", - $fault: "client", + const exception = new InvalidDBParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBProxyEndpointStateFaultResponse = async ( @@ -15265,13 +11552,11 @@ const deserializeAws_queryInvalidDBProxyEndpointStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBProxyEndpointStateFault(body.Error, context); - const contents: InvalidDBProxyEndpointStateFault = { - name: "InvalidDBProxyEndpointStateFault", - $fault: "client", + const exception = new InvalidDBProxyEndpointStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBProxyStateFaultResponse = async ( @@ -15280,13 +11565,11 @@ const deserializeAws_queryInvalidDBProxyStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBProxyStateFault(body.Error, context); - const contents: InvalidDBProxyStateFault = { - name: "InvalidDBProxyStateFault", - $fault: "client", + const exception = new InvalidDBProxyStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse = async ( @@ -15295,13 +11578,11 @@ const deserializeAws_queryInvalidDBSecurityGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSecurityGroupStateFault(body.Error, context); - const contents: InvalidDBSecurityGroupStateFault = { - name: "InvalidDBSecurityGroupStateFault", - $fault: "client", + const exception = new InvalidDBSecurityGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSnapshotStateFaultResponse = async ( @@ -15310,13 +11591,11 @@ const deserializeAws_queryInvalidDBSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSnapshotStateFault(body.Error, context); - const contents: InvalidDBSnapshotStateFault = { - name: "InvalidDBSnapshotStateFault", - $fault: "client", + const exception = new InvalidDBSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetGroupFaultResponse = async ( @@ -15325,13 +11604,11 @@ const deserializeAws_queryInvalidDBSubnetGroupFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetGroupFault(body.Error, context); - const contents: InvalidDBSubnetGroupFault = { - name: "InvalidDBSubnetGroupFault", - $fault: "client", + const exception = new InvalidDBSubnetGroupFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse = async ( @@ -15340,13 +11617,11 @@ const deserializeAws_queryInvalidDBSubnetGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetGroupStateFault(body.Error, context); - const contents: InvalidDBSubnetGroupStateFault = { - name: "InvalidDBSubnetGroupStateFault", - $fault: "client", + const exception = new InvalidDBSubnetGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDBSubnetStateFaultResponse = async ( @@ -15355,13 +11630,11 @@ const deserializeAws_queryInvalidDBSubnetStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDBSubnetStateFault(body.Error, context); - const contents: InvalidDBSubnetStateFault = { - name: "InvalidDBSubnetStateFault", - $fault: "client", + const exception = new InvalidDBSubnetStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidEventSubscriptionStateFaultResponse = async ( @@ -15370,13 +11643,11 @@ const deserializeAws_queryInvalidEventSubscriptionStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidEventSubscriptionStateFault(body.Error, context); - const contents: InvalidEventSubscriptionStateFault = { - name: "InvalidEventSubscriptionStateFault", - $fault: "client", + const exception = new InvalidEventSubscriptionStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidExportOnlyFaultResponse = async ( @@ -15385,13 +11656,11 @@ const deserializeAws_queryInvalidExportOnlyFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidExportOnlyFault(body.Error, context); - const contents: InvalidExportOnlyFault = { - name: "InvalidExportOnlyFault", - $fault: "client", + const exception = new InvalidExportOnlyFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidExportSourceStateFaultResponse = async ( @@ -15400,13 +11669,11 @@ const deserializeAws_queryInvalidExportSourceStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidExportSourceStateFault(body.Error, context); - const contents: InvalidExportSourceStateFault = { - name: "InvalidExportSourceStateFault", - $fault: "client", + const exception = new InvalidExportSourceStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidExportTaskStateFaultResponse = async ( @@ -15415,13 +11682,11 @@ const deserializeAws_queryInvalidExportTaskStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidExportTaskStateFault(body.Error, context); - const contents: InvalidExportTaskStateFault = { - name: "InvalidExportTaskStateFault", - $fault: "client", + const exception = new InvalidExportTaskStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidGlobalClusterStateFaultResponse = async ( @@ -15430,13 +11695,11 @@ const deserializeAws_queryInvalidGlobalClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidGlobalClusterStateFault(body.Error, context); - const contents: InvalidGlobalClusterStateFault = { - name: "InvalidGlobalClusterStateFault", - $fault: "client", + const exception = new InvalidGlobalClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidOptionGroupStateFaultResponse = async ( @@ -15445,13 +11708,11 @@ const deserializeAws_queryInvalidOptionGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidOptionGroupStateFault(body.Error, context); - const contents: InvalidOptionGroupStateFault = { - name: "InvalidOptionGroupStateFault", - $fault: "client", + const exception = new InvalidOptionGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRestoreFaultResponse = async ( @@ -15460,13 +11721,11 @@ const deserializeAws_queryInvalidRestoreFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRestoreFault(body.Error, context); - const contents: InvalidRestoreFault = { - name: "InvalidRestoreFault", - $fault: "client", + const exception = new InvalidRestoreFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidS3BucketFaultResponse = async ( @@ -15475,13 +11734,11 @@ const deserializeAws_queryInvalidS3BucketFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidS3BucketFault(body.Error, context); - const contents: InvalidS3BucketFault = { - name: "InvalidS3BucketFault", - $fault: "client", + const exception = new InvalidS3BucketFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetResponse = async ( @@ -15490,13 +11747,11 @@ const deserializeAws_queryInvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnet(body.Error, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( @@ -15505,13 +11760,11 @@ const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidVPCNetworkStateFault(body.Error, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSKeyNotAccessibleFaultResponse = async ( @@ -15520,13 +11773,11 @@ const deserializeAws_queryKMSKeyNotAccessibleFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSKeyNotAccessibleFault(body.Error, context); - const contents: KMSKeyNotAccessibleFault = { - name: "KMSKeyNotAccessibleFault", - $fault: "client", + const exception = new KMSKeyNotAccessibleFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOptionGroupAlreadyExistsFaultResponse = async ( @@ -15535,13 +11786,11 @@ const deserializeAws_queryOptionGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOptionGroupAlreadyExistsFault(body.Error, context); - const contents: OptionGroupAlreadyExistsFault = { - name: "OptionGroupAlreadyExistsFault", - $fault: "client", + const exception = new OptionGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOptionGroupNotFoundFaultResponse = async ( @@ -15550,13 +11799,11 @@ const deserializeAws_queryOptionGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOptionGroupNotFoundFault(body.Error, context); - const contents: OptionGroupNotFoundFault = { - name: "OptionGroupNotFoundFault", - $fault: "client", + const exception = new OptionGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOptionGroupQuotaExceededFaultResponse = async ( @@ -15565,13 +11812,11 @@ const deserializeAws_queryOptionGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOptionGroupQuotaExceededFault(body.Error, context); - const contents: OptionGroupQuotaExceededFault = { - name: "OptionGroupQuotaExceededFault", - $fault: "client", + const exception = new OptionGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPointInTimeRestoreNotEnabledFaultResponse = async ( @@ -15580,13 +11825,11 @@ const deserializeAws_queryPointInTimeRestoreNotEnabledFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPointInTimeRestoreNotEnabledFault(body.Error, context); - const contents: PointInTimeRestoreNotEnabledFault = { - name: "PointInTimeRestoreNotEnabledFault", - $fault: "client", + const exception = new PointInTimeRestoreNotEnabledFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse = async ( @@ -15595,13 +11838,11 @@ const deserializeAws_queryProvisionedIopsNotAvailableInAZFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryProvisionedIopsNotAvailableInAZFault(body.Error, context); - const contents: ProvisionedIopsNotAvailableInAZFault = { - name: "ProvisionedIopsNotAvailableInAZFault", - $fault: "client", + const exception = new ProvisionedIopsNotAvailableInAZFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedDBInstanceAlreadyExistsFaultResponse = async ( @@ -15610,13 +11851,11 @@ const deserializeAws_queryReservedDBInstanceAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedDBInstanceAlreadyExistsFault(body.Error, context); - const contents: ReservedDBInstanceAlreadyExistsFault = { - name: "ReservedDBInstanceAlreadyExistsFault", - $fault: "client", + const exception = new ReservedDBInstanceAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedDBInstanceNotFoundFaultResponse = async ( @@ -15625,13 +11864,11 @@ const deserializeAws_queryReservedDBInstanceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedDBInstanceNotFoundFault(body.Error, context); - const contents: ReservedDBInstanceNotFoundFault = { - name: "ReservedDBInstanceNotFoundFault", - $fault: "client", + const exception = new ReservedDBInstanceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedDBInstanceQuotaExceededFaultResponse = async ( @@ -15640,13 +11877,11 @@ const deserializeAws_queryReservedDBInstanceQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedDBInstanceQuotaExceededFault(body.Error, context); - const contents: ReservedDBInstanceQuotaExceededFault = { - name: "ReservedDBInstanceQuotaExceededFault", - $fault: "client", + const exception = new ReservedDBInstanceQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedDBInstancesOfferingNotFoundFaultResponse = async ( @@ -15655,13 +11890,11 @@ const deserializeAws_queryReservedDBInstancesOfferingNotFoundFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedDBInstancesOfferingNotFoundFault(body.Error, context); - const contents: ReservedDBInstancesOfferingNotFoundFault = { - name: "ReservedDBInstancesOfferingNotFoundFault", - $fault: "client", + const exception = new ReservedDBInstancesOfferingNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundFaultResponse = async ( @@ -15670,13 +11903,11 @@ const deserializeAws_queryResourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundFault(body.Error, context); - const contents: ResourceNotFoundFault = { - name: "ResourceNotFoundFault", - $fault: "client", + const exception = new ResourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySharedSnapshotQuotaExceededFaultResponse = async ( @@ -15685,13 +11916,11 @@ const deserializeAws_querySharedSnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySharedSnapshotQuotaExceededFault(body.Error, context); - const contents: SharedSnapshotQuotaExceededFault = { - name: "SharedSnapshotQuotaExceededFault", - $fault: "client", + const exception = new SharedSnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( @@ -15700,13 +11929,11 @@ const deserializeAws_querySnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotQuotaExceededFault(body.Error, context); - const contents: SnapshotQuotaExceededFault = { - name: "SnapshotQuotaExceededFault", - $fault: "client", + const exception = new SnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSInvalidTopicFaultResponse = async ( @@ -15715,13 +11942,11 @@ const deserializeAws_querySNSInvalidTopicFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSInvalidTopicFault(body.Error, context); - const contents: SNSInvalidTopicFault = { - name: "SNSInvalidTopicFault", - $fault: "client", + const exception = new SNSInvalidTopicFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( @@ -15730,13 +11955,11 @@ const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSNoAuthorizationFault(body.Error, context); - const contents: SNSNoAuthorizationFault = { - name: "SNSNoAuthorizationFault", - $fault: "client", + const exception = new SNSNoAuthorizationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( @@ -15745,13 +11968,11 @@ const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSTopicArnNotFoundFault(body.Error, context); - const contents: SNSTopicArnNotFoundFault = { - name: "SNSTopicArnNotFoundFault", - $fault: "client", + const exception = new SNSTopicArnNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySourceNotFoundFaultResponse = async ( @@ -15760,13 +11981,11 @@ const deserializeAws_querySourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySourceNotFoundFault(body.Error, context); - const contents: SourceNotFoundFault = { - name: "SourceNotFoundFault", - $fault: "client", + const exception = new SourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStorageQuotaExceededFaultResponse = async ( @@ -15775,13 +11994,11 @@ const deserializeAws_queryStorageQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStorageQuotaExceededFault(body.Error, context); - const contents: StorageQuotaExceededFault = { - name: "StorageQuotaExceededFault", - $fault: "client", + const exception = new StorageQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStorageTypeNotSupportedFaultResponse = async ( @@ -15790,13 +12007,11 @@ const deserializeAws_queryStorageTypeNotSupportedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStorageTypeNotSupportedFault(body.Error, context); - const contents: StorageTypeNotSupportedFault = { - name: "StorageTypeNotSupportedFault", - $fault: "client", + const exception = new StorageTypeNotSupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetAlreadyInUseResponse = async ( @@ -15805,13 +12020,11 @@ const deserializeAws_querySubnetAlreadyInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetAlreadyInUse(body.Error, context); - const contents: SubnetAlreadyInUse = { - name: "SubnetAlreadyInUse", - $fault: "client", + const exception = new SubnetAlreadyInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( @@ -15820,13 +12033,11 @@ const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionAlreadyExistFault(body.Error, context); - const contents: SubscriptionAlreadyExistFault = { - name: "SubscriptionAlreadyExistFault", - $fault: "client", + const exception = new SubscriptionAlreadyExistFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( @@ -15835,13 +12046,11 @@ const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionCategoryNotFoundFault(body.Error, context); - const contents: SubscriptionCategoryNotFoundFault = { - name: "SubscriptionCategoryNotFoundFault", - $fault: "client", + const exception = new SubscriptionCategoryNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( @@ -15850,13 +12059,11 @@ const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionNotFoundFault(body.Error, context); - const contents: SubscriptionNotFoundFault = { - name: "SubscriptionNotFoundFault", - $fault: "client", + const exception = new SubscriptionNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAddRoleToDBClusterMessage = ( diff --git a/clients/client-redshift-data/src/index.ts b/clients/client-redshift-data/src/index.ts index 4182681688ce5..0e3a037da19b2 100644 --- a/clients/client-redshift-data/src/index.ts +++ b/clients/client-redshift-data/src/index.ts @@ -3,3 +3,4 @@ export * from "./RedshiftDataClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { RedshiftDataServiceException } from "./models/RedshiftDataServiceException"; diff --git a/clients/client-redshift-data/src/models/RedshiftDataServiceException.ts b/clients/client-redshift-data/src/models/RedshiftDataServiceException.ts new file mode 100644 index 0000000000000..9b9494e112dc3 --- /dev/null +++ b/clients/client-redshift-data/src/models/RedshiftDataServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RedshiftData service. + */ +export class RedshiftDataServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RedshiftDataServiceException.prototype); + } +} diff --git a/clients/client-redshift-data/src/models/models_0.ts b/clients/client-redshift-data/src/models/models_0.ts index 40aebd2d72d24..d47a1e5c25a3e 100644 --- a/clients/client-redshift-data/src/models/models_0.ts +++ b/clients/client-redshift-data/src/models/models_0.ts @@ -1,25 +1,53 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RedshiftDataServiceException as __BaseException } from "./RedshiftDataServiceException"; /** *

The number of active statements exceeds the limit.

*/ -export interface ActiveStatementsExceededException extends __SmithyException, $MetadataBearer { - name: "ActiveStatementsExceededException"; - $fault: "client"; +export class ActiveStatementsExceededException extends __BaseException { + readonly name: "ActiveStatementsExceededException" = "ActiveStatementsExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActiveStatementsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActiveStatementsExceededException.prototype); + this.Message = opts.Message; + } } /** *

An SQL statement encountered an environmental error while running.

*/ -export interface BatchExecuteStatementException extends __SmithyException, $MetadataBearer { - name: "BatchExecuteStatementException"; - $fault: "server"; +export class BatchExecuteStatementException extends __BaseException { + readonly name: "BatchExecuteStatementException" = "BatchExecuteStatementException"; + readonly $fault: "server" = "server"; Message: string | undefined; /** *

Statement identifier of the exception.

*/ StatementId: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchExecuteStatementException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, BatchExecuteStatementException.prototype); + this.Message = opts.Message; + this.StatementId = opts.StatementId; + } } export interface BatchExecuteStatementInput { @@ -113,13 +141,25 @@ export namespace BatchExecuteStatementOutput { /** *

The Amazon Redshift Data API operation failed due to invalid input.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

The exception message.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface CancelStatementRequest { @@ -158,30 +198,54 @@ export namespace CancelStatementResponse { /** *

Connection to a database failed.

*/ -export interface DatabaseConnectionException extends __SmithyException, $MetadataBearer { - name: "DatabaseConnectionException"; - $fault: "server"; +export class DatabaseConnectionException extends __BaseException { + readonly name: "DatabaseConnectionException" = "DatabaseConnectionException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DatabaseConnectionException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, DatabaseConnectionException.prototype); + this.Message = opts.Message; + } } /** *

The Amazon Redshift Data API operation failed due to invalid input.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

The exception message.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The Amazon Redshift Data API operation failed due to a missing resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The exception message.

*/ @@ -191,6 +255,19 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

Resource identifier associated with the exception.

*/ ResourceId: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + } } /** @@ -629,9 +706,9 @@ export namespace DescribeTableResponse { /** *

The SQL statement encountered an environmental error while running.

*/ -export interface ExecuteStatementException extends __SmithyException, $MetadataBearer { - name: "ExecuteStatementException"; - $fault: "server"; +export class ExecuteStatementException extends __BaseException { + readonly name: "ExecuteStatementException" = "ExecuteStatementException"; + readonly $fault: "server" = "server"; /** *

The exception message.

*/ @@ -641,6 +718,19 @@ export interface ExecuteStatementException extends __SmithyException, $MetadataB *

Statement identifier of the exception.

*/ StatementId: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExecuteStatementException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ExecuteStatementException.prototype); + this.Message = opts.Message; + this.StatementId = opts.StatementId; + } } export interface ExecuteStatementInput { diff --git a/clients/client-redshift-data/src/protocols/Aws_json1_1.ts b/clients/client-redshift-data/src/protocols/Aws_json1_1.ts index 90532194b3201..c29e67cc0e5ee 100644 --- a/clients/client-redshift-data/src/protocols/Aws_json1_1.ts +++ b/clients/client-redshift-data/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -67,6 +66,7 @@ import { TableMember, ValidationException, } from "../models/models_0"; +import { RedshiftDataServiceException as __BaseException } from "../models/RedshiftDataServiceException"; export const serializeAws_json1_1BatchExecuteStatementCommand = async ( input: BatchExecuteStatementCommandInput, @@ -223,49 +223,28 @@ const deserializeAws_json1_1BatchExecuteStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActiveStatementsExceededException": case "com.amazonaws.redshiftdata#ActiveStatementsExceededException": - response = { - ...(await deserializeAws_json1_1ActiveStatementsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActiveStatementsExceededExceptionResponse(parsedOutput, context); case "BatchExecuteStatementException": case "com.amazonaws.redshiftdata#BatchExecuteStatementException": - response = { - ...(await deserializeAws_json1_1BatchExecuteStatementExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BatchExecuteStatementExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelStatementCommand = async ( @@ -293,57 +272,31 @@ const deserializeAws_json1_1CancelStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DatabaseConnectionException": case "com.amazonaws.redshiftdata#DatabaseConnectionException": - response = { - ...(await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.redshiftdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStatementCommand = async ( @@ -371,49 +324,28 @@ const deserializeAws_json1_1DescribeStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.redshiftdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTableCommand = async ( @@ -441,49 +373,28 @@ const deserializeAws_json1_1DescribeTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DatabaseConnectionException": case "com.amazonaws.redshiftdata#DatabaseConnectionException": - response = { - ...(await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExecuteStatementCommand = async ( @@ -511,49 +422,28 @@ const deserializeAws_json1_1ExecuteStatementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActiveStatementsExceededException": case "com.amazonaws.redshiftdata#ActiveStatementsExceededException": - response = { - ...(await deserializeAws_json1_1ActiveStatementsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ActiveStatementsExceededExceptionResponse(parsedOutput, context); case "ExecuteStatementException": case "com.amazonaws.redshiftdata#ExecuteStatementException": - response = { - ...(await deserializeAws_json1_1ExecuteStatementExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ExecuteStatementExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetStatementResultCommand = async ( @@ -581,49 +471,28 @@ const deserializeAws_json1_1GetStatementResultCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.redshiftdata#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatabasesCommand = async ( @@ -651,49 +520,28 @@ const deserializeAws_json1_1ListDatabasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DatabaseConnectionException": case "com.amazonaws.redshiftdata#DatabaseConnectionException": - response = { - ...(await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSchemasCommand = async ( @@ -721,49 +569,28 @@ const deserializeAws_json1_1ListSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DatabaseConnectionException": case "com.amazonaws.redshiftdata#DatabaseConnectionException": - response = { - ...(await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStatementsCommand = async ( @@ -791,41 +618,25 @@ const deserializeAws_json1_1ListStatementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTablesCommand = async ( @@ -853,49 +664,28 @@ const deserializeAws_json1_1ListTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DatabaseConnectionException": case "com.amazonaws.redshiftdata#DatabaseConnectionException": - response = { - ...(await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DatabaseConnectionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.redshiftdata#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.redshiftdata#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ActiveStatementsExceededExceptionResponse = async ( @@ -904,13 +694,11 @@ const deserializeAws_json1_1ActiveStatementsExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ActiveStatementsExceededException(body, context); - const contents: ActiveStatementsExceededException = { - name: "ActiveStatementsExceededException", - $fault: "client", + const exception = new ActiveStatementsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BatchExecuteStatementExceptionResponse = async ( @@ -919,13 +707,11 @@ const deserializeAws_json1_1BatchExecuteStatementExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BatchExecuteStatementException(body, context); - const contents: BatchExecuteStatementException = { - name: "BatchExecuteStatementException", - $fault: "server", + const exception = new BatchExecuteStatementException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DatabaseConnectionExceptionResponse = async ( @@ -934,13 +720,11 @@ const deserializeAws_json1_1DatabaseConnectionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DatabaseConnectionException(body, context); - const contents: DatabaseConnectionException = { - name: "DatabaseConnectionException", - $fault: "server", + const exception = new DatabaseConnectionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ExecuteStatementExceptionResponse = async ( @@ -949,13 +733,11 @@ const deserializeAws_json1_1ExecuteStatementExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ExecuteStatementException(body, context); - const contents: ExecuteStatementException = { - name: "ExecuteStatementException", - $fault: "server", + const exception = new ExecuteStatementException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -964,13 +746,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -979,13 +759,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -994,13 +772,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1BatchExecuteStatementInput = ( diff --git a/clients/client-redshift/src/index.ts b/clients/client-redshift/src/index.ts index c1123366755d9..c691abc708a64 100644 --- a/clients/client-redshift/src/index.ts +++ b/clients/client-redshift/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { RedshiftServiceException } from "./models/RedshiftServiceException"; diff --git a/clients/client-redshift/src/models/RedshiftServiceException.ts b/clients/client-redshift/src/models/RedshiftServiceException.ts new file mode 100644 index 0000000000000..b8b0e8b85a203 --- /dev/null +++ b/clients/client-redshift/src/models/RedshiftServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Redshift service. + */ +export class RedshiftServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RedshiftServiceException.prototype); + } +} diff --git a/clients/client-redshift/src/models/models_0.ts b/clients/client-redshift/src/models/models_0.ts index 76edc97db2b65..dd44533393ca0 100644 --- a/clients/client-redshift/src/models/models_0.ts +++ b/clients/client-redshift/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RedshiftServiceException as __BaseException } from "./RedshiftServiceException"; export interface AcceptReservedNodeExchangeInputMessage { /** @@ -175,83 +177,173 @@ export namespace AcceptReservedNodeExchangeOutputMessage { *

Your request cannot be completed because a dependent internal service is * temporarily unavailable. Wait 30 to 60 seconds and try again.

*/ -export interface DependentServiceUnavailableFault extends __SmithyException, $MetadataBearer { - name: "DependentServiceUnavailableFault"; - $fault: "client"; - message?: string; +export class DependentServiceUnavailableFault extends __BaseException { + readonly name: "DependentServiceUnavailableFault" = "DependentServiceUnavailableFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependentServiceUnavailableFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DependentServiceUnavailableFault.prototype); + } } /** *

Indicates that the Reserved Node being exchanged is not in an active state.

*/ -export interface InvalidReservedNodeStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidReservedNodeStateFault"; - $fault: "client"; - message?: string; +export class InvalidReservedNodeStateFault extends __BaseException { + readonly name: "InvalidReservedNodeStateFault" = "InvalidReservedNodeStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidReservedNodeStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidReservedNodeStateFault.prototype); + } } /** *

User already has a reservation with the given identifier.

*/ -export interface ReservedNodeAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ReservedNodeAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ReservedNodeAlreadyExistsFault extends __BaseException { + readonly name: "ReservedNodeAlreadyExistsFault" = "ReservedNodeAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNodeAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNodeAlreadyExistsFault.prototype); + } } /** *

Indicates that the reserved node has already been exchanged.

*/ -export interface ReservedNodeAlreadyMigratedFault extends __SmithyException, $MetadataBearer { - name: "ReservedNodeAlreadyMigratedFault"; - $fault: "client"; - message?: string; +export class ReservedNodeAlreadyMigratedFault extends __BaseException { + readonly name: "ReservedNodeAlreadyMigratedFault" = "ReservedNodeAlreadyMigratedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNodeAlreadyMigratedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNodeAlreadyMigratedFault.prototype); + } } /** *

The specified reserved compute node not found.

*/ -export interface ReservedNodeNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedNodeNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedNodeNotFoundFault extends __BaseException { + readonly name: "ReservedNodeNotFoundFault" = "ReservedNodeNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNodeNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNodeNotFoundFault.prototype); + } } /** *

Specified offering does not exist.

*/ -export interface ReservedNodeOfferingNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedNodeOfferingNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedNodeOfferingNotFoundFault extends __BaseException { + readonly name: "ReservedNodeOfferingNotFoundFault" = "ReservedNodeOfferingNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNodeOfferingNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNodeOfferingNotFoundFault.prototype); + } } /** *

The requested operation isn't supported.

*/ -export interface UnsupportedOperationFault extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationFault"; - $fault: "client"; - message?: string; +export class UnsupportedOperationFault extends __BaseException { + readonly name: "UnsupportedOperationFault" = "UnsupportedOperationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationFault.prototype); + } } /** *

You are not authorized to access the cluster.

*/ -export interface AccessToClusterDeniedFault extends __SmithyException, $MetadataBearer { - name: "AccessToClusterDeniedFault"; - $fault: "client"; - message?: string; +export class AccessToClusterDeniedFault extends __BaseException { + readonly name: "AccessToClusterDeniedFault" = "AccessToClusterDeniedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessToClusterDeniedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessToClusterDeniedFault.prototype); + } } /** *

The owner of the specified snapshot has not authorized your account to access the * snapshot.

*/ -export interface AccessToSnapshotDeniedFault extends __SmithyException, $MetadataBearer { - name: "AccessToSnapshotDeniedFault"; - $fault: "client"; - message?: string; +export class AccessToSnapshotDeniedFault extends __BaseException { + readonly name: "AccessToSnapshotDeniedFault" = "AccessToSnapshotDeniedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessToSnapshotDeniedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessToSnapshotDeniedFault.prototype); + } } /** @@ -349,10 +441,20 @@ export enum ActionType { *

The ClusterIdentifier parameter does not refer to an existing cluster. *

*/ -export interface ClusterNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterNotFoundFault extends __BaseException { + readonly name: "ClusterNotFoundFault" = "ClusterNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterNotFoundFault.prototype); + } } export interface PartnerIntegrationInputMessage { @@ -410,19 +512,39 @@ export namespace PartnerIntegrationOutputMessage { /** *

The name of the partner was not found.

*/ -export interface PartnerNotFoundFault extends __SmithyException, $MetadataBearer { - name: "PartnerNotFoundFault"; - $fault: "client"; - message?: string; +export class PartnerNotFoundFault extends __BaseException { + readonly name: "PartnerNotFoundFault" = "PartnerNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PartnerNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PartnerNotFoundFault.prototype); + } } /** *

The partner integration is not authorized.

*/ -export interface UnauthorizedPartnerIntegrationFault extends __SmithyException, $MetadataBearer { - name: "UnauthorizedPartnerIntegrationFault"; - $fault: "client"; - message?: string; +export class UnauthorizedPartnerIntegrationFault extends __BaseException { + readonly name: "UnauthorizedPartnerIntegrationFault" = "UnauthorizedPartnerIntegrationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedPartnerIntegrationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedPartnerIntegrationFault.prototype); + } } export enum AquaConfigurationStatus { @@ -594,19 +716,39 @@ export namespace DataShare { /** *

There is an error with the datashare.

*/ -export interface InvalidDataShareFault extends __SmithyException, $MetadataBearer { - name: "InvalidDataShareFault"; - $fault: "client"; - message?: string; +export class InvalidDataShareFault extends __BaseException { + readonly name: "InvalidDataShareFault" = "InvalidDataShareFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDataShareFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDataShareFault.prototype); + } } /** *

The namespace isn't valid because the namespace doesn't exist. Provide a valid namespace.

*/ -export interface InvalidNamespaceFault extends __SmithyException, $MetadataBearer { - name: "InvalidNamespaceFault"; - $fault: "client"; - message?: string; +export class InvalidNamespaceFault extends __BaseException { + readonly name: "InvalidNamespaceFault" = "InvalidNamespaceFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNamespaceFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNamespaceFault.prototype); + } } export type ScheduleState = "ACTIVE" | "FAILED" | "MODIFYING"; @@ -663,58 +805,118 @@ export namespace AuthenticationProfile { /** *

The authentication profile already exists.

*/ -export interface AuthenticationProfileAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "AuthenticationProfileAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class AuthenticationProfileAlreadyExistsFault extends __BaseException { + readonly name: "AuthenticationProfileAlreadyExistsFault" = "AuthenticationProfileAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthenticationProfileAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthenticationProfileAlreadyExistsFault.prototype); + } } /** *

The authentication profile can't be found.

*/ -export interface AuthenticationProfileNotFoundFault extends __SmithyException, $MetadataBearer { - name: "AuthenticationProfileNotFoundFault"; - $fault: "client"; - message?: string; +export class AuthenticationProfileNotFoundFault extends __BaseException { + readonly name: "AuthenticationProfileNotFoundFault" = "AuthenticationProfileNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthenticationProfileNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthenticationProfileNotFoundFault.prototype); + } } /** *

The size or number of authentication profiles has exceeded the quota. * The maximum length of the JSON string and maximum number of authentication profiles is determined by a quota for your account.

*/ -export interface AuthenticationProfileQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "AuthenticationProfileQuotaExceededFault"; - $fault: "client"; - message?: string; +export class AuthenticationProfileQuotaExceededFault extends __BaseException { + readonly name: "AuthenticationProfileQuotaExceededFault" = "AuthenticationProfileQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthenticationProfileQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthenticationProfileQuotaExceededFault.prototype); + } } /** *

The specified CIDR block or EC2 security group is already authorized for the * specified cluster security group.

*/ -export interface AuthorizationAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class AuthorizationAlreadyExistsFault extends __BaseException { + readonly name: "AuthorizationAlreadyExistsFault" = "AuthorizationAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationAlreadyExistsFault.prototype); + } } /** *

The specified CIDR IP range or EC2 security group is not authorized for the * specified cluster security group.

*/ -export interface AuthorizationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationNotFoundFault"; - $fault: "client"; - message?: string; +export class AuthorizationNotFoundFault extends __BaseException { + readonly name: "AuthorizationNotFoundFault" = "AuthorizationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationNotFoundFault.prototype); + } } /** *

The authorization quota for the cluster security group has been reached.

*/ -export interface AuthorizationQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "AuthorizationQuotaExceededFault"; - $fault: "client"; - message?: string; +export class AuthorizationQuotaExceededFault extends __BaseException { + readonly name: "AuthorizationQuotaExceededFault" = "AuthorizationQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationQuotaExceededFault.prototype); + } } export enum AuthorizationStatus { @@ -910,19 +1112,39 @@ export namespace AuthorizeClusterSecurityGroupIngressResult { *

The cluster security group name does not refer to an existing cluster security * group.

*/ -export interface ClusterSecurityGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterSecurityGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterSecurityGroupNotFoundFault extends __BaseException { + readonly name: "ClusterSecurityGroupNotFoundFault" = "ClusterSecurityGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSecurityGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSecurityGroupNotFoundFault.prototype); + } } /** *

The state of the cluster security group is not available.

*/ -export interface InvalidClusterSecurityGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterSecurityGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterSecurityGroupStateFault extends __BaseException { + readonly name: "InvalidClusterSecurityGroupStateFault" = "InvalidClusterSecurityGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterSecurityGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterSecurityGroupStateFault.prototype); + } } export interface AuthorizeDataShareMessage { @@ -1035,37 +1257,78 @@ export namespace EndpointAuthorization { /** *

The authorization already exists for this endpoint.

*/ -export interface EndpointAuthorizationAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "EndpointAuthorizationAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class EndpointAuthorizationAlreadyExistsFault extends __BaseException { + readonly name: "EndpointAuthorizationAlreadyExistsFault" = "EndpointAuthorizationAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointAuthorizationAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointAuthorizationAlreadyExistsFault.prototype); + } } /** *

The number of endpoint authorizations per cluster has exceeded its limit.

*/ -export interface EndpointAuthorizationsPerClusterLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "EndpointAuthorizationsPerClusterLimitExceededFault"; - $fault: "client"; - message?: string; +export class EndpointAuthorizationsPerClusterLimitExceededFault extends __BaseException { + readonly name: "EndpointAuthorizationsPerClusterLimitExceededFault" = + "EndpointAuthorizationsPerClusterLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointAuthorizationsPerClusterLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointAuthorizationsPerClusterLimitExceededFault.prototype); + } } /** *

The status of the authorization is not valid.

*/ -export interface InvalidAuthorizationStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidAuthorizationStateFault"; - $fault: "client"; - message?: string; +export class InvalidAuthorizationStateFault extends __BaseException { + readonly name: "InvalidAuthorizationStateFault" = "InvalidAuthorizationStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAuthorizationStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAuthorizationStateFault.prototype); + } } /** *

The specified cluster is not in the available state.

*/ -export interface InvalidClusterStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterStateFault extends __BaseException { + readonly name: "InvalidClusterStateFault" = "InvalidClusterStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterStateFault.prototype); + } } /** @@ -1343,39 +1606,79 @@ export namespace AuthorizeSnapshotAccessResult { /** *

The snapshot identifier does not refer to an existing cluster snapshot.

*/ -export interface ClusterSnapshotNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterSnapshotNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterSnapshotNotFoundFault extends __BaseException { + readonly name: "ClusterSnapshotNotFoundFault" = "ClusterSnapshotNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSnapshotNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSnapshotNotFoundFault.prototype); + } } /** *

The request cannot be completed because a dependent service is throttling requests * made by Amazon Redshift on your behalf. Wait and retry the request.

*/ -export interface DependentServiceRequestThrottlingFault extends __SmithyException, $MetadataBearer { - name: "DependentServiceRequestThrottlingFault"; - $fault: "client"; - message?: string; +export class DependentServiceRequestThrottlingFault extends __BaseException { + readonly name: "DependentServiceRequestThrottlingFault" = "DependentServiceRequestThrottlingFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependentServiceRequestThrottlingFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DependentServiceRequestThrottlingFault.prototype); + } } /** *

The specified cluster snapshot is not in the available state, or other * accounts are authorized to access the snapshot.

*/ -export interface InvalidClusterSnapshotStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterSnapshotStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterSnapshotStateFault extends __BaseException { + readonly name: "InvalidClusterSnapshotStateFault" = "InvalidClusterSnapshotStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterSnapshotStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterSnapshotStateFault.prototype); + } } /** *

The encryption key has exceeded its grant limit in Amazon Web Services KMS.

*/ -export interface LimitExceededFault extends __SmithyException, $MetadataBearer { - name: "LimitExceededFault"; - $fault: "client"; - message?: string; +export class LimitExceededFault extends __BaseException { + readonly name: "LimitExceededFault" = "LimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededFault.prototype); + } } /** @@ -1526,20 +1829,40 @@ export namespace BatchDeleteClusterSnapshotsResult { *

The maximum number for a batch delete of snapshots has been reached. The limit is * 100.

*/ -export interface BatchDeleteRequestSizeExceededFault extends __SmithyException, $MetadataBearer { - name: "BatchDeleteRequestSizeExceededFault"; - $fault: "client"; - message?: string; +export class BatchDeleteRequestSizeExceededFault extends __BaseException { + readonly name: "BatchDeleteRequestSizeExceededFault" = "BatchDeleteRequestSizeExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchDeleteRequestSizeExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchDeleteRequestSizeExceededFault.prototype); + } } /** *

The maximum number for snapshot identifiers has been reached. The limit is 100. *

*/ -export interface BatchModifyClusterSnapshotsLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "BatchModifyClusterSnapshotsLimitExceededFault"; - $fault: "client"; - message?: string; +export class BatchModifyClusterSnapshotsLimitExceededFault extends __BaseException { + readonly name: "BatchModifyClusterSnapshotsLimitExceededFault" = "BatchModifyClusterSnapshotsLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchModifyClusterSnapshotsLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchModifyClusterSnapshotsLimitExceededFault.prototype); + } } export interface BatchModifyClusterSnapshotsMessage { @@ -1599,19 +1922,39 @@ export namespace BatchModifyClusterSnapshotsOutputMessage { *

The retention period specified is either in the past or is not a valid value.

*

The value must be either -1 or an integer between 1 and 3,653.

*/ -export interface InvalidRetentionPeriodFault extends __SmithyException, $MetadataBearer { - name: "InvalidRetentionPeriodFault"; - $fault: "client"; - message?: string; +export class InvalidRetentionPeriodFault extends __BaseException { + readonly name: "InvalidRetentionPeriodFault" = "InvalidRetentionPeriodFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRetentionPeriodFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRetentionPeriodFault.prototype); + } } /** *

Could not find the specified S3 bucket.

*/ -export interface BucketNotFoundFault extends __SmithyException, $MetadataBearer { - name: "BucketNotFoundFault"; - $fault: "client"; - message?: string; +export class BucketNotFoundFault extends __BaseException { + readonly name: "BucketNotFoundFault" = "BucketNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BucketNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BucketNotFoundFault.prototype); + } } export interface CancelResizeMessage { @@ -1634,10 +1977,20 @@ export namespace CancelResizeMessage { /** *

A resize operation for the specified cluster is not found.

*/ -export interface ResizeNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ResizeNotFoundFault"; - $fault: "client"; - message?: string; +export class ResizeNotFoundFault extends __BaseException { + readonly name: "ResizeNotFoundFault" = "ResizeNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResizeNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResizeNotFoundFault.prototype); + } } /** @@ -2922,10 +3275,20 @@ export namespace Cluster { /** *

The account already has a cluster with the given identifier.

*/ -export interface ClusterAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterAlreadyExistsFault extends __BaseException { + readonly name: "ClusterAlreadyExistsFault" = "ClusterAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterAlreadyExistsFault.prototype); + } } /** @@ -3058,10 +3421,20 @@ export namespace ClusterDbRevisionsMessage { /** *

Cluster is already on the latest database revision.

*/ -export interface ClusterOnLatestRevisionFault extends __SmithyException, $MetadataBearer { - name: "ClusterOnLatestRevisionFault"; - $fault: "client"; - message?: string; +export class ClusterOnLatestRevisionFault extends __BaseException { + readonly name: "ClusterOnLatestRevisionFault" = "ClusterOnLatestRevisionFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterOnLatestRevisionFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterOnLatestRevisionFault.prototype); + } } /** @@ -3102,10 +3475,20 @@ export namespace ClusterParameterGroup { /** *

A cluster parameter group with the same name already exists.

*/ -export interface ClusterParameterGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterParameterGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterParameterGroupAlreadyExistsFault extends __BaseException { + readonly name: "ClusterParameterGroupAlreadyExistsFault" = "ClusterParameterGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterParameterGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterParameterGroupAlreadyExistsFault.prototype); + } } export type ParameterApplyType = "dynamic" | "static"; @@ -3235,10 +3618,20 @@ export namespace ClusterParameterGroupNameMessage { /** *

The parameter group name does not refer to an existing parameter group.

*/ -export interface ClusterParameterGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterParameterGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterParameterGroupNotFoundFault extends __BaseException { + readonly name: "ClusterParameterGroupNotFoundFault" = "ClusterParameterGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterParameterGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterParameterGroupNotFoundFault.prototype); + } } /** @@ -3248,10 +3641,20 @@ export interface ClusterParameterGroupNotFoundFault extends __SmithyException, $ * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface ClusterParameterGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterParameterGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ClusterParameterGroupQuotaExceededFault extends __BaseException { + readonly name: "ClusterParameterGroupQuotaExceededFault" = "ClusterParameterGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterParameterGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterParameterGroupQuotaExceededFault.prototype); + } } /** @@ -3291,19 +3694,39 @@ export namespace ClusterParameterGroupsMessage { * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface ClusterQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ClusterQuotaExceededFault extends __BaseException { + readonly name: "ClusterQuotaExceededFault" = "ClusterQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterQuotaExceededFault.prototype); + } } /** *

A cluster security group with the same name already exists.

*/ -export interface ClusterSecurityGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterSecurityGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterSecurityGroupAlreadyExistsFault extends __BaseException { + readonly name: "ClusterSecurityGroupAlreadyExistsFault" = "ClusterSecurityGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSecurityGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSecurityGroupAlreadyExistsFault.prototype); + } } /** @@ -3341,10 +3764,20 @@ export namespace ClusterSecurityGroupMessage { * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface ClusterSecurityGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterSecurityGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ClusterSecurityGroupQuotaExceededFault extends __BaseException { + readonly name: "ClusterSecurityGroupQuotaExceededFault" = "ClusterSecurityGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSecurityGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSecurityGroupQuotaExceededFault.prototype); + } } /** @@ -3380,20 +3813,40 @@ export namespace ClustersMessage { *

The value specified as a snapshot identifier is already used by an existing * snapshot.

*/ -export interface ClusterSnapshotAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterSnapshotAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterSnapshotAlreadyExistsFault extends __BaseException { + readonly name: "ClusterSnapshotAlreadyExistsFault" = "ClusterSnapshotAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSnapshotAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSnapshotAlreadyExistsFault.prototype); + } } /** *

The request would result in the user exceeding the allowed number of cluster * snapshots.

*/ -export interface ClusterSnapshotQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterSnapshotQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ClusterSnapshotQuotaExceededFault extends __BaseException { + readonly name: "ClusterSnapshotQuotaExceededFault" = "ClusterSnapshotQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSnapshotQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSnapshotQuotaExceededFault.prototype); + } } /** @@ -3474,10 +3927,20 @@ export namespace ClusterSubnetGroup { *

A ClusterSubnetGroupName is already used by an existing * cluster subnet group.

*/ -export interface ClusterSubnetGroupAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ClusterSubnetGroupAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ClusterSubnetGroupAlreadyExistsFault extends __BaseException { + readonly name: "ClusterSubnetGroupAlreadyExistsFault" = "ClusterSubnetGroupAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSubnetGroupAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSubnetGroupAlreadyExistsFault.prototype); + } } /** @@ -3513,10 +3976,20 @@ export namespace ClusterSubnetGroupMessage { *

The cluster subnet group name does not refer to an existing cluster subnet * group.

*/ -export interface ClusterSubnetGroupNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ClusterSubnetGroupNotFoundFault"; - $fault: "client"; - message?: string; +export class ClusterSubnetGroupNotFoundFault extends __BaseException { + readonly name: "ClusterSubnetGroupNotFoundFault" = "ClusterSubnetGroupNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSubnetGroupNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSubnetGroupNotFoundFault.prototype); + } } /** @@ -3526,10 +3999,20 @@ export interface ClusterSubnetGroupNotFoundFault extends __SmithyException, $Met * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface ClusterSubnetGroupQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterSubnetGroupQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ClusterSubnetGroupQuotaExceededFault extends __BaseException { + readonly name: "ClusterSubnetGroupQuotaExceededFault" = "ClusterSubnetGroupQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSubnetGroupQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSubnetGroupQuotaExceededFault.prototype); + } } /** @@ -3539,10 +4022,20 @@ export interface ClusterSubnetGroupQuotaExceededFault extends __SmithyException, * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface ClusterSubnetQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ClusterSubnetQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ClusterSubnetQuotaExceededFault extends __BaseException { + readonly name: "ClusterSubnetQuotaExceededFault" = "ClusterSubnetQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterSubnetQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterSubnetQuotaExceededFault.prototype); + } } /** @@ -3694,10 +4187,20 @@ export namespace CopyClusterSnapshotResult { *

Cross-region snapshot copy was temporarily disabled. Try your request * again.

*/ -export interface CopyToRegionDisabledFault extends __SmithyException, $MetadataBearer { - name: "CopyToRegionDisabledFault"; - $fault: "client"; - message?: string; +export class CopyToRegionDisabledFault extends __BaseException { + readonly name: "CopyToRegionDisabledFault" = "CopyToRegionDisabledFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CopyToRegionDisabledFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CopyToRegionDisabledFault.prototype); + } } export interface CreateAuthenticationProfileMessage { @@ -3747,10 +4250,20 @@ export namespace CreateAuthenticationProfileResult { *

The authentication profile request is not valid. The profile name can't be null or empty. * The authentication profile API operation must be available in the Amazon Web Services Region.

*/ -export interface InvalidAuthenticationProfileRequestFault extends __SmithyException, $MetadataBearer { - name: "InvalidAuthenticationProfileRequestFault"; - $fault: "client"; - message?: string; +export class InvalidAuthenticationProfileRequestFault extends __BaseException { + readonly name: "InvalidAuthenticationProfileRequestFault" = "InvalidAuthenticationProfileRequestFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAuthenticationProfileRequestFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAuthenticationProfileRequestFault.prototype); + } } /** @@ -4160,93 +4673,193 @@ export namespace CreateClusterResult { *

There is no Amazon Redshift HSM client certificate with the specified * identifier.

*/ -export interface HsmClientCertificateNotFoundFault extends __SmithyException, $MetadataBearer { - name: "HsmClientCertificateNotFoundFault"; - $fault: "client"; - message?: string; +export class HsmClientCertificateNotFoundFault extends __BaseException { + readonly name: "HsmClientCertificateNotFoundFault" = "HsmClientCertificateNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HsmClientCertificateNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HsmClientCertificateNotFoundFault.prototype); + } } /** *

There is no Amazon Redshift HSM configuration with the specified identifier.

*/ -export interface HsmConfigurationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "HsmConfigurationNotFoundFault"; - $fault: "client"; - message?: string; +export class HsmConfigurationNotFoundFault extends __BaseException { + readonly name: "HsmConfigurationNotFoundFault" = "HsmConfigurationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HsmConfigurationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HsmConfigurationNotFoundFault.prototype); + } } /** *

The number of nodes specified exceeds the allotted capacity of the * cluster.

*/ -export interface InsufficientClusterCapacityFault extends __SmithyException, $MetadataBearer { - name: "InsufficientClusterCapacityFault"; - $fault: "client"; - message?: string; +export class InsufficientClusterCapacityFault extends __BaseException { + readonly name: "InsufficientClusterCapacityFault" = "InsufficientClusterCapacityFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientClusterCapacityFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientClusterCapacityFault.prototype); + } } /** *

The cluster subnet group cannot be deleted because it is in use.

*/ -export interface InvalidClusterSubnetGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterSubnetGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterSubnetGroupStateFault extends __BaseException { + readonly name: "InvalidClusterSubnetGroupStateFault" = "InvalidClusterSubnetGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterSubnetGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterSubnetGroupStateFault.prototype); + } } /** *

The provided cluster track name is not valid.

*/ -export interface InvalidClusterTrackFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterTrackFault"; - $fault: "client"; - message?: string; +export class InvalidClusterTrackFault extends __BaseException { + readonly name: "InvalidClusterTrackFault" = "InvalidClusterTrackFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterTrackFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterTrackFault.prototype); + } } /** *

The Elastic IP (EIP) is invalid or cannot be found.

*/ -export interface InvalidElasticIpFault extends __SmithyException, $MetadataBearer { - name: "InvalidElasticIpFault"; - $fault: "client"; - message?: string; +export class InvalidElasticIpFault extends __BaseException { + readonly name: "InvalidElasticIpFault" = "InvalidElasticIpFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidElasticIpFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidElasticIpFault.prototype); + } } /** *

The requested subnet is not valid, or not all of the subnets are in the same * VPC.

*/ -export interface InvalidSubnet extends __SmithyException, $MetadataBearer { - name: "InvalidSubnet"; - $fault: "client"; - message?: string; +export class InvalidSubnet extends __BaseException { + readonly name: "InvalidSubnet" = "InvalidSubnet"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubnet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubnet.prototype); + } } /** *

The tag is invalid.

*/ -export interface InvalidTagFault extends __SmithyException, $MetadataBearer { - name: "InvalidTagFault"; - $fault: "client"; - message?: string; +export class InvalidTagFault extends __BaseException { + readonly name: "InvalidTagFault" = "InvalidTagFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagFault.prototype); + } } /** *

The cluster subnet group does not cover all Availability Zones.

*/ -export interface InvalidVPCNetworkStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidVPCNetworkStateFault"; - $fault: "client"; - message?: string; +export class InvalidVPCNetworkStateFault extends __BaseException { + readonly name: "InvalidVPCNetworkStateFault" = "InvalidVPCNetworkStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCNetworkStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCNetworkStateFault.prototype); + } } /** *

The operation would exceed the number of nodes allowed for a cluster.

*/ -export interface NumberOfNodesPerClusterLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "NumberOfNodesPerClusterLimitExceededFault"; - $fault: "client"; - message?: string; +export class NumberOfNodesPerClusterLimitExceededFault extends __BaseException { + readonly name: "NumberOfNodesPerClusterLimitExceededFault" = "NumberOfNodesPerClusterLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NumberOfNodesPerClusterLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NumberOfNodesPerClusterLimitExceededFault.prototype); + } } /** @@ -4256,37 +4869,77 @@ export interface NumberOfNodesPerClusterLimitExceededFault extends __SmithyExcep * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface NumberOfNodesQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "NumberOfNodesQuotaExceededFault"; - $fault: "client"; - message?: string; +export class NumberOfNodesQuotaExceededFault extends __BaseException { + readonly name: "NumberOfNodesQuotaExceededFault" = "NumberOfNodesQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NumberOfNodesQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NumberOfNodesQuotaExceededFault.prototype); + } } /** *

We could not find the specified snapshot schedule.

*/ -export interface SnapshotScheduleNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SnapshotScheduleNotFoundFault"; - $fault: "client"; - message?: string; +export class SnapshotScheduleNotFoundFault extends __BaseException { + readonly name: "SnapshotScheduleNotFoundFault" = "SnapshotScheduleNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotScheduleNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotScheduleNotFoundFault.prototype); + } } /** *

You have exceeded the number of tags allowed.

*/ -export interface TagLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "TagLimitExceededFault"; - $fault: "client"; - message?: string; +export class TagLimitExceededFault extends __BaseException { + readonly name: "TagLimitExceededFault" = "TagLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagLimitExceededFault.prototype); + } } /** *

Your account is not authorized to perform the requested operation.

*/ -export interface UnauthorizedOperation extends __SmithyException, $MetadataBearer { - name: "UnauthorizedOperation"; - $fault: "client"; - message?: string; +export class UnauthorizedOperation extends __BaseException { + readonly name: "UnauthorizedOperation" = "UnauthorizedOperation"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedOperation.prototype); + } } /** @@ -4669,28 +5322,58 @@ export namespace EndpointAccess { /** *

The account already has a Redshift-managed VPC endpoint with the given identifier.

*/ -export interface EndpointAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "EndpointAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class EndpointAlreadyExistsFault extends __BaseException { + readonly name: "EndpointAlreadyExistsFault" = "EndpointAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointAlreadyExistsFault.prototype); + } } /** *

The number of Redshift-managed VPC endpoints per authorization has exceeded its limit.

*/ -export interface EndpointsPerAuthorizationLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "EndpointsPerAuthorizationLimitExceededFault"; - $fault: "client"; - message?: string; +export class EndpointsPerAuthorizationLimitExceededFault extends __BaseException { + readonly name: "EndpointsPerAuthorizationLimitExceededFault" = "EndpointsPerAuthorizationLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointsPerAuthorizationLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointsPerAuthorizationLimitExceededFault.prototype); + } } /** *

The number of Redshift-managed VPC endpoints per cluster has exceeded its limit.

*/ -export interface EndpointsPerClusterLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "EndpointsPerClusterLimitExceededFault"; - $fault: "client"; - message?: string; +export class EndpointsPerClusterLimitExceededFault extends __BaseException { + readonly name: "EndpointsPerClusterLimitExceededFault" = "EndpointsPerClusterLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointsPerClusterLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointsPerClusterLimitExceededFault.prototype); + } } /** @@ -4894,58 +5577,118 @@ export namespace CreateEventSubscriptionResult { * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface EventSubscriptionQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "EventSubscriptionQuotaExceededFault"; - $fault: "client"; - message?: string; +export class EventSubscriptionQuotaExceededFault extends __BaseException { + readonly name: "EventSubscriptionQuotaExceededFault" = "EventSubscriptionQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventSubscriptionQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventSubscriptionQuotaExceededFault.prototype); + } } /** *

Amazon SNS has responded that there is a problem with the specified Amazon SNS * topic.

*/ -export interface SNSInvalidTopicFault extends __SmithyException, $MetadataBearer { - name: "SNSInvalidTopicFault"; - $fault: "client"; - message?: string; +export class SNSInvalidTopicFault extends __BaseException { + readonly name: "SNSInvalidTopicFault" = "SNSInvalidTopicFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSInvalidTopicFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSInvalidTopicFault.prototype); + } } /** *

You do not have permission to publish to the specified Amazon SNS topic.

*/ -export interface SNSNoAuthorizationFault extends __SmithyException, $MetadataBearer { - name: "SNSNoAuthorizationFault"; - $fault: "client"; - message?: string; +export class SNSNoAuthorizationFault extends __BaseException { + readonly name: "SNSNoAuthorizationFault" = "SNSNoAuthorizationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSNoAuthorizationFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSNoAuthorizationFault.prototype); + } } /** *

An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not * exist.

*/ -export interface SNSTopicArnNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SNSTopicArnNotFoundFault"; - $fault: "client"; - message?: string; +export class SNSTopicArnNotFoundFault extends __BaseException { + readonly name: "SNSTopicArnNotFoundFault" = "SNSTopicArnNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SNSTopicArnNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SNSTopicArnNotFoundFault.prototype); + } } /** *

The specified Amazon Redshift event source could not be found.

*/ -export interface SourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SourceNotFoundFault"; - $fault: "client"; - message?: string; +export class SourceNotFoundFault extends __BaseException { + readonly name: "SourceNotFoundFault" = "SourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SourceNotFoundFault.prototype); + } } /** *

There is already an existing event notification subscription with the specified * name.

*/ -export interface SubscriptionAlreadyExistFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionAlreadyExistFault"; - $fault: "client"; - message?: string; +export class SubscriptionAlreadyExistFault extends __BaseException { + readonly name: "SubscriptionAlreadyExistFault" = "SubscriptionAlreadyExistFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionAlreadyExistFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionAlreadyExistFault.prototype); + } } /** @@ -4953,19 +5696,39 @@ export interface SubscriptionAlreadyExistFault extends __SmithyException, $Metad * specified a category that does not apply to the specified source type. The allowed * values are Configuration, Management, Monitoring, and Security.

*/ -export interface SubscriptionCategoryNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionCategoryNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionCategoryNotFoundFault extends __BaseException { + readonly name: "SubscriptionCategoryNotFoundFault" = "SubscriptionCategoryNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionCategoryNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionCategoryNotFoundFault.prototype); + } } /** *

An Amazon Redshift event with the specified event ID does not exist.

*/ -export interface SubscriptionEventIdNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionEventIdNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionEventIdNotFoundFault extends __BaseException { + readonly name: "SubscriptionEventIdNotFoundFault" = "SubscriptionEventIdNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionEventIdNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionEventIdNotFoundFault.prototype); + } } /** @@ -4973,10 +5736,20 @@ export interface SubscriptionEventIdNotFoundFault extends __SmithyException, $Me * specified a severity that does not apply to the specified source type. The allowed * values are ERROR and INFO.

*/ -export interface SubscriptionSeverityNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionSeverityNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionSeverityNotFoundFault extends __BaseException { + readonly name: "SubscriptionSeverityNotFoundFault" = "SubscriptionSeverityNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionSeverityNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionSeverityNotFoundFault.prototype); + } } /** @@ -5058,10 +5831,20 @@ export namespace CreateHsmClientCertificateResult { *

There is already an existing Amazon Redshift HSM client certificate with the specified * identifier.

*/ -export interface HsmClientCertificateAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "HsmClientCertificateAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class HsmClientCertificateAlreadyExistsFault extends __BaseException { + readonly name: "HsmClientCertificateAlreadyExistsFault" = "HsmClientCertificateAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HsmClientCertificateAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HsmClientCertificateAlreadyExistsFault.prototype); + } } /** @@ -5070,10 +5853,20 @@ export interface HsmClientCertificateAlreadyExistsFault extends __SmithyExceptio * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface HsmClientCertificateQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "HsmClientCertificateQuotaExceededFault"; - $fault: "client"; - message?: string; +export class HsmClientCertificateQuotaExceededFault extends __BaseException { + readonly name: "HsmClientCertificateQuotaExceededFault" = "HsmClientCertificateQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HsmClientCertificateQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HsmClientCertificateQuotaExceededFault.prototype); + } } /** @@ -5191,10 +5984,20 @@ export namespace CreateHsmConfigurationResult { *

There is already an existing Amazon Redshift HSM configuration with the specified * identifier.

*/ -export interface HsmConfigurationAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "HsmConfigurationAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class HsmConfigurationAlreadyExistsFault extends __BaseException { + readonly name: "HsmConfigurationAlreadyExistsFault" = "HsmConfigurationAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HsmConfigurationAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HsmConfigurationAlreadyExistsFault.prototype); + } } /** @@ -5203,10 +6006,20 @@ export interface HsmConfigurationAlreadyExistsFault extends __SmithyException, $ * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface HsmConfigurationQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "HsmConfigurationQuotaExceededFault"; - $fault: "client"; - message?: string; +export class HsmConfigurationQuotaExceededFault extends __BaseException { + readonly name: "HsmConfigurationQuotaExceededFault" = "HsmConfigurationQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HsmConfigurationQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HsmConfigurationQuotaExceededFault.prototype); + } } /** @@ -5390,19 +6203,39 @@ export namespace CreateScheduledActionMessage { /** *

The scheduled action is not valid.

*/ -export interface InvalidScheduledActionFault extends __SmithyException, $MetadataBearer { - name: "InvalidScheduledActionFault"; - $fault: "client"; - message?: string; +export class InvalidScheduledActionFault extends __BaseException { + readonly name: "InvalidScheduledActionFault" = "InvalidScheduledActionFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidScheduledActionFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidScheduledActionFault.prototype); + } } /** *

The schedule you submitted isn't valid.

*/ -export interface InvalidScheduleFault extends __SmithyException, $MetadataBearer { - name: "InvalidScheduleFault"; - $fault: "client"; - message?: string; +export class InvalidScheduleFault extends __BaseException { + readonly name: "InvalidScheduleFault" = "InvalidScheduleFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidScheduleFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidScheduleFault.prototype); + } } export enum ScheduledActionState { @@ -5487,28 +6320,58 @@ export namespace ScheduledAction { /** *

The scheduled action already exists.

*/ -export interface ScheduledActionAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "ScheduledActionAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class ScheduledActionAlreadyExistsFault extends __BaseException { + readonly name: "ScheduledActionAlreadyExistsFault" = "ScheduledActionAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScheduledActionAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScheduledActionAlreadyExistsFault.prototype); + } } /** *

The quota for scheduled actions exceeded.

*/ -export interface ScheduledActionQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ScheduledActionQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ScheduledActionQuotaExceededFault extends __BaseException { + readonly name: "ScheduledActionQuotaExceededFault" = "ScheduledActionQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScheduledActionQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScheduledActionQuotaExceededFault.prototype); + } } /** *

The action type specified for a scheduled action is not supported.

*/ -export interface ScheduledActionTypeUnsupportedFault extends __SmithyException, $MetadataBearer { - name: "ScheduledActionTypeUnsupportedFault"; - $fault: "client"; - message?: string; +export class ScheduledActionTypeUnsupportedFault extends __BaseException { + readonly name: "ScheduledActionTypeUnsupportedFault" = "ScheduledActionTypeUnsupportedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScheduledActionTypeUnsupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScheduledActionTypeUnsupportedFault.prototype); + } } /** @@ -5624,20 +6487,40 @@ export namespace CreateSnapshotCopyGrantResult { *

The snapshot copy grant can't be created because a grant with the same name already * exists.

*/ -export interface SnapshotCopyGrantAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "SnapshotCopyGrantAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class SnapshotCopyGrantAlreadyExistsFault extends __BaseException { + readonly name: "SnapshotCopyGrantAlreadyExistsFault" = "SnapshotCopyGrantAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotCopyGrantAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotCopyGrantAlreadyExistsFault.prototype); + } } /** *

The Amazon Web Services account has exceeded the maximum number of snapshot copy grants in this * region.

*/ -export interface SnapshotCopyGrantQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotCopyGrantQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SnapshotCopyGrantQuotaExceededFault extends __BaseException { + readonly name: "SnapshotCopyGrantQuotaExceededFault" = "SnapshotCopyGrantQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotCopyGrantQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotCopyGrantQuotaExceededFault.prototype); + } } export interface CreateSnapshotScheduleMessage { @@ -5686,10 +6569,20 @@ export namespace CreateSnapshotScheduleMessage { /** *

The definition you submitted is not supported.

*/ -export interface ScheduleDefinitionTypeUnsupportedFault extends __SmithyException, $MetadataBearer { - name: "ScheduleDefinitionTypeUnsupportedFault"; - $fault: "client"; - message?: string; +export class ScheduleDefinitionTypeUnsupportedFault extends __BaseException { + readonly name: "ScheduleDefinitionTypeUnsupportedFault" = "ScheduleDefinitionTypeUnsupportedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScheduleDefinitionTypeUnsupportedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScheduleDefinitionTypeUnsupportedFault.prototype); + } } /** @@ -5745,19 +6638,39 @@ export namespace SnapshotSchedule { /** *

The specified snapshot schedule already exists.

*/ -export interface SnapshotScheduleAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "SnapshotScheduleAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class SnapshotScheduleAlreadyExistsFault extends __BaseException { + readonly name: "SnapshotScheduleAlreadyExistsFault" = "SnapshotScheduleAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotScheduleAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotScheduleAlreadyExistsFault.prototype); + } } /** *

You have exceeded the quota of snapshot schedules.

*/ -export interface SnapshotScheduleQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "SnapshotScheduleQuotaExceededFault"; - $fault: "client"; - message?: string; +export class SnapshotScheduleQuotaExceededFault extends __BaseException { + readonly name: "SnapshotScheduleQuotaExceededFault" = "SnapshotScheduleQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotScheduleQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotScheduleQuotaExceededFault.prototype); + } } /** @@ -5793,10 +6706,20 @@ export namespace CreateTagsMessage { /** *

The resource could not be found.

*/ -export interface ResourceNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundFault"; - $fault: "client"; - message?: string; +export class ResourceNotFoundFault extends __BaseException { + readonly name: "ResourceNotFoundFault" = "ResourceNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundFault.prototype); + } } export enum UsageLimitBreachAction { @@ -5877,10 +6800,20 @@ export namespace CreateUsageLimitMessage { /** *

The usage limit is not valid.

*/ -export interface InvalidUsageLimitFault extends __SmithyException, $MetadataBearer { - name: "InvalidUsageLimitFault"; - $fault: "client"; - message?: string; +export class InvalidUsageLimitFault extends __BaseException { + readonly name: "InvalidUsageLimitFault" = "InvalidUsageLimitFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUsageLimitFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUsageLimitFault.prototype); + } } /** @@ -5954,10 +6887,20 @@ export namespace UsageLimit { /** *

The usage limit already exists.

*/ -export interface UsageLimitAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "UsageLimitAlreadyExistsFault"; - $fault: "client"; - message?: string; +export class UsageLimitAlreadyExistsFault extends __BaseException { + readonly name: "UsageLimitAlreadyExistsFault" = "UsageLimitAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UsageLimitAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UsageLimitAlreadyExistsFault.prototype); + } } export interface CustomerStorageMessage { @@ -6207,10 +7150,20 @@ export namespace DeleteClusterParameterGroupMessage { * progress that involves the parameter group. Wait a few moments and try the operation * again.

*/ -export interface InvalidClusterParameterGroupStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterParameterGroupStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterParameterGroupStateFault extends __BaseException { + readonly name: "InvalidClusterParameterGroupStateFault" = "InvalidClusterParameterGroupStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterParameterGroupStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterParameterGroupStateFault.prototype); + } } /** @@ -6270,10 +7223,20 @@ export namespace DeleteClusterSubnetGroupMessage { /** *

The state of the subnet is invalid.

*/ -export interface InvalidClusterSubnetStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterSubnetStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterSubnetStateFault extends __BaseException { + readonly name: "InvalidClusterSubnetStateFault" = "InvalidClusterSubnetStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterSubnetStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterSubnetStateFault.prototype); + } } export interface DeleteEndpointAccessMessage { @@ -6295,19 +7258,39 @@ export namespace DeleteEndpointAccessMessage { /** *

The endpoint name doesn't refer to an existing endpoint.

*/ -export interface EndpointNotFoundFault extends __SmithyException, $MetadataBearer { - name: "EndpointNotFoundFault"; - $fault: "client"; - message?: string; +export class EndpointNotFoundFault extends __BaseException { + readonly name: "EndpointNotFoundFault" = "EndpointNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointNotFoundFault.prototype); + } } /** *

The status of the endpoint is not valid.

*/ -export interface InvalidEndpointStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidEndpointStateFault"; - $fault: "client"; - message?: string; +export class InvalidEndpointStateFault extends __BaseException { + readonly name: "InvalidEndpointStateFault" = "InvalidEndpointStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndpointStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndpointStateFault.prototype); + } } /** @@ -6333,20 +7316,40 @@ export namespace DeleteEventSubscriptionMessage { *

The subscription request is invalid because it is a duplicate request. This * subscription request is already in progress.

*/ -export interface InvalidSubscriptionStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidSubscriptionStateFault"; - $fault: "client"; - message?: string; +export class InvalidSubscriptionStateFault extends __BaseException { + readonly name: "InvalidSubscriptionStateFault" = "InvalidSubscriptionStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSubscriptionStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSubscriptionStateFault.prototype); + } } /** *

An Amazon Redshift event notification subscription with the specified name does not * exist.

*/ -export interface SubscriptionNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SubscriptionNotFoundFault"; - $fault: "client"; - message?: string; +export class SubscriptionNotFoundFault extends __BaseException { + readonly name: "SubscriptionNotFoundFault" = "SubscriptionNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionNotFoundFault.prototype); + } } /** @@ -6372,10 +7375,20 @@ export namespace DeleteHsmClientCertificateMessage { *

The specified HSM client certificate is not in the available state, or * it is still in use by one or more Amazon Redshift clusters.

*/ -export interface InvalidHsmClientCertificateStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidHsmClientCertificateStateFault"; - $fault: "client"; - message?: string; +export class InvalidHsmClientCertificateStateFault extends __BaseException { + readonly name: "InvalidHsmClientCertificateStateFault" = "InvalidHsmClientCertificateStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidHsmClientCertificateStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidHsmClientCertificateStateFault.prototype); + } } /** @@ -6401,10 +7414,20 @@ export namespace DeleteHsmConfigurationMessage { *

The specified HSM configuration is not in the available state, or it * is still in use by one or more Amazon Redshift clusters.

*/ -export interface InvalidHsmConfigurationStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidHsmConfigurationStateFault"; - $fault: "client"; - message?: string; +export class InvalidHsmConfigurationStateFault extends __BaseException { + readonly name: "InvalidHsmConfigurationStateFault" = "InvalidHsmConfigurationStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidHsmConfigurationStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidHsmConfigurationStateFault.prototype); + } } export interface DeleteScheduledActionMessage { @@ -6426,10 +7449,20 @@ export namespace DeleteScheduledActionMessage { /** *

The scheduled action cannot be found.

*/ -export interface ScheduledActionNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ScheduledActionNotFoundFault"; - $fault: "client"; - message?: string; +export class ScheduledActionNotFoundFault extends __BaseException { + readonly name: "ScheduledActionNotFoundFault" = "ScheduledActionNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ScheduledActionNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ScheduledActionNotFoundFault.prototype); + } } /** @@ -6455,20 +7488,40 @@ export namespace DeleteSnapshotCopyGrantMessage { *

The snapshot copy grant can't be deleted because it is used by one or more * clusters.

*/ -export interface InvalidSnapshotCopyGrantStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidSnapshotCopyGrantStateFault"; - $fault: "client"; - message?: string; +export class InvalidSnapshotCopyGrantStateFault extends __BaseException { + readonly name: "InvalidSnapshotCopyGrantStateFault" = "InvalidSnapshotCopyGrantStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSnapshotCopyGrantStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSnapshotCopyGrantStateFault.prototype); + } } /** *

The specified snapshot copy grant can't be found. Make sure that the name is typed * correctly and that the grant exists in the destination region.

*/ -export interface SnapshotCopyGrantNotFoundFault extends __SmithyException, $MetadataBearer { - name: "SnapshotCopyGrantNotFoundFault"; - $fault: "client"; - message?: string; +export class SnapshotCopyGrantNotFoundFault extends __BaseException { + readonly name: "SnapshotCopyGrantNotFoundFault" = "SnapshotCopyGrantNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotCopyGrantNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotCopyGrantNotFoundFault.prototype); + } } export interface DeleteSnapshotScheduleMessage { @@ -6490,10 +7543,20 @@ export namespace DeleteSnapshotScheduleMessage { /** *

The cluster snapshot schedule state is not valid.

*/ -export interface InvalidClusterSnapshotScheduleStateFault extends __SmithyException, $MetadataBearer { - name: "InvalidClusterSnapshotScheduleStateFault"; - $fault: "client"; - message?: string; +export class InvalidClusterSnapshotScheduleStateFault extends __BaseException { + readonly name: "InvalidClusterSnapshotScheduleStateFault" = "InvalidClusterSnapshotScheduleStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClusterSnapshotScheduleStateFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClusterSnapshotScheduleStateFault.prototype); + } } /** @@ -6540,10 +7603,20 @@ export namespace DeleteUsageLimitMessage { /** *

The usage limit identifier can't be found.

*/ -export interface UsageLimitNotFoundFault extends __SmithyException, $MetadataBearer { - name: "UsageLimitNotFoundFault"; - $fault: "client"; - message?: string; +export class UsageLimitNotFoundFault extends __BaseException { + readonly name: "UsageLimitNotFoundFault" = "UsageLimitNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UsageLimitNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UsageLimitNotFoundFault.prototype); + } } export interface DescribeAccountAttributesMessage { diff --git a/clients/client-redshift/src/models/models_1.ts b/clients/client-redshift/src/models/models_1.ts index 2f28020bb7440..f8c5ee135e9b3 100644 --- a/clients/client-redshift/src/models/models_1.ts +++ b/clients/client-redshift/src/models/models_1.ts @@ -1,4 +1,5 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { ActionType, @@ -25,6 +26,7 @@ import { UsageLimitBreachAction, UsageLimitFeatureType, } from "./models_0"; +import { RedshiftServiceException as __BaseException } from "./RedshiftServiceException"; /** *

@@ -574,10 +576,20 @@ export namespace DescribeReservedNodeExchangeStatusOutputMessage { /** *

The reserved-node exchange status wasn't found.

*/ -export interface ReservedNodeExchangeNotFoundFault extends __SmithyException, $MetadataBearer { - name: "ReservedNodeExchangeNotFoundFault"; - $fault: "client"; - message?: string; +export class ReservedNodeExchangeNotFoundFault extends __BaseException { + readonly name: "ReservedNodeExchangeNotFoundFault" = "ReservedNodeExchangeNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNodeExchangeNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNodeExchangeNotFoundFault.prototype); + } } /** @@ -1137,10 +1149,20 @@ export namespace DescribeTableRestoreStatusMessage { /** *

The specified TableRestoreRequestId value was not found.

*/ -export interface TableRestoreNotFoundFault extends __SmithyException, $MetadataBearer { - name: "TableRestoreNotFoundFault"; - $fault: "client"; - message?: string; +export class TableRestoreNotFoundFault extends __BaseException { + readonly name: "TableRestoreNotFoundFault" = "TableRestoreNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TableRestoreNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TableRestoreNotFoundFault.prototype); + } } export type TableRestoreStatusType = "CANCELED" | "FAILED" | "IN_PROGRESS" | "PENDING" | "SUCCEEDED"; @@ -1602,10 +1624,20 @@ export namespace DisableSnapshotCopyResult { /** *

The cluster already has cross-region snapshot copy disabled.

*/ -export interface SnapshotCopyAlreadyDisabledFault extends __SmithyException, $MetadataBearer { - name: "SnapshotCopyAlreadyDisabledFault"; - $fault: "client"; - message?: string; +export class SnapshotCopyAlreadyDisabledFault extends __BaseException { + readonly name: "SnapshotCopyAlreadyDisabledFault" = "SnapshotCopyAlreadyDisabledFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotCopyAlreadyDisabledFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotCopyAlreadyDisabledFault.prototype); + } } export interface DisassociateDataShareConsumerMessage { @@ -1707,10 +1739,20 @@ export namespace EnableLoggingMessage { *

The cluster does not have read bucket or put object permissions on the S3 bucket * specified when enabling logging.

*/ -export interface InsufficientS3BucketPolicyFault extends __SmithyException, $MetadataBearer { - name: "InsufficientS3BucketPolicyFault"; - $fault: "client"; - message?: string; +export class InsufficientS3BucketPolicyFault extends __BaseException { + readonly name: "InsufficientS3BucketPolicyFault" = "InsufficientS3BucketPolicyFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientS3BucketPolicyFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientS3BucketPolicyFault.prototype); + } } /** @@ -1719,20 +1761,40 @@ export interface InsufficientS3BucketPolicyFault extends __SmithyException, $Met * Restrictions and Limitations in the Amazon Simple Storage Service (S3) * Developer Guide.

*/ -export interface InvalidS3BucketNameFault extends __SmithyException, $MetadataBearer { - name: "InvalidS3BucketNameFault"; - $fault: "client"; - message?: string; +export class InvalidS3BucketNameFault extends __BaseException { + readonly name: "InvalidS3BucketNameFault" = "InvalidS3BucketNameFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3BucketNameFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3BucketNameFault.prototype); + } } /** *

The string specified for the logging S3 key prefix does not comply with the * documented constraints.

*/ -export interface InvalidS3KeyPrefixFault extends __SmithyException, $MetadataBearer { - name: "InvalidS3KeyPrefixFault"; - $fault: "client"; - message?: string; +export class InvalidS3KeyPrefixFault extends __BaseException { + readonly name: "InvalidS3KeyPrefixFault" = "InvalidS3KeyPrefixFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3KeyPrefixFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3KeyPrefixFault.prototype); + } } /** @@ -1805,37 +1867,77 @@ export namespace EnableSnapshotCopyResult { /** *

The specified options are incompatible.

*/ -export interface IncompatibleOrderableOptions extends __SmithyException, $MetadataBearer { - name: "IncompatibleOrderableOptions"; - $fault: "client"; - message?: string; +export class IncompatibleOrderableOptions extends __BaseException { + readonly name: "IncompatibleOrderableOptions" = "IncompatibleOrderableOptions"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleOrderableOptions", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleOrderableOptions.prototype); + } } /** *

The cluster already has cross-region snapshot copy enabled.

*/ -export interface SnapshotCopyAlreadyEnabledFault extends __SmithyException, $MetadataBearer { - name: "SnapshotCopyAlreadyEnabledFault"; - $fault: "client"; - message?: string; +export class SnapshotCopyAlreadyEnabledFault extends __BaseException { + readonly name: "SnapshotCopyAlreadyEnabledFault" = "SnapshotCopyAlreadyEnabledFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotCopyAlreadyEnabledFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotCopyAlreadyEnabledFault.prototype); + } } /** *

The specified region is incorrect or does not exist.

*/ -export interface UnknownSnapshotCopyRegionFault extends __SmithyException, $MetadataBearer { - name: "UnknownSnapshotCopyRegionFault"; - $fault: "client"; - message?: string; +export class UnknownSnapshotCopyRegionFault extends __BaseException { + readonly name: "UnknownSnapshotCopyRegionFault" = "UnknownSnapshotCopyRegionFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnknownSnapshotCopyRegionFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnknownSnapshotCopyRegionFault.prototype); + } } /** *

The authorization for this endpoint can't be found.

*/ -export interface EndpointAuthorizationNotFoundFault extends __SmithyException, $MetadataBearer { - name: "EndpointAuthorizationNotFoundFault"; - $fault: "client"; - message?: string; +export class EndpointAuthorizationNotFoundFault extends __BaseException { + readonly name: "EndpointAuthorizationNotFoundFault" = "EndpointAuthorizationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointAuthorizationNotFoundFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointAuthorizationNotFoundFault.prototype); + } } /** @@ -2126,19 +2228,39 @@ export namespace GetReservedNodeExchangeOfferingsOutputMessage { *

You have exceeded the allowed number of table restore requests. Wait for your * current table restore requests to complete before making a new request.

*/ -export interface InProgressTableRestoreQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "InProgressTableRestoreQuotaExceededFault"; - $fault: "client"; - message?: string; +export class InProgressTableRestoreQuotaExceededFault extends __BaseException { + readonly name: "InProgressTableRestoreQuotaExceededFault" = "InProgressTableRestoreQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InProgressTableRestoreQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InProgressTableRestoreQuotaExceededFault.prototype); + } } /** *

The restore is invalid.

*/ -export interface InvalidRestoreFault extends __SmithyException, $MetadataBearer { - name: "InvalidRestoreFault"; - $fault: "client"; - message?: string; +export class InvalidRestoreFault extends __BaseException { + readonly name: "InvalidRestoreFault" = "InvalidRestoreFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRestoreFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRestoreFault.prototype); + } } /** @@ -2146,10 +2268,20 @@ export interface InvalidRestoreFault extends __SmithyException, $MetadataBearer * sourceSchemaName, or sourceTableName parameter, or a * combination of these, doesn't exist in the snapshot.

*/ -export interface InvalidTableRestoreArgumentFault extends __SmithyException, $MetadataBearer { - name: "InvalidTableRestoreArgumentFault"; - $fault: "client"; - message?: string; +export class InvalidTableRestoreArgumentFault extends __BaseException { + readonly name: "InvalidTableRestoreArgumentFault" = "InvalidTableRestoreArgumentFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTableRestoreArgumentFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTableRestoreArgumentFault.prototype); + } } export interface ModifyAquaInputMessage { @@ -2554,19 +2686,39 @@ export namespace ModifyClusterResult { *

The number of tables in the cluster exceeds the limit for the requested new cluster * node type.

*/ -export interface TableLimitExceededFault extends __SmithyException, $MetadataBearer { - name: "TableLimitExceededFault"; - $fault: "client"; - message?: string; +export class TableLimitExceededFault extends __BaseException { + readonly name: "TableLimitExceededFault" = "TableLimitExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TableLimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TableLimitExceededFault.prototype); + } } /** *

A request option was specified that is not supported.

*/ -export interface UnsupportedOptionFault extends __SmithyException, $MetadataBearer { - name: "UnsupportedOptionFault"; - $fault: "client"; - message?: string; +export class UnsupportedOptionFault extends __BaseException { + readonly name: "UnsupportedOptionFault" = "UnsupportedOptionFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOptionFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOptionFault.prototype); + } } export interface ModifyClusterDbRevisionMessage { @@ -2876,10 +3028,20 @@ export namespace ModifyClusterSubnetGroupResult { /** *

A specified subnet is already in use by another cluster.

*/ -export interface SubnetAlreadyInUse extends __SmithyException, $MetadataBearer { - name: "SubnetAlreadyInUse"; - $fault: "client"; - message?: string; +export class SubnetAlreadyInUse extends __BaseException { + readonly name: "SubnetAlreadyInUse" = "SubnetAlreadyInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubnetAlreadyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubnetAlreadyInUse.prototype); + } } export interface ModifyEndpointAccessMessage { @@ -3106,10 +3268,20 @@ export namespace ModifySnapshotCopyRetentionPeriodResult { *

Cross-region snapshot copy was temporarily disabled. Try your request * again.

*/ -export interface SnapshotCopyDisabledFault extends __SmithyException, $MetadataBearer { - name: "SnapshotCopyDisabledFault"; - $fault: "client"; - message?: string; +export class SnapshotCopyDisabledFault extends __BaseException { + readonly name: "SnapshotCopyDisabledFault" = "SnapshotCopyDisabledFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotCopyDisabledFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotCopyDisabledFault.prototype); + } } export interface ModifySnapshotScheduleMessage { @@ -3137,10 +3309,20 @@ export namespace ModifySnapshotScheduleMessage { /** *

The specified snapshot schedule is already being updated.

*/ -export interface SnapshotScheduleUpdateInProgressFault extends __SmithyException, $MetadataBearer { - name: "SnapshotScheduleUpdateInProgressFault"; - $fault: "client"; - message?: string; +export class SnapshotScheduleUpdateInProgressFault extends __BaseException { + readonly name: "SnapshotScheduleUpdateInProgressFault" = "SnapshotScheduleUpdateInProgressFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SnapshotScheduleUpdateInProgressFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SnapshotScheduleUpdateInProgressFault.prototype); + } } export interface ModifyUsageLimitMessage { @@ -3236,10 +3418,20 @@ export namespace PurchaseReservedNodeOfferingResult { * in the Amazon Redshift Cluster Management Guide. *

*/ -export interface ReservedNodeQuotaExceededFault extends __SmithyException, $MetadataBearer { - name: "ReservedNodeQuotaExceededFault"; - $fault: "client"; - message?: string; +export class ReservedNodeQuotaExceededFault extends __BaseException { + readonly name: "ReservedNodeQuotaExceededFault" = "ReservedNodeQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNodeQuotaExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNodeQuotaExceededFault.prototype); + } } /** diff --git a/clients/client-redshift/src/protocols/Aws_query.ts b/clients/client-redshift/src/protocols/Aws_query.ts index 8073548b6447d..7eb5cda128285 100644 --- a/clients/client-redshift/src/protocols/Aws_query.ts +++ b/clients/client-redshift/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -813,6 +812,7 @@ import { UpdatePartnerStatusInputMessage, UsageLimitList, } from "../models/models_1"; +import { RedshiftServiceException as __BaseException } from "../models/RedshiftServiceException"; export const serializeAws_queryAcceptReservedNodeExchangeCommand = async ( input: AcceptReservedNodeExchangeCommandInput, @@ -2728,81 +2728,40 @@ const deserializeAws_queryAcceptReservedNodeExchangeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "InvalidReservedNodeStateFault": case "com.amazonaws.redshift#InvalidReservedNodeStateFault": - response = { - ...(await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyExistsFault": case "com.amazonaws.redshift#ReservedNodeAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyMigratedFault": case "com.amazonaws.redshift#ReservedNodeAlreadyMigratedFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAddPartnerCommand = async ( @@ -2830,49 +2789,28 @@ const deserializeAws_queryAddPartnerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "PartnerNotFoundFault": case "com.amazonaws.redshift#PartnerNotFoundFault": - response = { - ...(await deserializeAws_queryPartnerNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPartnerNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedPartnerIntegrationFault": case "com.amazonaws.redshift#UnauthorizedPartnerIntegrationFault": - response = { - ...(await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAssociateDataShareConsumerCommand = async ( @@ -2900,41 +2838,25 @@ const deserializeAws_queryAssociateDataShareConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDataShareFault": case "com.amazonaws.redshift#InvalidDataShareFault": - response = { - ...(await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context); case "InvalidNamespaceFault": case "com.amazonaws.redshift#InvalidNamespaceFault": - response = { - ...(await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAuthorizeClusterSecurityGroupIngressCommand = async ( @@ -2965,57 +2887,31 @@ const deserializeAws_queryAuthorizeClusterSecurityGroupIngressCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationAlreadyExistsFault": case "com.amazonaws.redshift#AuthorizationAlreadyExistsFault": - response = { - ...(await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context); case "AuthorizationQuotaExceededFault": case "com.amazonaws.redshift#AuthorizationQuotaExceededFault": - response = { - ...(await deserializeAws_queryAuthorizationQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationQuotaExceededFaultResponse(parsedOutput, context); case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAuthorizeDataShareCommand = async ( @@ -3043,33 +2939,22 @@ const deserializeAws_queryAuthorizeDataShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDataShareFault": case "com.amazonaws.redshift#InvalidDataShareFault": - response = { - ...(await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAuthorizeEndpointAccessCommand = async ( @@ -3097,76 +2982,37 @@ const deserializeAws_queryAuthorizeEndpointAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "EndpointAuthorizationAlreadyExistsFault": case "com.amazonaws.redshift#EndpointAuthorizationAlreadyExistsFault": - response = { - ...(await deserializeAws_queryEndpointAuthorizationAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointAuthorizationAlreadyExistsFaultResponse(parsedOutput, context); case "EndpointAuthorizationsPerClusterLimitExceededFault": case "com.amazonaws.redshift#EndpointAuthorizationsPerClusterLimitExceededFault": - response = { - ...(await deserializeAws_queryEndpointAuthorizationsPerClusterLimitExceededFaultResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointAuthorizationsPerClusterLimitExceededFaultResponse(parsedOutput, context); case "InvalidAuthorizationStateFault": case "com.amazonaws.redshift#InvalidAuthorizationStateFault": - response = { - ...(await deserializeAws_queryInvalidAuthorizationStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthorizationStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAuthorizeSnapshotAccessCommand = async ( @@ -3194,73 +3040,37 @@ const deserializeAws_queryAuthorizeSnapshotAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationAlreadyExistsFault": case "com.amazonaws.redshift#AuthorizationAlreadyExistsFault": - response = { - ...(await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationAlreadyExistsFaultResponse(parsedOutput, context); case "AuthorizationQuotaExceededFault": case "com.amazonaws.redshift#AuthorizationQuotaExceededFault": - response = { - ...(await deserializeAws_queryAuthorizationQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationQuotaExceededFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchDeleteClusterSnapshotsCommand = async ( @@ -3288,33 +3098,22 @@ const deserializeAws_queryBatchDeleteClusterSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchDeleteRequestSizeExceededFault": case "com.amazonaws.redshift#BatchDeleteRequestSizeExceededFault": - response = { - ...(await deserializeAws_queryBatchDeleteRequestSizeExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchDeleteRequestSizeExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryBatchModifyClusterSnapshotsCommand = async ( @@ -3345,41 +3144,25 @@ const deserializeAws_queryBatchModifyClusterSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchModifyClusterSnapshotsLimitExceededFault": case "com.amazonaws.redshift#BatchModifyClusterSnapshotsLimitExceededFault": - response = { - ...(await deserializeAws_queryBatchModifyClusterSnapshotsLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchModifyClusterSnapshotsLimitExceededFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCancelResizeCommand = async ( @@ -3407,57 +3190,31 @@ const deserializeAws_queryCancelResizeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "ResizeNotFoundFault": case "com.amazonaws.redshift#ResizeNotFoundFault": - response = { - ...(await deserializeAws_queryResizeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResizeNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCopyClusterSnapshotCommand = async ( @@ -3485,65 +3242,34 @@ const deserializeAws_queryCopyClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSnapshotAlreadyExistsFault": case "com.amazonaws.redshift#ClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotQuotaExceededFault": case "com.amazonaws.redshift#ClusterSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateAuthenticationProfileCommand = async ( @@ -3571,49 +3297,28 @@ const deserializeAws_queryCreateAuthenticationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationProfileAlreadyExistsFault": case "com.amazonaws.redshift#AuthenticationProfileAlreadyExistsFault": - response = { - ...(await deserializeAws_queryAuthenticationProfileAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthenticationProfileAlreadyExistsFaultResponse(parsedOutput, context); case "AuthenticationProfileQuotaExceededFault": case "com.amazonaws.redshift#AuthenticationProfileQuotaExceededFault": - response = { - ...(await deserializeAws_queryAuthenticationProfileQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthenticationProfileQuotaExceededFaultResponse(parsedOutput, context); case "InvalidAuthenticationProfileRequestFault": case "com.amazonaws.redshift#InvalidAuthenticationProfileRequestFault": - response = { - ...(await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateClusterCommand = async ( @@ -3641,201 +3346,85 @@ const deserializeAws_queryCreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterAlreadyExistsFault": case "com.amazonaws.redshift#ClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterQuotaExceededFault": case "com.amazonaws.redshift#ClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterQuotaExceededFaultResponse(parsedOutput, context); case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterSubnetGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "HsmClientCertificateNotFoundFault": case "com.amazonaws.redshift#HsmClientCertificateNotFoundFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context); case "HsmConfigurationNotFoundFault": case "com.amazonaws.redshift#HsmConfigurationNotFoundFault": - response = { - ...(await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.redshift#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterSubnetGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterTrackFault": case "com.amazonaws.redshift#InvalidClusterTrackFault": - response = { - ...(await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context); case "InvalidElasticIpFault": case "com.amazonaws.redshift#InvalidElasticIpFault": - response = { - ...(await deserializeAws_queryInvalidElasticIpFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidElasticIpFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.redshift#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.redshift#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesPerClusterLimitExceededFault": case "com.amazonaws.redshift#NumberOfNodesPerClusterLimitExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesQuotaExceededFault": case "com.amazonaws.redshift#NumberOfNodesQuotaExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context); case "SnapshotScheduleNotFoundFault": case "com.amazonaws.redshift#SnapshotScheduleNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateClusterParameterGroupCommand = async ( @@ -3863,57 +3452,31 @@ const deserializeAws_queryCreateClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterParameterGroupAlreadyExistsFault": case "com.amazonaws.redshift#ClusterParameterGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterParameterGroupQuotaExceededFault": case "com.amazonaws.redshift#ClusterParameterGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupQuotaExceededFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateClusterSecurityGroupCommand = async ( @@ -3941,57 +3504,31 @@ const deserializeAws_queryCreateClusterSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSecurityGroupAlreadyExistsFault": case "com.amazonaws.redshift#ClusterSecurityGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterSecurityGroupQuotaExceededFault": case "com.amazonaws.redshift#ClusterSecurityGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupQuotaExceededFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateClusterSnapshotCommand = async ( @@ -4019,81 +3556,40 @@ const deserializeAws_queryCreateClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotAlreadyExistsFault": case "com.amazonaws.redshift#ClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterSnapshotQuotaExceededFault": case "com.amazonaws.redshift#ClusterSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateClusterSubnetGroupCommand = async ( @@ -4121,89 +3617,43 @@ const deserializeAws_queryCreateClusterSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSubnetGroupAlreadyExistsFault": case "com.amazonaws.redshift#ClusterSubnetGroupAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterSubnetGroupQuotaExceededFault": case "com.amazonaws.redshift#ClusterSubnetGroupQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupQuotaExceededFaultResponse(parsedOutput, context); case "ClusterSubnetQuotaExceededFault": case "com.amazonaws.redshift#ClusterSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetQuotaExceededFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.redshift#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateEndpointAccessCommand = async ( @@ -4231,105 +3681,49 @@ const deserializeAws_queryCreateEndpointAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessToClusterDeniedFault": case "com.amazonaws.redshift#AccessToClusterDeniedFault": - response = { - ...(await deserializeAws_queryAccessToClusterDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessToClusterDeniedFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSubnetGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "EndpointAlreadyExistsFault": case "com.amazonaws.redshift#EndpointAlreadyExistsFault": - response = { - ...(await deserializeAws_queryEndpointAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointAlreadyExistsFaultResponse(parsedOutput, context); case "EndpointsPerAuthorizationLimitExceededFault": case "com.amazonaws.redshift#EndpointsPerAuthorizationLimitExceededFault": - response = { - ...(await deserializeAws_queryEndpointsPerAuthorizationLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointsPerAuthorizationLimitExceededFaultResponse(parsedOutput, context); case "EndpointsPerClusterLimitExceededFault": case "com.amazonaws.redshift#EndpointsPerClusterLimitExceededFault": - response = { - ...(await deserializeAws_queryEndpointsPerClusterLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointsPerClusterLimitExceededFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateEventSubscriptionCommand = async ( @@ -4357,113 +3751,52 @@ const deserializeAws_queryCreateEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "EventSubscriptionQuotaExceededFault": case "com.amazonaws.redshift#EventSubscriptionQuotaExceededFault": - response = { - ...(await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.redshift#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.redshift#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.redshift#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SourceNotFoundFault": case "com.amazonaws.redshift#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionAlreadyExistFault": case "com.amazonaws.redshift#SubscriptionAlreadyExistFault": - response = { - ...(await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionAlreadyExistFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.redshift#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); case "SubscriptionEventIdNotFoundFault": case "com.amazonaws.redshift#SubscriptionEventIdNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionEventIdNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionEventIdNotFoundFaultResponse(parsedOutput, context); case "SubscriptionSeverityNotFoundFault": case "com.amazonaws.redshift#SubscriptionSeverityNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionSeverityNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionSeverityNotFoundFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateHsmClientCertificateCommand = async ( @@ -4491,57 +3824,31 @@ const deserializeAws_queryCreateHsmClientCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HsmClientCertificateAlreadyExistsFault": case "com.amazonaws.redshift#HsmClientCertificateAlreadyExistsFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateAlreadyExistsFaultResponse(parsedOutput, context); case "HsmClientCertificateQuotaExceededFault": case "com.amazonaws.redshift#HsmClientCertificateQuotaExceededFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateQuotaExceededFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateHsmConfigurationCommand = async ( @@ -4569,57 +3876,31 @@ const deserializeAws_queryCreateHsmConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HsmConfigurationAlreadyExistsFault": case "com.amazonaws.redshift#HsmConfigurationAlreadyExistsFault": - response = { - ...(await deserializeAws_queryHsmConfigurationAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationAlreadyExistsFaultResponse(parsedOutput, context); case "HsmConfigurationQuotaExceededFault": case "com.amazonaws.redshift#HsmConfigurationQuotaExceededFault": - response = { - ...(await deserializeAws_queryHsmConfigurationQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationQuotaExceededFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateScheduledActionCommand = async ( @@ -4647,73 +3928,37 @@ const deserializeAws_queryCreateScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidScheduledActionFault": case "com.amazonaws.redshift#InvalidScheduledActionFault": - response = { - ...(await deserializeAws_queryInvalidScheduledActionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidScheduledActionFaultResponse(parsedOutput, context); case "InvalidScheduleFault": case "com.amazonaws.redshift#InvalidScheduleFault": - response = { - ...(await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context); case "ScheduledActionAlreadyExistsFault": case "com.amazonaws.redshift#ScheduledActionAlreadyExistsFault": - response = { - ...(await deserializeAws_queryScheduledActionAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionAlreadyExistsFaultResponse(parsedOutput, context); case "ScheduledActionQuotaExceededFault": case "com.amazonaws.redshift#ScheduledActionQuotaExceededFault": - response = { - ...(await deserializeAws_queryScheduledActionQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionQuotaExceededFaultResponse(parsedOutput, context); case "ScheduledActionTypeUnsupportedFault": case "com.amazonaws.redshift#ScheduledActionTypeUnsupportedFault": - response = { - ...(await deserializeAws_queryScheduledActionTypeUnsupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionTypeUnsupportedFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateSnapshotCopyGrantCommand = async ( @@ -4741,73 +3986,37 @@ const deserializeAws_queryCreateSnapshotCopyGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "SnapshotCopyGrantAlreadyExistsFault": case "com.amazonaws.redshift#SnapshotCopyGrantAlreadyExistsFault": - response = { - ...(await deserializeAws_querySnapshotCopyGrantAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyGrantAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotCopyGrantQuotaExceededFault": case "com.amazonaws.redshift#SnapshotCopyGrantQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotCopyGrantQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyGrantQuotaExceededFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateSnapshotScheduleCommand = async ( @@ -4835,73 +4044,37 @@ const deserializeAws_queryCreateSnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidScheduleFault": case "com.amazonaws.redshift#InvalidScheduleFault": - response = { - ...(await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "ScheduleDefinitionTypeUnsupportedFault": case "com.amazonaws.redshift#ScheduleDefinitionTypeUnsupportedFault": - response = { - ...(await deserializeAws_queryScheduleDefinitionTypeUnsupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduleDefinitionTypeUnsupportedFaultResponse(parsedOutput, context); case "SnapshotScheduleAlreadyExistsFault": case "com.amazonaws.redshift#SnapshotScheduleAlreadyExistsFault": - response = { - ...(await deserializeAws_querySnapshotScheduleAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleAlreadyExistsFaultResponse(parsedOutput, context); case "SnapshotScheduleQuotaExceededFault": case "com.amazonaws.redshift#SnapshotScheduleQuotaExceededFault": - response = { - ...(await deserializeAws_querySnapshotScheduleQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleQuotaExceededFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateTagsCommand = async ( @@ -4926,57 +4099,31 @@ const deserializeAws_queryCreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.redshift#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateUsageLimitCommand = async ( @@ -5004,81 +4151,40 @@ const deserializeAws_queryCreateUsageLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidUsageLimitFault": case "com.amazonaws.redshift#InvalidUsageLimitFault": - response = { - ...(await deserializeAws_queryInvalidUsageLimitFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUsageLimitFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); case "UsageLimitAlreadyExistsFault": case "com.amazonaws.redshift#UsageLimitAlreadyExistsFault": - response = { - ...(await deserializeAws_queryUsageLimitAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUsageLimitAlreadyExistsFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeauthorizeDataShareCommand = async ( @@ -5106,33 +4212,22 @@ const deserializeAws_queryDeauthorizeDataShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDataShareFault": case "com.amazonaws.redshift#InvalidDataShareFault": - response = { - ...(await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteAuthenticationProfileCommand = async ( @@ -5160,41 +4255,25 @@ const deserializeAws_queryDeleteAuthenticationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationProfileNotFoundFault": case "com.amazonaws.redshift#AuthenticationProfileNotFoundFault": - response = { - ...(await deserializeAws_queryAuthenticationProfileNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthenticationProfileNotFoundFaultResponse(parsedOutput, context); case "InvalidAuthenticationProfileRequestFault": case "com.amazonaws.redshift#InvalidAuthenticationProfileRequestFault": - response = { - ...(await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteClusterCommand = async ( @@ -5222,65 +4301,34 @@ const deserializeAws_queryDeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotAlreadyExistsFault": case "com.amazonaws.redshift#ClusterSnapshotAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterSnapshotQuotaExceededFault": case "com.amazonaws.redshift#ClusterSnapshotQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteClusterParameterGroupCommand = async ( @@ -5305,41 +4353,25 @@ const deserializeAws_queryDeleteClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterParameterGroupStateFault": case "com.amazonaws.redshift#InvalidClusterParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteClusterSecurityGroupCommand = async ( @@ -5364,41 +4396,25 @@ const deserializeAws_queryDeleteClusterSecurityGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteClusterSnapshotCommand = async ( @@ -5426,41 +4442,25 @@ const deserializeAws_queryDeleteClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteClusterSubnetGroupCommand = async ( @@ -5485,49 +4485,28 @@ const deserializeAws_queryDeleteClusterSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSubnetGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSubnetGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterSubnetStateFault": case "com.amazonaws.redshift#InvalidClusterSubnetStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSubnetStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSubnetStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEndpointAccessCommand = async ( @@ -5555,65 +4534,34 @@ const deserializeAws_queryDeleteEndpointAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "EndpointNotFoundFault": case "com.amazonaws.redshift#EndpointNotFoundFault": - response = { - ...(await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidEndpointStateFault": case "com.amazonaws.redshift#InvalidEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEndpointStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEventSubscriptionCommand = async ( @@ -5638,41 +4586,25 @@ const deserializeAws_queryDeleteEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSubscriptionStateFault": case "com.amazonaws.redshift#InvalidSubscriptionStateFault": - response = { - ...(await deserializeAws_queryInvalidSubscriptionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubscriptionStateFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.redshift#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteHsmClientCertificateCommand = async ( @@ -5697,41 +4629,25 @@ const deserializeAws_queryDeleteHsmClientCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HsmClientCertificateNotFoundFault": case "com.amazonaws.redshift#HsmClientCertificateNotFoundFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context); case "InvalidHsmClientCertificateStateFault": case "com.amazonaws.redshift#InvalidHsmClientCertificateStateFault": - response = { - ...(await deserializeAws_queryInvalidHsmClientCertificateStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidHsmClientCertificateStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteHsmConfigurationCommand = async ( @@ -5756,41 +4672,25 @@ const deserializeAws_queryDeleteHsmConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HsmConfigurationNotFoundFault": case "com.amazonaws.redshift#HsmConfigurationNotFoundFault": - response = { - ...(await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context); case "InvalidHsmConfigurationStateFault": case "com.amazonaws.redshift#InvalidHsmConfigurationStateFault": - response = { - ...(await deserializeAws_queryInvalidHsmConfigurationStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidHsmConfigurationStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeletePartnerCommand = async ( @@ -5818,49 +4718,28 @@ const deserializeAws_queryDeletePartnerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "PartnerNotFoundFault": case "com.amazonaws.redshift#PartnerNotFoundFault": - response = { - ...(await deserializeAws_queryPartnerNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPartnerNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedPartnerIntegrationFault": case "com.amazonaws.redshift#UnauthorizedPartnerIntegrationFault": - response = { - ...(await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteScheduledActionCommand = async ( @@ -5885,41 +4764,25 @@ const deserializeAws_queryDeleteScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ScheduledActionNotFoundFault": case "com.amazonaws.redshift#ScheduledActionNotFoundFault": - response = { - ...(await deserializeAws_queryScheduledActionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSnapshotCopyGrantCommand = async ( @@ -5944,41 +4807,25 @@ const deserializeAws_queryDeleteSnapshotCopyGrantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSnapshotCopyGrantStateFault": case "com.amazonaws.redshift#InvalidSnapshotCopyGrantStateFault": - response = { - ...(await deserializeAws_queryInvalidSnapshotCopyGrantStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSnapshotCopyGrantStateFaultResponse(parsedOutput, context); case "SnapshotCopyGrantNotFoundFault": case "com.amazonaws.redshift#SnapshotCopyGrantNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSnapshotScheduleCommand = async ( @@ -6003,41 +4850,25 @@ const deserializeAws_queryDeleteSnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClusterSnapshotScheduleStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotScheduleStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotScheduleStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotScheduleStateFaultResponse(parsedOutput, context); case "SnapshotScheduleNotFoundFault": case "com.amazonaws.redshift#SnapshotScheduleNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteTagsCommand = async ( @@ -6062,41 +4893,25 @@ const deserializeAws_queryDeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.redshift#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteUsageLimitCommand = async ( @@ -6121,41 +4936,25 @@ const deserializeAws_queryDeleteUsageLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); case "UsageLimitNotFoundFault": case "com.amazonaws.redshift#UsageLimitNotFoundFault": - response = { - ...(await deserializeAws_queryUsageLimitNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUsageLimitNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAccountAttributesCommand = async ( @@ -6183,25 +4982,19 @@ const deserializeAws_queryDescribeAccountAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeAuthenticationProfilesCommand = async ( @@ -6232,41 +5025,25 @@ const deserializeAws_queryDescribeAuthenticationProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationProfileNotFoundFault": case "com.amazonaws.redshift#AuthenticationProfileNotFoundFault": - response = { - ...(await deserializeAws_queryAuthenticationProfileNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthenticationProfileNotFoundFaultResponse(parsedOutput, context); case "InvalidAuthenticationProfileRequestFault": case "com.amazonaws.redshift#InvalidAuthenticationProfileRequestFault": - response = { - ...(await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterDbRevisionsCommand = async ( @@ -6294,41 +5071,25 @@ const deserializeAws_queryDescribeClusterDbRevisionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterParameterGroupsCommand = async ( @@ -6356,41 +5117,25 @@ const deserializeAws_queryDescribeClusterParameterGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterParametersCommand = async ( @@ -6418,33 +5163,22 @@ const deserializeAws_queryDescribeClusterParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClustersCommand = async ( @@ -6472,41 +5206,25 @@ const deserializeAws_queryDescribeClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterSecurityGroupsCommand = async ( @@ -6534,41 +5252,25 @@ const deserializeAws_queryDescribeClusterSecurityGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterSnapshotsCommand = async ( @@ -6596,49 +5298,28 @@ const deserializeAws_queryDescribeClusterSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterSubnetGroupsCommand = async ( @@ -6666,41 +5347,25 @@ const deserializeAws_queryDescribeClusterSubnetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSubnetGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterTracksCommand = async ( @@ -6728,41 +5393,25 @@ const deserializeAws_queryDescribeClusterTracksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidClusterTrackFault": case "com.amazonaws.redshift#InvalidClusterTrackFault": - response = { - ...(await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeClusterVersionsCommand = async ( @@ -6790,25 +5439,19 @@ const deserializeAws_queryDescribeClusterVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDataSharesCommand = async ( @@ -6836,33 +5479,22 @@ const deserializeAws_queryDescribeDataSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDataShareFault": case "com.amazonaws.redshift#InvalidDataShareFault": - response = { - ...(await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDataSharesForConsumerCommand = async ( @@ -6890,33 +5522,22 @@ const deserializeAws_queryDescribeDataSharesForConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNamespaceFault": case "com.amazonaws.redshift#InvalidNamespaceFault": - response = { - ...(await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDataSharesForProducerCommand = async ( @@ -6944,33 +5565,22 @@ const deserializeAws_queryDescribeDataSharesForProducerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNamespaceFault": case "com.amazonaws.redshift#InvalidNamespaceFault": - response = { - ...(await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeDefaultClusterParametersCommand = async ( @@ -7001,25 +5611,19 @@ const deserializeAws_queryDescribeDefaultClusterParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEndpointAccessCommand = async ( @@ -7047,49 +5651,28 @@ const deserializeAws_queryDescribeEndpointAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "EndpointNotFoundFault": case "com.amazonaws.redshift#EndpointNotFoundFault": - response = { - ...(await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEndpointAuthorizationCommand = async ( @@ -7117,41 +5700,25 @@ const deserializeAws_queryDescribeEndpointAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventCategoriesCommand = async ( @@ -7179,25 +5746,19 @@ const deserializeAws_queryDescribeEventCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventsCommand = async ( @@ -7225,25 +5786,19 @@ const deserializeAws_queryDescribeEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeEventSubscriptionsCommand = async ( @@ -7271,41 +5826,25 @@ const deserializeAws_queryDescribeEventSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.redshift#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeHsmClientCertificatesCommand = async ( @@ -7333,41 +5872,25 @@ const deserializeAws_queryDescribeHsmClientCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HsmClientCertificateNotFoundFault": case "com.amazonaws.redshift#HsmClientCertificateNotFoundFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeHsmConfigurationsCommand = async ( @@ -7395,41 +5918,25 @@ const deserializeAws_queryDescribeHsmConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "HsmConfigurationNotFoundFault": case "com.amazonaws.redshift#HsmConfigurationNotFoundFault": - response = { - ...(await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeLoggingStatusCommand = async ( @@ -7457,33 +5964,22 @@ const deserializeAws_queryDescribeLoggingStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeNodeConfigurationOptionsCommand = async ( @@ -7511,57 +6007,31 @@ const deserializeAws_queryDescribeNodeConfigurationOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessToSnapshotDeniedFault": case "com.amazonaws.redshift#AccessToSnapshotDeniedFault": - response = { - ...(await deserializeAws_queryAccessToSnapshotDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessToSnapshotDeniedFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeOrderableClusterOptionsCommand = async ( @@ -7589,25 +6059,19 @@ const deserializeAws_queryDescribeOrderableClusterOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribePartnersCommand = async ( @@ -7635,41 +6099,25 @@ const deserializeAws_queryDescribePartnersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedPartnerIntegrationFault": case "com.amazonaws.redshift#UnauthorizedPartnerIntegrationFault": - response = { - ...(await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedNodeExchangeStatusCommand = async ( @@ -7700,49 +6148,28 @@ const deserializeAws_queryDescribeReservedNodeExchangeStatusCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ReservedNodeExchangeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeExchangeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeExchangeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeExchangeNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedNodeOfferingsCommand = async ( @@ -7770,49 +6197,28 @@ const deserializeAws_queryDescribeReservedNodeOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReservedNodesCommand = async ( @@ -7840,41 +6246,25 @@ const deserializeAws_queryDescribeReservedNodesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeResizeCommand = async ( @@ -7902,41 +6292,25 @@ const deserializeAws_queryDescribeResizeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ResizeNotFoundFault": case "com.amazonaws.redshift#ResizeNotFoundFault": - response = { - ...(await deserializeAws_queryResizeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResizeNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeScheduledActionsCommand = async ( @@ -7964,41 +6338,25 @@ const deserializeAws_queryDescribeScheduledActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ScheduledActionNotFoundFault": case "com.amazonaws.redshift#ScheduledActionNotFoundFault": - response = { - ...(await deserializeAws_queryScheduledActionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeSnapshotCopyGrantsCommand = async ( @@ -8026,41 +6384,25 @@ const deserializeAws_queryDescribeSnapshotCopyGrantsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "SnapshotCopyGrantNotFoundFault": case "com.amazonaws.redshift#SnapshotCopyGrantNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeSnapshotSchedulesCommand = async ( @@ -8088,25 +6430,19 @@ const deserializeAws_queryDescribeSnapshotSchedulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeStorageCommand = async ( @@ -8134,25 +6470,19 @@ const deserializeAws_queryDescribeStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTableRestoreStatusCommand = async ( @@ -8180,41 +6510,25 @@ const deserializeAws_queryDescribeTableRestoreStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "TableRestoreNotFoundFault": case "com.amazonaws.redshift#TableRestoreNotFoundFault": - response = { - ...(await deserializeAws_queryTableRestoreNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTableRestoreNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeTagsCommand = async ( @@ -8242,41 +6556,25 @@ const deserializeAws_queryDescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "ResourceNotFoundFault": case "com.amazonaws.redshift#ResourceNotFoundFault": - response = { - ...(await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeUsageLimitsCommand = async ( @@ -8304,41 +6602,25 @@ const deserializeAws_queryDescribeUsageLimitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisableLoggingCommand = async ( @@ -8366,41 +6648,25 @@ const deserializeAws_queryDisableLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisableSnapshotCopyCommand = async ( @@ -8428,57 +6694,31 @@ const deserializeAws_queryDisableSnapshotCopyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "SnapshotCopyAlreadyDisabledFault": case "com.amazonaws.redshift#SnapshotCopyAlreadyDisabledFault": - response = { - ...(await deserializeAws_querySnapshotCopyAlreadyDisabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyAlreadyDisabledFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDisassociateDataShareConsumerCommand = async ( @@ -8506,41 +6746,25 @@ const deserializeAws_queryDisassociateDataShareConsumerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDataShareFault": case "com.amazonaws.redshift#InvalidDataShareFault": - response = { - ...(await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context); case "InvalidNamespaceFault": case "com.amazonaws.redshift#InvalidNamespaceFault": - response = { - ...(await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidNamespaceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableLoggingCommand = async ( @@ -8568,73 +6792,37 @@ const deserializeAws_queryEnableLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BucketNotFoundFault": case "com.amazonaws.redshift#BucketNotFoundFault": - response = { - ...(await deserializeAws_queryBucketNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBucketNotFoundFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InsufficientS3BucketPolicyFault": case "com.amazonaws.redshift#InsufficientS3BucketPolicyFault": - response = { - ...(await deserializeAws_queryInsufficientS3BucketPolicyFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientS3BucketPolicyFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidS3BucketNameFault": case "com.amazonaws.redshift#InvalidS3BucketNameFault": - response = { - ...(await deserializeAws_queryInvalidS3BucketNameFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3BucketNameFaultResponse(parsedOutput, context); case "InvalidS3KeyPrefixFault": case "com.amazonaws.redshift#InvalidS3KeyPrefixFault": - response = { - ...(await deserializeAws_queryInvalidS3KeyPrefixFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3KeyPrefixFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEnableSnapshotCopyCommand = async ( @@ -8662,113 +6850,52 @@ const deserializeAws_queryEnableSnapshotCopyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "CopyToRegionDisabledFault": case "com.amazonaws.redshift#CopyToRegionDisabledFault": - response = { - ...(await deserializeAws_queryCopyToRegionDisabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCopyToRegionDisabledFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "IncompatibleOrderableOptions": case "com.amazonaws.redshift#IncompatibleOrderableOptions": - response = { - ...(await deserializeAws_queryIncompatibleOrderableOptionsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIncompatibleOrderableOptionsResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "SnapshotCopyAlreadyEnabledFault": case "com.amazonaws.redshift#SnapshotCopyAlreadyEnabledFault": - response = { - ...(await deserializeAws_querySnapshotCopyAlreadyEnabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyAlreadyEnabledFaultResponse(parsedOutput, context); case "SnapshotCopyGrantNotFoundFault": case "com.amazonaws.redshift#SnapshotCopyGrantNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); case "UnknownSnapshotCopyRegionFault": case "com.amazonaws.redshift#UnknownSnapshotCopyRegionFault": - response = { - ...(await deserializeAws_queryUnknownSnapshotCopyRegionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnknownSnapshotCopyRegionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetClusterCredentialsCommand = async ( @@ -8796,41 +6923,25 @@ const deserializeAws_queryGetClusterCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetReservedNodeExchangeConfigurationOptionsCommand = async ( @@ -8861,89 +6972,43 @@ const deserializeAws_queryGetReservedNodeExchangeConfigurationOptionsCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "InvalidReservedNodeStateFault": case "com.amazonaws.redshift#InvalidReservedNodeStateFault": - response = { - ...(await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyMigratedFault": case "com.amazonaws.redshift#ReservedNodeAlreadyMigratedFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetReservedNodeExchangeOfferingsCommand = async ( @@ -8974,73 +7039,37 @@ const deserializeAws_queryGetReservedNodeExchangeOfferingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "InvalidReservedNodeStateFault": case "com.amazonaws.redshift#InvalidReservedNodeStateFault": - response = { - ...(await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyMigratedFault": case "com.amazonaws.redshift#ReservedNodeAlreadyMigratedFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyAquaConfigurationCommand = async ( @@ -9068,49 +7097,28 @@ const deserializeAws_queryModifyAquaConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyAuthenticationProfileCommand = async ( @@ -9138,49 +7146,28 @@ const deserializeAws_queryModifyAuthenticationProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthenticationProfileNotFoundFault": case "com.amazonaws.redshift#AuthenticationProfileNotFoundFault": - response = { - ...(await deserializeAws_queryAuthenticationProfileNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthenticationProfileNotFoundFaultResponse(parsedOutput, context); case "AuthenticationProfileQuotaExceededFault": case "com.amazonaws.redshift#AuthenticationProfileQuotaExceededFault": - response = { - ...(await deserializeAws_queryAuthenticationProfileQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthenticationProfileQuotaExceededFaultResponse(parsedOutput, context); case "InvalidAuthenticationProfileRequestFault": case "com.amazonaws.redshift#InvalidAuthenticationProfileRequestFault": - response = { - ...(await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterCommand = async ( @@ -9208,177 +7195,76 @@ const deserializeAws_queryModifyClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterAlreadyExistsFault": case "com.amazonaws.redshift#ClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "HsmClientCertificateNotFoundFault": case "com.amazonaws.redshift#HsmClientCertificateNotFoundFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context); case "HsmConfigurationNotFoundFault": case "com.amazonaws.redshift#HsmConfigurationNotFoundFault": - response = { - ...(await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.redshift#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidClusterTrackFault": case "com.amazonaws.redshift#InvalidClusterTrackFault": - response = { - ...(await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context); case "InvalidElasticIpFault": case "com.amazonaws.redshift#InvalidElasticIpFault": - response = { - ...(await deserializeAws_queryInvalidElasticIpFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidElasticIpFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesPerClusterLimitExceededFault": case "com.amazonaws.redshift#NumberOfNodesPerClusterLimitExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesQuotaExceededFault": case "com.amazonaws.redshift#NumberOfNodesQuotaExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context); case "TableLimitExceededFault": case "com.amazonaws.redshift#TableLimitExceededFault": - response = { - ...(await deserializeAws_queryTableLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTableLimitExceededFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); case "UnsupportedOptionFault": case "com.amazonaws.redshift#UnsupportedOptionFault": - response = { - ...(await deserializeAws_queryUnsupportedOptionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOptionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterDbRevisionCommand = async ( @@ -9406,49 +7292,28 @@ const deserializeAws_queryModifyClusterDbRevisionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterOnLatestRevisionFault": case "com.amazonaws.redshift#ClusterOnLatestRevisionFault": - response = { - ...(await deserializeAws_queryClusterOnLatestRevisionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterOnLatestRevisionFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterIamRolesCommand = async ( @@ -9476,41 +7341,25 @@ const deserializeAws_queryModifyClusterIamRolesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterMaintenanceCommand = async ( @@ -9538,41 +7387,25 @@ const deserializeAws_queryModifyClusterMaintenanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterParameterGroupCommand = async ( @@ -9600,41 +7433,25 @@ const deserializeAws_queryModifyClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterParameterGroupStateFault": case "com.amazonaws.redshift#InvalidClusterParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterSnapshotCommand = async ( @@ -9662,49 +7479,28 @@ const deserializeAws_queryModifyClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterSnapshotScheduleCommand = async ( @@ -9729,49 +7525,28 @@ const deserializeAws_queryModifyClusterSnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotScheduleStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotScheduleStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotScheduleStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotScheduleStateFaultResponse(parsedOutput, context); case "SnapshotScheduleNotFoundFault": case "com.amazonaws.redshift#SnapshotScheduleNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyClusterSubnetGroupCommand = async ( @@ -9799,73 +7574,37 @@ const deserializeAws_queryModifyClusterSubnetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterSubnetGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterSubnetQuotaExceededFault": case "com.amazonaws.redshift#ClusterSubnetQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterSubnetQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetQuotaExceededFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.redshift#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "SubnetAlreadyInUse": case "com.amazonaws.redshift#SubnetAlreadyInUse": - response = { - ...(await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubnetAlreadyInUseResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyEndpointAccessCommand = async ( @@ -9893,73 +7632,37 @@ const deserializeAws_queryModifyEndpointAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "EndpointNotFoundFault": case "com.amazonaws.redshift#EndpointNotFoundFault": - response = { - ...(await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidEndpointStateFault": case "com.amazonaws.redshift#InvalidEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEndpointStateFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyEventSubscriptionCommand = async ( @@ -9987,97 +7690,46 @@ const deserializeAws_queryModifyEventSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidSubscriptionStateFault": case "com.amazonaws.redshift#InvalidSubscriptionStateFault": - response = { - ...(await deserializeAws_queryInvalidSubscriptionStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubscriptionStateFaultResponse(parsedOutput, context); case "SNSInvalidTopicFault": case "com.amazonaws.redshift#SNSInvalidTopicFault": - response = { - ...(await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSInvalidTopicFaultResponse(parsedOutput, context); case "SNSNoAuthorizationFault": case "com.amazonaws.redshift#SNSNoAuthorizationFault": - response = { - ...(await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSNoAuthorizationFaultResponse(parsedOutput, context); case "SNSTopicArnNotFoundFault": case "com.amazonaws.redshift#SNSTopicArnNotFoundFault": - response = { - ...(await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySNSTopicArnNotFoundFaultResponse(parsedOutput, context); case "SourceNotFoundFault": case "com.amazonaws.redshift#SourceNotFoundFault": - response = { - ...(await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySourceNotFoundFaultResponse(parsedOutput, context); case "SubscriptionCategoryNotFoundFault": case "com.amazonaws.redshift#SubscriptionCategoryNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionCategoryNotFoundFaultResponse(parsedOutput, context); case "SubscriptionEventIdNotFoundFault": case "com.amazonaws.redshift#SubscriptionEventIdNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionEventIdNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionEventIdNotFoundFaultResponse(parsedOutput, context); case "SubscriptionNotFoundFault": case "com.amazonaws.redshift#SubscriptionNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionNotFoundFaultResponse(parsedOutput, context); case "SubscriptionSeverityNotFoundFault": case "com.amazonaws.redshift#SubscriptionSeverityNotFoundFault": - response = { - ...(await deserializeAws_querySubscriptionSeverityNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionSeverityNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyScheduledActionCommand = async ( @@ -10105,65 +7757,34 @@ const deserializeAws_queryModifyScheduledActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidScheduledActionFault": case "com.amazonaws.redshift#InvalidScheduledActionFault": - response = { - ...(await deserializeAws_queryInvalidScheduledActionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidScheduledActionFaultResponse(parsedOutput, context); case "InvalidScheduleFault": case "com.amazonaws.redshift#InvalidScheduleFault": - response = { - ...(await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context); case "ScheduledActionNotFoundFault": case "com.amazonaws.redshift#ScheduledActionNotFoundFault": - response = { - ...(await deserializeAws_queryScheduledActionNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionNotFoundFaultResponse(parsedOutput, context); case "ScheduledActionTypeUnsupportedFault": case "com.amazonaws.redshift#ScheduledActionTypeUnsupportedFault": - response = { - ...(await deserializeAws_queryScheduledActionTypeUnsupportedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryScheduledActionTypeUnsupportedFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifySnapshotCopyRetentionPeriodCommand = async ( @@ -10194,65 +7815,34 @@ const deserializeAws_queryModifySnapshotCopyRetentionPeriodCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidRetentionPeriodFault": case "com.amazonaws.redshift#InvalidRetentionPeriodFault": - response = { - ...(await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRetentionPeriodFaultResponse(parsedOutput, context); case "SnapshotCopyDisabledFault": case "com.amazonaws.redshift#SnapshotCopyDisabledFault": - response = { - ...(await deserializeAws_querySnapshotCopyDisabledFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotCopyDisabledFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifySnapshotScheduleCommand = async ( @@ -10280,49 +7870,28 @@ const deserializeAws_queryModifySnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidScheduleFault": case "com.amazonaws.redshift#InvalidScheduleFault": - response = { - ...(await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidScheduleFaultResponse(parsedOutput, context); case "SnapshotScheduleNotFoundFault": case "com.amazonaws.redshift#SnapshotScheduleNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context); case "SnapshotScheduleUpdateInProgressFault": case "com.amazonaws.redshift#SnapshotScheduleUpdateInProgressFault": - response = { - ...(await deserializeAws_querySnapshotScheduleUpdateInProgressFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleUpdateInProgressFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryModifyUsageLimitCommand = async ( @@ -10350,49 +7919,28 @@ const deserializeAws_queryModifyUsageLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidUsageLimitFault": case "com.amazonaws.redshift#InvalidUsageLimitFault": - response = { - ...(await deserializeAws_queryInvalidUsageLimitFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidUsageLimitFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); case "UsageLimitNotFoundFault": case "com.amazonaws.redshift#UsageLimitNotFoundFault": - response = { - ...(await deserializeAws_queryUsageLimitNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUsageLimitNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPauseClusterCommand = async ( @@ -10420,41 +7968,25 @@ const deserializeAws_queryPauseClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPurchaseReservedNodeOfferingCommand = async ( @@ -10482,57 +8014,31 @@ const deserializeAws_queryPurchaseReservedNodeOfferingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ReservedNodeAlreadyExistsFault": case "com.amazonaws.redshift#ReservedNodeAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeQuotaExceededFault": case "com.amazonaws.redshift#ReservedNodeQuotaExceededFault": - response = { - ...(await deserializeAws_queryReservedNodeQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeQuotaExceededFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRebootClusterCommand = async ( @@ -10560,41 +8066,25 @@ const deserializeAws_queryRebootClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRejectDataShareCommand = async ( @@ -10622,33 +8112,22 @@ const deserializeAws_queryRejectDataShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDataShareFault": case "com.amazonaws.redshift#InvalidDataShareFault": - response = { - ...(await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDataShareFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResetClusterParameterGroupCommand = async ( @@ -10676,41 +8155,25 @@ const deserializeAws_queryResetClusterParameterGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterParameterGroupStateFault": case "com.amazonaws.redshift#InvalidClusterParameterGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResizeClusterCommand = async ( @@ -10738,145 +8201,64 @@ const deserializeAws_queryResizeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.redshift#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidReservedNodeStateFault": case "com.amazonaws.redshift#InvalidReservedNodeStateFault": - response = { - ...(await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesPerClusterLimitExceededFault": case "com.amazonaws.redshift#NumberOfNodesPerClusterLimitExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesQuotaExceededFault": case "com.amazonaws.redshift#NumberOfNodesQuotaExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyExistsFault": case "com.amazonaws.redshift#ReservedNodeAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyMigratedFault": case "com.amazonaws.redshift#ReservedNodeAlreadyMigratedFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); case "UnsupportedOptionFault": case "com.amazonaws.redshift#UnsupportedOptionFault": - response = { - ...(await deserializeAws_queryUnsupportedOptionFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOptionFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreFromClusterSnapshotCommand = async ( @@ -10904,281 +8286,115 @@ const deserializeAws_queryRestoreFromClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessToSnapshotDeniedFault": case "com.amazonaws.redshift#AccessToSnapshotDeniedFault": - response = { - ...(await deserializeAws_queryAccessToSnapshotDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessToSnapshotDeniedFaultResponse(parsedOutput, context); case "ClusterAlreadyExistsFault": case "com.amazonaws.redshift#ClusterAlreadyExistsFault": - response = { - ...(await deserializeAws_queryClusterAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterAlreadyExistsFaultResponse(parsedOutput, context); case "ClusterParameterGroupNotFoundFault": case "com.amazonaws.redshift#ClusterParameterGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterParameterGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterQuotaExceededFault": case "com.amazonaws.redshift#ClusterQuotaExceededFault": - response = { - ...(await deserializeAws_queryClusterQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterQuotaExceededFaultResponse(parsedOutput, context); case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "ClusterSubnetGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "DependentServiceUnavailableFault": case "com.amazonaws.redshift#DependentServiceUnavailableFault": - response = { - ...(await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceUnavailableFaultResponse(parsedOutput, context); case "HsmClientCertificateNotFoundFault": case "com.amazonaws.redshift#HsmClientCertificateNotFoundFault": - response = { - ...(await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmClientCertificateNotFoundFaultResponse(parsedOutput, context); case "HsmConfigurationNotFoundFault": case "com.amazonaws.redshift#HsmConfigurationNotFoundFault": - response = { - ...(await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryHsmConfigurationNotFoundFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.redshift#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidClusterSubnetGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSubnetGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterTrackFault": case "com.amazonaws.redshift#InvalidClusterTrackFault": - response = { - ...(await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterTrackFaultResponse(parsedOutput, context); case "InvalidElasticIpFault": case "com.amazonaws.redshift#InvalidElasticIpFault": - response = { - ...(await deserializeAws_queryInvalidElasticIpFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidElasticIpFaultResponse(parsedOutput, context); case "InvalidReservedNodeStateFault": case "com.amazonaws.redshift#InvalidReservedNodeStateFault": - response = { - ...(await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidReservedNodeStateFaultResponse(parsedOutput, context); case "InvalidRestoreFault": case "com.amazonaws.redshift#InvalidRestoreFault": - response = { - ...(await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRestoreFaultResponse(parsedOutput, context); case "InvalidSubnet": case "com.amazonaws.redshift#InvalidSubnet": - response = { - ...(await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSubnetResponse(parsedOutput, context); case "InvalidTagFault": case "com.amazonaws.redshift#InvalidTagFault": - response = { - ...(await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTagFaultResponse(parsedOutput, context); case "InvalidVPCNetworkStateFault": case "com.amazonaws.redshift#InvalidVPCNetworkStateFault": - response = { - ...(await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidVPCNetworkStateFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.redshift#LimitExceededFault": - response = { - ...(await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesPerClusterLimitExceededFault": case "com.amazonaws.redshift#NumberOfNodesPerClusterLimitExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse(parsedOutput, context); case "NumberOfNodesQuotaExceededFault": case "com.amazonaws.redshift#NumberOfNodesQuotaExceededFault": - response = { - ...(await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyExistsFault": case "com.amazonaws.redshift#ReservedNodeAlreadyExistsFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyExistsFaultResponse(parsedOutput, context); case "ReservedNodeAlreadyMigratedFault": case "com.amazonaws.redshift#ReservedNodeAlreadyMigratedFault": - response = { - ...(await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse(parsedOutput, context); case "ReservedNodeNotFoundFault": case "com.amazonaws.redshift#ReservedNodeNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeNotFoundFaultResponse(parsedOutput, context); case "ReservedNodeOfferingNotFoundFault": case "com.amazonaws.redshift#ReservedNodeOfferingNotFoundFault": - response = { - ...(await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse(parsedOutput, context); case "SnapshotScheduleNotFoundFault": case "com.amazonaws.redshift#SnapshotScheduleNotFoundFault": - response = { - ...(await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySnapshotScheduleNotFoundFaultResponse(parsedOutput, context); case "TagLimitExceededFault": case "com.amazonaws.redshift#TagLimitExceededFault": - response = { - ...(await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededFaultResponse(parsedOutput, context); case "UnauthorizedOperation": case "com.amazonaws.redshift#UnauthorizedOperation": - response = { - ...(await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedOperationResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRestoreTableFromClusterSnapshotCommand = async ( @@ -11209,81 +8425,40 @@ const deserializeAws_queryRestoreTableFromClusterSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); case "InProgressTableRestoreQuotaExceededFault": case "com.amazonaws.redshift#InProgressTableRestoreQuotaExceededFault": - response = { - ...(await deserializeAws_queryInProgressTableRestoreQuotaExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInProgressTableRestoreQuotaExceededFaultResponse(parsedOutput, context); case "InvalidClusterSnapshotStateFault": case "com.amazonaws.redshift#InvalidClusterSnapshotStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSnapshotStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidTableRestoreArgumentFault": case "com.amazonaws.redshift#InvalidTableRestoreArgumentFault": - response = { - ...(await deserializeAws_queryInvalidTableRestoreArgumentFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTableRestoreArgumentFaultResponse(parsedOutput, context); case "UnsupportedOperationFault": case "com.amazonaws.redshift#UnsupportedOperationFault": - response = { - ...(await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryResumeClusterCommand = async ( @@ -11311,49 +8486,28 @@ const deserializeAws_queryResumeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "InsufficientClusterCapacityFault": case "com.amazonaws.redshift#InsufficientClusterCapacityFault": - response = { - ...(await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInsufficientClusterCapacityFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRevokeClusterSecurityGroupIngressCommand = async ( @@ -11384,49 +8538,28 @@ const deserializeAws_queryRevokeClusterSecurityGroupIngressCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationNotFoundFault": case "com.amazonaws.redshift#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "ClusterSecurityGroupNotFoundFault": case "com.amazonaws.redshift#ClusterSecurityGroupNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRevokeEndpointAccessCommand = async ( @@ -11454,81 +8587,40 @@ const deserializeAws_queryRevokeEndpointAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "EndpointAuthorizationNotFoundFault": case "com.amazonaws.redshift#EndpointAuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryEndpointAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointAuthorizationNotFoundFaultResponse(parsedOutput, context); case "EndpointNotFoundFault": case "com.amazonaws.redshift#EndpointNotFoundFault": - response = { - ...(await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointNotFoundFaultResponse(parsedOutput, context); case "InvalidAuthorizationStateFault": case "com.amazonaws.redshift#InvalidAuthorizationStateFault": - response = { - ...(await deserializeAws_queryInvalidAuthorizationStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthorizationStateFaultResponse(parsedOutput, context); case "InvalidClusterSecurityGroupStateFault": case "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); case "InvalidEndpointStateFault": case "com.amazonaws.redshift#InvalidEndpointStateFault": - response = { - ...(await deserializeAws_queryInvalidEndpointStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidEndpointStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRevokeSnapshotAccessCommand = async ( @@ -11556,49 +8648,28 @@ const deserializeAws_queryRevokeSnapshotAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessToSnapshotDeniedFault": case "com.amazonaws.redshift#AccessToSnapshotDeniedFault": - response = { - ...(await deserializeAws_queryAccessToSnapshotDeniedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccessToSnapshotDeniedFaultResponse(parsedOutput, context); case "AuthorizationNotFoundFault": case "com.amazonaws.redshift#AuthorizationNotFoundFault": - response = { - ...(await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationNotFoundFaultResponse(parsedOutput, context); case "ClusterSnapshotNotFoundFault": case "com.amazonaws.redshift#ClusterSnapshotNotFoundFault": - response = { - ...(await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterSnapshotNotFoundFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRotateEncryptionKeyCommand = async ( @@ -11626,49 +8697,28 @@ const deserializeAws_queryRotateEncryptionKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "DependentServiceRequestThrottlingFault": case "com.amazonaws.redshift#DependentServiceRequestThrottlingFault": - response = { - ...(await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryDependentServiceRequestThrottlingFaultResponse(parsedOutput, context); case "InvalidClusterStateFault": case "com.amazonaws.redshift#InvalidClusterStateFault": - response = { - ...(await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidClusterStateFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdatePartnerStatusCommand = async ( @@ -11696,49 +8746,28 @@ const deserializeAws_queryUpdatePartnerStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterNotFoundFault": case "com.amazonaws.redshift#ClusterNotFoundFault": - response = { - ...(await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryClusterNotFoundFaultResponse(parsedOutput, context); case "PartnerNotFoundFault": case "com.amazonaws.redshift#PartnerNotFoundFault": - response = { - ...(await deserializeAws_queryPartnerNotFoundFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPartnerNotFoundFaultResponse(parsedOutput, context); case "UnauthorizedPartnerIntegrationFault": case "com.amazonaws.redshift#UnauthorizedPartnerIntegrationFault": - response = { - ...(await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAccessToClusterDeniedFaultResponse = async ( @@ -11747,13 +8776,11 @@ const deserializeAws_queryAccessToClusterDeniedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAccessToClusterDeniedFault(body.Error, context); - const contents: AccessToClusterDeniedFault = { - name: "AccessToClusterDeniedFault", - $fault: "client", + const exception = new AccessToClusterDeniedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAccessToSnapshotDeniedFaultResponse = async ( @@ -11762,13 +8789,11 @@ const deserializeAws_queryAccessToSnapshotDeniedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAccessToSnapshotDeniedFault(body.Error, context); - const contents: AccessToSnapshotDeniedFault = { - name: "AccessToSnapshotDeniedFault", - $fault: "client", + const exception = new AccessToSnapshotDeniedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthenticationProfileAlreadyExistsFaultResponse = async ( @@ -11777,13 +8802,11 @@ const deserializeAws_queryAuthenticationProfileAlreadyExistsFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthenticationProfileAlreadyExistsFault(body.Error, context); - const contents: AuthenticationProfileAlreadyExistsFault = { - name: "AuthenticationProfileAlreadyExistsFault", - $fault: "client", + const exception = new AuthenticationProfileAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthenticationProfileNotFoundFaultResponse = async ( @@ -11792,13 +8815,11 @@ const deserializeAws_queryAuthenticationProfileNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthenticationProfileNotFoundFault(body.Error, context); - const contents: AuthenticationProfileNotFoundFault = { - name: "AuthenticationProfileNotFoundFault", - $fault: "client", + const exception = new AuthenticationProfileNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthenticationProfileQuotaExceededFaultResponse = async ( @@ -11807,13 +8828,11 @@ const deserializeAws_queryAuthenticationProfileQuotaExceededFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthenticationProfileQuotaExceededFault(body.Error, context); - const contents: AuthenticationProfileQuotaExceededFault = { - name: "AuthenticationProfileQuotaExceededFault", - $fault: "client", + const exception = new AuthenticationProfileQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationAlreadyExistsFaultResponse = async ( @@ -11822,13 +8841,11 @@ const deserializeAws_queryAuthorizationAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationAlreadyExistsFault(body.Error, context); - const contents: AuthorizationAlreadyExistsFault = { - name: "AuthorizationAlreadyExistsFault", - $fault: "client", + const exception = new AuthorizationAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( @@ -11837,13 +8854,11 @@ const deserializeAws_queryAuthorizationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationNotFoundFault(body.Error, context); - const contents: AuthorizationNotFoundFault = { - name: "AuthorizationNotFoundFault", - $fault: "client", + const exception = new AuthorizationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAuthorizationQuotaExceededFaultResponse = async ( @@ -11852,13 +8867,11 @@ const deserializeAws_queryAuthorizationQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationQuotaExceededFault(body.Error, context); - const contents: AuthorizationQuotaExceededFault = { - name: "AuthorizationQuotaExceededFault", - $fault: "client", + const exception = new AuthorizationQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBatchDeleteRequestSizeExceededFaultResponse = async ( @@ -11867,13 +8880,11 @@ const deserializeAws_queryBatchDeleteRequestSizeExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBatchDeleteRequestSizeExceededFault(body.Error, context); - const contents: BatchDeleteRequestSizeExceededFault = { - name: "BatchDeleteRequestSizeExceededFault", - $fault: "client", + const exception = new BatchDeleteRequestSizeExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBatchModifyClusterSnapshotsLimitExceededFaultResponse = async ( @@ -11882,13 +8893,11 @@ const deserializeAws_queryBatchModifyClusterSnapshotsLimitExceededFaultResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBatchModifyClusterSnapshotsLimitExceededFault(body.Error, context); - const contents: BatchModifyClusterSnapshotsLimitExceededFault = { - name: "BatchModifyClusterSnapshotsLimitExceededFault", - $fault: "client", + const exception = new BatchModifyClusterSnapshotsLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBucketNotFoundFaultResponse = async ( @@ -11897,13 +8906,11 @@ const deserializeAws_queryBucketNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBucketNotFoundFault(body.Error, context); - const contents: BucketNotFoundFault = { - name: "BucketNotFoundFault", - $fault: "client", + const exception = new BucketNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterAlreadyExistsFaultResponse = async ( @@ -11912,13 +8919,11 @@ const deserializeAws_queryClusterAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterAlreadyExistsFault(body.Error, context); - const contents: ClusterAlreadyExistsFault = { - name: "ClusterAlreadyExistsFault", - $fault: "client", + const exception = new ClusterAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterNotFoundFaultResponse = async ( @@ -11927,13 +8932,11 @@ const deserializeAws_queryClusterNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterNotFoundFault(body.Error, context); - const contents: ClusterNotFoundFault = { - name: "ClusterNotFoundFault", - $fault: "client", + const exception = new ClusterNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterOnLatestRevisionFaultResponse = async ( @@ -11942,13 +8945,11 @@ const deserializeAws_queryClusterOnLatestRevisionFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterOnLatestRevisionFault(body.Error, context); - const contents: ClusterOnLatestRevisionFault = { - name: "ClusterOnLatestRevisionFault", - $fault: "client", + const exception = new ClusterOnLatestRevisionFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterParameterGroupAlreadyExistsFaultResponse = async ( @@ -11957,13 +8958,11 @@ const deserializeAws_queryClusterParameterGroupAlreadyExistsFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterParameterGroupAlreadyExistsFault(body.Error, context); - const contents: ClusterParameterGroupAlreadyExistsFault = { - name: "ClusterParameterGroupAlreadyExistsFault", - $fault: "client", + const exception = new ClusterParameterGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterParameterGroupNotFoundFaultResponse = async ( @@ -11972,13 +8971,11 @@ const deserializeAws_queryClusterParameterGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterParameterGroupNotFoundFault(body.Error, context); - const contents: ClusterParameterGroupNotFoundFault = { - name: "ClusterParameterGroupNotFoundFault", - $fault: "client", + const exception = new ClusterParameterGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterParameterGroupQuotaExceededFaultResponse = async ( @@ -11987,13 +8984,11 @@ const deserializeAws_queryClusterParameterGroupQuotaExceededFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterParameterGroupQuotaExceededFault(body.Error, context); - const contents: ClusterParameterGroupQuotaExceededFault = { - name: "ClusterParameterGroupQuotaExceededFault", - $fault: "client", + const exception = new ClusterParameterGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterQuotaExceededFaultResponse = async ( @@ -12002,13 +8997,11 @@ const deserializeAws_queryClusterQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterQuotaExceededFault(body.Error, context); - const contents: ClusterQuotaExceededFault = { - name: "ClusterQuotaExceededFault", - $fault: "client", + const exception = new ClusterQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSecurityGroupAlreadyExistsFaultResponse = async ( @@ -12017,13 +9010,11 @@ const deserializeAws_queryClusterSecurityGroupAlreadyExistsFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSecurityGroupAlreadyExistsFault(body.Error, context); - const contents: ClusterSecurityGroupAlreadyExistsFault = { - name: "ClusterSecurityGroupAlreadyExistsFault", - $fault: "client", + const exception = new ClusterSecurityGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse = async ( @@ -12032,13 +9023,11 @@ const deserializeAws_queryClusterSecurityGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSecurityGroupNotFoundFault(body.Error, context); - const contents: ClusterSecurityGroupNotFoundFault = { - name: "ClusterSecurityGroupNotFoundFault", - $fault: "client", + const exception = new ClusterSecurityGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSecurityGroupQuotaExceededFaultResponse = async ( @@ -12047,13 +9036,11 @@ const deserializeAws_queryClusterSecurityGroupQuotaExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSecurityGroupQuotaExceededFault(body.Error, context); - const contents: ClusterSecurityGroupQuotaExceededFault = { - name: "ClusterSecurityGroupQuotaExceededFault", - $fault: "client", + const exception = new ClusterSecurityGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse = async ( @@ -12062,13 +9049,11 @@ const deserializeAws_queryClusterSnapshotAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSnapshotAlreadyExistsFault(body.Error, context); - const contents: ClusterSnapshotAlreadyExistsFault = { - name: "ClusterSnapshotAlreadyExistsFault", - $fault: "client", + const exception = new ClusterSnapshotAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSnapshotNotFoundFaultResponse = async ( @@ -12077,13 +9062,11 @@ const deserializeAws_queryClusterSnapshotNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSnapshotNotFoundFault(body.Error, context); - const contents: ClusterSnapshotNotFoundFault = { - name: "ClusterSnapshotNotFoundFault", - $fault: "client", + const exception = new ClusterSnapshotNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse = async ( @@ -12092,13 +9075,11 @@ const deserializeAws_queryClusterSnapshotQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSnapshotQuotaExceededFault(body.Error, context); - const contents: ClusterSnapshotQuotaExceededFault = { - name: "ClusterSnapshotQuotaExceededFault", - $fault: "client", + const exception = new ClusterSnapshotQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSubnetGroupAlreadyExistsFaultResponse = async ( @@ -12107,13 +9088,11 @@ const deserializeAws_queryClusterSubnetGroupAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSubnetGroupAlreadyExistsFault(body.Error, context); - const contents: ClusterSubnetGroupAlreadyExistsFault = { - name: "ClusterSubnetGroupAlreadyExistsFault", - $fault: "client", + const exception = new ClusterSubnetGroupAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse = async ( @@ -12122,13 +9101,11 @@ const deserializeAws_queryClusterSubnetGroupNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSubnetGroupNotFoundFault(body.Error, context); - const contents: ClusterSubnetGroupNotFoundFault = { - name: "ClusterSubnetGroupNotFoundFault", - $fault: "client", + const exception = new ClusterSubnetGroupNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSubnetGroupQuotaExceededFaultResponse = async ( @@ -12137,13 +9114,11 @@ const deserializeAws_queryClusterSubnetGroupQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSubnetGroupQuotaExceededFault(body.Error, context); - const contents: ClusterSubnetGroupQuotaExceededFault = { - name: "ClusterSubnetGroupQuotaExceededFault", - $fault: "client", + const exception = new ClusterSubnetGroupQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryClusterSubnetQuotaExceededFaultResponse = async ( @@ -12152,13 +9127,11 @@ const deserializeAws_queryClusterSubnetQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryClusterSubnetQuotaExceededFault(body.Error, context); - const contents: ClusterSubnetQuotaExceededFault = { - name: "ClusterSubnetQuotaExceededFault", - $fault: "client", + const exception = new ClusterSubnetQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCopyToRegionDisabledFaultResponse = async ( @@ -12167,13 +9140,11 @@ const deserializeAws_queryCopyToRegionDisabledFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCopyToRegionDisabledFault(body.Error, context); - const contents: CopyToRegionDisabledFault = { - name: "CopyToRegionDisabledFault", - $fault: "client", + const exception = new CopyToRegionDisabledFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDependentServiceRequestThrottlingFaultResponse = async ( @@ -12182,13 +9153,11 @@ const deserializeAws_queryDependentServiceRequestThrottlingFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDependentServiceRequestThrottlingFault(body.Error, context); - const contents: DependentServiceRequestThrottlingFault = { - name: "DependentServiceRequestThrottlingFault", - $fault: "client", + const exception = new DependentServiceRequestThrottlingFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryDependentServiceUnavailableFaultResponse = async ( @@ -12197,13 +9166,11 @@ const deserializeAws_queryDependentServiceUnavailableFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryDependentServiceUnavailableFault(body.Error, context); - const contents: DependentServiceUnavailableFault = { - name: "DependentServiceUnavailableFault", - $fault: "client", + const exception = new DependentServiceUnavailableFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointAlreadyExistsFaultResponse = async ( @@ -12212,13 +9179,11 @@ const deserializeAws_queryEndpointAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointAlreadyExistsFault(body.Error, context); - const contents: EndpointAlreadyExistsFault = { - name: "EndpointAlreadyExistsFault", - $fault: "client", + const exception = new EndpointAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointAuthorizationAlreadyExistsFaultResponse = async ( @@ -12227,13 +9192,11 @@ const deserializeAws_queryEndpointAuthorizationAlreadyExistsFaultResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointAuthorizationAlreadyExistsFault(body.Error, context); - const contents: EndpointAuthorizationAlreadyExistsFault = { - name: "EndpointAuthorizationAlreadyExistsFault", - $fault: "client", + const exception = new EndpointAuthorizationAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointAuthorizationNotFoundFaultResponse = async ( @@ -12242,13 +9205,11 @@ const deserializeAws_queryEndpointAuthorizationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointAuthorizationNotFoundFault(body.Error, context); - const contents: EndpointAuthorizationNotFoundFault = { - name: "EndpointAuthorizationNotFoundFault", - $fault: "client", + const exception = new EndpointAuthorizationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointAuthorizationsPerClusterLimitExceededFaultResponse = async ( @@ -12257,13 +9218,11 @@ const deserializeAws_queryEndpointAuthorizationsPerClusterLimitExceededFaultResp ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointAuthorizationsPerClusterLimitExceededFault(body.Error, context); - const contents: EndpointAuthorizationsPerClusterLimitExceededFault = { - name: "EndpointAuthorizationsPerClusterLimitExceededFault", - $fault: "client", + const exception = new EndpointAuthorizationsPerClusterLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointNotFoundFaultResponse = async ( @@ -12272,13 +9231,11 @@ const deserializeAws_queryEndpointNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointNotFoundFault(body.Error, context); - const contents: EndpointNotFoundFault = { - name: "EndpointNotFoundFault", - $fault: "client", + const exception = new EndpointNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointsPerAuthorizationLimitExceededFaultResponse = async ( @@ -12287,13 +9244,11 @@ const deserializeAws_queryEndpointsPerAuthorizationLimitExceededFaultResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointsPerAuthorizationLimitExceededFault(body.Error, context); - const contents: EndpointsPerAuthorizationLimitExceededFault = { - name: "EndpointsPerAuthorizationLimitExceededFault", - $fault: "client", + const exception = new EndpointsPerAuthorizationLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointsPerClusterLimitExceededFaultResponse = async ( @@ -12302,13 +9257,11 @@ const deserializeAws_queryEndpointsPerClusterLimitExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointsPerClusterLimitExceededFault(body.Error, context); - const contents: EndpointsPerClusterLimitExceededFault = { - name: "EndpointsPerClusterLimitExceededFault", - $fault: "client", + const exception = new EndpointsPerClusterLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( @@ -12317,13 +9270,11 @@ const deserializeAws_queryEventSubscriptionQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEventSubscriptionQuotaExceededFault(body.Error, context); - const contents: EventSubscriptionQuotaExceededFault = { - name: "EventSubscriptionQuotaExceededFault", - $fault: "client", + const exception = new EventSubscriptionQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHsmClientCertificateAlreadyExistsFaultResponse = async ( @@ -12332,13 +9283,11 @@ const deserializeAws_queryHsmClientCertificateAlreadyExistsFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHsmClientCertificateAlreadyExistsFault(body.Error, context); - const contents: HsmClientCertificateAlreadyExistsFault = { - name: "HsmClientCertificateAlreadyExistsFault", - $fault: "client", + const exception = new HsmClientCertificateAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHsmClientCertificateNotFoundFaultResponse = async ( @@ -12347,13 +9296,11 @@ const deserializeAws_queryHsmClientCertificateNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHsmClientCertificateNotFoundFault(body.Error, context); - const contents: HsmClientCertificateNotFoundFault = { - name: "HsmClientCertificateNotFoundFault", - $fault: "client", + const exception = new HsmClientCertificateNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHsmClientCertificateQuotaExceededFaultResponse = async ( @@ -12362,13 +9309,11 @@ const deserializeAws_queryHsmClientCertificateQuotaExceededFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHsmClientCertificateQuotaExceededFault(body.Error, context); - const contents: HsmClientCertificateQuotaExceededFault = { - name: "HsmClientCertificateQuotaExceededFault", - $fault: "client", + const exception = new HsmClientCertificateQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHsmConfigurationAlreadyExistsFaultResponse = async ( @@ -12377,13 +9322,11 @@ const deserializeAws_queryHsmConfigurationAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHsmConfigurationAlreadyExistsFault(body.Error, context); - const contents: HsmConfigurationAlreadyExistsFault = { - name: "HsmConfigurationAlreadyExistsFault", - $fault: "client", + const exception = new HsmConfigurationAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHsmConfigurationNotFoundFaultResponse = async ( @@ -12392,13 +9335,11 @@ const deserializeAws_queryHsmConfigurationNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHsmConfigurationNotFoundFault(body.Error, context); - const contents: HsmConfigurationNotFoundFault = { - name: "HsmConfigurationNotFoundFault", - $fault: "client", + const exception = new HsmConfigurationNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryHsmConfigurationQuotaExceededFaultResponse = async ( @@ -12407,13 +9348,11 @@ const deserializeAws_queryHsmConfigurationQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryHsmConfigurationQuotaExceededFault(body.Error, context); - const contents: HsmConfigurationQuotaExceededFault = { - name: "HsmConfigurationQuotaExceededFault", - $fault: "client", + const exception = new HsmConfigurationQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryIncompatibleOrderableOptionsResponse = async ( @@ -12422,13 +9361,11 @@ const deserializeAws_queryIncompatibleOrderableOptionsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryIncompatibleOrderableOptions(body.Error, context); - const contents: IncompatibleOrderableOptions = { - name: "IncompatibleOrderableOptions", - $fault: "client", + const exception = new IncompatibleOrderableOptions({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInProgressTableRestoreQuotaExceededFaultResponse = async ( @@ -12437,13 +9374,11 @@ const deserializeAws_queryInProgressTableRestoreQuotaExceededFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInProgressTableRestoreQuotaExceededFault(body.Error, context); - const contents: InProgressTableRestoreQuotaExceededFault = { - name: "InProgressTableRestoreQuotaExceededFault", - $fault: "client", + const exception = new InProgressTableRestoreQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientClusterCapacityFaultResponse = async ( @@ -12452,13 +9387,11 @@ const deserializeAws_queryInsufficientClusterCapacityFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientClusterCapacityFault(body.Error, context); - const contents: InsufficientClusterCapacityFault = { - name: "InsufficientClusterCapacityFault", - $fault: "client", + const exception = new InsufficientClusterCapacityFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInsufficientS3BucketPolicyFaultResponse = async ( @@ -12467,13 +9400,11 @@ const deserializeAws_queryInsufficientS3BucketPolicyFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInsufficientS3BucketPolicyFault(body.Error, context); - const contents: InsufficientS3BucketPolicyFault = { - name: "InsufficientS3BucketPolicyFault", - $fault: "client", + const exception = new InsufficientS3BucketPolicyFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse = async ( @@ -12482,13 +9413,11 @@ const deserializeAws_queryInvalidAuthenticationProfileRequestFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidAuthenticationProfileRequestFault(body.Error, context); - const contents: InvalidAuthenticationProfileRequestFault = { - name: "InvalidAuthenticationProfileRequestFault", - $fault: "client", + const exception = new InvalidAuthenticationProfileRequestFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidAuthorizationStateFaultResponse = async ( @@ -12497,13 +9426,11 @@ const deserializeAws_queryInvalidAuthorizationStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidAuthorizationStateFault(body.Error, context); - const contents: InvalidAuthorizationStateFault = { - name: "InvalidAuthorizationStateFault", - $fault: "client", + const exception = new InvalidAuthorizationStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse = async ( @@ -12512,13 +9439,11 @@ const deserializeAws_queryInvalidClusterParameterGroupStateFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterParameterGroupStateFault(body.Error, context); - const contents: InvalidClusterParameterGroupStateFault = { - name: "InvalidClusterParameterGroupStateFault", - $fault: "client", + const exception = new InvalidClusterParameterGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse = async ( @@ -12527,13 +9452,11 @@ const deserializeAws_queryInvalidClusterSecurityGroupStateFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterSecurityGroupStateFault(body.Error, context); - const contents: InvalidClusterSecurityGroupStateFault = { - name: "InvalidClusterSecurityGroupStateFault", - $fault: "client", + const exception = new InvalidClusterSecurityGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterSnapshotScheduleStateFaultResponse = async ( @@ -12542,13 +9465,11 @@ const deserializeAws_queryInvalidClusterSnapshotScheduleStateFaultResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterSnapshotScheduleStateFault(body.Error, context); - const contents: InvalidClusterSnapshotScheduleStateFault = { - name: "InvalidClusterSnapshotScheduleStateFault", - $fault: "client", + const exception = new InvalidClusterSnapshotScheduleStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterSnapshotStateFaultResponse = async ( @@ -12557,13 +9478,11 @@ const deserializeAws_queryInvalidClusterSnapshotStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterSnapshotStateFault(body.Error, context); - const contents: InvalidClusterSnapshotStateFault = { - name: "InvalidClusterSnapshotStateFault", - $fault: "client", + const exception = new InvalidClusterSnapshotStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterStateFaultResponse = async ( @@ -12572,13 +9491,11 @@ const deserializeAws_queryInvalidClusterStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterStateFault(body.Error, context); - const contents: InvalidClusterStateFault = { - name: "InvalidClusterStateFault", - $fault: "client", + const exception = new InvalidClusterStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse = async ( @@ -12587,13 +9504,11 @@ const deserializeAws_queryInvalidClusterSubnetGroupStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterSubnetGroupStateFault(body.Error, context); - const contents: InvalidClusterSubnetGroupStateFault = { - name: "InvalidClusterSubnetGroupStateFault", - $fault: "client", + const exception = new InvalidClusterSubnetGroupStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterSubnetStateFaultResponse = async ( @@ -12602,13 +9517,11 @@ const deserializeAws_queryInvalidClusterSubnetStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterSubnetStateFault(body.Error, context); - const contents: InvalidClusterSubnetStateFault = { - name: "InvalidClusterSubnetStateFault", - $fault: "client", + const exception = new InvalidClusterSubnetStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidClusterTrackFaultResponse = async ( @@ -12617,13 +9530,11 @@ const deserializeAws_queryInvalidClusterTrackFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidClusterTrackFault(body.Error, context); - const contents: InvalidClusterTrackFault = { - name: "InvalidClusterTrackFault", - $fault: "client", + const exception = new InvalidClusterTrackFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDataShareFaultResponse = async ( @@ -12632,13 +9543,11 @@ const deserializeAws_queryInvalidDataShareFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDataShareFault(body.Error, context); - const contents: InvalidDataShareFault = { - name: "InvalidDataShareFault", - $fault: "client", + const exception = new InvalidDataShareFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidElasticIpFaultResponse = async ( @@ -12647,13 +9556,11 @@ const deserializeAws_queryInvalidElasticIpFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidElasticIpFault(body.Error, context); - const contents: InvalidElasticIpFault = { - name: "InvalidElasticIpFault", - $fault: "client", + const exception = new InvalidElasticIpFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidEndpointStateFaultResponse = async ( @@ -12662,13 +9569,11 @@ const deserializeAws_queryInvalidEndpointStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidEndpointStateFault(body.Error, context); - const contents: InvalidEndpointStateFault = { - name: "InvalidEndpointStateFault", - $fault: "client", + const exception = new InvalidEndpointStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidHsmClientCertificateStateFaultResponse = async ( @@ -12677,13 +9582,11 @@ const deserializeAws_queryInvalidHsmClientCertificateStateFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidHsmClientCertificateStateFault(body.Error, context); - const contents: InvalidHsmClientCertificateStateFault = { - name: "InvalidHsmClientCertificateStateFault", - $fault: "client", + const exception = new InvalidHsmClientCertificateStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidHsmConfigurationStateFaultResponse = async ( @@ -12692,13 +9595,11 @@ const deserializeAws_queryInvalidHsmConfigurationStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidHsmConfigurationStateFault(body.Error, context); - const contents: InvalidHsmConfigurationStateFault = { - name: "InvalidHsmConfigurationStateFault", - $fault: "client", + const exception = new InvalidHsmConfigurationStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidNamespaceFaultResponse = async ( @@ -12707,13 +9608,11 @@ const deserializeAws_queryInvalidNamespaceFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidNamespaceFault(body.Error, context); - const contents: InvalidNamespaceFault = { - name: "InvalidNamespaceFault", - $fault: "client", + const exception = new InvalidNamespaceFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidReservedNodeStateFaultResponse = async ( @@ -12722,13 +9621,11 @@ const deserializeAws_queryInvalidReservedNodeStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidReservedNodeStateFault(body.Error, context); - const contents: InvalidReservedNodeStateFault = { - name: "InvalidReservedNodeStateFault", - $fault: "client", + const exception = new InvalidReservedNodeStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRestoreFaultResponse = async ( @@ -12737,13 +9634,11 @@ const deserializeAws_queryInvalidRestoreFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRestoreFault(body.Error, context); - const contents: InvalidRestoreFault = { - name: "InvalidRestoreFault", - $fault: "client", + const exception = new InvalidRestoreFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRetentionPeriodFaultResponse = async ( @@ -12752,13 +9647,11 @@ const deserializeAws_queryInvalidRetentionPeriodFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRetentionPeriodFault(body.Error, context); - const contents: InvalidRetentionPeriodFault = { - name: "InvalidRetentionPeriodFault", - $fault: "client", + const exception = new InvalidRetentionPeriodFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidS3BucketNameFaultResponse = async ( @@ -12767,13 +9660,11 @@ const deserializeAws_queryInvalidS3BucketNameFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidS3BucketNameFault(body.Error, context); - const contents: InvalidS3BucketNameFault = { - name: "InvalidS3BucketNameFault", - $fault: "client", + const exception = new InvalidS3BucketNameFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidS3KeyPrefixFaultResponse = async ( @@ -12782,13 +9673,11 @@ const deserializeAws_queryInvalidS3KeyPrefixFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidS3KeyPrefixFault(body.Error, context); - const contents: InvalidS3KeyPrefixFault = { - name: "InvalidS3KeyPrefixFault", - $fault: "client", + const exception = new InvalidS3KeyPrefixFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidScheduledActionFaultResponse = async ( @@ -12797,13 +9686,11 @@ const deserializeAws_queryInvalidScheduledActionFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidScheduledActionFault(body.Error, context); - const contents: InvalidScheduledActionFault = { - name: "InvalidScheduledActionFault", - $fault: "client", + const exception = new InvalidScheduledActionFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidScheduleFaultResponse = async ( @@ -12812,13 +9699,11 @@ const deserializeAws_queryInvalidScheduleFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidScheduleFault(body.Error, context); - const contents: InvalidScheduleFault = { - name: "InvalidScheduleFault", - $fault: "client", + const exception = new InvalidScheduleFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSnapshotCopyGrantStateFaultResponse = async ( @@ -12827,13 +9712,11 @@ const deserializeAws_queryInvalidSnapshotCopyGrantStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSnapshotCopyGrantStateFault(body.Error, context); - const contents: InvalidSnapshotCopyGrantStateFault = { - name: "InvalidSnapshotCopyGrantStateFault", - $fault: "client", + const exception = new InvalidSnapshotCopyGrantStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubnetResponse = async ( @@ -12842,13 +9725,11 @@ const deserializeAws_queryInvalidSubnetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubnet(body.Error, context); - const contents: InvalidSubnet = { - name: "InvalidSubnet", - $fault: "client", + const exception = new InvalidSubnet({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSubscriptionStateFaultResponse = async ( @@ -12857,13 +9738,11 @@ const deserializeAws_queryInvalidSubscriptionStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSubscriptionStateFault(body.Error, context); - const contents: InvalidSubscriptionStateFault = { - name: "InvalidSubscriptionStateFault", - $fault: "client", + const exception = new InvalidSubscriptionStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidTableRestoreArgumentFaultResponse = async ( @@ -12872,13 +9751,11 @@ const deserializeAws_queryInvalidTableRestoreArgumentFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidTableRestoreArgumentFault(body.Error, context); - const contents: InvalidTableRestoreArgumentFault = { - name: "InvalidTableRestoreArgumentFault", - $fault: "client", + const exception = new InvalidTableRestoreArgumentFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidTagFaultResponse = async ( @@ -12887,13 +9764,11 @@ const deserializeAws_queryInvalidTagFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidTagFault(body.Error, context); - const contents: InvalidTagFault = { - name: "InvalidTagFault", - $fault: "client", + const exception = new InvalidTagFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidUsageLimitFaultResponse = async ( @@ -12902,13 +9777,11 @@ const deserializeAws_queryInvalidUsageLimitFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidUsageLimitFault(body.Error, context); - const contents: InvalidUsageLimitFault = { - name: "InvalidUsageLimitFault", - $fault: "client", + const exception = new InvalidUsageLimitFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( @@ -12917,13 +9790,11 @@ const deserializeAws_queryInvalidVPCNetworkStateFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidVPCNetworkStateFault(body.Error, context); - const contents: InvalidVPCNetworkStateFault = { - name: "InvalidVPCNetworkStateFault", - $fault: "client", + const exception = new InvalidVPCNetworkStateFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededFaultResponse = async ( @@ -12932,13 +9803,11 @@ const deserializeAws_queryLimitExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededFault(body.Error, context); - const contents: LimitExceededFault = { - name: "LimitExceededFault", - $fault: "client", + const exception = new LimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse = async ( @@ -12947,13 +9816,11 @@ const deserializeAws_queryNumberOfNodesPerClusterLimitExceededFaultResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNumberOfNodesPerClusterLimitExceededFault(body.Error, context); - const contents: NumberOfNodesPerClusterLimitExceededFault = { - name: "NumberOfNodesPerClusterLimitExceededFault", - $fault: "client", + const exception = new NumberOfNodesPerClusterLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse = async ( @@ -12962,13 +9829,11 @@ const deserializeAws_queryNumberOfNodesQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNumberOfNodesQuotaExceededFault(body.Error, context); - const contents: NumberOfNodesQuotaExceededFault = { - name: "NumberOfNodesQuotaExceededFault", - $fault: "client", + const exception = new NumberOfNodesQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPartnerNotFoundFaultResponse = async ( @@ -12977,13 +9842,11 @@ const deserializeAws_queryPartnerNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPartnerNotFoundFault(body.Error, context); - const contents: PartnerNotFoundFault = { - name: "PartnerNotFoundFault", - $fault: "client", + const exception = new PartnerNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedNodeAlreadyExistsFaultResponse = async ( @@ -12992,13 +9855,11 @@ const deserializeAws_queryReservedNodeAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedNodeAlreadyExistsFault(body.Error, context); - const contents: ReservedNodeAlreadyExistsFault = { - name: "ReservedNodeAlreadyExistsFault", - $fault: "client", + const exception = new ReservedNodeAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse = async ( @@ -13007,13 +9868,11 @@ const deserializeAws_queryReservedNodeAlreadyMigratedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedNodeAlreadyMigratedFault(body.Error, context); - const contents: ReservedNodeAlreadyMigratedFault = { - name: "ReservedNodeAlreadyMigratedFault", - $fault: "client", + const exception = new ReservedNodeAlreadyMigratedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedNodeExchangeNotFoundFaultResponse = async ( @@ -13022,13 +9881,11 @@ const deserializeAws_queryReservedNodeExchangeNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedNodeExchangeNotFoundFault(body.Error, context); - const contents: ReservedNodeExchangeNotFoundFault = { - name: "ReservedNodeExchangeNotFoundFault", - $fault: "client", + const exception = new ReservedNodeExchangeNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedNodeNotFoundFaultResponse = async ( @@ -13037,13 +9894,11 @@ const deserializeAws_queryReservedNodeNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedNodeNotFoundFault(body.Error, context); - const contents: ReservedNodeNotFoundFault = { - name: "ReservedNodeNotFoundFault", - $fault: "client", + const exception = new ReservedNodeNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse = async ( @@ -13052,13 +9907,11 @@ const deserializeAws_queryReservedNodeOfferingNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedNodeOfferingNotFoundFault(body.Error, context); - const contents: ReservedNodeOfferingNotFoundFault = { - name: "ReservedNodeOfferingNotFoundFault", - $fault: "client", + const exception = new ReservedNodeOfferingNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReservedNodeQuotaExceededFaultResponse = async ( @@ -13067,13 +9920,11 @@ const deserializeAws_queryReservedNodeQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReservedNodeQuotaExceededFault(body.Error, context); - const contents: ReservedNodeQuotaExceededFault = { - name: "ReservedNodeQuotaExceededFault", - $fault: "client", + const exception = new ReservedNodeQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResizeNotFoundFaultResponse = async ( @@ -13082,13 +9933,11 @@ const deserializeAws_queryResizeNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResizeNotFoundFault(body.Error, context); - const contents: ResizeNotFoundFault = { - name: "ResizeNotFoundFault", - $fault: "client", + const exception = new ResizeNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundFaultResponse = async ( @@ -13097,13 +9946,11 @@ const deserializeAws_queryResourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundFault(body.Error, context); - const contents: ResourceNotFoundFault = { - name: "ResourceNotFoundFault", - $fault: "client", + const exception = new ResourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryScheduledActionAlreadyExistsFaultResponse = async ( @@ -13112,13 +9959,11 @@ const deserializeAws_queryScheduledActionAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryScheduledActionAlreadyExistsFault(body.Error, context); - const contents: ScheduledActionAlreadyExistsFault = { - name: "ScheduledActionAlreadyExistsFault", - $fault: "client", + const exception = new ScheduledActionAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryScheduledActionNotFoundFaultResponse = async ( @@ -13127,13 +9972,11 @@ const deserializeAws_queryScheduledActionNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryScheduledActionNotFoundFault(body.Error, context); - const contents: ScheduledActionNotFoundFault = { - name: "ScheduledActionNotFoundFault", - $fault: "client", + const exception = new ScheduledActionNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryScheduledActionQuotaExceededFaultResponse = async ( @@ -13142,13 +9985,11 @@ const deserializeAws_queryScheduledActionQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryScheduledActionQuotaExceededFault(body.Error, context); - const contents: ScheduledActionQuotaExceededFault = { - name: "ScheduledActionQuotaExceededFault", - $fault: "client", + const exception = new ScheduledActionQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryScheduledActionTypeUnsupportedFaultResponse = async ( @@ -13157,13 +9998,11 @@ const deserializeAws_queryScheduledActionTypeUnsupportedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryScheduledActionTypeUnsupportedFault(body.Error, context); - const contents: ScheduledActionTypeUnsupportedFault = { - name: "ScheduledActionTypeUnsupportedFault", - $fault: "client", + const exception = new ScheduledActionTypeUnsupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryScheduleDefinitionTypeUnsupportedFaultResponse = async ( @@ -13172,13 +10011,11 @@ const deserializeAws_queryScheduleDefinitionTypeUnsupportedFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryScheduleDefinitionTypeUnsupportedFault(body.Error, context); - const contents: ScheduleDefinitionTypeUnsupportedFault = { - name: "ScheduleDefinitionTypeUnsupportedFault", - $fault: "client", + const exception = new ScheduleDefinitionTypeUnsupportedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotCopyAlreadyDisabledFaultResponse = async ( @@ -13187,13 +10024,11 @@ const deserializeAws_querySnapshotCopyAlreadyDisabledFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotCopyAlreadyDisabledFault(body.Error, context); - const contents: SnapshotCopyAlreadyDisabledFault = { - name: "SnapshotCopyAlreadyDisabledFault", - $fault: "client", + const exception = new SnapshotCopyAlreadyDisabledFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotCopyAlreadyEnabledFaultResponse = async ( @@ -13202,13 +10037,11 @@ const deserializeAws_querySnapshotCopyAlreadyEnabledFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotCopyAlreadyEnabledFault(body.Error, context); - const contents: SnapshotCopyAlreadyEnabledFault = { - name: "SnapshotCopyAlreadyEnabledFault", - $fault: "client", + const exception = new SnapshotCopyAlreadyEnabledFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotCopyDisabledFaultResponse = async ( @@ -13217,13 +10050,11 @@ const deserializeAws_querySnapshotCopyDisabledFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotCopyDisabledFault(body.Error, context); - const contents: SnapshotCopyDisabledFault = { - name: "SnapshotCopyDisabledFault", - $fault: "client", + const exception = new SnapshotCopyDisabledFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotCopyGrantAlreadyExistsFaultResponse = async ( @@ -13232,13 +10063,11 @@ const deserializeAws_querySnapshotCopyGrantAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotCopyGrantAlreadyExistsFault(body.Error, context); - const contents: SnapshotCopyGrantAlreadyExistsFault = { - name: "SnapshotCopyGrantAlreadyExistsFault", - $fault: "client", + const exception = new SnapshotCopyGrantAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse = async ( @@ -13247,13 +10076,11 @@ const deserializeAws_querySnapshotCopyGrantNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotCopyGrantNotFoundFault(body.Error, context); - const contents: SnapshotCopyGrantNotFoundFault = { - name: "SnapshotCopyGrantNotFoundFault", - $fault: "client", + const exception = new SnapshotCopyGrantNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotCopyGrantQuotaExceededFaultResponse = async ( @@ -13262,13 +10089,11 @@ const deserializeAws_querySnapshotCopyGrantQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotCopyGrantQuotaExceededFault(body.Error, context); - const contents: SnapshotCopyGrantQuotaExceededFault = { - name: "SnapshotCopyGrantQuotaExceededFault", - $fault: "client", + const exception = new SnapshotCopyGrantQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotScheduleAlreadyExistsFaultResponse = async ( @@ -13277,13 +10102,11 @@ const deserializeAws_querySnapshotScheduleAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotScheduleAlreadyExistsFault(body.Error, context); - const contents: SnapshotScheduleAlreadyExistsFault = { - name: "SnapshotScheduleAlreadyExistsFault", - $fault: "client", + const exception = new SnapshotScheduleAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotScheduleNotFoundFaultResponse = async ( @@ -13292,13 +10115,11 @@ const deserializeAws_querySnapshotScheduleNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotScheduleNotFoundFault(body.Error, context); - const contents: SnapshotScheduleNotFoundFault = { - name: "SnapshotScheduleNotFoundFault", - $fault: "client", + const exception = new SnapshotScheduleNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotScheduleQuotaExceededFaultResponse = async ( @@ -13307,13 +10128,11 @@ const deserializeAws_querySnapshotScheduleQuotaExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotScheduleQuotaExceededFault(body.Error, context); - const contents: SnapshotScheduleQuotaExceededFault = { - name: "SnapshotScheduleQuotaExceededFault", - $fault: "client", + const exception = new SnapshotScheduleQuotaExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySnapshotScheduleUpdateInProgressFaultResponse = async ( @@ -13322,13 +10141,11 @@ const deserializeAws_querySnapshotScheduleUpdateInProgressFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySnapshotScheduleUpdateInProgressFault(body.Error, context); - const contents: SnapshotScheduleUpdateInProgressFault = { - name: "SnapshotScheduleUpdateInProgressFault", - $fault: "client", + const exception = new SnapshotScheduleUpdateInProgressFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSInvalidTopicFaultResponse = async ( @@ -13337,13 +10154,11 @@ const deserializeAws_querySNSInvalidTopicFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSInvalidTopicFault(body.Error, context); - const contents: SNSInvalidTopicFault = { - name: "SNSInvalidTopicFault", - $fault: "client", + const exception = new SNSInvalidTopicFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( @@ -13352,13 +10167,11 @@ const deserializeAws_querySNSNoAuthorizationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSNoAuthorizationFault(body.Error, context); - const contents: SNSNoAuthorizationFault = { - name: "SNSNoAuthorizationFault", - $fault: "client", + const exception = new SNSNoAuthorizationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( @@ -13367,13 +10180,11 @@ const deserializeAws_querySNSTopicArnNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySNSTopicArnNotFoundFault(body.Error, context); - const contents: SNSTopicArnNotFoundFault = { - name: "SNSTopicArnNotFoundFault", - $fault: "client", + const exception = new SNSTopicArnNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySourceNotFoundFaultResponse = async ( @@ -13382,13 +10193,11 @@ const deserializeAws_querySourceNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySourceNotFoundFault(body.Error, context); - const contents: SourceNotFoundFault = { - name: "SourceNotFoundFault", - $fault: "client", + const exception = new SourceNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubnetAlreadyInUseResponse = async ( @@ -13397,13 +10206,11 @@ const deserializeAws_querySubnetAlreadyInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubnetAlreadyInUse(body.Error, context); - const contents: SubnetAlreadyInUse = { - name: "SubnetAlreadyInUse", - $fault: "client", + const exception = new SubnetAlreadyInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( @@ -13412,13 +10219,11 @@ const deserializeAws_querySubscriptionAlreadyExistFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionAlreadyExistFault(body.Error, context); - const contents: SubscriptionAlreadyExistFault = { - name: "SubscriptionAlreadyExistFault", - $fault: "client", + const exception = new SubscriptionAlreadyExistFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( @@ -13427,13 +10232,11 @@ const deserializeAws_querySubscriptionCategoryNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionCategoryNotFoundFault(body.Error, context); - const contents: SubscriptionCategoryNotFoundFault = { - name: "SubscriptionCategoryNotFoundFault", - $fault: "client", + const exception = new SubscriptionCategoryNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionEventIdNotFoundFaultResponse = async ( @@ -13442,13 +10245,11 @@ const deserializeAws_querySubscriptionEventIdNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionEventIdNotFoundFault(body.Error, context); - const contents: SubscriptionEventIdNotFoundFault = { - name: "SubscriptionEventIdNotFoundFault", - $fault: "client", + const exception = new SubscriptionEventIdNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( @@ -13457,13 +10258,11 @@ const deserializeAws_querySubscriptionNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionNotFoundFault(body.Error, context); - const contents: SubscriptionNotFoundFault = { - name: "SubscriptionNotFoundFault", - $fault: "client", + const exception = new SubscriptionNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionSeverityNotFoundFaultResponse = async ( @@ -13472,13 +10271,11 @@ const deserializeAws_querySubscriptionSeverityNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionSeverityNotFoundFault(body.Error, context); - const contents: SubscriptionSeverityNotFoundFault = { - name: "SubscriptionSeverityNotFoundFault", - $fault: "client", + const exception = new SubscriptionSeverityNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTableLimitExceededFaultResponse = async ( @@ -13487,13 +10284,11 @@ const deserializeAws_queryTableLimitExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTableLimitExceededFault(body.Error, context); - const contents: TableLimitExceededFault = { - name: "TableLimitExceededFault", - $fault: "client", + const exception = new TableLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTableRestoreNotFoundFaultResponse = async ( @@ -13502,13 +10297,11 @@ const deserializeAws_queryTableRestoreNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTableRestoreNotFoundFault(body.Error, context); - const contents: TableRestoreNotFoundFault = { - name: "TableRestoreNotFoundFault", - $fault: "client", + const exception = new TableRestoreNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTagLimitExceededFaultResponse = async ( @@ -13517,13 +10310,11 @@ const deserializeAws_queryTagLimitExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTagLimitExceededFault(body.Error, context); - const contents: TagLimitExceededFault = { - name: "TagLimitExceededFault", - $fault: "client", + const exception = new TagLimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnauthorizedOperationResponse = async ( @@ -13532,13 +10323,11 @@ const deserializeAws_queryUnauthorizedOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnauthorizedOperation(body.Error, context); - const contents: UnauthorizedOperation = { - name: "UnauthorizedOperation", - $fault: "client", + const exception = new UnauthorizedOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse = async ( @@ -13547,13 +10336,11 @@ const deserializeAws_queryUnauthorizedPartnerIntegrationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnauthorizedPartnerIntegrationFault(body.Error, context); - const contents: UnauthorizedPartnerIntegrationFault = { - name: "UnauthorizedPartnerIntegrationFault", - $fault: "client", + const exception = new UnauthorizedPartnerIntegrationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnknownSnapshotCopyRegionFaultResponse = async ( @@ -13562,13 +10349,11 @@ const deserializeAws_queryUnknownSnapshotCopyRegionFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnknownSnapshotCopyRegionFault(body.Error, context); - const contents: UnknownSnapshotCopyRegionFault = { - name: "UnknownSnapshotCopyRegionFault", - $fault: "client", + const exception = new UnknownSnapshotCopyRegionFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnsupportedOperationFaultResponse = async ( @@ -13577,13 +10362,11 @@ const deserializeAws_queryUnsupportedOperationFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnsupportedOperationFault(body.Error, context); - const contents: UnsupportedOperationFault = { - name: "UnsupportedOperationFault", - $fault: "client", + const exception = new UnsupportedOperationFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnsupportedOptionFaultResponse = async ( @@ -13592,13 +10375,11 @@ const deserializeAws_queryUnsupportedOptionFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnsupportedOptionFault(body.Error, context); - const contents: UnsupportedOptionFault = { - name: "UnsupportedOptionFault", - $fault: "client", + const exception = new UnsupportedOptionFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUsageLimitAlreadyExistsFaultResponse = async ( @@ -13607,13 +10388,11 @@ const deserializeAws_queryUsageLimitAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUsageLimitAlreadyExistsFault(body.Error, context); - const contents: UsageLimitAlreadyExistsFault = { - name: "UsageLimitAlreadyExistsFault", - $fault: "client", + const exception = new UsageLimitAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUsageLimitNotFoundFaultResponse = async ( @@ -13622,13 +10401,11 @@ const deserializeAws_queryUsageLimitNotFoundFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUsageLimitNotFoundFault(body.Error, context); - const contents: UsageLimitNotFoundFault = { - name: "UsageLimitNotFoundFault", - $fault: "client", + const exception = new UsageLimitNotFoundFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAcceptReservedNodeExchangeInputMessage = ( diff --git a/clients/client-rekognition/src/index.ts b/clients/client-rekognition/src/index.ts index 366a4a9564da8..3f41225161e0b 100644 --- a/clients/client-rekognition/src/index.ts +++ b/clients/client-rekognition/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { RekognitionServiceException } from "./models/RekognitionServiceException"; diff --git a/clients/client-rekognition/src/models/RekognitionServiceException.ts b/clients/client-rekognition/src/models/RekognitionServiceException.ts new file mode 100644 index 0000000000000..d2a83f5df34cf --- /dev/null +++ b/clients/client-rekognition/src/models/RekognitionServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Rekognition service. + */ +export class RekognitionServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RekognitionServiceException.prototype); + } +} diff --git a/clients/client-rekognition/src/models/models_0.ts b/clients/client-rekognition/src/models/models_0.ts index f71f020cb2949..f5b373c3cc2c4 100644 --- a/clients/client-rekognition/src/models/models_0.ts +++ b/clients/client-rekognition/src/models/models_0.ts @@ -1,18 +1,37 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RekognitionServiceException as __BaseException } from "./RekognitionServiceException"; /** *

You are not authorized to perform the action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** @@ -1303,101 +1322,199 @@ export namespace CompareFacesResponse { * DetectProtectiveEquipment, the image size or resolution exceeds the allowed limit. For more information, see * Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.

*/ -export interface ImageTooLargeException extends __SmithyException, $MetadataBearer { - name: "ImageTooLargeException"; - $fault: "client"; +export class ImageTooLargeException extends __BaseException { + readonly name: "ImageTooLargeException" = "ImageTooLargeException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ImageTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ImageTooLargeException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

Amazon Rekognition experienced a service issue. Try your call again.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

The provided image format is not supported.

*/ -export interface InvalidImageFormatException extends __SmithyException, $MetadataBearer { - name: "InvalidImageFormatException"; - $fault: "client"; +export class InvalidImageFormatException extends __BaseException { + readonly name: "InvalidImageFormatException" = "InvalidImageFormatException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidImageFormatException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidImageFormatException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

Input parameter violated a constraint. Validate your parameter before calling the API * operation again.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

Amazon Rekognition is unable to access the S3 object specified in the request.

*/ -export interface InvalidS3ObjectException extends __SmithyException, $MetadataBearer { - name: "InvalidS3ObjectException"; - $fault: "client"; +export class InvalidS3ObjectException extends __BaseException { + readonly name: "InvalidS3ObjectException" = "InvalidS3ObjectException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3ObjectException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3ObjectException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

The number of requests exceeded your throughput limit. If you want to increase this * limit, contact Amazon Rekognition.

*/ -export interface ProvisionedThroughputExceededException extends __SmithyException, $MetadataBearer { - name: "ProvisionedThroughputExceededException"; - $fault: "client"; +export class ProvisionedThroughputExceededException extends __BaseException { + readonly name: "ProvisionedThroughputExceededException" = "ProvisionedThroughputExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedThroughputExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedThroughputExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

Amazon Rekognition is temporarily unable to process the request. Try your call again.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "server"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "server" = "server"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } export enum ContentClassifier { @@ -1523,15 +1640,29 @@ export namespace CreateCollectionResponse { /** *

A resource with the specified ID already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** @@ -1541,15 +1672,29 @@ export interface ResourceAlreadyExistsException extends __SmithyException, $Meta *

The size of the collection exceeds the allowed limit. For more information, see * Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** @@ -1652,29 +1797,57 @@ export namespace CreateDatasetResponse { * (StartLabelDetection, for example) will raise a LimitExceededException exception (HTTP status code: 400) until * the number of concurrently running jobs is below the Amazon Rekognition service limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** *

The resource specified in the request cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } export interface CreateProjectRequest { @@ -1713,15 +1886,29 @@ export namespace CreateProjectResponse { /** *

The specified resource is already being used.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** @@ -2829,15 +3016,29 @@ export namespace DescribeProjectsResponse { /** *

Pagination token in the request is not valid.

*/ -export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationTokenException"; - $fault: "client"; +export class InvalidPaginationTokenException extends __BaseException { + readonly name: "InvalidPaginationTokenException" = "InvalidPaginationTokenException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationTokenException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } export interface DescribeProjectVersionsRequest { @@ -3299,15 +3500,29 @@ export namespace DetectCustomLabelsResponse { * this exception occurs when you call DetectCustomLabels with a * model version that isn't deployed.

*/ -export interface ResourceNotReadyException extends __SmithyException, $MetadataBearer { - name: "ResourceNotReadyException"; - $fault: "client"; +export class ResourceNotReadyException extends __BaseException { + readonly name: "ResourceNotReadyException" = "ResourceNotReadyException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotReadyException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } export interface DetectFacesRequest { @@ -3705,9 +3920,9 @@ export namespace DetectModerationLabelsResponse { /** *

The number of in-progress human reviews you have has exceeded the number allowed.

*/ -export interface HumanLoopQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "HumanLoopQuotaExceededException"; - $fault: "client"; +export class HumanLoopQuotaExceededException extends __BaseException { + readonly name: "HumanLoopQuotaExceededException" = "HumanLoopQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The resource type.

*/ @@ -3729,6 +3944,23 @@ export interface HumanLoopQuotaExceededException extends __SmithyException, $Met *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HumanLoopQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HumanLoopQuotaExceededException.prototype); + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } /** @@ -5310,15 +5542,29 @@ export namespace GetTextDetectionResponse { *

A ClientRequestToken input parameter was reused with an operation, but at least one of the other input * parameters is different from the previous call to the operation.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } export interface IndexFacesRequest { @@ -6195,15 +6441,29 @@ export namespace StartCelebrityRecognitionResponse { *

The file size or duration of the supplied media is too large. The maximum file size is 10GB. * The maximum duration is 6 hours.

*/ -export interface VideoTooLargeException extends __SmithyException, $MetadataBearer { - name: "VideoTooLargeException"; - $fault: "client"; +export class VideoTooLargeException extends __BaseException { + readonly name: "VideoTooLargeException" = "VideoTooLargeException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; /** *

A universally unique identifier (UUID) for the request.

*/ Logref?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "VideoTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VideoTooLargeException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + this.Logref = opts.Logref; + } } export interface StartContentModerationRequest { diff --git a/clients/client-rekognition/src/protocols/Aws_json1_1.ts b/clients/client-rekognition/src/protocols/Aws_json1_1.ts index 1b921415b3994..dd85079ceddc9 100644 --- a/clients/client-rekognition/src/protocols/Aws_json1_1.ts +++ b/clients/client-rekognition/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CompareFacesCommandInput, CompareFacesCommandOutput } from "../commands/CompareFacesCommand"; @@ -386,6 +385,7 @@ import { VideoMetadata, VideoTooLargeException, } from "../models/models_0"; +import { RekognitionServiceException as __BaseException } from "../models/RekognitionServiceException"; export const serializeAws_json1_1CompareFacesCommand = async ( input: CompareFacesCommandInput, @@ -1166,89 +1166,43 @@ const deserializeAws_json1_1CompareFacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCollectionCommand = async ( @@ -1276,81 +1230,40 @@ const deserializeAws_json1_1CreateCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.rekognition#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rekognition#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDatasetCommand = async ( @@ -1378,97 +1291,46 @@ const deserializeAws_json1_1CreateDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.rekognition#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProjectCommand = async ( @@ -1496,81 +1358,40 @@ const deserializeAws_json1_1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProjectVersionCommand = async ( @@ -1598,97 +1419,46 @@ const deserializeAws_json1_1CreateProjectVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rekognition#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStreamProcessorCommand = async ( @@ -1716,89 +1486,43 @@ const deserializeAws_json1_1CreateStreamProcessorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rekognition#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCollectionCommand = async ( @@ -1826,73 +1550,37 @@ const deserializeAws_json1_1DeleteCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDatasetCommand = async ( @@ -1920,89 +1608,43 @@ const deserializeAws_json1_1DeleteDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFacesCommand = async ( @@ -2030,73 +1672,37 @@ const deserializeAws_json1_1DeleteFacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProjectCommand = async ( @@ -2124,81 +1730,40 @@ const deserializeAws_json1_1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProjectVersionCommand = async ( @@ -2226,81 +1791,40 @@ const deserializeAws_json1_1DeleteProjectVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStreamProcessorCommand = async ( @@ -2328,81 +1852,40 @@ const deserializeAws_json1_1DeleteStreamProcessorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCollectionCommand = async ( @@ -2430,73 +1913,37 @@ const deserializeAws_json1_1DescribeCollectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDatasetCommand = async ( @@ -2524,73 +1971,37 @@ const deserializeAws_json1_1DescribeDatasetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProjectsCommand = async ( @@ -2618,73 +2029,37 @@ const deserializeAws_json1_1DescribeProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProjectVersionsCommand = async ( @@ -2712,81 +2087,40 @@ const deserializeAws_json1_1DescribeProjectVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStreamProcessorCommand = async ( @@ -2814,73 +2148,37 @@ const deserializeAws_json1_1DescribeStreamProcessorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectCustomLabelsCommand = async ( @@ -2908,113 +2206,52 @@ const deserializeAws_json1_1DetectCustomLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.rekognition#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectFacesCommand = async ( @@ -3042,89 +2279,43 @@ const deserializeAws_json1_1DetectFacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectLabelsCommand = async ( @@ -3152,89 +2343,43 @@ const deserializeAws_json1_1DetectLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectModerationLabelsCommand = async ( @@ -3262,97 +2407,46 @@ const deserializeAws_json1_1DetectModerationLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "HumanLoopQuotaExceededException": case "com.amazonaws.rekognition#HumanLoopQuotaExceededException": - response = { - ...(await deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectProtectiveEquipmentCommand = async ( @@ -3380,89 +2474,43 @@ const deserializeAws_json1_1DetectProtectiveEquipmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectTextCommand = async ( @@ -3490,89 +2538,43 @@ const deserializeAws_json1_1DetectTextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DistributeDatasetEntriesCommand = async ( @@ -3600,81 +2602,40 @@ const deserializeAws_json1_1DistributeDatasetEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.rekognition#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCelebrityInfoCommand = async ( @@ -3702,73 +2663,37 @@ const deserializeAws_json1_1GetCelebrityInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCelebrityRecognitionCommand = async ( @@ -3796,81 +2721,40 @@ const deserializeAws_json1_1GetCelebrityRecognitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContentModerationCommand = async ( @@ -3898,81 +2782,40 @@ const deserializeAws_json1_1GetContentModerationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFaceDetectionCommand = async ( @@ -4000,81 +2843,40 @@ const deserializeAws_json1_1GetFaceDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFaceSearchCommand = async ( @@ -4102,81 +2904,40 @@ const deserializeAws_json1_1GetFaceSearchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLabelDetectionCommand = async ( @@ -4204,81 +2965,40 @@ const deserializeAws_json1_1GetLabelDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPersonTrackingCommand = async ( @@ -4306,81 +3026,40 @@ const deserializeAws_json1_1GetPersonTrackingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSegmentDetectionCommand = async ( @@ -4408,81 +3087,40 @@ const deserializeAws_json1_1GetSegmentDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTextDetectionCommand = async ( @@ -4510,81 +3148,40 @@ const deserializeAws_json1_1GetTextDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1IndexFacesCommand = async ( @@ -4612,105 +3209,49 @@ const deserializeAws_json1_1IndexFacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rekognition#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCollectionsCommand = async ( @@ -4738,81 +3279,40 @@ const deserializeAws_json1_1ListCollectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetEntriesCommand = async ( @@ -4840,97 +3340,46 @@ const deserializeAws_json1_1ListDatasetEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.rekognition#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDatasetLabelsCommand = async ( @@ -4958,97 +3407,46 @@ const deserializeAws_json1_1ListDatasetLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceNotReadyException": case "com.amazonaws.rekognition#ResourceNotReadyException": - response = { - ...(await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotReadyExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFacesCommand = async ( @@ -5076,81 +3474,40 @@ const deserializeAws_json1_1ListFacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStreamProcessorsCommand = async ( @@ -5178,73 +3535,37 @@ const deserializeAws_json1_1ListStreamProcessorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.rekognition#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5272,73 +3593,37 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RecognizeCelebritiesCommand = async ( @@ -5366,89 +3651,43 @@ const deserializeAws_json1_1RecognizeCelebritiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchFacesCommand = async ( @@ -5476,73 +3715,37 @@ const deserializeAws_json1_1SearchFacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchFacesByImageCommand = async ( @@ -5570,97 +3773,46 @@ const deserializeAws_json1_1SearchFacesByImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ImageTooLargeException": case "com.amazonaws.rekognition#ImageTooLargeException": - response = { - ...(await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ImageTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidImageFormatException": case "com.amazonaws.rekognition#InvalidImageFormatException": - response = { - ...(await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidImageFormatExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartCelebrityRecognitionCommand = async ( @@ -5688,97 +3840,46 @@ const deserializeAws_json1_1StartCelebrityRecognitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartContentModerationCommand = async ( @@ -5806,97 +3907,46 @@ const deserializeAws_json1_1StartContentModerationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartFaceDetectionCommand = async ( @@ -5924,97 +3974,46 @@ const deserializeAws_json1_1StartFaceDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartFaceSearchCommand = async ( @@ -6042,105 +4041,49 @@ const deserializeAws_json1_1StartFaceSearchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartLabelDetectionCommand = async ( @@ -6168,97 +4111,46 @@ const deserializeAws_json1_1StartLabelDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartPersonTrackingCommand = async ( @@ -6286,97 +4178,46 @@ const deserializeAws_json1_1StartPersonTrackingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartProjectVersionCommand = async ( @@ -6404,89 +4245,43 @@ const deserializeAws_json1_1StartProjectVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSegmentDetectionCommand = async ( @@ -6514,97 +4309,46 @@ const deserializeAws_json1_1StartSegmentDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartStreamProcessorCommand = async ( @@ -6632,81 +4376,40 @@ const deserializeAws_json1_1StartStreamProcessorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTextDetectionCommand = async ( @@ -6734,97 +4437,46 @@ const deserializeAws_json1_1StartTextDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.rekognition#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.rekognition#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "VideoTooLargeException": case "com.amazonaws.rekognition#VideoTooLargeException": - response = { - ...(await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1VideoTooLargeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopProjectVersionCommand = async ( @@ -6852,81 +4504,40 @@ const deserializeAws_json1_1StopProjectVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopStreamProcessorCommand = async ( @@ -6954,81 +4565,40 @@ const deserializeAws_json1_1StopStreamProcessorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -7056,81 +4626,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rekognition#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -7158,73 +4687,37 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDatasetEntriesCommand = async ( @@ -7252,89 +4745,43 @@ const deserializeAws_json1_1UpdateDatasetEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rekognition#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.rekognition#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.rekognition#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.rekognition#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.rekognition#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.rekognition#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rekognition#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rekognition#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -7343,13 +4790,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse = async ( @@ -7358,13 +4803,11 @@ const deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HumanLoopQuotaExceededException(body, context); - const contents: HumanLoopQuotaExceededException = { - name: "HumanLoopQuotaExceededException", - $fault: "client", + const exception = new HumanLoopQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ( @@ -7373,13 +4816,11 @@ const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotentParameterMismatchException(body, context); - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", + const exception = new IdempotentParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ImageTooLargeExceptionResponse = async ( @@ -7388,13 +4829,11 @@ const deserializeAws_json1_1ImageTooLargeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ImageTooLargeException(body, context); - const contents: ImageTooLargeException = { - name: "ImageTooLargeException", - $fault: "client", + const exception = new ImageTooLargeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -7403,13 +4842,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidImageFormatExceptionResponse = async ( @@ -7418,13 +4855,11 @@ const deserializeAws_json1_1InvalidImageFormatExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidImageFormatException(body, context); - const contents: InvalidImageFormatException = { - name: "InvalidImageFormatException", - $fault: "client", + const exception = new InvalidImageFormatException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPaginationTokenExceptionResponse = async ( @@ -7433,13 +4868,11 @@ const deserializeAws_json1_1InvalidPaginationTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPaginationTokenException(body, context); - const contents: InvalidPaginationTokenException = { - name: "InvalidPaginationTokenException", - $fault: "client", + const exception = new InvalidPaginationTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -7448,13 +4881,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidS3ObjectExceptionResponse = async ( @@ -7463,13 +4894,11 @@ const deserializeAws_json1_1InvalidS3ObjectExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidS3ObjectException(body, context); - const contents: InvalidS3ObjectException = { - name: "InvalidS3ObjectException", - $fault: "client", + const exception = new InvalidS3ObjectException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7478,13 +4907,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse = async ( @@ -7493,13 +4920,11 @@ const deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProvisionedThroughputExceededException(body, context); - const contents: ProvisionedThroughputExceededException = { - name: "ProvisionedThroughputExceededException", - $fault: "client", + const exception = new ProvisionedThroughputExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -7508,13 +4933,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -7523,13 +4946,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -7538,13 +4959,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotReadyExceptionResponse = async ( @@ -7553,13 +4972,11 @@ const deserializeAws_json1_1ResourceNotReadyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotReadyException(body, context); - const contents: ResourceNotReadyException = { - name: "ResourceNotReadyException", - $fault: "client", + const exception = new ResourceNotReadyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( @@ -7568,13 +4985,11 @@ const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -7583,13 +4998,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "server", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1VideoTooLargeExceptionResponse = async ( @@ -7598,13 +5011,11 @@ const deserializeAws_json1_1VideoTooLargeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1VideoTooLargeException(body, context); - const contents: VideoTooLargeException = { - name: "VideoTooLargeException", - $fault: "client", + const exception = new VideoTooLargeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1Asset = (input: Asset, context: __SerdeContext): any => { diff --git a/clients/client-resiliencehub/src/index.ts b/clients/client-resiliencehub/src/index.ts index 1f2ffd39f0f58..118bbb27d55f5 100644 --- a/clients/client-resiliencehub/src/index.ts +++ b/clients/client-resiliencehub/src/index.ts @@ -3,3 +3,4 @@ export * from "./ResiliencehubClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ResiliencehubServiceException } from "./models/ResiliencehubServiceException"; diff --git a/clients/client-resiliencehub/src/models/ResiliencehubServiceException.ts b/clients/client-resiliencehub/src/models/ResiliencehubServiceException.ts new file mode 100644 index 0000000000000..d4ed330a03a8d --- /dev/null +++ b/clients/client-resiliencehub/src/models/ResiliencehubServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Resiliencehub service. + */ +export class ResiliencehubServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ResiliencehubServiceException.prototype); + } +} diff --git a/clients/client-resiliencehub/src/models/models_0.ts b/clients/client-resiliencehub/src/models/models_0.ts index 90dd36023f56a..e96d954cd6313 100644 --- a/clients/client-resiliencehub/src/models/models_0.ts +++ b/clients/client-resiliencehub/src/models/models_0.ts @@ -1,15 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ResiliencehubServiceException as __BaseException } from "./ResiliencehubServiceException"; /** *

You don't have permissions to perform the requested operation. The user or role that is * making the request must have at least one IAM permissions policy attached that grants the * required permissions.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum ResourceMappingType { @@ -203,10 +215,9 @@ export namespace AddDraftAppVersionResourceMappingsResponse { * request. A retry (with appropriate backoff logic) is the recommended response to this * exception.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The identifier of the resource that the exception applies to.

*/ @@ -216,25 +227,48 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource that the exception applies to.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

This exception occurs when there is an internal failure in the AWS Resilience Hub * service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The identifier of the resource that the exception applies to.

*/ @@ -244,28 +278,64 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource that the exception applies to.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

The limit on the number of requests per second was exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

The number of seconds to wait before retrying the operation.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

Indicates that a request was not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -1098,10 +1168,20 @@ export namespace CreateAppResponse { *

You have exceeded your service quota. To perform the requested action, remove some of the * relevant resources, or use Service Quotas to request a service quota increase.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export enum TemplateFormat { diff --git a/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts b/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts index 88e1c24ea4099..3ba317192b95e 100644 --- a/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts +++ b/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -179,6 +178,7 @@ import { UnsupportedResource, ValidationException, } from "../models/models_0"; +import { ResiliencehubServiceException as __BaseException } from "../models/ResiliencehubServiceException"; export const serializeAws_restJson1AddDraftAppVersionResourceMappingsCommand = async ( input: AddDraftAppVersionResourceMappingsCommandInput, @@ -1318,73 +1318,37 @@ const deserializeAws_restJson1AddDraftAppVersionResourceMappingsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAppCommand = async ( @@ -1413,81 +1377,40 @@ const deserializeAws_restJson1CreateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.resiliencehub#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRecommendationTemplateCommand = async ( @@ -1519,73 +1442,37 @@ const deserializeAws_restJson1CreateRecommendationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResiliencyPolicyCommand = async ( @@ -1614,73 +1501,37 @@ const deserializeAws_restJson1CreateResiliencyPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.resiliencehub#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppCommand = async ( @@ -1709,65 +1560,34 @@ const deserializeAws_restJson1DeleteAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppAssessmentCommand = async ( @@ -1800,73 +1620,37 @@ const deserializeAws_restJson1DeleteAppAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecommendationTemplateCommand = async ( @@ -1899,65 +1683,34 @@ const deserializeAws_restJson1DeleteRecommendationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResiliencyPolicyCommand = async ( @@ -1986,73 +1739,37 @@ const deserializeAws_restJson1DeleteResiliencyPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppCommand = async ( @@ -2081,65 +1798,34 @@ const deserializeAws_restJson1DescribeAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppAssessmentCommand = async ( @@ -2168,65 +1854,34 @@ const deserializeAws_restJson1DescribeAppAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppVersionResourcesResolutionStatusCommand = async ( @@ -2271,65 +1926,34 @@ const deserializeAws_restJson1DescribeAppVersionResourcesResolutionStatusCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAppVersionTemplateCommand = async ( @@ -2366,65 +1990,34 @@ const deserializeAws_restJson1DescribeAppVersionTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDraftAppVersionResourcesImportStatusCommand = async ( @@ -2469,65 +2062,34 @@ const deserializeAws_restJson1DescribeDraftAppVersionResourcesImportStatusComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeResiliencyPolicyCommand = async ( @@ -2556,65 +2118,34 @@ const deserializeAws_restJson1DescribeResiliencyPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportResourcesToDraftAppVersionCommand = async ( @@ -2655,73 +2186,37 @@ const deserializeAws_restJson1ImportResourcesToDraftAppVersionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAlarmRecommendationsCommand = async ( @@ -2754,65 +2249,34 @@ const deserializeAws_restJson1ListAlarmRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppAssessmentsCommand = async ( @@ -2845,65 +2309,34 @@ const deserializeAws_restJson1ListAppAssessmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppComponentCompliancesCommand = async ( @@ -2939,65 +2372,34 @@ const deserializeAws_restJson1ListAppComponentCompliancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppComponentRecommendationsCommand = async ( @@ -3033,65 +2435,34 @@ const deserializeAws_restJson1ListAppComponentRecommendationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppsCommand = async ( @@ -3124,57 +2495,31 @@ const deserializeAws_restJson1ListAppsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppVersionResourceMappingsCommand = async ( @@ -3207,65 +2552,34 @@ const deserializeAws_restJson1ListAppVersionResourceMappingsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppVersionResourcesCommand = async ( @@ -3302,73 +2616,37 @@ const deserializeAws_restJson1ListAppVersionResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppVersionsCommand = async ( @@ -3401,57 +2679,31 @@ const deserializeAws_restJson1ListAppVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecommendationTemplatesCommand = async ( @@ -3487,57 +2739,31 @@ const deserializeAws_restJson1ListRecommendationTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResiliencyPoliciesCommand = async ( @@ -3570,65 +2796,34 @@ const deserializeAws_restJson1ListResiliencyPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSopRecommendationsCommand = async ( @@ -3661,73 +2856,37 @@ const deserializeAws_restJson1ListSopRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSuggestedResiliencyPoliciesCommand = async ( @@ -3760,65 +2919,34 @@ const deserializeAws_restJson1ListSuggestedResiliencyPoliciesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3847,65 +2975,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTestRecommendationsCommand = async ( @@ -3938,73 +3035,37 @@ const deserializeAws_restJson1ListTestRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUnsupportedAppVersionResourcesCommand = async ( @@ -4041,73 +3102,37 @@ const deserializeAws_restJson1ListUnsupportedAppVersionResourcesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PublishAppVersionCommand = async ( @@ -4140,73 +3165,37 @@ const deserializeAws_restJson1PublishAppVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDraftAppVersionTemplateCommand = async ( @@ -4239,73 +3228,37 @@ const deserializeAws_restJson1PutDraftAppVersionTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveDraftAppVersionResourceMappingsCommand = async ( @@ -4338,73 +3291,37 @@ const deserializeAws_restJson1RemoveDraftAppVersionResourceMappingsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ResolveAppVersionResourcesCommand = async ( @@ -4445,73 +3362,37 @@ const deserializeAws_restJson1ResolveAppVersionResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartAppAssessmentCommand = async ( @@ -4540,81 +3421,40 @@ const deserializeAws_restJson1StartAppAssessmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.resiliencehub#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4639,65 +3479,34 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4722,65 +3531,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppCommand = async ( @@ -4809,73 +3587,37 @@ const deserializeAws_restJson1UpdateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResiliencyPolicyCommand = async ( @@ -4904,104 +3646,60 @@ const deserializeAws_restJson1UpdateResiliencyPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.resiliencehub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.resiliencehub#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.resiliencehub#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.resiliencehub#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5012,38 +3710,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5054,37 +3748,34 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5092,24 +3783,27 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.retryAfterSeconds !== undefined && data.retryAfterSeconds !== null) { contents.retryAfterSeconds = __expectInt32(data.retryAfterSeconds); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ArnList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-resource-groups-tagging-api/src/index.ts b/clients/client-resource-groups-tagging-api/src/index.ts index 64836e1df962a..5db26d484057b 100644 --- a/clients/client-resource-groups-tagging-api/src/index.ts +++ b/clients/client-resource-groups-tagging-api/src/index.ts @@ -3,3 +3,4 @@ export * from "./ResourceGroupsTaggingAPIClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ResourceGroupsTaggingAPIServiceException } from "./models/ResourceGroupsTaggingAPIServiceException"; diff --git a/clients/client-resource-groups-tagging-api/src/models/ResourceGroupsTaggingAPIServiceException.ts b/clients/client-resource-groups-tagging-api/src/models/ResourceGroupsTaggingAPIServiceException.ts new file mode 100644 index 0000000000000..d5433b3c382da --- /dev/null +++ b/clients/client-resource-groups-tagging-api/src/models/ResourceGroupsTaggingAPIServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ResourceGroupsTaggingAPI service. + */ +export class ResourceGroupsTaggingAPIServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ResourceGroupsTaggingAPIServiceException.prototype); + } +} diff --git a/clients/client-resource-groups-tagging-api/src/models/models_0.ts b/clients/client-resource-groups-tagging-api/src/models/models_0.ts index b4f555da2c265..4276f851cb585 100644 --- a/clients/client-resource-groups-tagging-api/src/models/models_0.ts +++ b/clients/client-resource-groups-tagging-api/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ResourceGroupsTaggingAPIServiceException as __BaseException } from "./ResourceGroupsTaggingAPIServiceException"; /** *

Information that shows whether a resource is compliant with the effective tag policy, @@ -35,10 +38,22 @@ export namespace ComplianceDetails { *

The target of the operation is currently being modified by a different request. Try * again later.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } /** @@ -63,10 +78,22 @@ export interface ConcurrentModificationException extends __SmithyException, $Met * * */ -export interface ConstraintViolationException extends __SmithyException, $MetadataBearer { - name: "ConstraintViolationException"; - $fault: "client"; +export class ConstraintViolationException extends __BaseException { + readonly name: "ConstraintViolationException" = "ConstraintViolationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConstraintViolationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConstraintViolationException.prototype); + this.Message = opts.Message; + } } export interface DescribeReportCreationInput {} @@ -137,10 +164,22 @@ export namespace DescribeReportCreationOutput { *

The request processing failed because of an unknown error, exception, or failure. You * can retry the request.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** @@ -166,19 +205,43 @@ export interface InternalServiceException extends __SmithyException, $MetadataBe * * */ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied to limit the frequency of submitted requests.

*/ -export interface ThrottledException extends __SmithyException, $MetadataBearer { - name: "ThrottledException"; - $fault: "client"; +export class ThrottledException extends __BaseException { + readonly name: "ThrottledException" = "ThrottledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledException.prototype); + this.Message = opts.Message; + } } export enum ErrorCode { @@ -682,10 +745,22 @@ export namespace GetResourcesOutput { *

A PaginationToken is valid for a maximum of 15 minutes. Your request was * denied because the specified PaginationToken has expired.

*/ -export interface PaginationTokenExpiredException extends __SmithyException, $MetadataBearer { - name: "PaginationTokenExpiredException"; - $fault: "client"; +export class PaginationTokenExpiredException extends __BaseException { + readonly name: "PaginationTokenExpiredException" = "PaginationTokenExpiredException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PaginationTokenExpiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PaginationTokenExpiredException.prototype); + this.Message = opts.Message; + } } export interface GetTagKeysInput { diff --git a/clients/client-resource-groups-tagging-api/src/protocols/Aws_json1_1.ts b/clients/client-resource-groups-tagging-api/src/protocols/Aws_json1_1.ts index 003003581f026..0f3f9320649b3 100644 --- a/clients/client-resource-groups-tagging-api/src/protocols/Aws_json1_1.ts +++ b/clients/client-resource-groups-tagging-api/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -62,6 +61,7 @@ import { UntagResourcesInput, UntagResourcesOutput, } from "../models/models_0"; +import { ResourceGroupsTaggingAPIServiceException as __BaseException } from "../models/ResourceGroupsTaggingAPIServiceException"; export const serializeAws_json1_1DescribeReportCreationCommand = async ( input: DescribeReportCreationCommandInput, @@ -192,57 +192,31 @@ const deserializeAws_json1_1DescribeReportCreationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConstraintViolationException": case "com.amazonaws.resourcegroupstaggingapi#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetComplianceSummaryCommand = async ( @@ -270,57 +244,31 @@ const deserializeAws_json1_1GetComplianceSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConstraintViolationException": case "com.amazonaws.resourcegroupstaggingapi#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourcesCommand = async ( @@ -348,57 +296,31 @@ const deserializeAws_json1_1GetResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PaginationTokenExpiredException": case "com.amazonaws.resourcegroupstaggingapi#PaginationTokenExpiredException": - response = { - ...(await deserializeAws_json1_1PaginationTokenExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PaginationTokenExpiredExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTagKeysCommand = async ( @@ -426,57 +348,31 @@ const deserializeAws_json1_1GetTagKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PaginationTokenExpiredException": case "com.amazonaws.resourcegroupstaggingapi#PaginationTokenExpiredException": - response = { - ...(await deserializeAws_json1_1PaginationTokenExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PaginationTokenExpiredExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTagValuesCommand = async ( @@ -504,57 +400,31 @@ const deserializeAws_json1_1GetTagValuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "PaginationTokenExpiredException": case "com.amazonaws.resourcegroupstaggingapi#PaginationTokenExpiredException": - response = { - ...(await deserializeAws_json1_1PaginationTokenExpiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PaginationTokenExpiredExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartReportCreationCommand = async ( @@ -582,65 +452,34 @@ const deserializeAws_json1_1StartReportCreationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.resourcegroupstaggingapi#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConstraintViolationException": case "com.amazonaws.resourcegroupstaggingapi#ConstraintViolationException": - response = { - ...(await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConstraintViolationExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourcesCommand = async ( @@ -668,49 +507,28 @@ const deserializeAws_json1_1TagResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourcesCommand = async ( @@ -738,49 +556,28 @@ const deserializeAws_json1_1UntagResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.resourcegroupstaggingapi#InternalServiceException": - response = { - ...(await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.resourcegroupstaggingapi#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.resourcegroupstaggingapi#ThrottledException": - response = { - ...(await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -789,13 +586,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConstraintViolationExceptionResponse = async ( @@ -804,13 +599,11 @@ const deserializeAws_json1_1ConstraintViolationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConstraintViolationException(body, context); - const contents: ConstraintViolationException = { - name: "ConstraintViolationException", - $fault: "client", + const exception = new ConstraintViolationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceExceptionResponse = async ( @@ -819,13 +612,11 @@ const deserializeAws_json1_1InternalServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceException(body, context); - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", + const exception = new InternalServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -834,13 +625,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PaginationTokenExpiredExceptionResponse = async ( @@ -849,13 +638,11 @@ const deserializeAws_json1_1PaginationTokenExpiredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PaginationTokenExpiredException(body, context); - const contents: PaginationTokenExpiredException = { - name: "PaginationTokenExpiredException", - $fault: "client", + const exception = new PaginationTokenExpiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottledExceptionResponse = async ( @@ -864,13 +651,11 @@ const deserializeAws_json1_1ThrottledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottledException(body, context); - const contents: ThrottledException = { - name: "ThrottledException", - $fault: "client", + const exception = new ThrottledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1DescribeReportCreationInput = ( diff --git a/clients/client-resource-groups/src/index.ts b/clients/client-resource-groups/src/index.ts index 9644b70488c93..20c1b3cfaf3d3 100644 --- a/clients/client-resource-groups/src/index.ts +++ b/clients/client-resource-groups/src/index.ts @@ -3,3 +3,4 @@ export * from "./ResourceGroupsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ResourceGroupsServiceException } from "./models/ResourceGroupsServiceException"; diff --git a/clients/client-resource-groups/src/models/ResourceGroupsServiceException.ts b/clients/client-resource-groups/src/models/ResourceGroupsServiceException.ts new file mode 100644 index 0000000000000..cf60305efd79e --- /dev/null +++ b/clients/client-resource-groups/src/models/ResourceGroupsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ResourceGroups service. + */ +export class ResourceGroupsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ResourceGroupsServiceException.prototype); + } +} diff --git a/clients/client-resource-groups/src/models/models_0.ts b/clients/client-resource-groups/src/models/models_0.ts index 7cbada463871b..1cdbebb27ef3b 100644 --- a/clients/client-resource-groups/src/models/models_0.ts +++ b/clients/client-resource-groups/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ResourceGroupsServiceException as __BaseException } from "./ResourceGroupsServiceException"; /** *

The request includes one or more parameters that violate validation rules.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** @@ -450,38 +465,86 @@ export namespace CreateGroupOutput { /** *

The caller isn't authorized to make the request. Check permissions.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Message = opts.Message; + } } /** *

An internal error occurred while processing the request. Try again later.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** *

The request uses an HTTP method that isn't allowed for the specified resource.

*/ -export interface MethodNotAllowedException extends __SmithyException, $MetadataBearer { - name: "MethodNotAllowedException"; - $fault: "client"; +export class MethodNotAllowedException extends __BaseException { + readonly name: "MethodNotAllowedException" = "MethodNotAllowedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MethodNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MethodNotAllowedException.prototype); + this.Message = opts.Message; + } } /** *

You've exceeded throttling limits by making too many requests in a period of * time.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } export interface DeleteGroupInput { @@ -526,10 +589,22 @@ export namespace DeleteGroupOutput { /** *

One or more of the specified resources don't exist.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface GetGroupInput { @@ -1099,10 +1174,22 @@ export namespace ListGroupResourcesOutput { *

The request was rejected because it doesn't have valid credentials for the target * resource.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.Message = opts.Message; + } } export enum GroupFilterName { diff --git a/clients/client-resource-groups/src/protocols/Aws_restJson1.ts b/clients/client-resource-groups/src/protocols/Aws_restJson1.ts index 753f2feda4946..912c31b66c847 100644 --- a/clients/client-resource-groups/src/protocols/Aws_restJson1.ts +++ b/clients/client-resource-groups/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateGroupCommandInput, CreateGroupCommandOutput } from "../commands/CreateGroupCommand"; @@ -59,6 +58,7 @@ import { TooManyRequestsException, UnauthorizedException, } from "../models/models_0"; +import { ResourceGroupsServiceException as __BaseException } from "../models/ResourceGroupsServiceException"; export const serializeAws_restJson1CreateGroupCommand = async ( input: CreateGroupCommandInput, @@ -555,65 +555,34 @@ const deserializeAws_restJson1CreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGroupCommand = async ( @@ -642,73 +611,37 @@ const deserializeAws_restJson1DeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupCommand = async ( @@ -737,73 +670,37 @@ const deserializeAws_restJson1GetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupConfigurationCommand = async ( @@ -832,73 +729,37 @@ const deserializeAws_restJson1GetGroupConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupQueryCommand = async ( @@ -927,73 +788,37 @@ const deserializeAws_restJson1GetGroupQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTagsCommand = async ( @@ -1026,73 +851,37 @@ const deserializeAws_restJson1GetTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GroupResourcesCommand = async ( @@ -1129,73 +918,37 @@ const deserializeAws_restJson1GroupResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupResourcesCommand = async ( @@ -1236,81 +989,40 @@ const deserializeAws_restJson1ListGroupResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.resourcegroups#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListGroupsCommand = async ( @@ -1347,65 +1059,34 @@ const deserializeAws_restJson1ListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutGroupConfigurationCommand = async ( @@ -1430,73 +1111,37 @@ const deserializeAws_restJson1PutGroupConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchResourcesCommand = async ( @@ -1533,73 +1178,37 @@ const deserializeAws_restJson1SearchResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.resourcegroups#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagCommand = async ( @@ -1632,73 +1241,37 @@ const deserializeAws_restJson1TagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UngroupResourcesCommand = async ( @@ -1735,73 +1308,37 @@ const deserializeAws_restJson1UngroupResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagCommand = async ( @@ -1834,73 +1371,37 @@ const deserializeAws_restJson1UntagCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGroupCommand = async ( @@ -1929,73 +1430,37 @@ const deserializeAws_restJson1UpdateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGroupQueryCommand = async ( @@ -2024,192 +1489,149 @@ const deserializeAws_restJson1UpdateGroupQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.resourcegroups#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.resourcegroups#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.resourcegroups#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "MethodNotAllowedException": case "com.amazonaws.resourcegroups#MethodNotAllowedException": - response = { - ...(await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MethodNotAllowedExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.resourcegroups#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.resourcegroups#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MethodNotAllowedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MethodNotAllowedException = { - name: "MethodNotAllowedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new MethodNotAllowedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1GroupConfigurationItem = (input: GroupConfigurationItem, context: __SerdeContext): any => { diff --git a/clients/client-robomaker/src/index.ts b/clients/client-robomaker/src/index.ts index a902ab93e1760..4714fc8fe7d03 100644 --- a/clients/client-robomaker/src/index.ts +++ b/clients/client-robomaker/src/index.ts @@ -3,3 +3,4 @@ export * from "./RoboMakerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { RoboMakerServiceException } from "./models/RoboMakerServiceException"; diff --git a/clients/client-robomaker/src/models/RoboMakerServiceException.ts b/clients/client-robomaker/src/models/RoboMakerServiceException.ts new file mode 100644 index 0000000000000..78b626979f028 --- /dev/null +++ b/clients/client-robomaker/src/models/RoboMakerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RoboMaker service. + */ +export class RoboMakerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RoboMakerServiceException.prototype); + } +} diff --git a/clients/client-robomaker/src/models/models_0.ts b/clients/client-robomaker/src/models/models_0.ts index c333d93cdf0db..6020ac9a88eeb 100644 --- a/clients/client-robomaker/src/models/models_0.ts +++ b/clients/client-robomaker/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RoboMakerServiceException as __BaseException } from "./RoboMakerServiceException"; export enum Architecture { ARM64 = "ARM64", @@ -42,29 +45,59 @@ export namespace BatchDeleteWorldsResponse { /** *

AWS RoboMaker experienced a service issue. Try your call again.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

A parameter specified in a request is not valid, is unsupported, or cannot be used. The * returned message provides an explanation of the error value.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

AWS RoboMaker is temporarily unable to process the request. Try your call again.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export interface BatchDescribeSimulationJobRequest { @@ -854,10 +887,20 @@ export namespace BatchDescribeSimulationJobResponse { /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -1066,10 +1109,20 @@ export namespace Compute { /** *

The failure percentage threshold percentage was met.

*/ -export interface ConcurrentDeploymentException extends __SmithyException, $MetadataBearer { - name: "ConcurrentDeploymentException"; - $fault: "client"; - message?: string; +export class ConcurrentDeploymentException extends __BaseException { + readonly name: "ConcurrentDeploymentException" = "ConcurrentDeploymentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentDeploymentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentDeploymentException.prototype); + } } /** @@ -1401,20 +1454,40 @@ export namespace CreateDeploymentJobResponse { *

The request uses the same client token as a previous, but non-identical request. Do not * reuse a client token with different requests, unless the requests are identical.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; - message?: string; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + } } /** *

The requested resource exceeds the maximum number allowed, or the number of concurrent * stream requests exceeds the maximum number allowed.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } export interface CreateFleetRequest { @@ -1544,10 +1617,20 @@ export namespace CreateRobotResponse { /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** @@ -2468,10 +2551,20 @@ export namespace CreateSimulationJobResponse { /** *

The request has failed due to a temporary failure of the server.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; - message?: string; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + } } /** diff --git a/clients/client-robomaker/src/protocols/Aws_restJson1.ts b/clients/client-robomaker/src/protocols/Aws_restJson1.ts index 2b6360d0a225d..1f2e4fcd38c23 100644 --- a/clients/client-robomaker/src/protocols/Aws_restJson1.ts +++ b/clients/client-robomaker/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -253,6 +252,7 @@ import { WorldGenerationJobSummary, WorldSummary, } from "../models/models_0"; +import { RoboMakerServiceException as __BaseException } from "../models/RoboMakerServiceException"; export const serializeAws_restJson1BatchDeleteWorldsCommand = async ( input: BatchDeleteWorldsCommandInput, @@ -1891,49 +1891,28 @@ const deserializeAws_restJson1BatchDeleteWorldsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDescribeSimulationJobCommand = async ( @@ -1966,57 +1945,31 @@ const deserializeAws_restJson1BatchDescribeSimulationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelDeploymentJobCommand = async ( @@ -2041,57 +1994,31 @@ const deserializeAws_restJson1CancelDeploymentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelSimulationJobCommand = async ( @@ -2116,57 +2043,31 @@ const deserializeAws_restJson1CancelSimulationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelSimulationJobBatchCommand = async ( @@ -2191,57 +2092,31 @@ const deserializeAws_restJson1CancelSimulationJobBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelWorldExportJobCommand = async ( @@ -2266,57 +2141,31 @@ const deserializeAws_restJson1CancelWorldExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelWorldGenerationJobCommand = async ( @@ -2341,57 +2190,31 @@ const deserializeAws_restJson1CancelWorldGenerationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeploymentJobCommand = async ( @@ -2455,81 +2278,40 @@ const deserializeAws_restJson1CreateDeploymentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentDeploymentException": case "com.amazonaws.robomaker#ConcurrentDeploymentException": - response = { - ...(await deserializeAws_restJson1ConcurrentDeploymentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentDeploymentExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFleetCommand = async ( @@ -2570,57 +2352,31 @@ const deserializeAws_restJson1CreateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRobotCommand = async ( @@ -2669,65 +2425,34 @@ const deserializeAws_restJson1CreateRobotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.robomaker#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRobotApplicationCommand = async ( @@ -2788,73 +2513,37 @@ const deserializeAws_restJson1CreateRobotApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.robomaker#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRobotApplicationVersionCommand = async ( @@ -2911,65 +2600,34 @@ const deserializeAws_restJson1CreateRobotApplicationVersionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSimulationApplicationCommand = async ( @@ -3041,73 +2699,37 @@ const deserializeAws_restJson1CreateSimulationApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.robomaker#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSimulationApplicationVersionCommand = async ( @@ -3175,65 +2797,34 @@ const deserializeAws_restJson1CreateSimulationApplicationVersionCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSimulationJobCommand = async ( @@ -3333,81 +2924,40 @@ const deserializeAws_restJson1CreateSimulationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.robomaker#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorldExportJobCommand = async ( @@ -3464,73 +3014,37 @@ const deserializeAws_restJson1CreateWorldExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.robomaker#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorldGenerationJobCommand = async ( @@ -3591,81 +3105,40 @@ const deserializeAws_restJson1CreateWorldGenerationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.robomaker#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorldTemplateCommand = async ( @@ -3710,73 +3183,37 @@ const deserializeAws_restJson1CreateWorldTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.robomaker#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFleetCommand = async ( @@ -3801,49 +3238,28 @@ const deserializeAws_restJson1DeleteFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRobotCommand = async ( @@ -3868,49 +3284,28 @@ const deserializeAws_restJson1DeleteRobotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRobotApplicationCommand = async ( @@ -3935,49 +3330,28 @@ const deserializeAws_restJson1DeleteRobotApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSimulationApplicationCommand = async ( @@ -4002,49 +3376,28 @@ const deserializeAws_restJson1DeleteSimulationApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWorldTemplateCommand = async ( @@ -4069,57 +3422,31 @@ const deserializeAws_restJson1DeleteWorldTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeregisterRobotCommand = async ( @@ -4152,57 +3479,31 @@ const deserializeAws_restJson1DeregisterRobotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeploymentJobCommand = async ( @@ -4273,57 +3574,31 @@ const deserializeAws_restJson1DescribeDeploymentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFleetCommand = async ( @@ -4380,57 +3655,31 @@ const deserializeAws_restJson1DescribeFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRobotCommand = async ( @@ -4495,57 +3744,31 @@ const deserializeAws_restJson1DescribeRobotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRobotApplicationCommand = async ( @@ -4610,57 +3833,31 @@ const deserializeAws_restJson1DescribeRobotApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSimulationApplicationCommand = async ( @@ -4736,57 +3933,31 @@ const deserializeAws_restJson1DescribeSimulationApplicationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSimulationJobCommand = async ( @@ -4898,57 +4069,31 @@ const deserializeAws_restJson1DescribeSimulationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSimulationJobBatchCommand = async ( @@ -5021,49 +4166,28 @@ const deserializeAws_restJson1DescribeSimulationJobBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorldCommand = async ( @@ -5112,57 +4236,31 @@ const deserializeAws_restJson1DescribeWorldCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorldExportJobCommand = async ( @@ -5227,57 +4325,31 @@ const deserializeAws_restJson1DescribeWorldExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorldGenerationJobCommand = async ( @@ -5346,57 +4418,31 @@ const deserializeAws_restJson1DescribeWorldGenerationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWorldTemplateCommand = async ( @@ -5449,57 +4495,31 @@ const deserializeAws_restJson1DescribeWorldTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWorldTemplateBodyCommand = async ( @@ -5528,57 +4548,31 @@ const deserializeAws_restJson1GetWorldTemplateBodyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeploymentJobsCommand = async ( @@ -5611,57 +4605,31 @@ const deserializeAws_restJson1ListDeploymentJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFleetsCommand = async ( @@ -5694,57 +4662,31 @@ const deserializeAws_restJson1ListFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRobotApplicationsCommand = async ( @@ -5780,49 +4722,28 @@ const deserializeAws_restJson1ListRobotApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRobotsCommand = async ( @@ -5855,57 +4776,31 @@ const deserializeAws_restJson1ListRobotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSimulationApplicationsCommand = async ( @@ -5941,49 +4836,28 @@ const deserializeAws_restJson1ListSimulationApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSimulationJobBatchesCommand = async ( @@ -6019,41 +4893,25 @@ const deserializeAws_restJson1ListSimulationJobBatchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSimulationJobsCommand = async ( @@ -6089,49 +4947,28 @@ const deserializeAws_restJson1ListSimulationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -6160,57 +4997,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorldExportJobsCommand = async ( @@ -6246,49 +5057,28 @@ const deserializeAws_restJson1ListWorldExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorldGenerationJobsCommand = async ( @@ -6324,49 +5114,28 @@ const deserializeAws_restJson1ListWorldGenerationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorldsCommand = async ( @@ -6399,49 +5168,28 @@ const deserializeAws_restJson1ListWorldsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorldTemplatesCommand = async ( @@ -6474,49 +5222,28 @@ const deserializeAws_restJson1ListWorldTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterRobotCommand = async ( @@ -6549,65 +5276,34 @@ const deserializeAws_restJson1RegisterRobotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RestartSimulationJobCommand = async ( @@ -6632,65 +5328,34 @@ const deserializeAws_restJson1RestartSimulationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartSimulationJobBatchCommand = async ( @@ -6759,65 +5424,34 @@ const deserializeAws_restJson1StartSimulationJobBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SyncDeploymentJobCommand = async ( @@ -6877,81 +5511,40 @@ const deserializeAws_restJson1SyncDeploymentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentDeploymentException": case "com.amazonaws.robomaker#ConcurrentDeploymentException": - response = { - ...(await deserializeAws_restJson1ConcurrentDeploymentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentDeploymentExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.robomaker#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -6976,57 +5569,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -7051,57 +5618,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRobotApplicationCommand = async ( @@ -7158,65 +5699,34 @@ const deserializeAws_restJson1UpdateRobotApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSimulationApplicationCommand = async ( @@ -7284,65 +5794,34 @@ const deserializeAws_restJson1UpdateSimulationApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.robomaker#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorldTemplateCommand = async ( @@ -7383,210 +5862,175 @@ const deserializeAws_restJson1UpdateWorldTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.robomaker#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.robomaker#InvalidParameterException": - response = { - ...(await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.robomaker#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.robomaker#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConcurrentDeploymentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentDeploymentException = { - name: "ConcurrentDeploymentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConcurrentDeploymentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IdempotentParameterMismatchExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new IdempotentParameterMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidParameterExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidParameterException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Arns = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-route-53-domains/src/index.ts b/clients/client-route-53-domains/src/index.ts index 7ae5c617ebf66..200ab7d11464c 100644 --- a/clients/client-route-53-domains/src/index.ts +++ b/clients/client-route-53-domains/src/index.ts @@ -3,3 +3,4 @@ export * from "./Route53DomainsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { Route53DomainsServiceException } from "./models/Route53DomainsServiceException"; diff --git a/clients/client-route-53-domains/src/models/Route53DomainsServiceException.ts b/clients/client-route-53-domains/src/models/Route53DomainsServiceException.ts new file mode 100644 index 0000000000000..3c582a27cbb27 --- /dev/null +++ b/clients/client-route-53-domains/src/models/Route53DomainsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Route53Domains service. + */ +export class Route53DomainsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Route53DomainsServiceException.prototype); + } +} diff --git a/clients/client-route-53-domains/src/models/models_0.ts b/clients/client-route-53-domains/src/models/models_0.ts index 5b87951d924f7..2cf04470ea62c 100644 --- a/clients/client-route-53-domains/src/models/models_0.ts +++ b/clients/client-route-53-domains/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Route53DomainsServiceException as __BaseException } from "./Route53DomainsServiceException"; /** *

The AcceptDomainTransferFromAnotherAwsAccount request includes the following elements.

@@ -54,13 +56,20 @@ export namespace AcceptDomainTransferFromAnotherAwsAccountResponse { /** *

The number of domains has exceeded the allowed threshold for the account.

*/ -export interface DomainLimitExceeded extends __SmithyException, $MetadataBearer { - name: "DomainLimitExceeded"; - $fault: "client"; +export class DomainLimitExceeded extends __BaseException { + readonly name: "DomainLimitExceeded" = "DomainLimitExceeded"; + readonly $fault: "client" = "client"; /** - *

The number of domains has exceeded the allowed threshold for the account.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainLimitExceeded.prototype); + } } /** @@ -68,38 +77,58 @@ export interface DomainLimitExceeded extends __SmithyException, $MetadataBearer * that doesn't belong to the account that submitted the request. For AcceptDomainTransferFromAnotherAwsAccount, * the password might be invalid.

*/ -export interface InvalidInput extends __SmithyException, $MetadataBearer { - name: "InvalidInput"; - $fault: "client"; +export class InvalidInput extends __BaseException { + readonly name: "InvalidInput" = "InvalidInput"; + readonly $fault: "client" = "client"; /** - *

The requested item is not acceptable. For example, for an OperationId it might refer to the ID of an operation - * that is already completed. For a domain name, it might not be a valid domain name or belong to the requester account.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInput", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInput.prototype); + } } /** *

The number of operations or jobs running exceeded the allowed threshold for the account.

*/ -export interface OperationLimitExceeded extends __SmithyException, $MetadataBearer { - name: "OperationLimitExceeded"; - $fault: "client"; +export class OperationLimitExceeded extends __BaseException { + readonly name: "OperationLimitExceeded" = "OperationLimitExceeded"; + readonly $fault: "client" = "client"; /** - *

The number of operations or jobs running exceeded the allowed threshold for the account.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationLimitExceeded.prototype); + } } /** *

Amazon Route 53 does not support this top-level domain (TLD).

*/ -export interface UnsupportedTLD extends __SmithyException, $MetadataBearer { - name: "UnsupportedTLD"; - $fault: "client"; +export class UnsupportedTLD extends __BaseException { + readonly name: "UnsupportedTLD" = "UnsupportedTLD"; + readonly $fault: "client" = "client"; /** - *

Amazon Route 53 does not support this top-level domain (TLD).

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedTLD", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedTLD.prototype); + } } export enum OperationType { @@ -1710,25 +1739,39 @@ export namespace DeleteDomainResponse { /** *

The request is already in progress for the domain.

*/ -export interface DuplicateRequest extends __SmithyException, $MetadataBearer { - name: "DuplicateRequest"; - $fault: "client"; +export class DuplicateRequest extends __BaseException { + readonly name: "DuplicateRequest" = "DuplicateRequest"; + readonly $fault: "client" = "client"; /** - *

The request is already in progress for the domain.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateRequest", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateRequest.prototype); + } } /** *

The top-level domain does not support this operation.

*/ -export interface TLDRulesViolation extends __SmithyException, $MetadataBearer { - name: "TLDRulesViolation"; - $fault: "client"; +export class TLDRulesViolation extends __BaseException { + readonly name: "TLDRulesViolation" = "TLDRulesViolation"; + readonly $fault: "client" = "client"; /** - *

The top-level domain does not support this operation.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TLDRulesViolation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TLDRulesViolation.prototype); + } } /** diff --git a/clients/client-route-53-domains/src/protocols/Aws_json1_1.ts b/clients/client-route-53-domains/src/protocols/Aws_json1_1.ts index 31519fee59c43..af5ffe85af588 100644 --- a/clients/client-route-53-domains/src/protocols/Aws_json1_1.ts +++ b/clients/client-route-53-domains/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -184,6 +183,7 @@ import { ViewBillingRequest, ViewBillingResponse, } from "../models/models_0"; +import { Route53DomainsServiceException as __BaseException } from "../models/Route53DomainsServiceException"; export const serializeAws_json1_1AcceptDomainTransferFromAnotherAwsAccountCommand = async ( input: AcceptDomainTransferFromAnotherAwsAccountCommandInput, @@ -600,57 +600,31 @@ const deserializeAws_json1_1AcceptDomainTransferFromAnotherAwsAccountCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DomainLimitExceeded": case "com.amazonaws.route53domains#DomainLimitExceeded": - response = { - ...(await deserializeAws_json1_1DomainLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DomainLimitExceededResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelDomainTransferToAnotherAwsAccountCommand = async ( @@ -678,49 +652,28 @@ const deserializeAws_json1_1CancelDomainTransferToAnotherAwsAccountCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckDomainAvailabilityCommand = async ( @@ -748,41 +701,25 @@ const deserializeAws_json1_1CheckDomainAvailabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckDomainTransferabilityCommand = async ( @@ -810,41 +747,25 @@ const deserializeAws_json1_1CheckDomainTransferabilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDomainCommand = async ( @@ -872,57 +793,31 @@ const deserializeAws_json1_1DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTagsForDomainCommand = async ( @@ -950,49 +845,28 @@ const deserializeAws_json1_1DeleteTagsForDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableDomainAutoRenewCommand = async ( @@ -1020,41 +894,25 @@ const deserializeAws_json1_1DisableDomainAutoRenewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableDomainTransferLockCommand = async ( @@ -1082,65 +940,34 @@ const deserializeAws_json1_1DisableDomainTransferLockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableDomainAutoRenewCommand = async ( @@ -1168,49 +995,28 @@ const deserializeAws_json1_1EnableDomainAutoRenewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableDomainTransferLockCommand = async ( @@ -1238,65 +1044,34 @@ const deserializeAws_json1_1EnableDomainTransferLockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContactReachabilityStatusCommand = async ( @@ -1324,49 +1099,28 @@ const deserializeAws_json1_1GetContactReachabilityStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDomainDetailCommand = async ( @@ -1394,41 +1148,25 @@ const deserializeAws_json1_1GetDomainDetailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDomainSuggestionsCommand = async ( @@ -1456,41 +1194,25 @@ const deserializeAws_json1_1GetDomainSuggestionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOperationDetailCommand = async ( @@ -1518,33 +1240,22 @@ const deserializeAws_json1_1GetOperationDetailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDomainsCommand = async ( @@ -1572,33 +1283,22 @@ const deserializeAws_json1_1ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOperationsCommand = async ( @@ -1626,33 +1326,22 @@ const deserializeAws_json1_1ListOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPricesCommand = async ( @@ -1680,41 +1369,25 @@ const deserializeAws_json1_1ListPricesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForDomainCommand = async ( @@ -1742,49 +1415,28 @@ const deserializeAws_json1_1ListTagsForDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterDomainCommand = async ( @@ -1812,73 +1464,37 @@ const deserializeAws_json1_1RegisterDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DomainLimitExceeded": case "com.amazonaws.route53domains#DomainLimitExceeded": - response = { - ...(await deserializeAws_json1_1DomainLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DomainLimitExceededResponse(parsedOutput, context); case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectDomainTransferFromAnotherAwsAccountCommand = async ( @@ -1906,49 +1522,28 @@ const deserializeAws_json1_1RejectDomainTransferFromAnotherAwsAccountCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RenewDomainCommand = async ( @@ -1976,65 +1571,34 @@ const deserializeAws_json1_1RenewDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResendContactReachabilityEmailCommand = async ( @@ -2062,49 +1626,28 @@ const deserializeAws_json1_1ResendContactReachabilityEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetrieveDomainAuthCodeCommand = async ( @@ -2132,41 +1675,25 @@ const deserializeAws_json1_1RetrieveDomainAuthCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TransferDomainCommand = async ( @@ -2194,73 +1721,37 @@ const deserializeAws_json1_1TransferDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DomainLimitExceeded": case "com.amazonaws.route53domains#DomainLimitExceeded": - response = { - ...(await deserializeAws_json1_1DomainLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DomainLimitExceededResponse(parsedOutput, context); case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TransferDomainToAnotherAwsAccountCommand = async ( @@ -2288,57 +1779,31 @@ const deserializeAws_json1_1TransferDomainToAnotherAwsAccountCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDomainContactCommand = async ( @@ -2366,65 +1831,34 @@ const deserializeAws_json1_1UpdateDomainContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDomainContactPrivacyCommand = async ( @@ -2452,65 +1886,34 @@ const deserializeAws_json1_1UpdateDomainContactPrivacyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDomainNameserversCommand = async ( @@ -2538,65 +1941,34 @@ const deserializeAws_json1_1UpdateDomainNameserversCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.route53domains#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "TLDRulesViolation": case "com.amazonaws.route53domains#TLDRulesViolation": - response = { - ...(await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TLDRulesViolationResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTagsForDomainCommand = async ( @@ -2624,49 +1996,28 @@ const deserializeAws_json1_1UpdateTagsForDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationLimitExceeded": case "com.amazonaws.route53domains#OperationLimitExceeded": - response = { - ...(await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationLimitExceededResponse(parsedOutput, context); case "UnsupportedTLD": case "com.amazonaws.route53domains#UnsupportedTLD": - response = { - ...(await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedTLDResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ViewBillingCommand = async ( @@ -2694,33 +2045,22 @@ const deserializeAws_json1_1ViewBillingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53domains#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DomainLimitExceededResponse = async ( @@ -2729,13 +2069,11 @@ const deserializeAws_json1_1DomainLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DomainLimitExceeded(body, context); - const contents: DomainLimitExceeded = { - name: "DomainLimitExceeded", - $fault: "client", + const exception = new DomainLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateRequestResponse = async ( @@ -2744,13 +2082,11 @@ const deserializeAws_json1_1DuplicateRequestResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateRequest(body, context); - const contents: DuplicateRequest = { - name: "DuplicateRequest", - $fault: "client", + const exception = new DuplicateRequest({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputResponse = async ( @@ -2759,13 +2095,11 @@ const deserializeAws_json1_1InvalidInputResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInput(body, context); - const contents: InvalidInput = { - name: "InvalidInput", - $fault: "client", + const exception = new InvalidInput({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationLimitExceededResponse = async ( @@ -2774,13 +2108,11 @@ const deserializeAws_json1_1OperationLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationLimitExceeded(body, context); - const contents: OperationLimitExceeded = { - name: "OperationLimitExceeded", - $fault: "client", + const exception = new OperationLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TLDRulesViolationResponse = async ( @@ -2789,13 +2121,11 @@ const deserializeAws_json1_1TLDRulesViolationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TLDRulesViolation(body, context); - const contents: TLDRulesViolation = { - name: "TLDRulesViolation", - $fault: "client", + const exception = new TLDRulesViolation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedTLDResponse = async ( @@ -2804,13 +2134,11 @@ const deserializeAws_json1_1UnsupportedTLDResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedTLD(body, context); - const contents: UnsupportedTLD = { - name: "UnsupportedTLD", - $fault: "client", + const exception = new UnsupportedTLD({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptDomainTransferFromAnotherAwsAccountRequest = ( diff --git a/clients/client-route-53/src/index.ts b/clients/client-route-53/src/index.ts index 7a4860ccf6c45..107dad409fab5 100644 --- a/clients/client-route-53/src/index.ts +++ b/clients/client-route-53/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { Route53ServiceException } from "./models/Route53ServiceException"; diff --git a/clients/client-route-53/src/models/Route53ServiceException.ts b/clients/client-route-53/src/models/Route53ServiceException.ts new file mode 100644 index 0000000000000..986552711ad28 --- /dev/null +++ b/clients/client-route-53/src/models/Route53ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Route53 service. + */ +export class Route53ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Route53ServiceException.prototype); + } +} diff --git a/clients/client-route-53/src/models/models_0.ts b/clients/client-route-53/src/models/models_0.ts index ae4581c73a81e..90653f5f0a133 100644 --- a/clients/client-route-53/src/models/models_0.ts +++ b/clients/client-route-53/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Route53ServiceException as __BaseException } from "./Route53ServiceException"; export type AccountLimitType = | "MAX_HEALTH_CHECKS_BY_OWNER" @@ -144,62 +147,116 @@ export namespace ActivateKeySigningKeyResponse { /** *

Another user submitted a request to create, update, or delete the object at the same time that you did. Retry the request.

*/ -export interface ConcurrentModification extends __SmithyException, $MetadataBearer { - name: "ConcurrentModification"; - $fault: "client"; +export class ConcurrentModification extends __BaseException { + readonly name: "ConcurrentModification" = "ConcurrentModification"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModification", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModification.prototype); + } } /** *

The input is not valid.

*/ -export interface InvalidInput extends __SmithyException, $MetadataBearer { - name: "InvalidInput"; - $fault: "client"; +export class InvalidInput extends __BaseException { + readonly name: "InvalidInput" = "InvalidInput"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInput", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInput.prototype); + } } /** *

The key-signing key (KSK) status isn't valid or another KSK has the status INTERNAL_FAILURE.

*/ -export interface InvalidKeySigningKeyStatus extends __SmithyException, $MetadataBearer { - name: "InvalidKeySigningKeyStatus"; - $fault: "client"; - message?: string; +export class InvalidKeySigningKeyStatus extends __BaseException { + readonly name: "InvalidKeySigningKeyStatus" = "InvalidKeySigningKeyStatus"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKeySigningKeyStatus", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKeySigningKeyStatus.prototype); + } } /** *

The KeyManagementServiceArn that you specified isn't valid to use with DNSSEC signing.

*/ -export interface InvalidKMSArn extends __SmithyException, $MetadataBearer { - name: "InvalidKMSArn"; - $fault: "client"; - message?: string; +export class InvalidKMSArn extends __BaseException { + readonly name: "InvalidKMSArn" = "InvalidKMSArn"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKMSArn", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKMSArn.prototype); + } } /** *

Your hosted zone status isn't valid for this operation. In the hosted zone, change the status to enable DNSSEC * or disable DNSSEC.

*/ -export interface InvalidSigningStatus extends __SmithyException, $MetadataBearer { - name: "InvalidSigningStatus"; - $fault: "client"; - message?: string; +export class InvalidSigningStatus extends __BaseException { + readonly name: "InvalidSigningStatus" = "InvalidSigningStatus"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSigningStatus", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSigningStatus.prototype); + } } /** *

The specified key-signing key (KSK) doesn't exist.

*/ -export interface NoSuchKeySigningKey extends __SmithyException, $MetadataBearer { - name: "NoSuchKeySigningKey"; - $fault: "client"; - message?: string; +export class NoSuchKeySigningKey extends __BaseException { + readonly name: "NoSuchKeySigningKey" = "NoSuchKeySigningKey"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchKeySigningKey", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchKeySigningKey.prototype); + } } export type CloudWatchRegion = @@ -785,22 +842,39 @@ export namespace AssociateVPCWithHostedZoneResponse { * * */ -export interface ConflictingDomainExists extends __SmithyException, $MetadataBearer { - name: "ConflictingDomainExists"; - $fault: "client"; - message?: string; +export class ConflictingDomainExists extends __BaseException { + readonly name: "ConflictingDomainExists" = "ConflictingDomainExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictingDomainExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictingDomainExists.prototype); + } } /** *

The VPC ID that you specified either isn't a valid ID or the current account is not authorized to access this VPC.

*/ -export interface InvalidVPCId extends __SmithyException, $MetadataBearer { - name: "InvalidVPCId"; - $fault: "client"; +export class InvalidVPCId extends __BaseException { + readonly name: "InvalidVPCId" = "InvalidVPCId"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidVPCId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidVPCId.prototype); + } } /** @@ -812,37 +886,58 @@ export interface InvalidVPCId extends __SmithyException, $MetadataBearer { * GetHostedZoneLimit. * To request a higher limit, create a case with the Amazon Web Services Support Center.

*/ -export interface LimitsExceeded extends __SmithyException, $MetadataBearer { - name: "LimitsExceeded"; - $fault: "client"; +export class LimitsExceeded extends __BaseException { + readonly name: "LimitsExceeded" = "LimitsExceeded"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitsExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitsExceeded.prototype); + } } /** *

No hosted zone exists with the ID that you specified.

*/ -export interface NoSuchHostedZone extends __SmithyException, $MetadataBearer { - name: "NoSuchHostedZone"; - $fault: "client"; +export class NoSuchHostedZone extends __BaseException { + readonly name: "NoSuchHostedZone" = "NoSuchHostedZone"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchHostedZone", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchHostedZone.prototype); + } } /** *

Associating the specified VPC with the specified hosted zone has not been authorized.

*/ -export interface NotAuthorizedException extends __SmithyException, $MetadataBearer { - name: "NotAuthorizedException"; - $fault: "client"; +export class NotAuthorizedException extends __BaseException { + readonly name: "NotAuthorizedException" = "NotAuthorizedException"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotAuthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotAuthorizedException.prototype); + } } /** @@ -852,23 +947,40 @@ export interface NotAuthorizedException extends __SmithyException, $MetadataBear * recommend that you wait, in intervals of increasing duration, before you try the request * again.

*/ -export interface PriorRequestNotComplete extends __SmithyException, $MetadataBearer { - name: "PriorRequestNotComplete"; - $fault: "client"; - message?: string; +export class PriorRequestNotComplete extends __BaseException { + readonly name: "PriorRequestNotComplete" = "PriorRequestNotComplete"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PriorRequestNotComplete", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PriorRequestNotComplete.prototype); + } } /** *

You're trying to associate a VPC with a public hosted zone. Amazon Route 53 doesn't support associating a * VPC with a public hosted zone.

*/ -export interface PublicZoneVPCAssociation extends __SmithyException, $MetadataBearer { - name: "PublicZoneVPCAssociation"; - $fault: "client"; +export class PublicZoneVPCAssociation extends __BaseException { + readonly name: "PublicZoneVPCAssociation" = "PublicZoneVPCAssociation"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PublicZoneVPCAssociation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PublicZoneVPCAssociation.prototype); + } } export type ChangeAction = "CREATE" | "DELETE" | "UPSERT"; @@ -1645,27 +1757,45 @@ export namespace ChangeResourceRecordSetsResponse { *

This exception contains a list of messages that might contain one or more error messages. Each error message indicates * one error in the change batch.

*/ -export interface InvalidChangeBatch extends __SmithyException, $MetadataBearer { - name: "InvalidChangeBatch"; - $fault: "client"; +export class InvalidChangeBatch extends __BaseException { + readonly name: "InvalidChangeBatch" = "InvalidChangeBatch"; + readonly $fault: "client" = "client"; /** *

*/ messages?: string[]; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidChangeBatch", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidChangeBatch.prototype); + this.messages = opts.messages; + } } /** *

No health check exists with the specified ID.

*/ -export interface NoSuchHealthCheck extends __SmithyException, $MetadataBearer { - name: "NoSuchHealthCheck"; - $fault: "client"; +export class NoSuchHealthCheck extends __BaseException { + readonly name: "NoSuchHealthCheck" = "NoSuchHealthCheck"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchHealthCheck", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchHealthCheck.prototype); + } } /** @@ -1787,10 +1917,20 @@ export namespace ChangeTagsForResourceResponse { /** *

The limit on the number of requests per second was exceeded.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } export type InsufficientDataHealthStatus = "Healthy" | "LastKnownStatus" | "Unhealthy"; @@ -2410,13 +2550,20 @@ export namespace CreateHealthCheckResponse { * * */ -export interface HealthCheckAlreadyExists extends __SmithyException, $MetadataBearer { - name: "HealthCheckAlreadyExists"; - $fault: "client"; +export class HealthCheckAlreadyExists extends __BaseException { + readonly name: "HealthCheckAlreadyExists" = "HealthCheckAlreadyExists"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HealthCheckAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HealthCheckAlreadyExists.prototype); + } } /** @@ -2430,10 +2577,20 @@ export interface HealthCheckAlreadyExists extends __SmithyException, $MetadataBe *

You have reached the maximum number of active health checks for an Amazon Web Services account. To request a higher limit, * create a case with the Amazon Web Services Support Center.

*/ -export interface TooManyHealthChecks extends __SmithyException, $MetadataBearer { - name: "TooManyHealthChecks"; - $fault: "client"; - message?: string; +export class TooManyHealthChecks extends __BaseException { + readonly name: "TooManyHealthChecks" = "TooManyHealthChecks"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyHealthChecks", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyHealthChecks.prototype); + } } /** @@ -2653,62 +2810,97 @@ export namespace CreateHostedZoneResponse { * limit to the number of hosted zones that have the same name. If you get this error, Amazon Route 53 has reached that limit. If you own * the domain name and Route 53 generates this error, contact Customer Support.

*/ -export interface DelegationSetNotAvailable extends __SmithyException, $MetadataBearer { - name: "DelegationSetNotAvailable"; - $fault: "client"; +export class DelegationSetNotAvailable extends __BaseException { + readonly name: "DelegationSetNotAvailable" = "DelegationSetNotAvailable"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DelegationSetNotAvailable", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DelegationSetNotAvailable.prototype); + } } /** *

A reusable delegation set with the specified ID does not exist.

*/ -export interface DelegationSetNotReusable extends __SmithyException, $MetadataBearer { - name: "DelegationSetNotReusable"; - $fault: "client"; +export class DelegationSetNotReusable extends __BaseException { + readonly name: "DelegationSetNotReusable" = "DelegationSetNotReusable"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DelegationSetNotReusable", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DelegationSetNotReusable.prototype); + } } /** *

The hosted zone you're trying to create already exists. Amazon Route 53 returns this error when a hosted zone has already been created * with the specified CallerReference.

*/ -export interface HostedZoneAlreadyExists extends __SmithyException, $MetadataBearer { - name: "HostedZoneAlreadyExists"; - $fault: "client"; +export class HostedZoneAlreadyExists extends __BaseException { + readonly name: "HostedZoneAlreadyExists" = "HostedZoneAlreadyExists"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HostedZoneAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HostedZoneAlreadyExists.prototype); + } } /** *

The specified domain name is not valid.

*/ -export interface InvalidDomainName extends __SmithyException, $MetadataBearer { - name: "InvalidDomainName"; - $fault: "client"; +export class InvalidDomainName extends __BaseException { + readonly name: "InvalidDomainName" = "InvalidDomainName"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDomainName", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDomainName.prototype); + } } /** *

A reusable delegation set with the specified ID does not exist.

*/ -export interface NoSuchDelegationSet extends __SmithyException, $MetadataBearer { - name: "NoSuchDelegationSet"; - $fault: "client"; +export class NoSuchDelegationSet extends __BaseException { + readonly name: "NoSuchDelegationSet" = "NoSuchDelegationSet"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchDelegationSet", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchDelegationSet.prototype); + } } /** @@ -2722,13 +2914,20 @@ export interface NoSuchDelegationSet extends __SmithyException, $MetadataBearer * GetReusableDelegationSetLimit.

*

To request a higher limit, create a case with the Amazon Web Services Support Center.

*/ -export interface TooManyHostedZones extends __SmithyException, $MetadataBearer { - name: "TooManyHostedZones"; - $fault: "client"; +export class TooManyHostedZones extends __BaseException { + readonly name: "TooManyHostedZones" = "TooManyHostedZones"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyHostedZones", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyHostedZones.prototype); + } } export interface CreateKeySigningKeyRequest { @@ -3020,40 +3219,77 @@ export namespace CreateKeySigningKeyResponse { /** *

Parameter name is not valid.

*/ -export interface InvalidArgument extends __SmithyException, $MetadataBearer { - name: "InvalidArgument"; - $fault: "client"; +export class InvalidArgument extends __BaseException { + readonly name: "InvalidArgument" = "InvalidArgument"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgument", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgument.prototype); + } } /** *

The key-signing key (KSK) name that you specified isn't a valid name.

*/ -export interface InvalidKeySigningKeyName extends __SmithyException, $MetadataBearer { - name: "InvalidKeySigningKeyName"; - $fault: "client"; - message?: string; +export class InvalidKeySigningKeyName extends __BaseException { + readonly name: "InvalidKeySigningKeyName" = "InvalidKeySigningKeyName"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKeySigningKeyName", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKeySigningKeyName.prototype); + } } /** *

You've already created a key-signing key (KSK) with this name or with the same customer managed key ARN.

*/ -export interface KeySigningKeyAlreadyExists extends __SmithyException, $MetadataBearer { - name: "KeySigningKeyAlreadyExists"; - $fault: "client"; - message?: string; +export class KeySigningKeyAlreadyExists extends __BaseException { + readonly name: "KeySigningKeyAlreadyExists" = "KeySigningKeyAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeySigningKeyAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KeySigningKeyAlreadyExists.prototype); + } } /** *

You've reached the limit for the number of key-signing keys (KSKs). Remove at least one KSK, and then try again.

*/ -export interface TooManyKeySigningKeys extends __SmithyException, $MetadataBearer { - name: "TooManyKeySigningKeys"; - $fault: "client"; - message?: string; +export class TooManyKeySigningKeys extends __BaseException { + readonly name: "TooManyKeySigningKeys" = "TooManyKeySigningKeys"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyKeySigningKeys", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyKeySigningKeys.prototype); + } } export interface CreateQueryLoggingConfigRequest { @@ -3157,29 +3393,59 @@ export namespace CreateQueryLoggingConfigResponse { * * */ -export interface InsufficientCloudWatchLogsResourcePolicy extends __SmithyException, $MetadataBearer { - name: "InsufficientCloudWatchLogsResourcePolicy"; - $fault: "client"; - message?: string; +export class InsufficientCloudWatchLogsResourcePolicy extends __BaseException { + readonly name: "InsufficientCloudWatchLogsResourcePolicy" = "InsufficientCloudWatchLogsResourcePolicy"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InsufficientCloudWatchLogsResourcePolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InsufficientCloudWatchLogsResourcePolicy.prototype); + } } /** *

There is no CloudWatch Logs log group with the specified ARN.

*/ -export interface NoSuchCloudWatchLogsLogGroup extends __SmithyException, $MetadataBearer { - name: "NoSuchCloudWatchLogsLogGroup"; - $fault: "client"; - message?: string; +export class NoSuchCloudWatchLogsLogGroup extends __BaseException { + readonly name: "NoSuchCloudWatchLogsLogGroup" = "NoSuchCloudWatchLogsLogGroup"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchCloudWatchLogsLogGroup", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchCloudWatchLogsLogGroup.prototype); + } } /** *

You can create only one query logging configuration for a hosted zone, and a query logging configuration already exists * for this hosted zone.

*/ -export interface QueryLoggingConfigAlreadyExists extends __SmithyException, $MetadataBearer { - name: "QueryLoggingConfigAlreadyExists"; - $fault: "client"; - message?: string; +export class QueryLoggingConfigAlreadyExists extends __BaseException { + readonly name: "QueryLoggingConfigAlreadyExists" = "QueryLoggingConfigAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueryLoggingConfigAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueryLoggingConfigAlreadyExists.prototype); + } } export interface CreateReusableDelegationSetRequest { @@ -3232,37 +3498,58 @@ export namespace CreateReusableDelegationSetResponse { /** *

A delegation set with the same owner and caller reference combination has already been created.

*/ -export interface DelegationSetAlreadyCreated extends __SmithyException, $MetadataBearer { - name: "DelegationSetAlreadyCreated"; - $fault: "client"; +export class DelegationSetAlreadyCreated extends __BaseException { + readonly name: "DelegationSetAlreadyCreated" = "DelegationSetAlreadyCreated"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DelegationSetAlreadyCreated", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DelegationSetAlreadyCreated.prototype); + } } /** *

The specified delegation set has already been marked as reusable.

*/ -export interface DelegationSetAlreadyReusable extends __SmithyException, $MetadataBearer { - name: "DelegationSetAlreadyReusable"; - $fault: "client"; +export class DelegationSetAlreadyReusable extends __BaseException { + readonly name: "DelegationSetAlreadyReusable" = "DelegationSetAlreadyReusable"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DelegationSetAlreadyReusable", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DelegationSetAlreadyReusable.prototype); + } } /** *

The specified HostedZone can't be found.

*/ -export interface HostedZoneNotFound extends __SmithyException, $MetadataBearer { - name: "HostedZoneNotFound"; - $fault: "client"; +export class HostedZoneNotFound extends __BaseException { + readonly name: "HostedZoneNotFound" = "HostedZoneNotFound"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HostedZoneNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HostedZoneNotFound.prototype); + } } /** @@ -3370,13 +3657,20 @@ export namespace CreateTrafficPolicyResponse { /** *

The format of the traffic policy document that you specified in the Document element is not valid.

*/ -export interface InvalidTrafficPolicyDocument extends __SmithyException, $MetadataBearer { - name: "InvalidTrafficPolicyDocument"; - $fault: "client"; +export class InvalidTrafficPolicyDocument extends __BaseException { + readonly name: "InvalidTrafficPolicyDocument" = "InvalidTrafficPolicyDocument"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTrafficPolicyDocument", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTrafficPolicyDocument.prototype); + } } /** @@ -3388,25 +3682,39 @@ export interface InvalidTrafficPolicyDocument extends __SmithyException, $Metada *

*

To request a higher limit, create a case with the Amazon Web Services Support Center.

*/ -export interface TooManyTrafficPolicies extends __SmithyException, $MetadataBearer { - name: "TooManyTrafficPolicies"; - $fault: "client"; +export class TooManyTrafficPolicies extends __BaseException { + readonly name: "TooManyTrafficPolicies" = "TooManyTrafficPolicies"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTrafficPolicies", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTrafficPolicies.prototype); + } } /** *

A traffic policy that has the same value for Name already exists.

*/ -export interface TrafficPolicyAlreadyExists extends __SmithyException, $MetadataBearer { - name: "TrafficPolicyAlreadyExists"; - $fault: "client"; +export class TrafficPolicyAlreadyExists extends __BaseException { + readonly name: "TrafficPolicyAlreadyExists" = "TrafficPolicyAlreadyExists"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrafficPolicyAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrafficPolicyAlreadyExists.prototype); + } } /** @@ -3553,13 +3861,20 @@ export namespace CreateTrafficPolicyInstanceResponse { /** *

No traffic policy exists with the specified ID.

*/ -export interface NoSuchTrafficPolicy extends __SmithyException, $MetadataBearer { - name: "NoSuchTrafficPolicy"; - $fault: "client"; +export class NoSuchTrafficPolicy extends __BaseException { + readonly name: "NoSuchTrafficPolicy" = "NoSuchTrafficPolicy"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchTrafficPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchTrafficPolicy.prototype); + } } /** @@ -3572,25 +3887,39 @@ export interface NoSuchTrafficPolicy extends __SmithyException, $MetadataBearer * GetAccountLimit.

*

To request a higher limit, create a case with the Amazon Web Services Support Center.

*/ -export interface TooManyTrafficPolicyInstances extends __SmithyException, $MetadataBearer { - name: "TooManyTrafficPolicyInstances"; - $fault: "client"; +export class TooManyTrafficPolicyInstances extends __BaseException { + readonly name: "TooManyTrafficPolicyInstances" = "TooManyTrafficPolicyInstances"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTrafficPolicyInstances", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTrafficPolicyInstances.prototype); + } } /** *

There is already a traffic policy instance with the specified ID.

*/ -export interface TrafficPolicyInstanceAlreadyExists extends __SmithyException, $MetadataBearer { - name: "TrafficPolicyInstanceAlreadyExists"; - $fault: "client"; +export class TrafficPolicyInstanceAlreadyExists extends __BaseException { + readonly name: "TrafficPolicyInstanceAlreadyExists" = "TrafficPolicyInstanceAlreadyExists"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrafficPolicyInstanceAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrafficPolicyInstanceAlreadyExists.prototype); + } } /** @@ -3657,13 +3986,20 @@ export namespace CreateTrafficPolicyVersionResponse { * CreateTrafficPolicy * to create a new traffic policy using the traffic policy document.

*/ -export interface TooManyTrafficPolicyVersionsForCurrentPolicy extends __SmithyException, $MetadataBearer { - name: "TooManyTrafficPolicyVersionsForCurrentPolicy"; - $fault: "client"; +export class TooManyTrafficPolicyVersionsForCurrentPolicy extends __BaseException { + readonly name: "TooManyTrafficPolicyVersionsForCurrentPolicy" = "TooManyTrafficPolicyVersionsForCurrentPolicy"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTrafficPolicyVersionsForCurrentPolicy", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTrafficPolicyVersionsForCurrentPolicy.prototype); + } } /** @@ -3722,13 +4058,20 @@ export namespace CreateVPCAssociationAuthorizationResponse { * to remove an existing authorization. To get a list of existing authorizations, submit a * ListVPCAssociationAuthorizations request.

*/ -export interface TooManyVPCAssociationAuthorizations extends __SmithyException, $MetadataBearer { - name: "TooManyVPCAssociationAuthorizations"; - $fault: "client"; +export class TooManyVPCAssociationAuthorizations extends __BaseException { + readonly name: "TooManyVPCAssociationAuthorizations" = "TooManyVPCAssociationAuthorizations"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyVPCAssociationAuthorizations", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyVPCAssociationAuthorizations.prototype); + } } export interface DeactivateKeySigningKeyRequest { @@ -3772,20 +4115,40 @@ export namespace DeactivateKeySigningKeyResponse { /** *

The key-signing key (KSK) is specified in a parent DS record.

*/ -export interface KeySigningKeyInParentDSRecord extends __SmithyException, $MetadataBearer { - name: "KeySigningKeyInParentDSRecord"; - $fault: "client"; - message?: string; +export class KeySigningKeyInParentDSRecord extends __BaseException { + readonly name: "KeySigningKeyInParentDSRecord" = "KeySigningKeyInParentDSRecord"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeySigningKeyInParentDSRecord", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KeySigningKeyInParentDSRecord.prototype); + } } /** *

The key-signing key (KSK) that you specified can't be deactivated because it's the only KSK for a * currently-enabled DNSSEC. Disable DNSSEC signing, or add or enable another KSK.

*/ -export interface KeySigningKeyInUse extends __SmithyException, $MetadataBearer { - name: "KeySigningKeyInUse"; - $fault: "client"; - message?: string; +export class KeySigningKeyInUse extends __BaseException { + readonly name: "KeySigningKeyInUse" = "KeySigningKeyInUse"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeySigningKeyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KeySigningKeyInUse.prototype); + } } /** @@ -3826,13 +4189,20 @@ export namespace DeleteHealthCheckResponse { * *

This error code is not in use.

*/ -export interface HealthCheckInUse extends __SmithyException, $MetadataBearer { - name: "HealthCheckInUse"; - $fault: "client"; +export class HealthCheckInUse extends __BaseException { + readonly name: "HealthCheckInUse" = "HealthCheckInUse"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HealthCheckInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HealthCheckInUse.prototype); + } } /** @@ -3876,13 +4246,20 @@ export namespace DeleteHostedZoneResponse { /** *

The hosted zone contains resource records that are not SOA or NS records.

*/ -export interface HostedZoneNotEmpty extends __SmithyException, $MetadataBearer { - name: "HostedZoneNotEmpty"; - $fault: "client"; +export class HostedZoneNotEmpty extends __BaseException { + readonly name: "HostedZoneNotEmpty" = "HostedZoneNotEmpty"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HostedZoneNotEmpty", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HostedZoneNotEmpty.prototype); + } } export interface DeleteKeySigningKeyRequest { @@ -3953,23 +4330,40 @@ export namespace DeleteQueryLoggingConfigResponse { /** *

There is no DNS query logging configuration with the specified ID.

*/ -export interface NoSuchQueryLoggingConfig extends __SmithyException, $MetadataBearer { - name: "NoSuchQueryLoggingConfig"; - $fault: "client"; - message?: string; +export class NoSuchQueryLoggingConfig extends __BaseException { + readonly name: "NoSuchQueryLoggingConfig" = "NoSuchQueryLoggingConfig"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchQueryLoggingConfig", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchQueryLoggingConfig.prototype); + } } /** *

The specified delegation contains associated hosted zones which must be deleted before the reusable delegation set * can be deleted.

*/ -export interface DelegationSetInUse extends __SmithyException, $MetadataBearer { - name: "DelegationSetInUse"; - $fault: "client"; +export class DelegationSetInUse extends __BaseException { + readonly name: "DelegationSetInUse" = "DelegationSetInUse"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DelegationSetInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DelegationSetInUse.prototype); + } } /** @@ -4046,13 +4440,20 @@ export namespace DeleteTrafficPolicyResponse { /** *

One or more traffic policy instances were created by using the specified traffic policy.

*/ -export interface TrafficPolicyInUse extends __SmithyException, $MetadataBearer { - name: "TrafficPolicyInUse"; - $fault: "client"; +export class TrafficPolicyInUse extends __BaseException { + readonly name: "TrafficPolicyInUse" = "TrafficPolicyInUse"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrafficPolicyInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrafficPolicyInUse.prototype); + } } /** @@ -4095,13 +4496,20 @@ export namespace DeleteTrafficPolicyInstanceResponse { /** *

No traffic policy instance exists with the specified ID.

*/ -export interface NoSuchTrafficPolicyInstance extends __SmithyException, $MetadataBearer { - name: "NoSuchTrafficPolicyInstance"; - $fault: "client"; +export class NoSuchTrafficPolicyInstance extends __BaseException { + readonly name: "NoSuchTrafficPolicyInstance" = "NoSuchTrafficPolicyInstance"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchTrafficPolicyInstance", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchTrafficPolicyInstance.prototype); + } } /** @@ -4148,13 +4556,20 @@ export namespace DeleteVPCAssociationAuthorizationResponse { /** *

The VPC that you specified is not authorized to be associated with the hosted zone.

*/ -export interface VPCAssociationAuthorizationNotFound extends __SmithyException, $MetadataBearer { - name: "VPCAssociationAuthorizationNotFound"; - $fault: "client"; +export class VPCAssociationAuthorizationNotFound extends __BaseException { + readonly name: "VPCAssociationAuthorizationNotFound" = "VPCAssociationAuthorizationNotFound"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "VPCAssociationAuthorizationNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VPCAssociationAuthorizationNotFound.prototype); + } } export interface DisableHostedZoneDNSSECRequest { @@ -4193,10 +4608,20 @@ export namespace DisableHostedZoneDNSSECResponse { /** *

The hosted zone doesn't have any DNSSEC resources.

*/ -export interface DNSSECNotFound extends __SmithyException, $MetadataBearer { - name: "DNSSECNotFound"; - $fault: "client"; - message?: string; +export class DNSSECNotFound extends __BaseException { + readonly name: "DNSSECNotFound" = "DNSSECNotFound"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DNSSECNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DNSSECNotFound.prototype); + } } /** @@ -4254,25 +4679,39 @@ export namespace DisassociateVPCFromHostedZoneResponse { *

The VPC that you're trying to disassociate from the private hosted zone is the last VPC that is associated with * the hosted zone. Amazon Route 53 doesn't support disassociating the last VPC from a hosted zone.

*/ -export interface LastVPCAssociation extends __SmithyException, $MetadataBearer { - name: "LastVPCAssociation"; - $fault: "client"; +export class LastVPCAssociation extends __BaseException { + readonly name: "LastVPCAssociation" = "LastVPCAssociation"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LastVPCAssociation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LastVPCAssociation.prototype); + } } /** *

The specified VPC and hosted zone are not currently associated.

*/ -export interface VPCAssociationNotFound extends __SmithyException, $MetadataBearer { - name: "VPCAssociationNotFound"; - $fault: "client"; +export class VPCAssociationNotFound extends __BaseException { + readonly name: "VPCAssociationNotFound" = "VPCAssociationNotFound"; + readonly $fault: "client" = "client"; /** - *

The specified VPC or hosted zone weren't found.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "VPCAssociationNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VPCAssociationNotFound.prototype); + } } export interface EnableHostedZoneDNSSECRequest { @@ -4311,19 +4750,39 @@ export namespace EnableHostedZoneDNSSECResponse { /** *

The hosted zone nameservers don't match the parent nameservers. The hosted zone and parent must have the same nameservers.

*/ -export interface HostedZonePartiallyDelegated extends __SmithyException, $MetadataBearer { - name: "HostedZonePartiallyDelegated"; - $fault: "client"; - message?: string; +export class HostedZonePartiallyDelegated extends __BaseException { + readonly name: "HostedZonePartiallyDelegated" = "HostedZonePartiallyDelegated"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HostedZonePartiallyDelegated", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HostedZonePartiallyDelegated.prototype); + } } /** *

A key-signing key (KSK) with ACTIVE status wasn't found.

*/ -export interface KeySigningKeyWithActiveStatusNotFound extends __SmithyException, $MetadataBearer { - name: "KeySigningKeyWithActiveStatusNotFound"; - $fault: "client"; - message?: string; +export class KeySigningKeyWithActiveStatusNotFound extends __BaseException { + readonly name: "KeySigningKeyWithActiveStatusNotFound" = "KeySigningKeyWithActiveStatusNotFound"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KeySigningKeyWithActiveStatusNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KeySigningKeyWithActiveStatusNotFound.prototype); + } } /** @@ -4443,10 +4902,20 @@ export namespace GetChangeResponse { /** *

A change with the specified change ID does not exist.

*/ -export interface NoSuchChange extends __SmithyException, $MetadataBearer { - name: "NoSuchChange"; - $fault: "client"; - message?: string; +export class NoSuchChange extends __BaseException { + readonly name: "NoSuchChange" = "NoSuchChange"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchChange", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchChange.prototype); + } } /** @@ -4699,13 +5168,20 @@ export namespace GetGeoLocationResponse { *

Amazon Route 53 doesn't support the specified geographic location. For a list of supported geolocation codes, see the * GeoLocation data type.

*/ -export interface NoSuchGeoLocation extends __SmithyException, $MetadataBearer { - name: "NoSuchGeoLocation"; - $fault: "client"; +export class NoSuchGeoLocation extends __BaseException { + readonly name: "NoSuchGeoLocation" = "NoSuchGeoLocation"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchGeoLocation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchGeoLocation.prototype); + } } /** @@ -4751,10 +5227,20 @@ export namespace GetHealthCheckResponse { /** *

The resource you're trying to access is unsupported on this Amazon Route 53 endpoint.

*/ -export interface IncompatibleVersion extends __SmithyException, $MetadataBearer { - name: "IncompatibleVersion"; - $fault: "client"; - message?: string; +export class IncompatibleVersion extends __BaseException { + readonly name: "IncompatibleVersion" = "IncompatibleVersion"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatibleVersion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatibleVersion.prototype); + } } /** @@ -5119,13 +5605,20 @@ export namespace GetHostedZoneLimitResponse { /** *

The specified hosted zone is a public hosted zone, not a private hosted zone.

*/ -export interface HostedZoneNotPrivate extends __SmithyException, $MetadataBearer { - name: "HostedZoneNotPrivate"; - $fault: "client"; +export class HostedZoneNotPrivate extends __BaseException { + readonly name: "HostedZoneNotPrivate" = "HostedZoneNotPrivate"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HostedZoneNotPrivate", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HostedZoneNotPrivate.prototype); + } } export interface GetQueryLoggingConfigRequest { @@ -5739,10 +6232,20 @@ export namespace ListHostedZonesByNameResponse { /** *

The value that you specified to get the second or subsequent page of results is invalid.

*/ -export interface InvalidPaginationToken extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationToken"; - $fault: "client"; - message?: string; +export class InvalidPaginationToken extends __BaseException { + readonly name: "InvalidPaginationToken" = "InvalidPaginationToken"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationToken.prototype); + } } /** @@ -6957,10 +7460,20 @@ export namespace TestDNSAnswerResponse { *

The value of HealthCheckVersion in the request doesn't match the value of HealthCheckVersion * in the health check.

*/ -export interface HealthCheckVersionMismatch extends __SmithyException, $MetadataBearer { - name: "HealthCheckVersionMismatch"; - $fault: "client"; - message?: string; +export class HealthCheckVersionMismatch extends __BaseException { + readonly name: "HealthCheckVersionMismatch" = "HealthCheckVersionMismatch"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HealthCheckVersionMismatch", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HealthCheckVersionMismatch.prototype); + } } export type ResettableElementName = "ChildHealthChecks" | "FullyQualifiedDomainName" | "Regions" | "ResourcePath"; @@ -7415,13 +7928,20 @@ export namespace UpdateTrafficPolicyCommentResponse { * than the current type for the instance. You specified the type in the JSON document in the CreateTrafficPolicy or * CreateTrafficPolicyVersionrequest.

*/ -export interface ConflictingTypes extends __SmithyException, $MetadataBearer { - name: "ConflictingTypes"; - $fault: "client"; +export class ConflictingTypes extends __BaseException { + readonly name: "ConflictingTypes" = "ConflictingTypes"; + readonly $fault: "client" = "client"; /** - *

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictingTypes", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictingTypes.prototype); + } } /** diff --git a/clients/client-route-53/src/protocols/Aws_restXml.ts b/clients/client-route-53/src/protocols/Aws_restXml.ts index 4862e2ba2de10..8f00e879cda76 100644 --- a/clients/client-route-53/src/protocols/Aws_restXml.ts +++ b/clients/client-route-53/src/protocols/Aws_restXml.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { XmlNode as __XmlNode, XmlText as __XmlText } from "@aws-sdk/xml-builder"; import { decodeHTML } from "entities"; @@ -322,6 +321,7 @@ import { VPCAssociationAuthorizationNotFound, VPCAssociationNotFound, } from "../models/models_0"; +import { Route53ServiceException as __BaseException } from "../models/Route53ServiceException"; export const serializeAws_restXmlActivateKeySigningKeyCommand = async ( input: ActivateKeySigningKeyCommandInput, @@ -2619,73 +2619,37 @@ const deserializeAws_restXmlActivateKeySigningKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidKeySigningKeyStatus": case "com.amazonaws.route53#InvalidKeySigningKeyStatus": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context); case "InvalidKMSArn": case "com.amazonaws.route53#InvalidKMSArn": - response = { - ...(await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context); case "InvalidSigningStatus": case "com.amazonaws.route53#InvalidSigningStatus": - response = { - ...(await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context); case "NoSuchKeySigningKey": case "com.amazonaws.route53#NoSuchKeySigningKey": - response = { - ...(await deserializeAws_restXmlNoSuchKeySigningKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchKeySigningKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlAssociateVPCWithHostedZoneCommand = async ( @@ -2714,89 +2678,43 @@ const deserializeAws_restXmlAssociateVPCWithHostedZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingDomainExists": case "com.amazonaws.route53#ConflictingDomainExists": - response = { - ...(await deserializeAws_restXmlConflictingDomainExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConflictingDomainExistsResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidVPCId": case "com.amazonaws.route53#InvalidVPCId": - response = { - ...(await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context); case "LimitsExceeded": case "com.amazonaws.route53#LimitsExceeded": - response = { - ...(await deserializeAws_restXmlLimitsExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlLimitsExceededResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "NotAuthorizedException": case "com.amazonaws.route53#NotAuthorizedException": - response = { - ...(await deserializeAws_restXmlNotAuthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotAuthorizedExceptionResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); case "PublicZoneVPCAssociation": case "com.amazonaws.route53#PublicZoneVPCAssociation": - response = { - ...(await deserializeAws_restXmlPublicZoneVPCAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPublicZoneVPCAssociationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlChangeResourceRecordSetsCommand = async ( @@ -2825,65 +2743,34 @@ const deserializeAws_restXmlChangeResourceRecordSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidChangeBatch": case "com.amazonaws.route53#InvalidChangeBatch": - response = { - ...(await deserializeAws_restXmlInvalidChangeBatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidChangeBatchResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlChangeTagsForResourceCommand = async ( @@ -2908,65 +2795,34 @@ const deserializeAws_restXmlChangeTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53#ThrottlingException": - response = { - ...(await deserializeAws_restXmlThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateHealthCheckCommand = async ( @@ -2999,49 +2855,28 @@ const deserializeAws_restXmlCreateHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "HealthCheckAlreadyExists": case "com.amazonaws.route53#HealthCheckAlreadyExists": - response = { - ...(await deserializeAws_restXmlHealthCheckAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHealthCheckAlreadyExistsResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "TooManyHealthChecks": case "com.amazonaws.route53#TooManyHealthChecks": - response = { - ...(await deserializeAws_restXmlTooManyHealthChecksResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHealthChecksResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateHostedZoneCommand = async ( @@ -3086,97 +2921,46 @@ const deserializeAws_restXmlCreateHostedZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingDomainExists": case "com.amazonaws.route53#ConflictingDomainExists": - response = { - ...(await deserializeAws_restXmlConflictingDomainExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConflictingDomainExistsResponse(parsedOutput, context); case "DelegationSetNotAvailable": case "com.amazonaws.route53#DelegationSetNotAvailable": - response = { - ...(await deserializeAws_restXmlDelegationSetNotAvailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetNotAvailableResponse(parsedOutput, context); case "DelegationSetNotReusable": case "com.amazonaws.route53#DelegationSetNotReusable": - response = { - ...(await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context); case "HostedZoneAlreadyExists": case "com.amazonaws.route53#HostedZoneAlreadyExists": - response = { - ...(await deserializeAws_restXmlHostedZoneAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHostedZoneAlreadyExistsResponse(parsedOutput, context); case "InvalidDomainName": case "com.amazonaws.route53#InvalidDomainName": - response = { - ...(await deserializeAws_restXmlInvalidDomainNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidDomainNameResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidVPCId": case "com.amazonaws.route53#InvalidVPCId": - response = { - ...(await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context); case "NoSuchDelegationSet": case "com.amazonaws.route53#NoSuchDelegationSet": - response = { - ...(await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context); case "TooManyHostedZones": case "com.amazonaws.route53#TooManyHostedZones": - response = { - ...(await deserializeAws_restXmlTooManyHostedZonesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyHostedZonesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateKeySigningKeyCommand = async ( @@ -3213,105 +2997,49 @@ const deserializeAws_restXmlCreateKeySigningKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.route53#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidKeySigningKeyName": case "com.amazonaws.route53#InvalidKeySigningKeyName": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyNameResponse(parsedOutput, context); case "InvalidKeySigningKeyStatus": case "com.amazonaws.route53#InvalidKeySigningKeyStatus": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context); case "InvalidKMSArn": case "com.amazonaws.route53#InvalidKMSArn": - response = { - ...(await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context); case "InvalidSigningStatus": case "com.amazonaws.route53#InvalidSigningStatus": - response = { - ...(await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context); case "KeySigningKeyAlreadyExists": case "com.amazonaws.route53#KeySigningKeyAlreadyExists": - response = { - ...(await deserializeAws_restXmlKeySigningKeyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeySigningKeyAlreadyExistsResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "TooManyKeySigningKeys": case "com.amazonaws.route53#TooManyKeySigningKeys": - response = { - ...(await deserializeAws_restXmlTooManyKeySigningKeysResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyKeySigningKeysResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateQueryLoggingConfigCommand = async ( @@ -3344,73 +3072,37 @@ const deserializeAws_restXmlCreateQueryLoggingConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InsufficientCloudWatchLogsResourcePolicy": case "com.amazonaws.route53#InsufficientCloudWatchLogsResourcePolicy": - response = { - ...(await deserializeAws_restXmlInsufficientCloudWatchLogsResourcePolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInsufficientCloudWatchLogsResourcePolicyResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchCloudWatchLogsLogGroup": case "com.amazonaws.route53#NoSuchCloudWatchLogsLogGroup": - response = { - ...(await deserializeAws_restXmlNoSuchCloudWatchLogsLogGroupResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchCloudWatchLogsLogGroupResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "QueryLoggingConfigAlreadyExists": case "com.amazonaws.route53#QueryLoggingConfigAlreadyExists": - response = { - ...(await deserializeAws_restXmlQueryLoggingConfigAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlQueryLoggingConfigAlreadyExistsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateReusableDelegationSetCommand = async ( @@ -3443,81 +3135,40 @@ const deserializeAws_restXmlCreateReusableDelegationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "DelegationSetAlreadyCreated": case "com.amazonaws.route53#DelegationSetAlreadyCreated": - response = { - ...(await deserializeAws_restXmlDelegationSetAlreadyCreatedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetAlreadyCreatedResponse(parsedOutput, context); case "DelegationSetAlreadyReusable": case "com.amazonaws.route53#DelegationSetAlreadyReusable": - response = { - ...(await deserializeAws_restXmlDelegationSetAlreadyReusableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetAlreadyReusableResponse(parsedOutput, context); case "DelegationSetNotAvailable": case "com.amazonaws.route53#DelegationSetNotAvailable": - response = { - ...(await deserializeAws_restXmlDelegationSetNotAvailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetNotAvailableResponse(parsedOutput, context); case "HostedZoneNotFound": case "com.amazonaws.route53#HostedZoneNotFound": - response = { - ...(await deserializeAws_restXmlHostedZoneNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHostedZoneNotFoundResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.route53#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "LimitsExceeded": case "com.amazonaws.route53#LimitsExceeded": - response = { - ...(await deserializeAws_restXmlLimitsExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlLimitsExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateTrafficPolicyCommand = async ( @@ -3550,57 +3201,31 @@ const deserializeAws_restXmlCreateTrafficPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidTrafficPolicyDocument": case "com.amazonaws.route53#InvalidTrafficPolicyDocument": - response = { - ...(await deserializeAws_restXmlInvalidTrafficPolicyDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTrafficPolicyDocumentResponse(parsedOutput, context); case "TooManyTrafficPolicies": case "com.amazonaws.route53#TooManyTrafficPolicies": - response = { - ...(await deserializeAws_restXmlTooManyTrafficPoliciesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrafficPoliciesResponse(parsedOutput, context); case "TrafficPolicyAlreadyExists": case "com.amazonaws.route53#TrafficPolicyAlreadyExists": - response = { - ...(await deserializeAws_restXmlTrafficPolicyAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrafficPolicyAlreadyExistsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateTrafficPolicyInstanceCommand = async ( @@ -3636,65 +3261,34 @@ const deserializeAws_restXmlCreateTrafficPolicyInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); case "TooManyTrafficPolicyInstances": case "com.amazonaws.route53#TooManyTrafficPolicyInstances": - response = { - ...(await deserializeAws_restXmlTooManyTrafficPolicyInstancesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrafficPolicyInstancesResponse(parsedOutput, context); case "TrafficPolicyInstanceAlreadyExists": case "com.amazonaws.route53#TrafficPolicyInstanceAlreadyExists": - response = { - ...(await deserializeAws_restXmlTrafficPolicyInstanceAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrafficPolicyInstanceAlreadyExistsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateTrafficPolicyVersionCommand = async ( @@ -3727,65 +3321,34 @@ const deserializeAws_restXmlCreateTrafficPolicyVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidTrafficPolicyDocument": case "com.amazonaws.route53#InvalidTrafficPolicyDocument": - response = { - ...(await deserializeAws_restXmlInvalidTrafficPolicyDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidTrafficPolicyDocumentResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); case "TooManyTrafficPolicyVersionsForCurrentPolicy": case "com.amazonaws.route53#TooManyTrafficPolicyVersionsForCurrentPolicy": - response = { - ...(await deserializeAws_restXmlTooManyTrafficPolicyVersionsForCurrentPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTrafficPolicyVersionsForCurrentPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateVPCAssociationAuthorizationCommand = async ( @@ -3818,65 +3381,34 @@ const deserializeAws_restXmlCreateVPCAssociationAuthorizationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidVPCId": case "com.amazonaws.route53#InvalidVPCId": - response = { - ...(await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "TooManyVPCAssociationAuthorizations": case "com.amazonaws.route53#TooManyVPCAssociationAuthorizations": - response = { - ...(await deserializeAws_restXmlTooManyVPCAssociationAuthorizationsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyVPCAssociationAuthorizationsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeactivateKeySigningKeyCommand = async ( @@ -3905,81 +3437,40 @@ const deserializeAws_restXmlDeactivateKeySigningKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidKeySigningKeyStatus": case "com.amazonaws.route53#InvalidKeySigningKeyStatus": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context); case "InvalidSigningStatus": case "com.amazonaws.route53#InvalidSigningStatus": - response = { - ...(await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context); case "KeySigningKeyInParentDSRecord": case "com.amazonaws.route53#KeySigningKeyInParentDSRecord": - response = { - ...(await deserializeAws_restXmlKeySigningKeyInParentDSRecordResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeySigningKeyInParentDSRecordResponse(parsedOutput, context); case "KeySigningKeyInUse": case "com.amazonaws.route53#KeySigningKeyInUse": - response = { - ...(await deserializeAws_restXmlKeySigningKeyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeySigningKeyInUseResponse(parsedOutput, context); case "NoSuchKeySigningKey": case "com.amazonaws.route53#NoSuchKeySigningKey": - response = { - ...(await deserializeAws_restXmlNoSuchKeySigningKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchKeySigningKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteHealthCheckCommand = async ( @@ -4004,49 +3495,28 @@ const deserializeAws_restXmlDeleteHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "HealthCheckInUse": case "com.amazonaws.route53#HealthCheckInUse": - response = { - ...(await deserializeAws_restXmlHealthCheckInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHealthCheckInUseResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteHostedZoneCommand = async ( @@ -4075,65 +3545,34 @@ const deserializeAws_restXmlDeleteHostedZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "HostedZoneNotEmpty": case "com.amazonaws.route53#HostedZoneNotEmpty": - response = { - ...(await deserializeAws_restXmlHostedZoneNotEmptyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHostedZoneNotEmptyResponse(parsedOutput, context); case "InvalidDomainName": case "com.amazonaws.route53#InvalidDomainName": - response = { - ...(await deserializeAws_restXmlInvalidDomainNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidDomainNameResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteKeySigningKeyCommand = async ( @@ -4162,73 +3601,37 @@ const deserializeAws_restXmlDeleteKeySigningKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidKeySigningKeyStatus": case "com.amazonaws.route53#InvalidKeySigningKeyStatus": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context); case "InvalidKMSArn": case "com.amazonaws.route53#InvalidKMSArn": - response = { - ...(await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context); case "InvalidSigningStatus": case "com.amazonaws.route53#InvalidSigningStatus": - response = { - ...(await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidSigningStatusResponse(parsedOutput, context); case "NoSuchKeySigningKey": case "com.amazonaws.route53#NoSuchKeySigningKey": - response = { - ...(await deserializeAws_restXmlNoSuchKeySigningKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchKeySigningKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteQueryLoggingConfigCommand = async ( @@ -4253,49 +3656,28 @@ const deserializeAws_restXmlDeleteQueryLoggingConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchQueryLoggingConfig": case "com.amazonaws.route53#NoSuchQueryLoggingConfig": - response = { - ...(await deserializeAws_restXmlNoSuchQueryLoggingConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchQueryLoggingConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteReusableDelegationSetCommand = async ( @@ -4320,57 +3702,31 @@ const deserializeAws_restXmlDeleteReusableDelegationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "DelegationSetInUse": case "com.amazonaws.route53#DelegationSetInUse": - response = { - ...(await deserializeAws_restXmlDelegationSetInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetInUseResponse(parsedOutput, context); case "DelegationSetNotReusable": case "com.amazonaws.route53#DelegationSetNotReusable": - response = { - ...(await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchDelegationSet": case "com.amazonaws.route53#NoSuchDelegationSet": - response = { - ...(await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteTrafficPolicyCommand = async ( @@ -4395,57 +3751,31 @@ const deserializeAws_restXmlDeleteTrafficPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); case "TrafficPolicyInUse": case "com.amazonaws.route53#TrafficPolicyInUse": - response = { - ...(await deserializeAws_restXmlTrafficPolicyInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTrafficPolicyInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteTrafficPolicyInstanceCommand = async ( @@ -4470,49 +3800,28 @@ const deserializeAws_restXmlDeleteTrafficPolicyInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicyInstance": case "com.amazonaws.route53#NoSuchTrafficPolicyInstance": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteVPCAssociationAuthorizationCommand = async ( @@ -4537,65 +3846,34 @@ const deserializeAws_restXmlDeleteVPCAssociationAuthorizationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidVPCId": case "com.amazonaws.route53#InvalidVPCId": - response = { - ...(await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "VPCAssociationAuthorizationNotFound": case "com.amazonaws.route53#VPCAssociationAuthorizationNotFound": - response = { - ...(await deserializeAws_restXmlVPCAssociationAuthorizationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlVPCAssociationAuthorizationNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDisableHostedZoneDNSSECCommand = async ( @@ -4624,89 +3902,43 @@ const deserializeAws_restXmlDisableHostedZoneDNSSECCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "DNSSECNotFound": case "com.amazonaws.route53#DNSSECNotFound": - response = { - ...(await deserializeAws_restXmlDNSSECNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDNSSECNotFoundResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.route53#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidKeySigningKeyStatus": case "com.amazonaws.route53#InvalidKeySigningKeyStatus": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context); case "InvalidKMSArn": case "com.amazonaws.route53#InvalidKMSArn": - response = { - ...(await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context); case "KeySigningKeyInParentDSRecord": case "com.amazonaws.route53#KeySigningKeyInParentDSRecord": - response = { - ...(await deserializeAws_restXmlKeySigningKeyInParentDSRecordResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeySigningKeyInParentDSRecordResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDisassociateVPCFromHostedZoneCommand = async ( @@ -4735,65 +3967,34 @@ const deserializeAws_restXmlDisassociateVPCFromHostedZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidVPCId": case "com.amazonaws.route53#InvalidVPCId": - response = { - ...(await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidVPCIdResponse(parsedOutput, context); case "LastVPCAssociation": case "com.amazonaws.route53#LastVPCAssociation": - response = { - ...(await deserializeAws_restXmlLastVPCAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlLastVPCAssociationResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "VPCAssociationNotFound": case "com.amazonaws.route53#VPCAssociationNotFound": - response = { - ...(await deserializeAws_restXmlVPCAssociationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlVPCAssociationNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlEnableHostedZoneDNSSECCommand = async ( @@ -4822,97 +4023,46 @@ const deserializeAws_restXmlEnableHostedZoneDNSSECCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "DNSSECNotFound": case "com.amazonaws.route53#DNSSECNotFound": - response = { - ...(await deserializeAws_restXmlDNSSECNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDNSSECNotFoundResponse(parsedOutput, context); case "HostedZonePartiallyDelegated": case "com.amazonaws.route53#HostedZonePartiallyDelegated": - response = { - ...(await deserializeAws_restXmlHostedZonePartiallyDelegatedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHostedZonePartiallyDelegatedResponse(parsedOutput, context); case "InvalidArgument": case "com.amazonaws.route53#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidKeySigningKeyStatus": case "com.amazonaws.route53#InvalidKeySigningKeyStatus": - response = { - ...(await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKeySigningKeyStatusResponse(parsedOutput, context); case "InvalidKMSArn": case "com.amazonaws.route53#InvalidKMSArn": - response = { - ...(await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidKMSArnResponse(parsedOutput, context); case "KeySigningKeyWithActiveStatusNotFound": case "com.amazonaws.route53#KeySigningKeyWithActiveStatusNotFound": - response = { - ...(await deserializeAws_restXmlKeySigningKeyWithActiveStatusNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlKeySigningKeyWithActiveStatusNotFoundResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccountLimitCommand = async ( @@ -4945,33 +4095,22 @@ const deserializeAws_restXmlGetAccountLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetChangeCommand = async ( @@ -5000,41 +4139,25 @@ const deserializeAws_restXmlGetChangeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchChange": case "com.amazonaws.route53#NoSuchChange": - response = { - ...(await deserializeAws_restXmlNoSuchChangeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchChangeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetCheckerIpRangesCommand = async ( @@ -5069,25 +4192,19 @@ const deserializeAws_restXmlGetCheckerIpRangesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetDNSSECCommand = async ( @@ -5126,49 +4243,28 @@ const deserializeAws_restXmlGetDNSSECCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArgument": case "com.amazonaws.route53#InvalidArgument": - response = { - ...(await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidArgumentResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetGeoLocationCommand = async ( @@ -5197,41 +4293,25 @@ const deserializeAws_restXmlGetGeoLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchGeoLocation": case "com.amazonaws.route53#NoSuchGeoLocation": - response = { - ...(await deserializeAws_restXmlNoSuchGeoLocationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchGeoLocationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHealthCheckCommand = async ( @@ -5260,49 +4340,28 @@ const deserializeAws_restXmlGetHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "IncompatibleVersion": case "com.amazonaws.route53#IncompatibleVersion": - response = { - ...(await deserializeAws_restXmlIncompatibleVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIncompatibleVersionResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHealthCheckCountCommand = async ( @@ -5331,25 +4390,19 @@ const deserializeAws_restXmlGetHealthCheckCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHealthCheckLastFailureReasonCommand = async ( @@ -5387,41 +4440,25 @@ const deserializeAws_restXmlGetHealthCheckLastFailureReasonCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHealthCheckStatusCommand = async ( @@ -5459,41 +4496,25 @@ const deserializeAws_restXmlGetHealthCheckStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHostedZoneCommand = async ( @@ -5533,41 +4554,25 @@ const deserializeAws_restXmlGetHostedZoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHostedZoneCountCommand = async ( @@ -5596,33 +4601,22 @@ const deserializeAws_restXmlGetHostedZoneCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetHostedZoneLimitCommand = async ( @@ -5655,49 +4649,28 @@ const deserializeAws_restXmlGetHostedZoneLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "HostedZoneNotPrivate": case "com.amazonaws.route53#HostedZoneNotPrivate": - response = { - ...(await deserializeAws_restXmlHostedZoneNotPrivateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHostedZoneNotPrivateResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetQueryLoggingConfigCommand = async ( @@ -5726,41 +4699,25 @@ const deserializeAws_restXmlGetQueryLoggingConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchQueryLoggingConfig": case "com.amazonaws.route53#NoSuchQueryLoggingConfig": - response = { - ...(await deserializeAws_restXmlNoSuchQueryLoggingConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchQueryLoggingConfigResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetReusableDelegationSetCommand = async ( @@ -5789,49 +4746,28 @@ const deserializeAws_restXmlGetReusableDelegationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "DelegationSetNotReusable": case "com.amazonaws.route53#DelegationSetNotReusable": - response = { - ...(await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchDelegationSet": case "com.amazonaws.route53#NoSuchDelegationSet": - response = { - ...(await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetReusableDelegationSetLimitCommand = async ( @@ -5864,41 +4800,25 @@ const deserializeAws_restXmlGetReusableDelegationSetLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchDelegationSet": case "com.amazonaws.route53#NoSuchDelegationSet": - response = { - ...(await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetTrafficPolicyCommand = async ( @@ -5927,41 +4847,25 @@ const deserializeAws_restXmlGetTrafficPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetTrafficPolicyInstanceCommand = async ( @@ -5993,41 +4897,25 @@ const deserializeAws_restXmlGetTrafficPolicyInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicyInstance": case "com.amazonaws.route53#NoSuchTrafficPolicyInstance": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetTrafficPolicyInstanceCountCommand = async ( @@ -6056,25 +4944,19 @@ const deserializeAws_restXmlGetTrafficPolicyInstanceCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListGeoLocationsCommand = async ( @@ -6132,33 +5014,22 @@ const deserializeAws_restXmlListGeoLocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListHealthChecksCommand = async ( @@ -6209,41 +5080,25 @@ const deserializeAws_restXmlListHealthChecksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "IncompatibleVersion": case "com.amazonaws.route53#IncompatibleVersion": - response = { - ...(await deserializeAws_restXmlIncompatibleVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIncompatibleVersionResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListHostedZonesCommand = async ( @@ -6294,49 +5149,28 @@ const deserializeAws_restXmlListHostedZonesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "DelegationSetNotReusable": case "com.amazonaws.route53#DelegationSetNotReusable": - response = { - ...(await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlDelegationSetNotReusableResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchDelegationSet": case "com.amazonaws.route53#NoSuchDelegationSet": - response = { - ...(await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchDelegationSetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListHostedZonesByNameCommand = async ( @@ -6395,41 +5229,25 @@ const deserializeAws_restXmlListHostedZonesByNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidDomainName": case "com.amazonaws.route53#InvalidDomainName": - response = { - ...(await deserializeAws_restXmlInvalidDomainNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidDomainNameResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListHostedZonesByVPCCommand = async ( @@ -6472,41 +5290,25 @@ const deserializeAws_restXmlListHostedZonesByVPCCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidPaginationToken": case "com.amazonaws.route53#InvalidPaginationToken": - response = { - ...(await deserializeAws_restXmlInvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidPaginationTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListQueryLoggingConfigsCommand = async ( @@ -6545,49 +5347,28 @@ const deserializeAws_restXmlListQueryLoggingConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidPaginationToken": case "com.amazonaws.route53#InvalidPaginationToken": - response = { - ...(await deserializeAws_restXmlInvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidPaginationTokenResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListResourceRecordSetsCommand = async ( @@ -6642,41 +5423,25 @@ const deserializeAws_restXmlListResourceRecordSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListReusableDelegationSetsCommand = async ( @@ -6727,33 +5492,22 @@ const deserializeAws_restXmlListReusableDelegationSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTagsForResourceCommand = async ( @@ -6782,65 +5536,34 @@ const deserializeAws_restXmlListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53#ThrottlingException": - response = { - ...(await deserializeAws_restXmlThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTagsForResourcesCommand = async ( @@ -6875,65 +5598,34 @@ const deserializeAws_restXmlListTagsForResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53#ThrottlingException": - response = { - ...(await deserializeAws_restXmlThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTrafficPoliciesCommand = async ( @@ -6983,33 +5675,22 @@ const deserializeAws_restXmlListTrafficPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTrafficPolicyInstancesCommand = async ( @@ -7067,41 +5748,25 @@ const deserializeAws_restXmlListTrafficPolicyInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicyInstance": case "com.amazonaws.route53#NoSuchTrafficPolicyInstance": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTrafficPolicyInstancesByHostedZoneCommand = async ( @@ -7155,49 +5820,28 @@ const deserializeAws_restXmlListTrafficPolicyInstancesByHostedZoneCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "NoSuchTrafficPolicyInstance": case "com.amazonaws.route53#NoSuchTrafficPolicyInstance": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTrafficPolicyInstancesByPolicyCommand = async ( @@ -7255,49 +5899,28 @@ const deserializeAws_restXmlListTrafficPolicyInstancesByPolicyCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); case "NoSuchTrafficPolicyInstance": case "com.amazonaws.route53#NoSuchTrafficPolicyInstance": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListTrafficPolicyVersionsCommand = async ( @@ -7344,41 +5967,25 @@ const deserializeAws_restXmlListTrafficPolicyVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListVPCAssociationAuthorizationsCommand = async ( @@ -7418,49 +6025,28 @@ const deserializeAws_restXmlListVPCAssociationAuthorizationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "InvalidPaginationToken": case "com.amazonaws.route53#InvalidPaginationToken": - response = { - ...(await deserializeAws_restXmlInvalidPaginationTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidPaginationTokenResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlTestDNSAnswerCommand = async ( @@ -7515,41 +6101,25 @@ const deserializeAws_restXmlTestDNSAnswerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateHealthCheckCommand = async ( @@ -7578,49 +6148,28 @@ const deserializeAws_restXmlUpdateHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "HealthCheckVersionMismatch": case "com.amazonaws.route53#HealthCheckVersionMismatch": - response = { - ...(await deserializeAws_restXmlHealthCheckVersionMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlHealthCheckVersionMismatchResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHealthCheck": case "com.amazonaws.route53#NoSuchHealthCheck": - response = { - ...(await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHealthCheckResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateHostedZoneCommentCommand = async ( @@ -7649,49 +6198,28 @@ const deserializeAws_restXmlUpdateHostedZoneCommentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchHostedZone": case "com.amazonaws.route53#NoSuchHostedZone": - response = { - ...(await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchHostedZoneResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateTrafficPolicyCommentCommand = async ( @@ -7720,49 +6248,28 @@ const deserializeAws_restXmlUpdateTrafficPolicyCommentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModification": case "com.amazonaws.route53#ConcurrentModification": - response = { - ...(await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConcurrentModificationResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateTrafficPolicyInstanceCommand = async ( @@ -7794,418 +6301,361 @@ const deserializeAws_restXmlUpdateTrafficPolicyInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingTypes": case "com.amazonaws.route53#ConflictingTypes": - response = { - ...(await deserializeAws_restXmlConflictingTypesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlConflictingTypesResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.route53#InvalidInput": - response = { - ...(await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidInputResponse(parsedOutput, context); case "NoSuchTrafficPolicy": case "com.amazonaws.route53#NoSuchTrafficPolicy": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyResponse(parsedOutput, context); case "NoSuchTrafficPolicyInstance": case "com.amazonaws.route53#NoSuchTrafficPolicyInstance": - response = { - ...(await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse(parsedOutput, context); case "PriorRequestNotComplete": case "com.amazonaws.route53#PriorRequestNotComplete": - response = { - ...(await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlPriorRequestNotCompleteResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restXmlConcurrentModificationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModification = { - name: "ConcurrentModification", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new ConcurrentModification({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlConflictingDomainExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictingDomainExists = { - name: "ConflictingDomainExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new ConflictingDomainExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlConflictingTypesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictingTypes = { - name: "ConflictingTypes", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new ConflictingTypes({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDelegationSetAlreadyCreatedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DelegationSetAlreadyCreated = { - name: "DelegationSetAlreadyCreated", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new DelegationSetAlreadyCreated({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDelegationSetAlreadyReusableResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DelegationSetAlreadyReusable = { - name: "DelegationSetAlreadyReusable", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new DelegationSetAlreadyReusable({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDelegationSetInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DelegationSetInUse = { - name: "DelegationSetInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new DelegationSetInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDelegationSetNotAvailableResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DelegationSetNotAvailable = { - name: "DelegationSetNotAvailable", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new DelegationSetNotAvailable({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDelegationSetNotReusableResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DelegationSetNotReusable = { - name: "DelegationSetNotReusable", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new DelegationSetNotReusable({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlDNSSECNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DNSSECNotFound = { - name: "DNSSECNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new DNSSECNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHealthCheckAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HealthCheckAlreadyExists = { - name: "HealthCheckAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HealthCheckAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHealthCheckInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HealthCheckInUse = { - name: "HealthCheckInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HealthCheckInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHealthCheckVersionMismatchResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HealthCheckVersionMismatch = { - name: "HealthCheckVersionMismatch", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HealthCheckVersionMismatch({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHostedZoneAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HostedZoneAlreadyExists = { - name: "HostedZoneAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HostedZoneAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHostedZoneNotEmptyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HostedZoneNotEmpty = { - name: "HostedZoneNotEmpty", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HostedZoneNotEmpty({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHostedZoneNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HostedZoneNotFound = { - name: "HostedZoneNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HostedZoneNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHostedZoneNotPrivateResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HostedZoneNotPrivate = { - name: "HostedZoneNotPrivate", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HostedZoneNotPrivate({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlHostedZonePartiallyDelegatedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: HostedZonePartiallyDelegated = { - name: "HostedZonePartiallyDelegated", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new HostedZonePartiallyDelegated({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlIncompatibleVersionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IncompatibleVersion = { - name: "IncompatibleVersion", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new IncompatibleVersion({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInsufficientCloudWatchLogsResourcePolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InsufficientCloudWatchLogsResourcePolicy = { - name: "InsufficientCloudWatchLogsResourcePolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InsufficientCloudWatchLogsResourcePolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidArgumentResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgument = { - name: "InvalidArgument", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidArgument({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidChangeBatchResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidChangeBatch = { - name: "InvalidChangeBatch", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - messages: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); @@ -8219,721 +6669,683 @@ const deserializeAws_restXmlInvalidChangeBatchResponse = async ( context ); } - return contents; + const exception = new InvalidChangeBatch({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidDomainNameResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidDomainName = { - name: "InvalidDomainName", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidDomainName({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidInputResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidInput = { - name: "InvalidInput", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidInput({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidKeySigningKeyNameResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidKeySigningKeyName = { - name: "InvalidKeySigningKeyName", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidKeySigningKeyName({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidKeySigningKeyStatusResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidKeySigningKeyStatus = { - name: "InvalidKeySigningKeyStatus", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidKeySigningKeyStatus({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidKMSArnResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidKMSArn = { - name: "InvalidKMSArn", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidKMSArn({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidPaginationTokenResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidPaginationToken = { - name: "InvalidPaginationToken", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidPaginationToken({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidSigningStatusResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidSigningStatus = { - name: "InvalidSigningStatus", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidSigningStatus({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidTrafficPolicyDocumentResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidTrafficPolicyDocument = { - name: "InvalidTrafficPolicyDocument", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidTrafficPolicyDocument({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidVPCIdResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidVPCId = { - name: "InvalidVPCId", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new InvalidVPCId({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlKeySigningKeyAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KeySigningKeyAlreadyExists = { - name: "KeySigningKeyAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new KeySigningKeyAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlKeySigningKeyInParentDSRecordResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KeySigningKeyInParentDSRecord = { - name: "KeySigningKeyInParentDSRecord", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new KeySigningKeyInParentDSRecord({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlKeySigningKeyInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KeySigningKeyInUse = { - name: "KeySigningKeyInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new KeySigningKeyInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlKeySigningKeyWithActiveStatusNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: KeySigningKeyWithActiveStatusNotFound = { - name: "KeySigningKeyWithActiveStatusNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new KeySigningKeyWithActiveStatusNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlLastVPCAssociationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LastVPCAssociation = { - name: "LastVPCAssociation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new LastVPCAssociation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlLimitsExceededResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitsExceeded = { - name: "LimitsExceeded", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new LimitsExceeded({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchChangeResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchChange = { - name: "NoSuchChange", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchChange({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchCloudWatchLogsLogGroupResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchCloudWatchLogsLogGroup = { - name: "NoSuchCloudWatchLogsLogGroup", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchCloudWatchLogsLogGroup({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchDelegationSetResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchDelegationSet = { - name: "NoSuchDelegationSet", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchDelegationSet({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchGeoLocationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchGeoLocation = { - name: "NoSuchGeoLocation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchGeoLocation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchHealthCheckResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchHealthCheck = { - name: "NoSuchHealthCheck", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchHealthCheck({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchHostedZoneResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchHostedZone = { - name: "NoSuchHostedZone", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchHostedZone({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchKeySigningKeyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchKeySigningKey = { - name: "NoSuchKeySigningKey", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchKeySigningKey({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchQueryLoggingConfigResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchQueryLoggingConfig = { - name: "NoSuchQueryLoggingConfig", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchQueryLoggingConfig({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchTrafficPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchTrafficPolicy = { - name: "NoSuchTrafficPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchTrafficPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchTrafficPolicyInstanceResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchTrafficPolicyInstance = { - name: "NoSuchTrafficPolicyInstance", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NoSuchTrafficPolicyInstance({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNotAuthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotAuthorizedException = { - name: "NotAuthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new NotAuthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlPriorRequestNotCompleteResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PriorRequestNotComplete = { - name: "PriorRequestNotComplete", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new PriorRequestNotComplete({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlPublicZoneVPCAssociationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PublicZoneVPCAssociation = { - name: "PublicZoneVPCAssociation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new PublicZoneVPCAssociation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlQueryLoggingConfigAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: QueryLoggingConfigAlreadyExists = { - name: "QueryLoggingConfigAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new QueryLoggingConfigAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyHealthChecksResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyHealthChecks = { - name: "TooManyHealthChecks", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyHealthChecks({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyHostedZonesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyHostedZones = { - name: "TooManyHostedZones", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyHostedZones({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyKeySigningKeysResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyKeySigningKeys = { - name: "TooManyKeySigningKeys", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyKeySigningKeys({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyTrafficPoliciesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTrafficPolicies = { - name: "TooManyTrafficPolicies", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyTrafficPolicies({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyTrafficPolicyInstancesResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTrafficPolicyInstances = { - name: "TooManyTrafficPolicyInstances", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyTrafficPolicyInstances({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyTrafficPolicyVersionsForCurrentPolicyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTrafficPolicyVersionsForCurrentPolicy = { - name: "TooManyTrafficPolicyVersionsForCurrentPolicy", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyTrafficPolicyVersionsForCurrentPolicy({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyVPCAssociationAuthorizationsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyVPCAssociationAuthorizations = { - name: "TooManyVPCAssociationAuthorizations", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TooManyVPCAssociationAuthorizations({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTrafficPolicyAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TrafficPolicyAlreadyExists = { - name: "TrafficPolicyAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TrafficPolicyAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTrafficPolicyInstanceAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TrafficPolicyInstanceAlreadyExists = { - name: "TrafficPolicyInstanceAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TrafficPolicyInstanceAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTrafficPolicyInUseResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TrafficPolicyInUse = { - name: "TrafficPolicyInUse", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new TrafficPolicyInUse({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlVPCAssociationAuthorizationNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: VPCAssociationAuthorizationNotFound = { - name: "VPCAssociationAuthorizationNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new VPCAssociationAuthorizationNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlVPCAssociationNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: VPCAssociationNotFound = { - name: "VPCAssociationNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["message"] !== undefined) { contents.message = __expectString(data["message"]); } - return contents; + const exception = new VPCAssociationNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const serializeAws_restXmlAlarmIdentifier = (input: AlarmIdentifier, context: __SerdeContext): any => { diff --git a/clients/client-route53-recovery-cluster/src/index.ts b/clients/client-route53-recovery-cluster/src/index.ts index 8219d0a4ba08c..2743491bb5552 100644 --- a/clients/client-route53-recovery-cluster/src/index.ts +++ b/clients/client-route53-recovery-cluster/src/index.ts @@ -2,3 +2,4 @@ export * from "./Route53RecoveryCluster"; export * from "./Route53RecoveryClusterClient"; export * from "./commands"; export * from "./models"; +export { Route53RecoveryClusterServiceException } from "./models/Route53RecoveryClusterServiceException"; diff --git a/clients/client-route53-recovery-cluster/src/models/Route53RecoveryClusterServiceException.ts b/clients/client-route53-recovery-cluster/src/models/Route53RecoveryClusterServiceException.ts new file mode 100644 index 0000000000000..cdf9694a50803 --- /dev/null +++ b/clients/client-route53-recovery-cluster/src/models/Route53RecoveryClusterServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Route53RecoveryCluster service. + */ +export class Route53RecoveryClusterServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Route53RecoveryClusterServiceException.prototype); + } +} diff --git a/clients/client-route53-recovery-cluster/src/models/models_0.ts b/clients/client-route53-recovery-cluster/src/models/models_0.ts index 8a68661407383..b96fc451565e8 100644 --- a/clients/client-route53-recovery-cluster/src/models/models_0.ts +++ b/clients/client-route53-recovery-cluster/src/models/models_0.ts @@ -1,25 +1,33 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Route53RecoveryClusterServiceException as __BaseException } from "./Route53RecoveryClusterServiceException"; /** *

You don't have sufficient permissions to query the routing control state.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

There was a conflict with this request. Try again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - /** - * Description of the ConflictException error - */ - message: string | undefined; - +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** * Identifier of the resource in use */ @@ -29,15 +37,39 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * Type of the resource in use */ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

The cluster endpoint isn't available. Try another cluster endpoint.

*/ -export interface EndpointTemporarilyUnavailableException extends __SmithyException, $MetadataBearer { - name: "EndpointTemporarilyUnavailableException"; - $fault: "server"; - message: string | undefined; +export class EndpointTemporarilyUnavailableException extends __BaseException { + readonly name: "EndpointTemporarilyUnavailableException" = "EndpointTemporarilyUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointTemporarilyUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, EndpointTemporarilyUnavailableException.prototype); + } } export interface GetRoutingControlStateRequest { @@ -85,23 +117,34 @@ export namespace GetRoutingControlStateResponse { /** *

There was an unexpected error during processing of the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** * Advice to clients on when the call can be safely retried */ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The request references a routing control that was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** * Hypothetical resource identifier that was not found */ @@ -111,19 +154,45 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * Hypothetical resource type that was not found */ resourceType: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

The request was denied because of request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** * Advice to clients on when the call can be safely retried */ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -160,10 +229,9 @@ export enum ValidationExceptionReason { /** *

There was a validation error on the request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** * Reason the request failed validation */ @@ -173,6 +241,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer * The fields that caused the error, if applicable */ fields?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fields = opts.fields; + } } export interface UpdateRoutingControlStateRequest { diff --git a/clients/client-route53-recovery-cluster/src/protocols/Aws_json1_0.ts b/clients/client-route53-recovery-cluster/src/protocols/Aws_json1_0.ts index f07b6b8773df4..bfc09ae9c69f2 100644 --- a/clients/client-route53-recovery-cluster/src/protocols/Aws_json1_0.ts +++ b/clients/client-route53-recovery-cluster/src/protocols/Aws_json1_0.ts @@ -1,12 +1,14 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; -import { expectInt32 as __expectInt32, expectString as __expectString } from "@aws-sdk/smithy-client"; +import { + decorateServiceException as __decorateServiceException, + expectInt32 as __expectInt32, + expectString as __expectString, +} from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -38,6 +40,7 @@ import { ValidationException, ValidationExceptionField, } from "../models/models_0"; +import { Route53RecoveryClusterServiceException as __BaseException } from "../models/Route53RecoveryClusterServiceException"; export const serializeAws_json1_0GetRoutingControlStateCommand = async ( input: GetRoutingControlStateCommandInput, @@ -103,73 +106,37 @@ const deserializeAws_json1_0GetRoutingControlStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycluster#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "EndpointTemporarilyUnavailableException": case "com.amazonaws.route53recoverycluster#EndpointTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycluster#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycluster#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycluster#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycluster#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateRoutingControlStateCommand = async ( @@ -197,81 +164,40 @@ const deserializeAws_json1_0UpdateRoutingControlStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycluster#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycluster#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "EndpointTemporarilyUnavailableException": case "com.amazonaws.route53recoverycluster#EndpointTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycluster#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycluster#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycluster#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycluster#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateRoutingControlStatesCommand = async ( @@ -299,81 +225,40 @@ const deserializeAws_json1_0UpdateRoutingControlStatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycluster#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycluster#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "EndpointTemporarilyUnavailableException": case "com.amazonaws.route53recoverycluster#EndpointTemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycluster#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycluster#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycluster#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycluster#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -382,13 +267,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -397,13 +280,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse = async ( @@ -412,13 +293,11 @@ const deserializeAws_json1_0EndpointTemporarilyUnavailableExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0EndpointTemporarilyUnavailableException(body, context); - const contents: EndpointTemporarilyUnavailableException = { - name: "EndpointTemporarilyUnavailableException", - $fault: "server", + const exception = new EndpointTemporarilyUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -427,13 +306,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -442,13 +319,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -457,13 +332,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -472,13 +345,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0GetRoutingControlStateRequest = ( diff --git a/clients/client-route53-recovery-control-config/src/index.ts b/clients/client-route53-recovery-control-config/src/index.ts index ee22407b55d2d..691b509c9680d 100644 --- a/clients/client-route53-recovery-control-config/src/index.ts +++ b/clients/client-route53-recovery-control-config/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { Route53RecoveryControlConfigServiceException } from "./models/Route53RecoveryControlConfigServiceException"; diff --git a/clients/client-route53-recovery-control-config/src/models/Route53RecoveryControlConfigServiceException.ts b/clients/client-route53-recovery-control-config/src/models/Route53RecoveryControlConfigServiceException.ts new file mode 100644 index 0000000000000..92209b71db14f --- /dev/null +++ b/clients/client-route53-recovery-control-config/src/models/Route53RecoveryControlConfigServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Route53RecoveryControlConfig service. + */ +export class Route53RecoveryControlConfigServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Route53RecoveryControlConfigServiceException.prototype); + } +} diff --git a/clients/client-route53-recovery-control-config/src/models/models_0.ts b/clients/client-route53-recovery-control-config/src/models/models_0.ts index 914290fa34368..a8e58579d095a 100644 --- a/clients/client-route53-recovery-control-config/src/models/models_0.ts +++ b/clients/client-route53-recovery-control-config/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Route53RecoveryControlConfigServiceException as __BaseException } from "./Route53RecoveryControlConfigServiceException"; /** *

A cluster endpoint. Specify an endpoint when you want to set or retrieve a routing control state in the cluster.

@@ -307,10 +310,22 @@ export namespace Rule { /** *

403 response - You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -345,10 +360,22 @@ export namespace AssertionRuleUpdate { /** *

409 response - ConflictException. You might be using a predefined variable.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -399,46 +426,106 @@ export namespace CreateClusterResponse { /** *

500 response - InternalServiceError. Temporary service error. Retry the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

404 response - MalformedQueryString. The query string contains a syntax error or resource not found..

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

402 response - You attempted to create more resources than the service allows based on service quotas.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

429 response - LimitExceededException or TooManyRequestsException.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

400 response - Multiple causes. For example, you might have a malformed query string and input parameter might be out of range, or you might have used parameters together incorrectly.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-route53-recovery-control-config/src/protocols/Aws_restJson1.ts b/clients/client-route53-recovery-control-config/src/protocols/Aws_restJson1.ts index ff0b1538804bb..c1e9c436a571e 100644 --- a/clients/client-route53-recovery-control-config/src/protocols/Aws_restJson1.ts +++ b/clients/client-route53-recovery-control-config/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -84,6 +83,7 @@ import { ThrottlingException, ValidationException, } from "../models/models_0"; +import { Route53RecoveryControlConfigServiceException as __BaseException } from "../models/Route53RecoveryControlConfigServiceException"; export const serializeAws_restJson1CreateClusterCommand = async ( input: CreateClusterCommandInput, @@ -791,81 +791,40 @@ const deserializeAws_restJson1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.route53recoverycontrolconfig#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateControlPanelCommand = async ( @@ -894,81 +853,40 @@ const deserializeAws_restJson1CreateControlPanelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.route53recoverycontrolconfig#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRoutingControlCommand = async ( @@ -997,81 +915,40 @@ const deserializeAws_restJson1CreateRoutingControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.route53recoverycontrolconfig#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSafetyRuleCommand = async ( @@ -1104,41 +981,25 @@ const deserializeAws_restJson1CreateSafetyRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteClusterCommand = async ( @@ -1163,73 +1024,37 @@ const deserializeAws_restJson1DeleteClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteControlPanelCommand = async ( @@ -1254,73 +1079,37 @@ const deserializeAws_restJson1DeleteControlPanelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRoutingControlCommand = async ( @@ -1345,73 +1134,37 @@ const deserializeAws_restJson1DeleteRoutingControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSafetyRuleCommand = async ( @@ -1436,49 +1189,28 @@ const deserializeAws_restJson1DeleteSafetyRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeClusterCommand = async ( @@ -1507,73 +1239,37 @@ const deserializeAws_restJson1DescribeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeControlPanelCommand = async ( @@ -1602,73 +1298,37 @@ const deserializeAws_restJson1DescribeControlPanelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRoutingControlCommand = async ( @@ -1697,73 +1357,37 @@ const deserializeAws_restJson1DescribeRoutingControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSafetyRuleCommand = async ( @@ -1796,41 +1420,25 @@ const deserializeAws_restJson1DescribeSafetyRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssociatedRoute53HealthChecksCommand = async ( @@ -1863,49 +1471,28 @@ const deserializeAws_restJson1ListAssociatedRoute53HealthChecksCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListClustersCommand = async ( @@ -1938,65 +1525,34 @@ const deserializeAws_restJson1ListClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListControlPanelsCommand = async ( @@ -2029,65 +1585,34 @@ const deserializeAws_restJson1ListControlPanelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRoutingControlsCommand = async ( @@ -2120,65 +1645,34 @@ const deserializeAws_restJson1ListRoutingControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSafetyRulesCommand = async ( @@ -2211,65 +1705,34 @@ const deserializeAws_restJson1ListSafetyRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2298,49 +1761,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2365,49 +1807,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2432,49 +1853,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateControlPanelCommand = async ( @@ -2503,73 +1903,37 @@ const deserializeAws_restJson1UpdateControlPanelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRoutingControlCommand = async ( @@ -2598,73 +1962,37 @@ const deserializeAws_restJson1UpdateRoutingControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoverycontrolconfig#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoverycontrolconfig#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoverycontrolconfig#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSafetyRuleCommand = async ( @@ -2697,168 +2025,140 @@ const deserializeAws_restJson1UpdateSafetyRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoverycontrolconfig#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoverycontrolconfig#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoverycontrolconfig#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__stringMin1Max256PatternAZaZ09 = ( diff --git a/clients/client-route53-recovery-readiness/src/index.ts b/clients/client-route53-recovery-readiness/src/index.ts index 23340c4ccf0ec..f145745b5e121 100644 --- a/clients/client-route53-recovery-readiness/src/index.ts +++ b/clients/client-route53-recovery-readiness/src/index.ts @@ -3,3 +3,4 @@ export * from "./Route53RecoveryReadinessClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { Route53RecoveryReadinessServiceException } from "./models/Route53RecoveryReadinessServiceException"; diff --git a/clients/client-route53-recovery-readiness/src/models/Route53RecoveryReadinessServiceException.ts b/clients/client-route53-recovery-readiness/src/models/Route53RecoveryReadinessServiceException.ts new file mode 100644 index 0000000000000..c50caa671d834 --- /dev/null +++ b/clients/client-route53-recovery-readiness/src/models/Route53RecoveryReadinessServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Route53RecoveryReadiness service. + */ +export class Route53RecoveryReadinessServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Route53RecoveryReadinessServiceException.prototype); + } +} diff --git a/clients/client-route53-recovery-readiness/src/models/models_0.ts b/clients/client-route53-recovery-readiness/src/models/models_0.ts index b4356efe4535b..dede490a2a685 100644 --- a/clients/client-route53-recovery-readiness/src/models/models_0.ts +++ b/clients/client-route53-recovery-readiness/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Route53RecoveryReadinessServiceException as __BaseException } from "./Route53RecoveryReadinessServiceException"; /** *

Information about a cell.

@@ -455,19 +458,43 @@ export namespace RuleResult { /** * User does not have sufficient access to perform this action. */ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** * Updating or deleting a resource can cause an inconsistent state. */ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export interface CreateCellRequest { @@ -535,28 +562,64 @@ export namespace CreateCellResponse { /** * An unexpected error occurred. */ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** * Request was denied due to request throttling. */ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** * The input fails to satisfy the constraints specified by an AWS service. */ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface CreateCrossAccountAuthorizationRequest { @@ -791,10 +854,22 @@ export namespace DeleteCellRequest { /** * The requested resource does not exist. */ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteCrossAccountAuthorizationRequest { diff --git a/clients/client-route53-recovery-readiness/src/protocols/Aws_restJson1.ts b/clients/client-route53-recovery-readiness/src/protocols/Aws_restJson1.ts index 2abf99aeca8a4..7cf115f97e393 100644 --- a/clients/client-route53-recovery-readiness/src/protocols/Aws_restJson1.ts +++ b/clients/client-route53-recovery-readiness/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateCellCommandInput, CreateCellCommandOutput } from "../commands/CreateCellCommand"; @@ -117,6 +116,7 @@ import { ThrottlingException, ValidationException, } from "../models/models_0"; +import { Route53RecoveryReadinessServiceException as __BaseException } from "../models/Route53RecoveryReadinessServiceException"; export const serializeAws_restJson1CreateCellCommand = async ( input: CreateCellCommandInput, @@ -1122,65 +1122,34 @@ const deserializeAws_restJson1CreateCellCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoveryreadiness#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCrossAccountAuthorizationCommand = async ( @@ -1209,65 +1178,34 @@ const deserializeAws_restJson1CreateCrossAccountAuthorizationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoveryreadiness#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateReadinessCheckCommand = async ( @@ -1308,65 +1246,34 @@ const deserializeAws_restJson1CreateReadinessCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoveryreadiness#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRecoveryGroupCommand = async ( @@ -1407,65 +1314,34 @@ const deserializeAws_restJson1CreateRecoveryGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoveryreadiness#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResourceSetCommand = async ( @@ -1510,65 +1386,34 @@ const deserializeAws_restJson1CreateResourceSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53recoveryreadiness#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCellCommand = async ( @@ -1593,65 +1438,34 @@ const deserializeAws_restJson1DeleteCellCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCrossAccountAuthorizationCommand = async ( @@ -1676,57 +1490,31 @@ const deserializeAws_restJson1DeleteCrossAccountAuthorizationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReadinessCheckCommand = async ( @@ -1751,65 +1539,34 @@ const deserializeAws_restJson1DeleteReadinessCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecoveryGroupCommand = async ( @@ -1834,65 +1591,34 @@ const deserializeAws_restJson1DeleteRecoveryGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourceSetCommand = async ( @@ -1917,65 +1643,34 @@ const deserializeAws_restJson1DeleteResourceSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetArchitectureRecommendationsCommand = async ( @@ -2012,65 +1707,34 @@ const deserializeAws_restJson1GetArchitectureRecommendationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCellCommand = async ( @@ -2115,65 +1779,34 @@ const deserializeAws_restJson1GetCellCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCellReadinessSummaryCommand = async ( @@ -2210,65 +1843,34 @@ const deserializeAws_restJson1GetCellReadinessSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReadinessCheckCommand = async ( @@ -2309,65 +1911,34 @@ const deserializeAws_restJson1GetReadinessCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReadinessCheckResourceStatusCommand = async ( @@ -2404,65 +1975,34 @@ const deserializeAws_restJson1GetReadinessCheckResourceStatusCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReadinessCheckStatusCommand = async ( @@ -2503,65 +2043,34 @@ const deserializeAws_restJson1GetReadinessCheckStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecoveryGroupCommand = async ( @@ -2602,65 +2111,34 @@ const deserializeAws_restJson1GetRecoveryGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecoveryGroupReadinessSummaryCommand = async ( @@ -2697,65 +2175,34 @@ const deserializeAws_restJson1GetRecoveryGroupReadinessSummaryCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourceSetCommand = async ( @@ -2800,65 +2247,34 @@ const deserializeAws_restJson1GetResourceSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCellsCommand = async ( @@ -2891,57 +2307,31 @@ const deserializeAws_restJson1ListCellsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCrossAccountAuthorizationsCommand = async ( @@ -2977,57 +2367,31 @@ const deserializeAws_restJson1ListCrossAccountAuthorizationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReadinessChecksCommand = async ( @@ -3060,57 +2424,31 @@ const deserializeAws_restJson1ListReadinessChecksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRecoveryGroupsCommand = async ( @@ -3143,57 +2481,31 @@ const deserializeAws_restJson1ListRecoveryGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResourceSetsCommand = async ( @@ -3226,57 +2538,31 @@ const deserializeAws_restJson1ListResourceSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRulesCommand = async ( @@ -3309,57 +2595,31 @@ const deserializeAws_restJson1ListRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourcesCommand = async ( @@ -3388,49 +2648,28 @@ const deserializeAws_restJson1ListTagsForResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3455,49 +2694,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3522,49 +2740,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCellCommand = async ( @@ -3609,65 +2806,34 @@ const deserializeAws_restJson1UpdateCellCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReadinessCheckCommand = async ( @@ -3708,65 +2874,34 @@ const deserializeAws_restJson1UpdateReadinessCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRecoveryGroupCommand = async ( @@ -3807,65 +2942,34 @@ const deserializeAws_restJson1UpdateRecoveryGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResourceSetCommand = async ( @@ -3910,167 +3014,130 @@ const deserializeAws_restJson1UpdateResourceSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53recoveryreadiness#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.route53recoveryreadiness#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53recoveryreadiness#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53recoveryreadiness#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53recoveryreadiness#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-route53resolver/src/index.ts b/clients/client-route53resolver/src/index.ts index e8376b3065293..790baa0636412 100644 --- a/clients/client-route53resolver/src/index.ts +++ b/clients/client-route53resolver/src/index.ts @@ -3,3 +3,4 @@ export * from "./Route53ResolverClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { Route53ResolverServiceException } from "./models/Route53ResolverServiceException"; diff --git a/clients/client-route53resolver/src/models/Route53ResolverServiceException.ts b/clients/client-route53resolver/src/models/Route53ResolverServiceException.ts new file mode 100644 index 0000000000000..236e02f22477d --- /dev/null +++ b/clients/client-route53resolver/src/models/Route53ResolverServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Route53Resolver service. + */ +export class Route53ResolverServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, Route53ResolverServiceException.prototype); + } +} diff --git a/clients/client-route53resolver/src/models/models_0.ts b/clients/client-route53resolver/src/models/models_0.ts index 38d73af2086e5..d54bc48d02934 100644 --- a/clients/client-route53resolver/src/models/models_0.ts +++ b/clients/client-route53resolver/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { Route53ResolverServiceException as __BaseException } from "./Route53ResolverServiceException"; /** *

The current account doesn't have the IAM permissions required to perform the specified Resolver operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum Action { @@ -211,63 +226,137 @@ export namespace AssociateFirewallRuleGroupResponse { /** *

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

We encountered an unknown error. Try again in a few minutes.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "client"; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + this.Message = opts.Message; + } } /** *

The request caused one or more limits to be exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; /** *

For a LimitExceededException error, the type of resource that exceeded the current limit.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

The specified resource doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

For a ResourceNotFoundException error, the type of resource that doesn't exist.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

The request was throttled. Try again in a few minutes.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -500,36 +589,74 @@ export namespace AssociateResolverEndpointIpAddressResponse { /** *

One or more parameters in this request are not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

For an InvalidParameterException error, the name of the parameter that's invalid.

*/ FieldName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + this.FieldName = opts.FieldName; + } } /** *

The request is invalid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The resource that you tried to create already exists.

*/ -export interface ResourceExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceExistsException"; - $fault: "client"; +export class ResourceExistsException extends __BaseException { + readonly name: "ResourceExistsException" = "ResourceExistsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

For a ResourceExistsException error, the type of resource that the error applies to.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceExistsException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } export interface AssociateResolverQueryLogConfigRequest { @@ -779,14 +906,27 @@ export namespace AssociateResolverRuleResponse { /** *

The specified resource isn't available.

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "client"; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "client" = "client"; Message?: string; /** *

For a ResourceUnavailableException error, the type of resource that isn't available.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } export enum AutodefinedReverseFlag { @@ -1977,14 +2117,27 @@ export namespace DeleteResolverRuleResponse { /** *

The resource that you tried to update or delete is currently in use.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; /** *

For a ResourceInUseException error, the type of resource that is currently in use.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } export interface DisassociateFirewallRuleGroupRequest { @@ -3043,10 +3196,22 @@ export namespace GetResolverQueryLogConfigPolicyResponse { /** *

The specified resource doesn't exist.

*/ -export interface UnknownResourceException extends __SmithyException, $MetadataBearer { - name: "UnknownResourceException"; - $fault: "client"; +export class UnknownResourceException extends __BaseException { + readonly name: "UnknownResourceException" = "UnknownResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnknownResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnknownResourceException.prototype); + this.Message = opts.Message; + } } export interface GetResolverRuleRequest { @@ -3208,28 +3373,64 @@ export namespace ImportFirewallDomainsResponse { /** *

The value that you specified for NextToken in a List request isn't valid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } /** *

The specified Resolver rule policy is invalid.

*/ -export interface InvalidPolicyDocument extends __SmithyException, $MetadataBearer { - name: "InvalidPolicyDocument"; - $fault: "client"; +export class InvalidPolicyDocument extends __BaseException { + readonly name: "InvalidPolicyDocument" = "InvalidPolicyDocument"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPolicyDocument", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPolicyDocument.prototype); + this.Message = opts.Message; + } } /** *

The specified tag is invalid.

*/ -export interface InvalidTagException extends __SmithyException, $MetadataBearer { - name: "InvalidTagException"; - $fault: "client"; +export class InvalidTagException extends __BaseException { + readonly name: "InvalidTagException" = "InvalidTagException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTagException.prototype); + this.Message = opts.Message; + } } export enum IpAddressStatus { diff --git a/clients/client-route53resolver/src/protocols/Aws_json1_1.ts b/clients/client-route53resolver/src/protocols/Aws_json1_1.ts index 6cf4a7477bc4f..9f3f7587cac2d 100644 --- a/clients/client-route53resolver/src/protocols/Aws_json1_1.ts +++ b/clients/client-route53resolver/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectString as __expectString, @@ -7,10 +8,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -392,6 +391,7 @@ import { UpdateResolverRuleResponse, ValidationException, } from "../models/models_0"; +import { Route53ResolverServiceException as __BaseException } from "../models/Route53ResolverServiceException"; export const serializeAws_json1_1AssociateFirewallRuleGroupCommand = async ( input: AssociateFirewallRuleGroupCommandInput, @@ -1237,81 +1237,40 @@ const deserializeAws_json1_1AssociateFirewallRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateResolverEndpointIpAddressCommand = async ( @@ -1339,81 +1298,40 @@ const deserializeAws_json1_1AssociateResolverEndpointIpAddressCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateResolverQueryLogConfigCommand = async ( @@ -1441,89 +1359,43 @@ const deserializeAws_json1_1AssociateResolverQueryLogConfigCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateResolverRuleCommand = async ( @@ -1551,89 +1423,43 @@ const deserializeAws_json1_1AssociateResolverRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.route53resolver#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFirewallDomainListCommand = async ( @@ -1661,65 +1487,34 @@ const deserializeAws_json1_1CreateFirewallDomainListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFirewallRuleCommand = async ( @@ -1747,73 +1542,37 @@ const deserializeAws_json1_1CreateFirewallRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFirewallRuleGroupCommand = async ( @@ -1841,65 +1600,34 @@ const deserializeAws_json1_1CreateFirewallRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResolverEndpointCommand = async ( @@ -1927,81 +1655,40 @@ const deserializeAws_json1_1CreateResolverEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResolverQueryLogConfigCommand = async ( @@ -2029,89 +1716,43 @@ const deserializeAws_json1_1CreateResolverQueryLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResolverRuleCommand = async ( @@ -2139,89 +1780,43 @@ const deserializeAws_json1_1CreateResolverRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.route53resolver#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFirewallDomainListCommand = async ( @@ -2249,65 +1844,34 @@ const deserializeAws_json1_1DeleteFirewallDomainListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFirewallRuleCommand = async ( @@ -2335,57 +1899,31 @@ const deserializeAws_json1_1DeleteFirewallRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFirewallRuleGroupCommand = async ( @@ -2413,73 +1951,37 @@ const deserializeAws_json1_1DeleteFirewallRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResolverEndpointCommand = async ( @@ -2507,65 +2009,34 @@ const deserializeAws_json1_1DeleteResolverEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResolverQueryLogConfigCommand = async ( @@ -2593,73 +2064,37 @@ const deserializeAws_json1_1DeleteResolverQueryLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResolverRuleCommand = async ( @@ -2687,65 +2122,34 @@ const deserializeAws_json1_1DeleteResolverRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.route53resolver#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateFirewallRuleGroupCommand = async ( @@ -2773,73 +2177,37 @@ const deserializeAws_json1_1DisassociateFirewallRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateResolverEndpointIpAddressCommand = async ( @@ -2867,73 +2235,37 @@ const deserializeAws_json1_1DisassociateResolverEndpointIpAddressCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.route53resolver#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateResolverQueryLogConfigCommand = async ( @@ -2961,73 +2293,37 @@ const deserializeAws_json1_1DisassociateResolverQueryLogConfigCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateResolverRuleCommand = async ( @@ -3055,57 +2351,31 @@ const deserializeAws_json1_1DisassociateResolverRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFirewallConfigCommand = async ( @@ -3133,65 +2403,34 @@ const deserializeAws_json1_1GetFirewallConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFirewallDomainListCommand = async ( @@ -3219,57 +2458,31 @@ const deserializeAws_json1_1GetFirewallDomainListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFirewallRuleGroupCommand = async ( @@ -3297,57 +2510,31 @@ const deserializeAws_json1_1GetFirewallRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFirewallRuleGroupAssociationCommand = async ( @@ -3375,57 +2562,31 @@ const deserializeAws_json1_1GetFirewallRuleGroupAssociationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetFirewallRuleGroupPolicyCommand = async ( @@ -3453,65 +2614,34 @@ const deserializeAws_json1_1GetFirewallRuleGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverConfigCommand = async ( @@ -3539,65 +2669,34 @@ const deserializeAws_json1_1GetResolverConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverDnssecConfigCommand = async ( @@ -3625,73 +2724,37 @@ const deserializeAws_json1_1GetResolverDnssecConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverEndpointCommand = async ( @@ -3719,57 +2782,31 @@ const deserializeAws_json1_1GetResolverEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverQueryLogConfigCommand = async ( @@ -3797,73 +2834,37 @@ const deserializeAws_json1_1GetResolverQueryLogConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverQueryLogConfigAssociationCommand = async ( @@ -3891,73 +2892,37 @@ const deserializeAws_json1_1GetResolverQueryLogConfigAssociationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverQueryLogConfigPolicyCommand = async ( @@ -3985,65 +2950,34 @@ const deserializeAws_json1_1GetResolverQueryLogConfigPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.route53resolver#UnknownResourceException": - response = { - ...(await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverRuleCommand = async ( @@ -4071,57 +3005,31 @@ const deserializeAws_json1_1GetResolverRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverRuleAssociationCommand = async ( @@ -4149,57 +3057,31 @@ const deserializeAws_json1_1GetResolverRuleAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResolverRulePolicyCommand = async ( @@ -4227,49 +3109,28 @@ const deserializeAws_json1_1GetResolverRulePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.route53resolver#UnknownResourceException": - response = { - ...(await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportFirewallDomainsCommand = async ( @@ -4297,81 +3158,40 @@ const deserializeAws_json1_1ImportFirewallDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFirewallConfigsCommand = async ( @@ -4399,57 +3219,31 @@ const deserializeAws_json1_1ListFirewallConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFirewallDomainListsCommand = async ( @@ -4477,57 +3271,31 @@ const deserializeAws_json1_1ListFirewallDomainListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFirewallDomainsCommand = async ( @@ -4555,65 +3323,34 @@ const deserializeAws_json1_1ListFirewallDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFirewallRuleGroupAssociationsCommand = async ( @@ -4641,57 +3378,31 @@ const deserializeAws_json1_1ListFirewallRuleGroupAssociationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFirewallRuleGroupsCommand = async ( @@ -4719,57 +3430,31 @@ const deserializeAws_json1_1ListFirewallRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFirewallRulesCommand = async ( @@ -4797,65 +3482,34 @@ const deserializeAws_json1_1ListFirewallRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverConfigsCommand = async ( @@ -4883,73 +3537,37 @@ const deserializeAws_json1_1ListResolverConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverDnssecConfigsCommand = async ( @@ -4977,73 +3595,37 @@ const deserializeAws_json1_1ListResolverDnssecConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverEndpointIpAddressesCommand = async ( @@ -5071,65 +3653,34 @@ const deserializeAws_json1_1ListResolverEndpointIpAddressesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverEndpointsCommand = async ( @@ -5157,65 +3708,34 @@ const deserializeAws_json1_1ListResolverEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverQueryLogConfigAssociationsCommand = async ( @@ -5243,73 +3763,37 @@ const deserializeAws_json1_1ListResolverQueryLogConfigAssociationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverQueryLogConfigsCommand = async ( @@ -5337,73 +3821,37 @@ const deserializeAws_json1_1ListResolverQueryLogConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverRuleAssociationsCommand = async ( @@ -5431,65 +3879,34 @@ const deserializeAws_json1_1ListResolverRuleAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResolverRulesCommand = async ( @@ -5517,65 +3934,34 @@ const deserializeAws_json1_1ListResolverRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5603,73 +3989,37 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.route53resolver#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutFirewallRuleGroupPolicyCommand = async ( @@ -5697,65 +4047,34 @@ const deserializeAws_json1_1PutFirewallRuleGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResolverQueryLogConfigPolicyCommand = async ( @@ -5783,73 +4102,37 @@ const deserializeAws_json1_1PutResolverQueryLogConfigPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPolicyDocument": case "com.amazonaws.route53resolver#InvalidPolicyDocument": - response = { - ...(await deserializeAws_json1_1InvalidPolicyDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyDocumentResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.route53resolver#UnknownResourceException": - response = { - ...(await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResolverRulePolicyCommand = async ( @@ -5877,57 +4160,31 @@ const deserializeAws_json1_1PutResolverRulePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPolicyDocument": case "com.amazonaws.route53resolver#InvalidPolicyDocument": - response = { - ...(await deserializeAws_json1_1InvalidPolicyDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyDocumentResponse(parsedOutput, context); case "UnknownResourceException": case "com.amazonaws.route53resolver#UnknownResourceException": - response = { - ...(await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnknownResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -5955,81 +4212,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidTagException": case "com.amazonaws.route53resolver#InvalidTagException": - response = { - ...(await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTagExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6057,65 +4273,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFirewallConfigCommand = async ( @@ -6143,65 +4328,34 @@ const deserializeAws_json1_1UpdateFirewallConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFirewallDomainsCommand = async ( @@ -6229,81 +4383,40 @@ const deserializeAws_json1_1UpdateFirewallDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFirewallRuleCommand = async ( @@ -6331,73 +4444,37 @@ const deserializeAws_json1_1UpdateFirewallRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFirewallRuleGroupAssociationCommand = async ( @@ -6425,73 +4502,37 @@ const deserializeAws_json1_1UpdateFirewallRuleGroupAssociationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.route53resolver#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.route53resolver#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResolverConfigCommand = async ( @@ -6519,89 +4560,43 @@ const deserializeAws_json1_1UpdateResolverConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.route53resolver#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResolverDnssecConfigCommand = async ( @@ -6629,73 +4624,37 @@ const deserializeAws_json1_1UpdateResolverDnssecConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.route53resolver#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResolverEndpointCommand = async ( @@ -6723,65 +4682,34 @@ const deserializeAws_json1_1UpdateResolverEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResolverRuleCommand = async ( @@ -6809,81 +4737,40 @@ const deserializeAws_json1_1UpdateResolverRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceErrorException": case "com.amazonaws.route53resolver#InternalServiceErrorException": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.route53resolver#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.route53resolver#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.route53resolver#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.route53resolver#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.route53resolver#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.route53resolver#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -6892,13 +4779,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -6907,13 +4792,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( @@ -6922,13 +4805,11 @@ const deserializeAws_json1_1InternalServiceErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceErrorException(body, context); - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "client", + const exception = new InternalServiceErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -6937,13 +4818,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -6952,13 +4831,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPolicyDocumentResponse = async ( @@ -6967,13 +4844,11 @@ const deserializeAws_json1_1InvalidPolicyDocumentResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPolicyDocument(body, context); - const contents: InvalidPolicyDocument = { - name: "InvalidPolicyDocument", - $fault: "client", + const exception = new InvalidPolicyDocument({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -6982,13 +4857,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTagExceptionResponse = async ( @@ -6997,13 +4870,11 @@ const deserializeAws_json1_1InvalidTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTagException(body, context); - const contents: InvalidTagException = { - name: "InvalidTagException", - $fault: "client", + const exception = new InvalidTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7012,13 +4883,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceExistsExceptionResponse = async ( @@ -7027,13 +4896,11 @@ const deserializeAws_json1_1ResourceExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceExistsException(body, context); - const contents: ResourceExistsException = { - name: "ResourceExistsException", - $fault: "client", + const exception = new ResourceExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -7042,13 +4909,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -7057,13 +4922,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( @@ -7072,13 +4935,11 @@ const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceUnavailableException(body, context); - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "client", + const exception = new ResourceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -7087,13 +4948,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnknownResourceExceptionResponse = async ( @@ -7102,13 +4961,11 @@ const deserializeAws_json1_1UnknownResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnknownResourceException(body, context); - const contents: UnknownResourceException = { - name: "UnknownResourceException", - $fault: "client", + const exception = new UnknownResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -7117,13 +4974,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateFirewallRuleGroupRequest = ( diff --git a/clients/client-rum/src/index.ts b/clients/client-rum/src/index.ts index 9a60d62720f89..e26699bc30588 100644 --- a/clients/client-rum/src/index.ts +++ b/clients/client-rum/src/index.ts @@ -3,3 +3,4 @@ export * from "./RUMClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { RUMServiceException } from "./models/RUMServiceException"; diff --git a/clients/client-rum/src/models/RUMServiceException.ts b/clients/client-rum/src/models/RUMServiceException.ts new file mode 100644 index 0000000000000..2cc1499edaa48 --- /dev/null +++ b/clients/client-rum/src/models/RUMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RUM service. + */ +export class RUMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RUMServiceException.prototype); + } +} diff --git a/clients/client-rum/src/models/models_0.ts b/clients/client-rum/src/models/models_0.ts index 3a23d019e8071..4aa26a6ff5e78 100644 --- a/clients/client-rum/src/models/models_0.ts +++ b/clients/client-rum/src/models/models_0.ts @@ -1,13 +1,28 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RUMServiceException as __BaseException } from "./RUMServiceException"; /** *

You don't have sufficient permissions to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum Telemetry { @@ -263,10 +278,9 @@ export namespace AppMonitorDetails { /** *

This operation attempted to create a resource that already exists.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The name of the resource that is associated with the error.

*/ @@ -276,6 +290,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The type of the resource that is associated with the error.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceName = opts.resourceName; + this.resourceType = opts.resourceType; + } } export interface CreateAppMonitorRequest { @@ -350,36 +378,57 @@ export namespace CreateAppMonitorResponse { /** *

Internal service exception.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; /** *

The value of a parameter in the request caused an error.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

This request exceeds a service quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The request was throttled because of quota limits.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: { - throttling: true; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; - message: string | undefined; /** *

The ID of the service that is associated with the error.

*/ @@ -394,15 +443,40 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

The value of a parameter in the request caused an error.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

One of the arguments for the request is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface DeleteAppMonitorRequest { @@ -435,10 +509,9 @@ export namespace DeleteAppMonitorResponse { /** *

Resource not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The name of the resource that is associated with the error.

*/ @@ -448,6 +521,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

The type of the resource that is associated with the error.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceName = opts.resourceName; + this.resourceType = opts.resourceType; + } } export interface GetAppMonitorRequest { diff --git a/clients/client-rum/src/protocols/Aws_restJson1.ts b/clients/client-rum/src/protocols/Aws_restJson1.ts index ab61b7026b6c1..a20b6839857ad 100644 --- a/clients/client-rum/src/protocols/Aws_restJson1.ts +++ b/clients/client-rum/src/protocols/Aws_restJson1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -16,10 +17,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateAppMonitorCommandInput, CreateAppMonitorCommandOutput } from "../commands/CreateAppMonitorCommand"; @@ -55,6 +54,7 @@ import { UserDetails, ValidationException, } from "../models/models_0"; +import { RUMServiceException as __BaseException } from "../models/RUMServiceException"; export const serializeAws_restJson1CreateAppMonitorCommand = async ( input: CreateAppMonitorCommandInput, @@ -410,73 +410,37 @@ const deserializeAws_restJson1CreateAppMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.rum#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.rum#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAppMonitorCommand = async ( @@ -501,73 +465,37 @@ const deserializeAws_restJson1DeleteAppMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.rum#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppMonitorCommand = async ( @@ -596,65 +524,34 @@ const deserializeAws_restJson1GetAppMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAppMonitorDataCommand = async ( @@ -687,65 +584,34 @@ const deserializeAws_restJson1GetAppMonitorDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAppMonitorsCommand = async ( @@ -778,57 +644,31 @@ const deserializeAws_restJson1ListAppMonitorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -861,49 +701,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRumEventsCommand = async ( @@ -928,65 +747,34 @@ const deserializeAws_restJson1PutRumEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1011,49 +799,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1078,49 +845,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAppMonitorCommand = async ( @@ -1145,104 +891,60 @@ const deserializeAws_restJson1UpdateAppMonitorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.rum#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.rum#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.rum#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.rum#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.rum#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.rum#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceName: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -1253,21 +955,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -1275,21 +974,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceName: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -1300,42 +996,34 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: { - throttling: true, - }, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -1349,24 +1037,27 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AppMonitorConfiguration = ( diff --git a/clients/client-s3-control/src/index.ts b/clients/client-s3-control/src/index.ts index bcce3970fa96e..9f028805a3fbf 100644 --- a/clients/client-s3-control/src/index.ts +++ b/clients/client-s3-control/src/index.ts @@ -3,3 +3,4 @@ export * from "./S3ControlClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { S3ControlServiceException } from "./models/S3ControlServiceException"; diff --git a/clients/client-s3-control/src/models/S3ControlServiceException.ts b/clients/client-s3-control/src/models/S3ControlServiceException.ts new file mode 100644 index 0000000000000..e1fa7c1e993d8 --- /dev/null +++ b/clients/client-s3-control/src/models/S3ControlServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from S3Control service. + */ +export class S3ControlServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, S3ControlServiceException.prototype); + } +} diff --git a/clients/client-s3-control/src/models/models_0.ts b/clients/client-s3-control/src/models/models_0.ts index 293f450f161e6..6480436e96cc1 100644 --- a/clients/client-s3-control/src/models/models_0.ts +++ b/clients/client-s3-control/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { S3ControlServiceException as __BaseException } from "./S3ControlServiceException"; /** *

The container for abort incomplete multipart upload

@@ -849,17 +852,39 @@ export namespace CreateAccessPointForObjectLambdaResult { * all users of the Outposts in this Region. Select a different name and try * again.

*/ -export interface BucketAlreadyExists extends __SmithyException, $MetadataBearer { - name: "BucketAlreadyExists"; - $fault: "client"; +export class BucketAlreadyExists extends __BaseException { + readonly name: "BucketAlreadyExists" = "BucketAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BucketAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BucketAlreadyExists.prototype); + } } /** *

The Outposts bucket you tried to create already exists, and you own it.

*/ -export interface BucketAlreadyOwnedByYou extends __SmithyException, $MetadataBearer { - name: "BucketAlreadyOwnedByYou"; - $fault: "client"; +export class BucketAlreadyOwnedByYou extends __BaseException { + readonly name: "BucketAlreadyOwnedByYou" = "BucketAlreadyOwnedByYou"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BucketAlreadyOwnedByYou", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BucketAlreadyOwnedByYou.prototype); + } } export type BucketCannedACL = "authenticated-read" | "private" | "public-read" | "public-read-write"; @@ -1019,10 +1044,22 @@ export namespace CreateBucketResult { /** *

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** @@ -1924,28 +1961,64 @@ export namespace CreateJobResult { /** *

*/ -export interface IdempotencyException extends __SmithyException, $MetadataBearer { - name: "IdempotencyException"; - $fault: "client"; +export class IdempotencyException extends __BaseException { + readonly name: "IdempotencyException" = "IdempotencyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotencyException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "server"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } export interface CreateMultiRegionAccessPointRequest { @@ -2208,10 +2281,22 @@ export namespace DeleteJobTaggingResult { /** *

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteMultiRegionAccessPointRequest { @@ -3698,10 +3783,22 @@ export namespace GetPublicAccessBlockRequest { *

Amazon S3 throws this exception if you make a GetPublicAccessBlock request * against an account that doesn't have a PublicAccessBlockConfiguration set.

*/ -export interface NoSuchPublicAccessBlockConfiguration extends __SmithyException, $MetadataBearer { - name: "NoSuchPublicAccessBlockConfiguration"; - $fault: "client"; +export class NoSuchPublicAccessBlockConfiguration extends __BaseException { + readonly name: "NoSuchPublicAccessBlockConfiguration" = "NoSuchPublicAccessBlockConfiguration"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchPublicAccessBlockConfiguration", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchPublicAccessBlockConfiguration.prototype); + this.Message = opts.Message; + } } export interface GetStorageLensConfigurationRequest { @@ -4234,19 +4331,43 @@ export namespace ListAccessPointsForObjectLambdaResult { /** *

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } /** *

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } export interface ListJobsRequest { @@ -4845,10 +4966,22 @@ export namespace PutJobTaggingResult { /** *

Amazon S3 throws this exception if you have too many tags in your tag set.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + } } export interface PutMultiRegionAccessPointPolicyRequest { @@ -5041,10 +5174,22 @@ export namespace UpdateJobPriorityResult { /** *

*/ -export interface JobStatusException extends __SmithyException, $MetadataBearer { - name: "JobStatusException"; - $fault: "client"; +export class JobStatusException extends __BaseException { + readonly name: "JobStatusException" = "JobStatusException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "JobStatusException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, JobStatusException.prototype); + this.Message = opts.Message; + } } export enum RequestedJobStatus { diff --git a/clients/client-s3-control/src/protocols/Aws_restXml.ts b/clients/client-s3-control/src/protocols/Aws_restXml.ts index faa0742aace8c..3a9cd3e589a1f 100644 --- a/clients/client-s3-control/src/protocols/Aws_restXml.ts +++ b/clients/client-s3-control/src/protocols/Aws_restXml.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -19,10 +20,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { XmlNode as __XmlNode, XmlText as __XmlText } from "@aws-sdk/xml-builder"; import { decodeHTML } from "entities"; @@ -294,6 +293,7 @@ import { Transition, VpcConfiguration, } from "../models/models_0"; +import { S3ControlServiceException as __BaseException } from "../models/S3ControlServiceException"; export const serializeAws_restXmlCreateAccessPointCommand = async ( input: CreateAccessPointCommandInput, @@ -2924,25 +2924,19 @@ const deserializeAws_restXmlCreateAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateAccessPointForObjectLambdaCommand = async ( @@ -2971,25 +2965,19 @@ const deserializeAws_restXmlCreateAccessPointForObjectLambdaCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateBucketCommand = async ( @@ -3022,41 +3010,25 @@ const deserializeAws_restXmlCreateBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "BucketAlreadyExists": case "com.amazonaws.s3control#BucketAlreadyExists": - response = { - ...(await deserializeAws_restXmlBucketAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBucketAlreadyExistsResponse(parsedOutput, context); case "BucketAlreadyOwnedByYou": case "com.amazonaws.s3control#BucketAlreadyOwnedByYou": - response = { - ...(await deserializeAws_restXmlBucketAlreadyOwnedByYouResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBucketAlreadyOwnedByYouResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateJobCommand = async ( @@ -3085,57 +3057,31 @@ const deserializeAws_restXmlCreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.s3control#BadRequestException": - response = { - ...(await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context); case "IdempotencyException": case "com.amazonaws.s3control#IdempotencyException": - response = { - ...(await deserializeAws_restXmlIdempotencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlIdempotencyExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateMultiRegionAccessPointCommand = async ( @@ -3164,25 +3110,19 @@ const deserializeAws_restXmlCreateMultiRegionAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteAccessPointCommand = async ( @@ -3207,25 +3147,19 @@ const deserializeAws_restXmlDeleteAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteAccessPointForObjectLambdaCommand = async ( @@ -3250,25 +3184,19 @@ const deserializeAws_restXmlDeleteAccessPointForObjectLambdaCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteAccessPointPolicyCommand = async ( @@ -3293,25 +3221,19 @@ const deserializeAws_restXmlDeleteAccessPointPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteAccessPointPolicyForObjectLambdaCommand = async ( @@ -3336,25 +3258,19 @@ const deserializeAws_restXmlDeleteAccessPointPolicyForObjectLambdaCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketCommand = async ( @@ -3379,25 +3295,19 @@ const deserializeAws_restXmlDeleteBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketLifecycleConfigurationCommand = async ( @@ -3422,25 +3332,19 @@ const deserializeAws_restXmlDeleteBucketLifecycleConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketPolicyCommand = async ( @@ -3465,25 +3369,19 @@ const deserializeAws_restXmlDeleteBucketPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketTaggingCommand = async ( @@ -3508,25 +3406,19 @@ const deserializeAws_restXmlDeleteBucketTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteJobTaggingCommand = async ( @@ -3551,49 +3443,28 @@ const deserializeAws_restXmlDeleteJobTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.s3control#NotFoundException": - response = { - ...(await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteMultiRegionAccessPointCommand = async ( @@ -3622,25 +3493,19 @@ const deserializeAws_restXmlDeleteMultiRegionAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeletePublicAccessBlockCommand = async ( @@ -3665,25 +3530,19 @@ const deserializeAws_restXmlDeletePublicAccessBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteStorageLensConfigurationCommand = async ( @@ -3708,25 +3567,19 @@ const deserializeAws_restXmlDeleteStorageLensConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteStorageLensConfigurationTaggingCommand = async ( @@ -3751,25 +3604,19 @@ const deserializeAws_restXmlDeleteStorageLensConfigurationTaggingCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDescribeJobCommand = async ( @@ -3798,57 +3645,31 @@ const deserializeAws_restXmlDescribeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.s3control#BadRequestException": - response = { - ...(await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.s3control#NotFoundException": - response = { - ...(await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDescribeMultiRegionAccessPointOperationCommand = async ( @@ -3877,25 +3698,19 @@ const deserializeAws_restXmlDescribeMultiRegionAccessPointOperationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointCommand = async ( @@ -3962,25 +3777,19 @@ const deserializeAws_restXmlGetAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointConfigurationForObjectLambdaCommand = async ( @@ -4009,25 +3818,19 @@ const deserializeAws_restXmlGetAccessPointConfigurationForObjectLambdaCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointForObjectLambdaCommand = async ( @@ -4067,25 +3870,19 @@ const deserializeAws_restXmlGetAccessPointForObjectLambdaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointPolicyCommand = async ( @@ -4114,25 +3911,19 @@ const deserializeAws_restXmlGetAccessPointPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointPolicyForObjectLambdaCommand = async ( @@ -4161,25 +3952,19 @@ const deserializeAws_restXmlGetAccessPointPolicyForObjectLambdaCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointPolicyStatusCommand = async ( @@ -4208,25 +3993,19 @@ const deserializeAws_restXmlGetAccessPointPolicyStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetAccessPointPolicyStatusForObjectLambdaCommand = async ( @@ -4255,25 +4034,19 @@ const deserializeAws_restXmlGetAccessPointPolicyStatusForObjectLambdaCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketCommand = async ( @@ -4310,25 +4083,19 @@ const deserializeAws_restXmlGetBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketLifecycleConfigurationCommand = async ( @@ -4360,25 +4127,19 @@ const deserializeAws_restXmlGetBucketLifecycleConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketPolicyCommand = async ( @@ -4407,25 +4168,19 @@ const deserializeAws_restXmlGetBucketPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketTaggingCommand = async ( @@ -4457,25 +4212,19 @@ const deserializeAws_restXmlGetBucketTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetJobTaggingCommand = async ( @@ -4507,49 +4256,28 @@ const deserializeAws_restXmlGetJobTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.s3control#NotFoundException": - response = { - ...(await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetMultiRegionAccessPointCommand = async ( @@ -4578,25 +4306,19 @@ const deserializeAws_restXmlGetMultiRegionAccessPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetMultiRegionAccessPointPolicyCommand = async ( @@ -4625,25 +4347,19 @@ const deserializeAws_restXmlGetMultiRegionAccessPointPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetMultiRegionAccessPointPolicyStatusCommand = async ( @@ -4672,25 +4388,19 @@ const deserializeAws_restXmlGetMultiRegionAccessPointPolicyStatusCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetPublicAccessBlockCommand = async ( @@ -4717,33 +4427,22 @@ const deserializeAws_restXmlGetPublicAccessBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchPublicAccessBlockConfiguration": case "com.amazonaws.s3control#NoSuchPublicAccessBlockConfiguration": - response = { - ...(await deserializeAws_restXmlNoSuchPublicAccessBlockConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchPublicAccessBlockConfigurationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetStorageLensConfigurationCommand = async ( @@ -4770,25 +4469,19 @@ const deserializeAws_restXmlGetStorageLensConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetStorageLensConfigurationTaggingCommand = async ( @@ -4820,25 +4513,19 @@ const deserializeAws_restXmlGetStorageLensConfigurationTaggingCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListAccessPointsCommand = async ( @@ -4877,25 +4564,19 @@ const deserializeAws_restXmlListAccessPointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListAccessPointsForObjectLambdaCommand = async ( @@ -4937,25 +4618,19 @@ const deserializeAws_restXmlListAccessPointsForObjectLambdaCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListJobsCommand = async ( @@ -4994,49 +4669,28 @@ const deserializeAws_restXmlListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.s3control#InvalidNextTokenException": - response = { - ...(await deserializeAws_restXmlInvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.s3control#InvalidRequestException": - response = { - ...(await deserializeAws_restXmlInvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListMultiRegionAccessPointsCommand = async ( @@ -5075,25 +4729,19 @@ const deserializeAws_restXmlListMultiRegionAccessPointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListRegionalBucketsCommand = async ( @@ -5132,25 +4780,19 @@ const deserializeAws_restXmlListRegionalBucketsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListStorageLensConfigurationsCommand = async ( @@ -5189,25 +4831,19 @@ const deserializeAws_restXmlListStorageLensConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutAccessPointConfigurationForObjectLambdaCommand = async ( @@ -5232,25 +4868,19 @@ const deserializeAws_restXmlPutAccessPointConfigurationForObjectLambdaCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutAccessPointPolicyCommand = async ( @@ -5275,25 +4905,19 @@ const deserializeAws_restXmlPutAccessPointPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutAccessPointPolicyForObjectLambdaCommand = async ( @@ -5318,25 +4942,19 @@ const deserializeAws_restXmlPutAccessPointPolicyForObjectLambdaCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketLifecycleConfigurationCommand = async ( @@ -5361,25 +4979,19 @@ const deserializeAws_restXmlPutBucketLifecycleConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketPolicyCommand = async ( @@ -5404,25 +5016,19 @@ const deserializeAws_restXmlPutBucketPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketTaggingCommand = async ( @@ -5447,25 +5053,19 @@ const deserializeAws_restXmlPutBucketTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutJobTaggingCommand = async ( @@ -5490,57 +5090,31 @@ const deserializeAws_restXmlPutJobTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.s3control#NotFoundException": - response = { - ...(await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.s3control#TooManyTagsException": - response = { - ...(await deserializeAws_restXmlTooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutMultiRegionAccessPointPolicyCommand = async ( @@ -5569,25 +5143,19 @@ const deserializeAws_restXmlPutMultiRegionAccessPointPolicyCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutPublicAccessBlockCommand = async ( @@ -5612,25 +5180,19 @@ const deserializeAws_restXmlPutPublicAccessBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutStorageLensConfigurationCommand = async ( @@ -5655,25 +5217,19 @@ const deserializeAws_restXmlPutStorageLensConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutStorageLensConfigurationTaggingCommand = async ( @@ -5698,25 +5254,19 @@ const deserializeAws_restXmlPutStorageLensConfigurationTaggingCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateJobPriorityCommand = async ( @@ -5749,57 +5299,31 @@ const deserializeAws_restXmlUpdateJobPriorityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.s3control#BadRequestException": - response = { - ...(await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.s3control#NotFoundException": - response = { - ...(await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUpdateJobStatusCommand = async ( @@ -5836,261 +5360,220 @@ const deserializeAws_restXmlUpdateJobStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.s3control#BadRequestException": - response = { - ...(await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBadRequestExceptionResponse(parsedOutput, context); case "InternalServiceException": case "com.amazonaws.s3control#InternalServiceException": - response = { - ...(await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInternalServiceExceptionResponse(parsedOutput, context); case "JobStatusException": case "com.amazonaws.s3control#JobStatusException": - response = { - ...(await deserializeAws_restXmlJobStatusExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlJobStatusExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.s3control#NotFoundException": - response = { - ...(await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.s3control#TooManyRequestsException": - response = { - ...(await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlTooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restXmlBadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlBucketAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BucketAlreadyExists = { - name: "BucketAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; - return contents; + const exception = new BucketAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlBucketAlreadyOwnedByYouResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BucketAlreadyOwnedByYou = { - name: "BucketAlreadyOwnedByYou", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; - return contents; + const exception = new BucketAlreadyOwnedByYou({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlIdempotencyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IdempotencyException = { - name: "IdempotencyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new IdempotencyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlJobStatusExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: JobStatusException = { - name: "JobStatusException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new JobStatusException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNoSuchPublicAccessBlockConfigurationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchPublicAccessBlockConfiguration = { - name: "NoSuchPublicAccessBlockConfiguration", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NoSuchPublicAccessBlockConfiguration({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlTooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const serializeAws_restXmlAbortIncompleteMultipartUpload = ( diff --git a/clients/client-s3/src/index.ts b/clients/client-s3/src/index.ts index aa9b41af4d5a7..40930a1ded03b 100644 --- a/clients/client-s3/src/index.ts +++ b/clients/client-s3/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { S3ServiceException } from "./models/S3ServiceException"; diff --git a/clients/client-s3/src/models/S3ServiceException.ts b/clients/client-s3/src/models/S3ServiceException.ts new file mode 100644 index 0000000000000..814fd8dd8768d --- /dev/null +++ b/clients/client-s3/src/models/S3ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from S3 service. + */ +export class S3ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, S3ServiceException.prototype); + } +} diff --git a/clients/client-s3/src/models/models_0.ts b/clients/client-s3/src/models/models_0.ts index 1e651cfeb7975..c4ebfd573769d 100644 --- a/clients/client-s3/src/models/models_0.ts +++ b/clients/client-s3/src/models/models_0.ts @@ -1,7 +1,9 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { S3ServiceException as __BaseException } from "./S3ServiceException"; + /** *

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will * wait before permanently removing all parts of the upload. For more information, see @@ -92,9 +94,20 @@ export namespace AbortMultipartUploadRequest { /** *

The specified multipart upload does not exist.

*/ -export interface NoSuchUpload extends __SmithyException, $MetadataBearer { - name: "NoSuchUpload"; - $fault: "client"; +export class NoSuchUpload extends __BaseException { + readonly name: "NoSuchUpload" = "NoSuchUpload"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchUpload", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchUpload.prototype); + } } export type BucketAccelerateStatus = "Enabled" | "Suspended"; @@ -874,18 +887,40 @@ export namespace CopyObjectRequest { *

The source object of the COPY action is not in the active tier and is only stored in * Amazon S3 Glacier.

*/ -export interface ObjectNotInActiveTierError extends __SmithyException, $MetadataBearer { - name: "ObjectNotInActiveTierError"; - $fault: "client"; +export class ObjectNotInActiveTierError extends __BaseException { + readonly name: "ObjectNotInActiveTierError" = "ObjectNotInActiveTierError"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectNotInActiveTierError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectNotInActiveTierError.prototype); + } } /** *

The requested bucket name is not available. The bucket namespace is shared by all users * of the system. Select a different name and try again.

*/ -export interface BucketAlreadyExists extends __SmithyException, $MetadataBearer { - name: "BucketAlreadyExists"; - $fault: "client"; +export class BucketAlreadyExists extends __BaseException { + readonly name: "BucketAlreadyExists" = "BucketAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BucketAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BucketAlreadyExists.prototype); + } } /** @@ -894,9 +929,20 @@ export interface BucketAlreadyExists extends __SmithyException, $MetadataBearer * re-create an existing bucket that you already own in the North Virginia Region, Amazon S3 * returns 200 OK and resets the bucket access control lists (ACLs).

*/ -export interface BucketAlreadyOwnedByYou extends __SmithyException, $MetadataBearer { - name: "BucketAlreadyOwnedByYou"; - $fault: "client"; +export class BucketAlreadyOwnedByYou extends __BaseException { + readonly name: "BucketAlreadyOwnedByYou" = "BucketAlreadyOwnedByYou"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BucketAlreadyOwnedByYou", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BucketAlreadyOwnedByYou.prototype); + } } export interface CreateBucketOutput { @@ -7604,19 +7650,43 @@ export namespace GetObjectRequest { /** *

Object is archived and inaccessible until restored.

*/ -export interface InvalidObjectState extends __SmithyException, $MetadataBearer { - name: "InvalidObjectState"; - $fault: "client"; +export class InvalidObjectState extends __BaseException { + readonly name: "InvalidObjectState" = "InvalidObjectState"; + readonly $fault: "client" = "client"; StorageClass?: StorageClass | string; AccessTier?: IntelligentTieringAccessTier | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidObjectState", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidObjectState.prototype); + this.StorageClass = opts.StorageClass; + this.AccessTier = opts.AccessTier; + } } /** *

The specified key does not exist.

*/ -export interface NoSuchKey extends __SmithyException, $MetadataBearer { - name: "NoSuchKey"; - $fault: "client"; +export class NoSuchKey extends __BaseException { + readonly name: "NoSuchKey" = "NoSuchKey"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchKey", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchKey.prototype); + } } export interface GetObjectAclOutput { @@ -8243,9 +8313,20 @@ export namespace HeadBucketRequest { /** *

The specified content does not exist.

*/ -export interface NotFound extends __SmithyException, $MetadataBearer { - name: "NotFound"; - $fault: "client"; +export class NotFound extends __BaseException { + readonly name: "NotFound" = "NotFound"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFound.prototype); + } } export type ArchiveStatus = "ARCHIVE_ACCESS" | "DEEP_ARCHIVE_ACCESS"; @@ -9404,9 +9485,20 @@ export namespace ListObjectsRequest { /** *

The specified bucket does not exist.

*/ -export interface NoSuchBucket extends __SmithyException, $MetadataBearer { - name: "NoSuchBucket"; - $fault: "client"; +export class NoSuchBucket extends __BaseException { + readonly name: "NoSuchBucket" = "NoSuchBucket"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchBucket", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchBucket.prototype); + } } export interface ListObjectsV2Output { @@ -11660,9 +11752,20 @@ export namespace PutPublicAccessBlockRequest { /** *

This action is not allowed against this storage tier.

*/ -export interface ObjectAlreadyInActiveTierError extends __SmithyException, $MetadataBearer { - name: "ObjectAlreadyInActiveTierError"; - $fault: "client"; +export class ObjectAlreadyInActiveTierError extends __BaseException { + readonly name: "ObjectAlreadyInActiveTierError" = "ObjectAlreadyInActiveTierError"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ObjectAlreadyInActiveTierError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ObjectAlreadyInActiveTierError.prototype); + } } export interface RestoreObjectOutput { diff --git a/clients/client-s3/src/protocols/Aws_restXml.ts b/clients/client-s3/src/protocols/Aws_restXml.ts index 51f5e336e0541..7b63399010d47 100644 --- a/clients/client-s3/src/protocols/Aws_restXml.ts +++ b/clients/client-s3/src/protocols/Aws_restXml.ts @@ -5,6 +5,7 @@ import { } from "@aws-sdk/protocol-http"; import { dateToUtcString as __dateToUtcString, + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -21,10 +22,8 @@ import { import { Endpoint as __Endpoint, EventStreamSerdeContext as __EventStreamSerdeContext, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { XmlNode as __XmlNode, XmlText as __XmlText } from "@aws-sdk/xml-builder"; import { decodeHTML } from "entities"; @@ -418,6 +417,7 @@ import { Stats, StatsEvent, } from "../models/models_1"; +import { S3ServiceException as __BaseException } from "../models/S3ServiceException"; export const serializeAws_restXmlAbortMultipartUploadCommand = async ( input: AbortMultipartUploadCommandInput, @@ -4966,33 +4966,22 @@ const deserializeAws_restXmlAbortMultipartUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchUpload": case "com.amazonaws.s3#NoSuchUpload": - response = { - ...(await deserializeAws_restXmlNoSuchUploadResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchUploadResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCompleteMultipartUploadCommand = async ( @@ -5057,25 +5046,19 @@ const deserializeAws_restXmlCompleteMultipartUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCopyObjectCommand = async ( @@ -5142,33 +5125,22 @@ const deserializeAws_restXmlCopyObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ObjectNotInActiveTierError": case "com.amazonaws.s3#ObjectNotInActiveTierError": - response = { - ...(await deserializeAws_restXmlObjectNotInActiveTierErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlObjectNotInActiveTierErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateBucketCommand = async ( @@ -5197,41 +5169,25 @@ const deserializeAws_restXmlCreateBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "BucketAlreadyExists": case "com.amazonaws.s3#BucketAlreadyExists": - response = { - ...(await deserializeAws_restXmlBucketAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBucketAlreadyExistsResponse(parsedOutput, context); case "BucketAlreadyOwnedByYou": case "com.amazonaws.s3#BucketAlreadyOwnedByYou": - response = { - ...(await deserializeAws_restXmlBucketAlreadyOwnedByYouResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlBucketAlreadyOwnedByYouResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlCreateMultipartUploadCommand = async ( @@ -5304,25 +5260,19 @@ const deserializeAws_restXmlCreateMultipartUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketCommand = async ( @@ -5347,25 +5297,19 @@ const deserializeAws_restXmlDeleteBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketAnalyticsConfigurationCommand = async ( @@ -5390,25 +5334,19 @@ const deserializeAws_restXmlDeleteBucketAnalyticsConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketCorsCommand = async ( @@ -5433,25 +5371,19 @@ const deserializeAws_restXmlDeleteBucketCorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketEncryptionCommand = async ( @@ -5476,25 +5408,19 @@ const deserializeAws_restXmlDeleteBucketEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketIntelligentTieringConfigurationCommand = async ( @@ -5519,25 +5445,19 @@ const deserializeAws_restXmlDeleteBucketIntelligentTieringConfigurationCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketInventoryConfigurationCommand = async ( @@ -5562,25 +5482,19 @@ const deserializeAws_restXmlDeleteBucketInventoryConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketLifecycleCommand = async ( @@ -5605,25 +5519,19 @@ const deserializeAws_restXmlDeleteBucketLifecycleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketMetricsConfigurationCommand = async ( @@ -5648,25 +5556,19 @@ const deserializeAws_restXmlDeleteBucketMetricsConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketOwnershipControlsCommand = async ( @@ -5691,25 +5593,19 @@ const deserializeAws_restXmlDeleteBucketOwnershipControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketPolicyCommand = async ( @@ -5734,25 +5630,19 @@ const deserializeAws_restXmlDeleteBucketPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketReplicationCommand = async ( @@ -5777,25 +5667,19 @@ const deserializeAws_restXmlDeleteBucketReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketTaggingCommand = async ( @@ -5820,25 +5704,19 @@ const deserializeAws_restXmlDeleteBucketTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteBucketWebsiteCommand = async ( @@ -5863,25 +5741,19 @@ const deserializeAws_restXmlDeleteBucketWebsiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteObjectCommand = async ( @@ -5918,25 +5790,19 @@ const deserializeAws_restXmlDeleteObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteObjectsCommand = async ( @@ -5979,25 +5845,19 @@ const deserializeAws_restXmlDeleteObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeleteObjectTaggingCommand = async ( @@ -6026,25 +5886,19 @@ const deserializeAws_restXmlDeleteObjectTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlDeletePublicAccessBlockCommand = async ( @@ -6069,25 +5923,19 @@ const deserializeAws_restXmlDeletePublicAccessBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketAccelerateConfigurationCommand = async ( @@ -6116,25 +5964,19 @@ const deserializeAws_restXmlGetBucketAccelerateConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketAclCommand = async ( @@ -6170,25 +6012,19 @@ const deserializeAws_restXmlGetBucketAclCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketAnalyticsConfigurationCommand = async ( @@ -6215,25 +6051,19 @@ const deserializeAws_restXmlGetBucketAnalyticsConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketCorsCommand = async ( @@ -6265,25 +6095,19 @@ const deserializeAws_restXmlGetBucketCorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketEncryptionCommand = async ( @@ -6310,25 +6134,19 @@ const deserializeAws_restXmlGetBucketEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketIntelligentTieringConfigurationCommand = async ( @@ -6355,25 +6173,19 @@ const deserializeAws_restXmlGetBucketIntelligentTieringConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketInventoryConfigurationCommand = async ( @@ -6400,25 +6212,19 @@ const deserializeAws_restXmlGetBucketInventoryConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketLifecycleConfigurationCommand = async ( @@ -6450,25 +6256,19 @@ const deserializeAws_restXmlGetBucketLifecycleConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketLocationCommand = async ( @@ -6497,25 +6297,19 @@ const deserializeAws_restXmlGetBucketLocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketLoggingCommand = async ( @@ -6544,25 +6338,19 @@ const deserializeAws_restXmlGetBucketLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketMetricsConfigurationCommand = async ( @@ -6589,25 +6377,19 @@ const deserializeAws_restXmlGetBucketMetricsConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketNotificationConfigurationCommand = async ( @@ -6669,25 +6451,19 @@ const deserializeAws_restXmlGetBucketNotificationConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketOwnershipControlsCommand = async ( @@ -6714,25 +6490,19 @@ const deserializeAws_restXmlGetBucketOwnershipControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketPolicyCommand = async ( @@ -6759,25 +6529,19 @@ const deserializeAws_restXmlGetBucketPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketPolicyStatusCommand = async ( @@ -6804,25 +6568,19 @@ const deserializeAws_restXmlGetBucketPolicyStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketReplicationCommand = async ( @@ -6849,25 +6607,19 @@ const deserializeAws_restXmlGetBucketReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketRequestPaymentCommand = async ( @@ -6896,25 +6648,19 @@ const deserializeAws_restXmlGetBucketRequestPaymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketTaggingCommand = async ( @@ -6946,25 +6692,19 @@ const deserializeAws_restXmlGetBucketTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketVersioningCommand = async ( @@ -6997,25 +6737,19 @@ const deserializeAws_restXmlGetBucketVersioningCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetBucketWebsiteCommand = async ( @@ -7065,25 +6799,19 @@ const deserializeAws_restXmlGetBucketWebsiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectCommand = async ( @@ -7241,41 +6969,25 @@ const deserializeAws_restXmlGetObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidObjectState": case "com.amazonaws.s3#InvalidObjectState": - response = { - ...(await deserializeAws_restXmlInvalidObjectStateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidObjectStateResponse(parsedOutput, context); case "NoSuchKey": case "com.amazonaws.s3#NoSuchKey": - response = { - ...(await deserializeAws_restXmlNoSuchKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectAclCommand = async ( @@ -7315,33 +7027,22 @@ const deserializeAws_restXmlGetObjectAclCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchKey": case "com.amazonaws.s3#NoSuchKey": - response = { - ...(await deserializeAws_restXmlNoSuchKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectLegalHoldCommand = async ( @@ -7368,25 +7069,19 @@ const deserializeAws_restXmlGetObjectLegalHoldCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectLockConfigurationCommand = async ( @@ -7413,25 +7108,19 @@ const deserializeAws_restXmlGetObjectLockConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectRetentionCommand = async ( @@ -7458,25 +7147,19 @@ const deserializeAws_restXmlGetObjectRetentionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectTaggingCommand = async ( @@ -7512,25 +7195,19 @@ const deserializeAws_restXmlGetObjectTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetObjectTorrentCommand = async ( @@ -7561,25 +7238,19 @@ const deserializeAws_restXmlGetObjectTorrentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGetPublicAccessBlockCommand = async ( @@ -7606,25 +7277,19 @@ const deserializeAws_restXmlGetPublicAccessBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHeadBucketCommand = async ( @@ -7649,33 +7314,22 @@ const deserializeAws_restXmlHeadBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFound": case "com.amazonaws.s3#NotFound": - response = { - ...(await deserializeAws_restXmlNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHeadObjectCommand = async ( @@ -7827,33 +7481,22 @@ const deserializeAws_restXmlHeadObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NotFound": case "com.amazonaws.s3#NotFound": - response = { - ...(await deserializeAws_restXmlNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListBucketAnalyticsConfigurationsCommand = async ( @@ -7900,25 +7543,19 @@ const deserializeAws_restXmlListBucketAnalyticsConfigurationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListBucketIntelligentTieringConfigurationsCommand = async ( @@ -7965,25 +7602,19 @@ const deserializeAws_restXmlListBucketIntelligentTieringConfigurationsCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListBucketInventoryConfigurationsCommand = async ( @@ -8030,25 +7661,19 @@ const deserializeAws_restXmlListBucketInventoryConfigurationsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListBucketMetricsConfigurationsCommand = async ( @@ -8095,25 +7720,19 @@ const deserializeAws_restXmlListBucketMetricsConfigurationsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListBucketsCommand = async ( @@ -8149,25 +7768,19 @@ const deserializeAws_restXmlListBucketsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListMultipartUploadsCommand = async ( @@ -8249,25 +7862,19 @@ const deserializeAws_restXmlListMultipartUploadsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListObjectsCommand = async ( @@ -8341,33 +7948,22 @@ const deserializeAws_restXmlListObjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchBucket": case "com.amazonaws.s3#NoSuchBucket": - response = { - ...(await deserializeAws_restXmlNoSuchBucketResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchBucketResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListObjectsV2Command = async ( @@ -8449,33 +8045,22 @@ const deserializeAws_restXmlListObjectsV2CommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchBucket": case "com.amazonaws.s3#NoSuchBucket": - response = { - ...(await deserializeAws_restXmlNoSuchBucketResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchBucketResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListObjectVersionsCommand = async ( @@ -8564,25 +8149,19 @@ const deserializeAws_restXmlListObjectVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlListPartsCommand = async ( @@ -8666,25 +8245,19 @@ const deserializeAws_restXmlListPartsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketAccelerateConfigurationCommand = async ( @@ -8709,25 +8282,19 @@ const deserializeAws_restXmlPutBucketAccelerateConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketAclCommand = async ( @@ -8752,25 +8319,19 @@ const deserializeAws_restXmlPutBucketAclCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketAnalyticsConfigurationCommand = async ( @@ -8795,25 +8356,19 @@ const deserializeAws_restXmlPutBucketAnalyticsConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketCorsCommand = async ( @@ -8838,25 +8393,19 @@ const deserializeAws_restXmlPutBucketCorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketEncryptionCommand = async ( @@ -8881,25 +8430,19 @@ const deserializeAws_restXmlPutBucketEncryptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketIntelligentTieringConfigurationCommand = async ( @@ -8924,25 +8467,19 @@ const deserializeAws_restXmlPutBucketIntelligentTieringConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketInventoryConfigurationCommand = async ( @@ -8967,25 +8504,19 @@ const deserializeAws_restXmlPutBucketInventoryConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketLifecycleConfigurationCommand = async ( @@ -9010,25 +8541,19 @@ const deserializeAws_restXmlPutBucketLifecycleConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketLoggingCommand = async ( @@ -9053,25 +8578,19 @@ const deserializeAws_restXmlPutBucketLoggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketMetricsConfigurationCommand = async ( @@ -9096,25 +8615,19 @@ const deserializeAws_restXmlPutBucketMetricsConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketNotificationConfigurationCommand = async ( @@ -9139,25 +8652,19 @@ const deserializeAws_restXmlPutBucketNotificationConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketOwnershipControlsCommand = async ( @@ -9182,25 +8689,19 @@ const deserializeAws_restXmlPutBucketOwnershipControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketPolicyCommand = async ( @@ -9225,25 +8726,19 @@ const deserializeAws_restXmlPutBucketPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketReplicationCommand = async ( @@ -9268,25 +8763,19 @@ const deserializeAws_restXmlPutBucketReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketRequestPaymentCommand = async ( @@ -9311,25 +8800,19 @@ const deserializeAws_restXmlPutBucketRequestPaymentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketTaggingCommand = async ( @@ -9354,25 +8837,19 @@ const deserializeAws_restXmlPutBucketTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketVersioningCommand = async ( @@ -9397,25 +8874,19 @@ const deserializeAws_restXmlPutBucketVersioningCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutBucketWebsiteCommand = async ( @@ -9440,25 +8911,19 @@ const deserializeAws_restXmlPutBucketWebsiteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutObjectCommand = async ( @@ -9523,25 +8988,19 @@ const deserializeAws_restXmlPutObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutObjectAclCommand = async ( @@ -9570,33 +9029,22 @@ const deserializeAws_restXmlPutObjectAclCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "NoSuchKey": case "com.amazonaws.s3#NoSuchKey": - response = { - ...(await deserializeAws_restXmlNoSuchKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlNoSuchKeyResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutObjectLegalHoldCommand = async ( @@ -9625,25 +9073,19 @@ const deserializeAws_restXmlPutObjectLegalHoldCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutObjectLockConfigurationCommand = async ( @@ -9672,25 +9114,19 @@ const deserializeAws_restXmlPutObjectLockConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutObjectRetentionCommand = async ( @@ -9719,25 +9155,19 @@ const deserializeAws_restXmlPutObjectRetentionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutObjectTaggingCommand = async ( @@ -9766,25 +9196,19 @@ const deserializeAws_restXmlPutObjectTaggingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlPutPublicAccessBlockCommand = async ( @@ -9809,25 +9233,19 @@ const deserializeAws_restXmlPutPublicAccessBlockCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlRestoreObjectCommand = async ( @@ -9860,33 +9278,22 @@ const deserializeAws_restXmlRestoreObjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ObjectAlreadyInActiveTierError": case "com.amazonaws.s3#ObjectAlreadyInActiveTierError": - response = { - ...(await deserializeAws_restXmlObjectAlreadyInActiveTierErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlObjectAlreadyInActiveTierErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlSelectObjectContentCommand = async ( @@ -9927,25 +9334,19 @@ const deserializeAws_restXmlSelectObjectContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUploadPartCommand = async ( @@ -9998,25 +9399,19 @@ const deserializeAws_restXmlUploadPartCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlUploadPartCopyCommand = async ( @@ -10071,25 +9466,19 @@ const deserializeAws_restXmlUploadPartCopyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlWriteGetObjectResponseCommand = async ( @@ -10114,25 +9503,19 @@ const deserializeAws_restXmlWriteGetObjectResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restXmlSelectObjectContentEventStream_event = async ( @@ -10202,39 +9585,33 @@ const deserializeAws_restXmlBucketAlreadyExistsResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BucketAlreadyExists = { - name: "BucketAlreadyExists", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new BucketAlreadyExists({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlBucketAlreadyOwnedByYouResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BucketAlreadyOwnedByYou = { - name: "BucketAlreadyOwnedByYou", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new BucketAlreadyOwnedByYou({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlInvalidObjectStateResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidObjectState = { - name: "InvalidObjectState", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - AccessTier: undefined, - StorageClass: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data["AccessTier"] !== undefined) { contents.AccessTier = __expectString(data["AccessTier"]); @@ -10242,85 +9619,89 @@ const deserializeAws_restXmlInvalidObjectStateResponse = async ( if (data["StorageClass"] !== undefined) { contents.StorageClass = __expectString(data["StorageClass"]); } - return contents; + const exception = new InvalidObjectState({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlNoSuchBucketResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchBucket = { - name: "NoSuchBucket", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new NoSuchBucket({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlNoSuchKeyResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchKey = { - name: "NoSuchKey", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new NoSuchKey({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlNoSuchUploadResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NoSuchUpload = { - name: "NoSuchUpload", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new NoSuchUpload({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFound = { - name: "NotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new NotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlObjectAlreadyInActiveTierErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ObjectAlreadyInActiveTierError = { - name: "ObjectAlreadyInActiveTierError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ObjectAlreadyInActiveTierError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restXmlObjectNotInActiveTierErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ObjectNotInActiveTierError = { - name: "ObjectNotInActiveTierError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new ObjectNotInActiveTierError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restXmlAbortIncompleteMultipartUpload = ( diff --git a/clients/client-s3outposts/src/index.ts b/clients/client-s3outposts/src/index.ts index 098387b32cfdf..9ac0c5fbccd42 100644 --- a/clients/client-s3outposts/src/index.ts +++ b/clients/client-s3outposts/src/index.ts @@ -3,3 +3,4 @@ export * from "./S3OutpostsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { S3OutpostsServiceException } from "./models/S3OutpostsServiceException"; diff --git a/clients/client-s3outposts/src/models/S3OutpostsServiceException.ts b/clients/client-s3outposts/src/models/S3OutpostsServiceException.ts new file mode 100644 index 0000000000000..e6da546dd6d83 --- /dev/null +++ b/clients/client-s3outposts/src/models/S3OutpostsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from S3Outposts service. + */ +export class S3OutpostsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, S3OutpostsServiceException.prototype); + } +} diff --git a/clients/client-s3outposts/src/models/models_0.ts b/clients/client-s3outposts/src/models/models_0.ts index 4cf3d408c4246..f404d9c3ec945 100644 --- a/clients/client-s3outposts/src/models/models_0.ts +++ b/clients/client-s3outposts/src/models/models_0.ts @@ -1,21 +1,48 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { S3OutpostsServiceException as __BaseException } from "./S3OutpostsServiceException"; /** *

Access was denied for this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

There was a conflict with this action, and it could not be completed.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export enum EndpointAccessType { @@ -82,28 +109,64 @@ export namespace CreateEndpointResult { /** *

There was an exception with the internal server.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

There was an exception validating this data.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DeleteEndpointRequest { diff --git a/clients/client-s3outposts/src/protocols/Aws_restJson1.ts b/clients/client-s3outposts/src/protocols/Aws_restJson1.ts index 840507d2d2184..b46f66534a27e 100644 --- a/clients/client-s3outposts/src/protocols/Aws_restJson1.ts +++ b/clients/client-s3outposts/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateEndpointCommandInput, CreateEndpointCommandOutput } from "../commands/CreateEndpointCommand"; @@ -27,6 +26,7 @@ import { ResourceNotFoundException, ValidationException, } from "../models/models_0"; +import { S3OutpostsServiceException as __BaseException } from "../models/S3OutpostsServiceException"; export const serializeAws_restJson1CreateEndpointCommand = async ( input: CreateEndpointCommandInput, @@ -135,65 +135,34 @@ const deserializeAws_restJson1CreateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.s3outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.s3outposts#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.s3outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.s3outposts#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.s3outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEndpointCommand = async ( @@ -218,57 +187,31 @@ const deserializeAws_restJson1DeleteEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.s3outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.s3outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.s3outposts#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.s3outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEndpointsCommand = async ( @@ -301,142 +244,111 @@ const deserializeAws_restJson1ListEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.s3outposts#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.s3outposts#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.s3outposts#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.s3outposts#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1Endpoint = (output: any, context: __SerdeContext): Endpoint => { diff --git a/clients/client-sagemaker-a2i-runtime/src/index.ts b/clients/client-sagemaker-a2i-runtime/src/index.ts index 371f0b385d261..3a7779c55e350 100644 --- a/clients/client-sagemaker-a2i-runtime/src/index.ts +++ b/clients/client-sagemaker-a2i-runtime/src/index.ts @@ -3,3 +3,4 @@ export * from "./SageMakerA2IRuntimeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SageMakerA2IRuntimeServiceException } from "./models/SageMakerA2IRuntimeServiceException"; diff --git a/clients/client-sagemaker-a2i-runtime/src/models/SageMakerA2IRuntimeServiceException.ts b/clients/client-sagemaker-a2i-runtime/src/models/SageMakerA2IRuntimeServiceException.ts new file mode 100644 index 0000000000000..06186b580b319 --- /dev/null +++ b/clients/client-sagemaker-a2i-runtime/src/models/SageMakerA2IRuntimeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SageMakerA2IRuntime service. + */ +export class SageMakerA2IRuntimeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SageMakerA2IRuntimeServiceException.prototype); + } +} diff --git a/clients/client-sagemaker-a2i-runtime/src/models/models_0.ts b/clients/client-sagemaker-a2i-runtime/src/models/models_0.ts index 51888c2eb4bb4..71bf05d274bf9 100644 --- a/clients/client-sagemaker-a2i-runtime/src/models/models_0.ts +++ b/clients/client-sagemaker-a2i-runtime/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SageMakerA2IRuntimeServiceException as __BaseException } from "./SageMakerA2IRuntimeServiceException"; export interface DeleteHumanLoopRequest { /** @@ -31,20 +34,44 @@ export namespace DeleteHumanLoopResponse { *

We couldn't process your request because of an issue with the server. Try again * later.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

We couldn't find the requested resource. Check that your resources exists and were created * in the same AWS Region as your request, and try your request again.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -52,20 +79,44 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * the * maximum number of requests.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The * request isn't valid. Check the syntax and try again.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DescribeHumanLoopRequest { @@ -282,10 +333,22 @@ export namespace ListHumanLoopsResponse { *

Your request has the same name as another active human loop but has different input data. You cannot start two * human loops with the same name and different input data.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -296,10 +359,22 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * Center. To request an increase, see
AWS Service Quotas in the * AWS General Reference.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export enum ContentClassifier { diff --git a/clients/client-sagemaker-a2i-runtime/src/protocols/Aws_restJson1.ts b/clients/client-sagemaker-a2i-runtime/src/protocols/Aws_restJson1.ts index 0a385ff848074..25da3afe2e01c 100644 --- a/clients/client-sagemaker-a2i-runtime/src/protocols/Aws_restJson1.ts +++ b/clients/client-sagemaker-a2i-runtime/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { DeleteHumanLoopCommandInput, DeleteHumanLoopCommandOutput } from "../commands/DeleteHumanLoopCommand"; @@ -33,6 +32,7 @@ import { ThrottlingException, ValidationException, } from "../models/models_0"; +import { SageMakerA2IRuntimeServiceException as __BaseException } from "../models/SageMakerA2IRuntimeServiceException"; export const serializeAws_restJson1DeleteHumanLoopCommand = async ( input: DeleteHumanLoopCommandInput, @@ -204,57 +204,31 @@ const deserializeAws_restJson1DeleteHumanLoopCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.sagemakera2iruntime#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sagemakera2iruntime#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.sagemakera2iruntime#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.sagemakera2iruntime#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeHumanLoopCommand = async ( @@ -311,57 +285,31 @@ const deserializeAws_restJson1DescribeHumanLoopCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.sagemakera2iruntime#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sagemakera2iruntime#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.sagemakera2iruntime#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.sagemakera2iruntime#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListHumanLoopsCommand = async ( @@ -394,57 +342,31 @@ const deserializeAws_restJson1ListHumanLoopsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.sagemakera2iruntime#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sagemakera2iruntime#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.sagemakera2iruntime#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.sagemakera2iruntime#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartHumanLoopCommand = async ( @@ -473,65 +395,34 @@ const deserializeAws_restJson1StartHumanLoopCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemakera2iruntime#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.sagemakera2iruntime#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.sagemakera2iruntime#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.sagemakera2iruntime#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.sagemakera2iruntime#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopHumanLoopCommand = async ( @@ -556,159 +447,127 @@ const deserializeAws_restJson1StopHumanLoopCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.sagemakera2iruntime#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sagemakera2iruntime#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.sagemakera2iruntime#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.sagemakera2iruntime#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ContentClassifiers = ( diff --git a/clients/client-sagemaker-edge/src/index.ts b/clients/client-sagemaker-edge/src/index.ts index 6acc07844797f..e736372067893 100644 --- a/clients/client-sagemaker-edge/src/index.ts +++ b/clients/client-sagemaker-edge/src/index.ts @@ -2,3 +2,4 @@ export * from "./SagemakerEdge"; export * from "./SagemakerEdgeClient"; export * from "./commands"; export * from "./models"; +export { SagemakerEdgeServiceException } from "./models/SagemakerEdgeServiceException"; diff --git a/clients/client-sagemaker-edge/src/models/SagemakerEdgeServiceException.ts b/clients/client-sagemaker-edge/src/models/SagemakerEdgeServiceException.ts new file mode 100644 index 0000000000000..50fd077545c4e --- /dev/null +++ b/clients/client-sagemaker-edge/src/models/SagemakerEdgeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SagemakerEdge service. + */ +export class SagemakerEdgeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SagemakerEdgeServiceException.prototype); + } +} diff --git a/clients/client-sagemaker-edge/src/models/models_0.ts b/clients/client-sagemaker-edge/src/models/models_0.ts index a1ad0a5c5a120..1f77e8df4e840 100644 --- a/clients/client-sagemaker-edge/src/models/models_0.ts +++ b/clients/client-sagemaker-edge/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SagemakerEdgeServiceException as __BaseException } from "./SagemakerEdgeServiceException"; export interface GetDeviceRegistrationRequest { /** @@ -46,10 +49,22 @@ export namespace GetDeviceRegistrationResult { *

An internal failure occurred. Try your request again. If the problem * persists, contact AWS customer support.

*/ -export interface InternalServiceException extends __SmithyException, $MetadataBearer { - name: "InternalServiceException"; - $fault: "client"; +export class InternalServiceException extends __BaseException { + readonly name: "InternalServiceException" = "InternalServiceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-sagemaker-edge/src/protocols/Aws_restJson1.ts b/clients/client-sagemaker-edge/src/protocols/Aws_restJson1.ts index 64e1e60d345da..c0a1d836a7208 100644 --- a/clients/client-sagemaker-edge/src/protocols/Aws_restJson1.ts +++ b/clients/client-sagemaker-edge/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -19,6 +18,7 @@ import { } from "../commands/GetDeviceRegistrationCommand"; import { SendHeartbeatCommandInput, SendHeartbeatCommandOutput } from "../commands/SendHeartbeatCommand"; import { EdgeMetric, InternalServiceException, Model } from "../models/models_0"; +import { SagemakerEdgeServiceException as __BaseException } from "../models/SagemakerEdgeServiceException"; export const serializeAws_restJson1GetDeviceRegistrationCommand = async ( input: GetDeviceRegistrationCommandInput, @@ -107,33 +107,22 @@ const deserializeAws_restJson1GetDeviceRegistrationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.sagemakeredge#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendHeartbeatCommand = async ( @@ -158,50 +147,38 @@ const deserializeAws_restJson1SendHeartbeatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceException": case "com.amazonaws.sagemakeredge#InternalServiceException": - response = { - ...(await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServiceExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceException = { - name: "InternalServiceException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServiceException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1EdgeMetric = (input: EdgeMetric, context: __SerdeContext): any => { diff --git a/clients/client-sagemaker-featurestore-runtime/src/index.ts b/clients/client-sagemaker-featurestore-runtime/src/index.ts index be301a1c32f8e..13617e0d6fac1 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/index.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/index.ts @@ -2,3 +2,4 @@ export * from "./SageMakerFeatureStoreRuntime"; export * from "./SageMakerFeatureStoreRuntimeClient"; export * from "./commands"; export * from "./models"; +export { SageMakerFeatureStoreRuntimeServiceException } from "./models/SageMakerFeatureStoreRuntimeServiceException"; diff --git a/clients/client-sagemaker-featurestore-runtime/src/models/SageMakerFeatureStoreRuntimeServiceException.ts b/clients/client-sagemaker-featurestore-runtime/src/models/SageMakerFeatureStoreRuntimeServiceException.ts new file mode 100644 index 0000000000000..9111d86bebaca --- /dev/null +++ b/clients/client-sagemaker-featurestore-runtime/src/models/SageMakerFeatureStoreRuntimeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SageMakerFeatureStoreRuntime service. + */ +export class SageMakerFeatureStoreRuntimeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SageMakerFeatureStoreRuntimeServiceException.prototype); + } +} diff --git a/clients/client-sagemaker-featurestore-runtime/src/models/models_0.ts b/clients/client-sagemaker-featurestore-runtime/src/models/models_0.ts index 7082da731f5bc..e152cf070eb5d 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/models/models_0.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SageMakerFeatureStoreRuntimeServiceException as __BaseException } from "./SageMakerFeatureStoreRuntimeServiceException"; /** *

You do not have permission to perform an action.

*/ -export interface AccessForbidden extends __SmithyException, $MetadataBearer { - name: "AccessForbidden"; - $fault: "client"; +export class AccessForbidden extends __BaseException { + readonly name: "AccessForbidden" = "AccessForbidden"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessForbidden", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessForbidden.prototype); + this.Message = opts.Message; + } } /** @@ -176,28 +191,64 @@ export namespace BatchGetRecordResponse { *

An internal failure occurred. Try your request again. If the problem * persists, contact AWS customer support.

*/ -export interface InternalFailure extends __SmithyException, $MetadataBearer { - name: "InternalFailure"; - $fault: "server"; +export class InternalFailure extends __BaseException { + readonly name: "InternalFailure" = "InternalFailure"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailure", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailure.prototype); + this.Message = opts.Message; + } } /** *

The service is currently unavailable.

*/ -export interface ServiceUnavailable extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailable"; - $fault: "server"; +export class ServiceUnavailable extends __BaseException { + readonly name: "ServiceUnavailable" = "ServiceUnavailable"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailable", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailable.prototype); + this.Message = opts.Message; + } } /** *

There was an error validating your request.

*/ -export interface ValidationError extends __SmithyException, $MetadataBearer { - name: "ValidationError"; - $fault: "client"; +export class ValidationError extends __BaseException { + readonly name: "ValidationError" = "ValidationError"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationError.prototype); + this.Message = opts.Message; + } } export interface DeleteRecordRequest { @@ -275,10 +326,22 @@ export namespace GetRecordResponse { /** *

A resource that is required to perform an action was not found.

*/ -export interface ResourceNotFound extends __SmithyException, $MetadataBearer { - name: "ResourceNotFound"; - $fault: "client"; +export class ResourceNotFound extends __BaseException { + readonly name: "ResourceNotFound" = "ResourceNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFound.prototype); + this.Message = opts.Message; + } } export interface PutRecordRequest { diff --git a/clients/client-sagemaker-featurestore-runtime/src/protocols/Aws_restJson1.ts b/clients/client-sagemaker-featurestore-runtime/src/protocols/Aws_restJson1.ts index eb5c8b92c5b3c..3a654e86185c4 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/protocols/Aws_restJson1.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchGetRecordCommandInput, BatchGetRecordCommandOutput } from "../commands/BatchGetRecordCommand"; @@ -28,6 +27,7 @@ import { ServiceUnavailable, ValidationError, } from "../models/models_0"; +import { SageMakerFeatureStoreRuntimeServiceException as __BaseException } from "../models/SageMakerFeatureStoreRuntimeServiceException"; export const serializeAws_restJson1BatchGetRecordCommand = async ( input: BatchGetRecordCommandInput, @@ -200,57 +200,31 @@ const deserializeAws_restJson1BatchGetRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessForbidden": case "com.amazonaws.sagemakerfeaturestoreruntime#AccessForbidden": - response = { - ...(await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context); case "InternalFailure": case "com.amazonaws.sagemakerfeaturestoreruntime#InternalFailure": - response = { - ...(await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context); case "ServiceUnavailable": case "com.amazonaws.sagemakerfeaturestoreruntime#ServiceUnavailable": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context); case "ValidationError": case "com.amazonaws.sagemakerfeaturestoreruntime#ValidationError": - response = { - ...(await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRecordCommand = async ( @@ -275,57 +249,31 @@ const deserializeAws_restJson1DeleteRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessForbidden": case "com.amazonaws.sagemakerfeaturestoreruntime#AccessForbidden": - response = { - ...(await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context); case "InternalFailure": case "com.amazonaws.sagemakerfeaturestoreruntime#InternalFailure": - response = { - ...(await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context); case "ServiceUnavailable": case "com.amazonaws.sagemakerfeaturestoreruntime#ServiceUnavailable": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context); case "ValidationError": case "com.amazonaws.sagemakerfeaturestoreruntime#ValidationError": - response = { - ...(await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecordCommand = async ( @@ -354,65 +302,34 @@ const deserializeAws_restJson1GetRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessForbidden": case "com.amazonaws.sagemakerfeaturestoreruntime#AccessForbidden": - response = { - ...(await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context); case "InternalFailure": case "com.amazonaws.sagemakerfeaturestoreruntime#InternalFailure": - response = { - ...(await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemakerfeaturestoreruntime#ResourceNotFound": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundResponse(parsedOutput, context); case "ServiceUnavailable": case "com.amazonaws.sagemakerfeaturestoreruntime#ServiceUnavailable": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context); case "ValidationError": case "com.amazonaws.sagemakerfeaturestoreruntime#ValidationError": - response = { - ...(await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRecordCommand = async ( @@ -437,142 +354,111 @@ const deserializeAws_restJson1PutRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessForbidden": case "com.amazonaws.sagemakerfeaturestoreruntime#AccessForbidden": - response = { - ...(await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessForbiddenResponse(parsedOutput, context); case "InternalFailure": case "com.amazonaws.sagemakerfeaturestoreruntime#InternalFailure": - response = { - ...(await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context); case "ServiceUnavailable": case "com.amazonaws.sagemakerfeaturestoreruntime#ServiceUnavailable": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context); case "ValidationError": case "com.amazonaws.sagemakerfeaturestoreruntime#ValidationError": - response = { - ...(await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessForbiddenResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessForbidden = { - name: "AccessForbidden", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessForbidden({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailure = { - name: "InternalFailure", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalFailure({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFound = { - name: "ResourceNotFound", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFound({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailable = { - name: "ServiceUnavailable", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailable({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationError = { - name: "ValidationError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1BatchGetRecordIdentifier = ( diff --git a/clients/client-sagemaker-runtime/src/index.ts b/clients/client-sagemaker-runtime/src/index.ts index c2f84a715a7d0..b2097dac9cdef 100644 --- a/clients/client-sagemaker-runtime/src/index.ts +++ b/clients/client-sagemaker-runtime/src/index.ts @@ -2,3 +2,4 @@ export * from "./SageMakerRuntime"; export * from "./SageMakerRuntimeClient"; export * from "./commands"; export * from "./models"; +export { SageMakerRuntimeServiceException } from "./models/SageMakerRuntimeServiceException"; diff --git a/clients/client-sagemaker-runtime/src/models/SageMakerRuntimeServiceException.ts b/clients/client-sagemaker-runtime/src/models/SageMakerRuntimeServiceException.ts new file mode 100644 index 0000000000000..45eee740c75f9 --- /dev/null +++ b/clients/client-sagemaker-runtime/src/models/SageMakerRuntimeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SageMakerRuntime service. + */ +export class SageMakerRuntimeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SageMakerRuntimeServiceException.prototype); + } +} diff --git a/clients/client-sagemaker-runtime/src/models/models_0.ts b/clients/client-sagemaker-runtime/src/models/models_0.ts index f55584a6f9a18..ed22299205a19 100644 --- a/clients/client-sagemaker-runtime/src/models/models_0.ts +++ b/clients/client-sagemaker-runtime/src/models/models_0.ts @@ -1,22 +1,48 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SageMakerRuntimeServiceException as __BaseException } from "./SageMakerRuntimeServiceException"; /** *

Your request caused an exception with an internal dependency. Contact customer support.

*/ -export interface InternalDependencyException extends __SmithyException, $MetadataBearer { - name: "InternalDependencyException"; - $fault: "server"; +export class InternalDependencyException extends __BaseException { + readonly name: "InternalDependencyException" = "InternalDependencyException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalDependencyException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalDependencyException.prototype); + this.Message = opts.Message; + } } /** *

An internal failure occurred.

*/ -export interface InternalFailure extends __SmithyException, $MetadataBearer { - name: "InternalFailure"; - $fault: "server"; +export class InternalFailure extends __BaseException { + readonly name: "InternalFailure" = "InternalFailure"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailure", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailure.prototype); + this.Message = opts.Message; + } } export interface InvokeEndpointInput { @@ -158,9 +184,9 @@ export namespace InvokeEndpointOutput { *

Model (owned by the customer in the container) returned 4xx or 5xx error code. *

*/ -export interface ModelError extends __SmithyException, $MetadataBearer { - name: "ModelError"; - $fault: "client"; +export class ModelError extends __BaseException { + readonly name: "ModelError" = "ModelError"; + readonly $fault: "client" = "client"; Message?: string; /** *

Original status code.

@@ -176,33 +202,84 @@ export interface ModelError extends __SmithyException, $MetadataBearer { *

The Amazon Resource Name (ARN) of the log stream.

*/ LogStreamArn?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ModelError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ModelError.prototype); + this.Message = opts.Message; + this.OriginalStatusCode = opts.OriginalStatusCode; + this.OriginalMessage = opts.OriginalMessage; + this.LogStreamArn = opts.LogStreamArn; + } } /** *

Either a serverless endpoint variant's resources are still being provisioned, or a multi-model endpoint is still downloading or loading the target model. Wait and try your request again.

*/ -export interface ModelNotReadyException extends __SmithyException, $MetadataBearer { - name: "ModelNotReadyException"; - $fault: "client"; +export class ModelNotReadyException extends __BaseException { + readonly name: "ModelNotReadyException" = "ModelNotReadyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ModelNotReadyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ModelNotReadyException.prototype); + this.Message = opts.Message; + } } /** *

The service is unavailable. Try your call again.

*/ -export interface ServiceUnavailable extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailable"; - $fault: "server"; +export class ServiceUnavailable extends __BaseException { + readonly name: "ServiceUnavailable" = "ServiceUnavailable"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailable", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailable.prototype); + this.Message = opts.Message; + } } /** *

Inspect your request and try again.

*/ -export interface ValidationError extends __SmithyException, $MetadataBearer { - name: "ValidationError"; - $fault: "client"; +export class ValidationError extends __BaseException { + readonly name: "ValidationError" = "ValidationError"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationError.prototype); + this.Message = opts.Message; + } } export interface InvokeEndpointAsyncInput { diff --git a/clients/client-sagemaker-runtime/src/protocols/Aws_restJson1.ts b/clients/client-sagemaker-runtime/src/protocols/Aws_restJson1.ts index 04e127b156853..02f2f54242801 100644 --- a/clients/client-sagemaker-runtime/src/protocols/Aws_restJson1.ts +++ b/clients/client-sagemaker-runtime/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -27,6 +26,7 @@ import { ServiceUnavailable, ValidationError, } from "../models/models_0"; +import { SageMakerRuntimeServiceException as __BaseException } from "../models/SageMakerRuntimeServiceException"; export const serializeAws_restJson1InvokeEndpointCommand = async ( input: InvokeEndpointCommandInput, @@ -150,73 +150,37 @@ const deserializeAws_restJson1InvokeEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalDependencyException": case "com.amazonaws.sagemakerruntime#InternalDependencyException": - response = { - ...(await deserializeAws_restJson1InternalDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalDependencyExceptionResponse(parsedOutput, context); case "InternalFailure": case "com.amazonaws.sagemakerruntime#InternalFailure": - response = { - ...(await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context); case "ModelError": case "com.amazonaws.sagemakerruntime#ModelError": - response = { - ...(await deserializeAws_restJson1ModelErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ModelErrorResponse(parsedOutput, context); case "ModelNotReadyException": case "com.amazonaws.sagemakerruntime#ModelNotReadyException": - response = { - ...(await deserializeAws_restJson1ModelNotReadyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ModelNotReadyExceptionResponse(parsedOutput, context); case "ServiceUnavailable": case "com.amazonaws.sagemakerruntime#ServiceUnavailable": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context); case "ValidationError": case "com.amazonaws.sagemakerruntime#ValidationError": - response = { - ...(await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InvokeEndpointAsyncCommand = async ( @@ -249,98 +213,67 @@ const deserializeAws_restJson1InvokeEndpointAsyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalFailure": case "com.amazonaws.sagemakerruntime#InternalFailure": - response = { - ...(await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureResponse(parsedOutput, context); case "ServiceUnavailable": case "com.amazonaws.sagemakerruntime#ServiceUnavailable": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableResponse(parsedOutput, context); case "ValidationError": case "com.amazonaws.sagemakerruntime#ValidationError": - response = { - ...(await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalDependencyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalDependencyException = { - name: "InternalDependencyException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalDependencyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailure = { - name: "InternalFailure", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalFailure({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ModelErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ModelError = { - name: "ModelError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - LogStreamArn: undefined, - Message: undefined, - OriginalMessage: undefined, - OriginalStatusCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.LogStreamArn !== undefined && data.LogStreamArn !== null) { contents.LogStreamArn = __expectString(data.LogStreamArn); @@ -354,58 +287,59 @@ const deserializeAws_restJson1ModelErrorResponse = async ( if (data.OriginalStatusCode !== undefined && data.OriginalStatusCode !== null) { contents.OriginalStatusCode = __expectInt32(data.OriginalStatusCode); } - return contents; + const exception = new ModelError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ModelNotReadyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ModelNotReadyException = { - name: "ModelNotReadyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ModelNotReadyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailable = { - name: "ServiceUnavailable", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailable({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationError = { - name: "ValidationError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ diff --git a/clients/client-sagemaker/src/index.ts b/clients/client-sagemaker/src/index.ts index fbb8ba0be7fac..a3a9f3a2f626d 100644 --- a/clients/client-sagemaker/src/index.ts +++ b/clients/client-sagemaker/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { SageMakerServiceException } from "./models/SageMakerServiceException"; diff --git a/clients/client-sagemaker/src/models/SageMakerServiceException.ts b/clients/client-sagemaker/src/models/SageMakerServiceException.ts new file mode 100644 index 0000000000000..a488c7f01cf6e --- /dev/null +++ b/clients/client-sagemaker/src/models/SageMakerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SageMaker service. + */ +export class SageMakerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SageMakerServiceException.prototype); + } +} diff --git a/clients/client-sagemaker/src/models/models_0.ts b/clients/client-sagemaker/src/models/models_0.ts index d727efeb19db3..3c45bfc24455c 100644 --- a/clients/client-sagemaker/src/models/models_0.ts +++ b/clients/client-sagemaker/src/models/models_0.ts @@ -1,5 +1,10 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SageMakerServiceException as __BaseException } from "./SageMakerServiceException"; /** *

A structure describing the source of an action.

@@ -168,19 +173,43 @@ export namespace AddAssociationResponse { *

You have exceeded an Amazon SageMaker resource limit. For example, you might have too many * training jobs created.

*/ -export interface ResourceLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceeded"; - $fault: "client"; +export class ResourceLimitExceeded extends __BaseException { + readonly name: "ResourceLimitExceeded" = "ResourceLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceeded.prototype); + this.Message = opts.Message; + } } /** *

Resource being access is not found.

*/ -export interface ResourceNotFound extends __SmithyException, $MetadataBearer { - name: "ResourceNotFound"; - $fault: "client"; +export class ResourceNotFound extends __BaseException { + readonly name: "ResourceNotFound" = "ResourceNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFound.prototype); + this.Message = opts.Message; + } } /** @@ -5975,10 +6004,22 @@ export namespace ConditionStepMetadata { *

There was a conflict when you attempted to modify a SageMaker entity such as an * Experiment or Artifact.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export enum RepositoryAccessMode { @@ -6889,10 +6930,22 @@ export namespace CreateAppResponse { /** *

Resource being accessed is in use.

*/ -export interface ResourceInUse extends __SmithyException, $MetadataBearer { - name: "ResourceInUse"; - $fault: "client"; +export class ResourceInUse extends __BaseException { + readonly name: "ResourceInUse" = "ResourceInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUse.prototype); + this.Message = opts.Message; + } } export interface CreateAppImageConfigRequest { diff --git a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts index 57725c54be551..383f0f97f6595 100644 --- a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts +++ b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -16,10 +17,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -1512,6 +1511,7 @@ import { VariantProperty, Vertex, } from "../models/models_3"; +import { SageMakerServiceException as __BaseException } from "../models/SageMakerServiceException"; export const serializeAws_json1_1AddAssociationCommand = async ( input: AddAssociationCommandInput, @@ -4801,41 +4801,25 @@ const deserializeAws_json1_1AddAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddTagsCommand = async ( @@ -4863,25 +4847,19 @@ const deserializeAws_json1_1AddTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateTrialComponentCommand = async ( @@ -4909,41 +4887,25 @@ const deserializeAws_json1_1AssociateTrialComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDescribeModelPackageCommand = async ( @@ -4971,25 +4933,19 @@ const deserializeAws_json1_1BatchDescribeModelPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateActionCommand = async ( @@ -5017,33 +4973,22 @@ const deserializeAws_json1_1CreateActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAlgorithmCommand = async ( @@ -5071,25 +5016,19 @@ const deserializeAws_json1_1CreateAlgorithmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAppCommand = async ( @@ -5117,41 +5056,25 @@ const deserializeAws_json1_1CreateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAppImageConfigCommand = async ( @@ -5179,33 +5102,22 @@ const deserializeAws_json1_1CreateAppImageConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateArtifactCommand = async ( @@ -5233,33 +5145,22 @@ const deserializeAws_json1_1CreateArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAutoMLJobCommand = async ( @@ -5287,41 +5188,25 @@ const deserializeAws_json1_1CreateAutoMLJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCodeRepositoryCommand = async ( @@ -5349,25 +5234,19 @@ const deserializeAws_json1_1CreateCodeRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCompilationJobCommand = async ( @@ -5395,41 +5274,25 @@ const deserializeAws_json1_1CreateCompilationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContextCommand = async ( @@ -5457,33 +5320,22 @@ const deserializeAws_json1_1CreateContextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDataQualityJobDefinitionCommand = async ( @@ -5511,41 +5363,25 @@ const deserializeAws_json1_1CreateDataQualityJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDeviceFleetCommand = async ( @@ -5570,41 +5406,25 @@ const deserializeAws_json1_1CreateDeviceFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDomainCommand = async ( @@ -5632,41 +5452,25 @@ const deserializeAws_json1_1CreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEdgePackagingJobCommand = async ( @@ -5691,33 +5495,22 @@ const deserializeAws_json1_1CreateEdgePackagingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEndpointCommand = async ( @@ -5745,33 +5538,22 @@ const deserializeAws_json1_1CreateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateEndpointConfigCommand = async ( @@ -5799,33 +5581,22 @@ const deserializeAws_json1_1CreateEndpointConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateExperimentCommand = async ( @@ -5853,33 +5624,22 @@ const deserializeAws_json1_1CreateExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFeatureGroupCommand = async ( @@ -5907,41 +5667,25 @@ const deserializeAws_json1_1CreateFeatureGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateFlowDefinitionCommand = async ( @@ -5969,41 +5713,25 @@ const deserializeAws_json1_1CreateFlowDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHumanTaskUiCommand = async ( @@ -6031,41 +5759,25 @@ const deserializeAws_json1_1CreateHumanTaskUiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateHyperParameterTuningJobCommand = async ( @@ -6093,41 +5805,25 @@ const deserializeAws_json1_1CreateHyperParameterTuningJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateImageCommand = async ( @@ -6155,41 +5851,25 @@ const deserializeAws_json1_1CreateImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateImageVersionCommand = async ( @@ -6217,49 +5897,28 @@ const deserializeAws_json1_1CreateImageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInferenceRecommendationsJobCommand = async ( @@ -6287,41 +5946,25 @@ const deserializeAws_json1_1CreateInferenceRecommendationsJobCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLabelingJobCommand = async ( @@ -6349,41 +5992,25 @@ const deserializeAws_json1_1CreateLabelingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelCommand = async ( @@ -6411,33 +6038,22 @@ const deserializeAws_json1_1CreateModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelBiasJobDefinitionCommand = async ( @@ -6465,41 +6081,25 @@ const deserializeAws_json1_1CreateModelBiasJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelExplainabilityJobDefinitionCommand = async ( @@ -6527,41 +6127,25 @@ const deserializeAws_json1_1CreateModelExplainabilityJobDefinitionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelPackageCommand = async ( @@ -6589,41 +6173,25 @@ const deserializeAws_json1_1CreateModelPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelPackageGroupCommand = async ( @@ -6651,33 +6219,22 @@ const deserializeAws_json1_1CreateModelPackageGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateModelQualityJobDefinitionCommand = async ( @@ -6705,41 +6262,25 @@ const deserializeAws_json1_1CreateModelQualityJobDefinitionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMonitoringScheduleCommand = async ( @@ -6767,41 +6308,25 @@ const deserializeAws_json1_1CreateMonitoringScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNotebookInstanceCommand = async ( @@ -6829,33 +6354,22 @@ const deserializeAws_json1_1CreateNotebookInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNotebookInstanceLifecycleConfigCommand = async ( @@ -6883,33 +6397,22 @@ const deserializeAws_json1_1CreateNotebookInstanceLifecycleConfigCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePipelineCommand = async ( @@ -6937,41 +6440,25 @@ const deserializeAws_json1_1CreatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePresignedDomainUrlCommand = async ( @@ -6999,33 +6486,22 @@ const deserializeAws_json1_1CreatePresignedDomainUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePresignedNotebookInstanceUrlCommand = async ( @@ -7053,25 +6529,19 @@ const deserializeAws_json1_1CreatePresignedNotebookInstanceUrlCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProcessingJobCommand = async ( @@ -7099,49 +6569,28 @@ const deserializeAws_json1_1CreateProcessingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProjectCommand = async ( @@ -7169,33 +6618,22 @@ const deserializeAws_json1_1CreateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStudioLifecycleConfigCommand = async ( @@ -7223,33 +6661,22 @@ const deserializeAws_json1_1CreateStudioLifecycleConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTrainingJobCommand = async ( @@ -7277,49 +6704,28 @@ const deserializeAws_json1_1CreateTrainingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTransformJobCommand = async ( @@ -7347,49 +6753,28 @@ const deserializeAws_json1_1CreateTransformJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTrialCommand = async ( @@ -7417,41 +6802,25 @@ const deserializeAws_json1_1CreateTrialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTrialComponentCommand = async ( @@ -7479,33 +6848,22 @@ const deserializeAws_json1_1CreateTrialComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserProfileCommand = async ( @@ -7533,41 +6891,25 @@ const deserializeAws_json1_1CreateUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkforceCommand = async ( @@ -7595,25 +6937,19 @@ const deserializeAws_json1_1CreateWorkforceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkteamCommand = async ( @@ -7641,41 +6977,25 @@ const deserializeAws_json1_1CreateWorkteamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteActionCommand = async ( @@ -7703,33 +7023,22 @@ const deserializeAws_json1_1DeleteActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAlgorithmCommand = async ( @@ -7754,25 +7063,19 @@ const deserializeAws_json1_1DeleteAlgorithmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppCommand = async ( @@ -7797,41 +7100,25 @@ const deserializeAws_json1_1DeleteAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppImageConfigCommand = async ( @@ -7856,33 +7143,22 @@ const deserializeAws_json1_1DeleteAppImageConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteArtifactCommand = async ( @@ -7910,33 +7186,22 @@ const deserializeAws_json1_1DeleteArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAssociationCommand = async ( @@ -7964,33 +7229,22 @@ const deserializeAws_json1_1DeleteAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCodeRepositoryCommand = async ( @@ -8015,25 +7269,19 @@ const deserializeAws_json1_1DeleteCodeRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContextCommand = async ( @@ -8061,33 +7309,22 @@ const deserializeAws_json1_1DeleteContextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDataQualityJobDefinitionCommand = async ( @@ -8112,33 +7349,22 @@ const deserializeAws_json1_1DeleteDataQualityJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDeviceFleetCommand = async ( @@ -8163,33 +7389,22 @@ const deserializeAws_json1_1DeleteDeviceFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDomainCommand = async ( @@ -8214,41 +7429,25 @@ const deserializeAws_json1_1DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEndpointCommand = async ( @@ -8273,25 +7472,19 @@ const deserializeAws_json1_1DeleteEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEndpointConfigCommand = async ( @@ -8316,25 +7509,19 @@ const deserializeAws_json1_1DeleteEndpointConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteExperimentCommand = async ( @@ -8362,33 +7549,22 @@ const deserializeAws_json1_1DeleteExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFeatureGroupCommand = async ( @@ -8413,33 +7589,22 @@ const deserializeAws_json1_1DeleteFeatureGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFlowDefinitionCommand = async ( @@ -8467,41 +7632,25 @@ const deserializeAws_json1_1DeleteFlowDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteHumanTaskUiCommand = async ( @@ -8529,33 +7678,22 @@ const deserializeAws_json1_1DeleteHumanTaskUiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteImageCommand = async ( @@ -8583,41 +7721,25 @@ const deserializeAws_json1_1DeleteImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteImageVersionCommand = async ( @@ -8645,41 +7767,25 @@ const deserializeAws_json1_1DeleteImageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelCommand = async ( @@ -8704,25 +7810,19 @@ const deserializeAws_json1_1DeleteModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelBiasJobDefinitionCommand = async ( @@ -8747,33 +7847,22 @@ const deserializeAws_json1_1DeleteModelBiasJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelExplainabilityJobDefinitionCommand = async ( @@ -8798,33 +7887,22 @@ const deserializeAws_json1_1DeleteModelExplainabilityJobDefinitionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelPackageCommand = async ( @@ -8849,33 +7927,22 @@ const deserializeAws_json1_1DeleteModelPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelPackageGroupCommand = async ( @@ -8900,33 +7967,22 @@ const deserializeAws_json1_1DeleteModelPackageGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelPackageGroupPolicyCommand = async ( @@ -8951,25 +8007,19 @@ const deserializeAws_json1_1DeleteModelPackageGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteModelQualityJobDefinitionCommand = async ( @@ -8994,33 +8044,22 @@ const deserializeAws_json1_1DeleteModelQualityJobDefinitionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMonitoringScheduleCommand = async ( @@ -9045,33 +8084,22 @@ const deserializeAws_json1_1DeleteMonitoringScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNotebookInstanceCommand = async ( @@ -9096,25 +8124,19 @@ const deserializeAws_json1_1DeleteNotebookInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNotebookInstanceLifecycleConfigCommand = async ( @@ -9139,25 +8161,19 @@ const deserializeAws_json1_1DeleteNotebookInstanceLifecycleConfigCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePipelineCommand = async ( @@ -9185,33 +8201,22 @@ const deserializeAws_json1_1DeletePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProjectCommand = async ( @@ -9236,33 +8241,22 @@ const deserializeAws_json1_1DeleteProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteStudioLifecycleConfigCommand = async ( @@ -9287,41 +8281,25 @@ const deserializeAws_json1_1DeleteStudioLifecycleConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTagsCommand = async ( @@ -9349,25 +8327,19 @@ const deserializeAws_json1_1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTrialCommand = async ( @@ -9395,33 +8367,22 @@ const deserializeAws_json1_1DeleteTrialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTrialComponentCommand = async ( @@ -9449,33 +8410,22 @@ const deserializeAws_json1_1DeleteTrialComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserProfileCommand = async ( @@ -9500,41 +8450,25 @@ const deserializeAws_json1_1DeleteUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkforceCommand = async ( @@ -9562,25 +8496,19 @@ const deserializeAws_json1_1DeleteWorkforceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkteamCommand = async ( @@ -9608,33 +8536,22 @@ const deserializeAws_json1_1DeleteWorkteamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterDevicesCommand = async ( @@ -9659,25 +8576,19 @@ const deserializeAws_json1_1DeregisterDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeActionCommand = async ( @@ -9705,33 +8616,22 @@ const deserializeAws_json1_1DescribeActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAlgorithmCommand = async ( @@ -9759,25 +8659,19 @@ const deserializeAws_json1_1DescribeAlgorithmCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAppCommand = async ( @@ -9805,33 +8699,22 @@ const deserializeAws_json1_1DescribeAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAppImageConfigCommand = async ( @@ -9859,33 +8742,22 @@ const deserializeAws_json1_1DescribeAppImageConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeArtifactCommand = async ( @@ -9913,33 +8785,22 @@ const deserializeAws_json1_1DescribeArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAutoMLJobCommand = async ( @@ -9967,33 +8828,22 @@ const deserializeAws_json1_1DescribeAutoMLJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCodeRepositoryCommand = async ( @@ -10021,25 +8871,19 @@ const deserializeAws_json1_1DescribeCodeRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCompilationJobCommand = async ( @@ -10067,33 +8911,22 @@ const deserializeAws_json1_1DescribeCompilationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeContextCommand = async ( @@ -10121,33 +8954,22 @@ const deserializeAws_json1_1DescribeContextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDataQualityJobDefinitionCommand = async ( @@ -10175,33 +8997,22 @@ const deserializeAws_json1_1DescribeDataQualityJobDefinitionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDeviceCommand = async ( @@ -10229,33 +9040,22 @@ const deserializeAws_json1_1DescribeDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDeviceFleetCommand = async ( @@ -10283,33 +9083,22 @@ const deserializeAws_json1_1DescribeDeviceFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDomainCommand = async ( @@ -10337,33 +9126,22 @@ const deserializeAws_json1_1DescribeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEdgePackagingJobCommand = async ( @@ -10391,33 +9169,22 @@ const deserializeAws_json1_1DescribeEdgePackagingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointCommand = async ( @@ -10445,25 +9212,19 @@ const deserializeAws_json1_1DescribeEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEndpointConfigCommand = async ( @@ -10491,25 +9252,19 @@ const deserializeAws_json1_1DescribeEndpointConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExperimentCommand = async ( @@ -10537,33 +9292,22 @@ const deserializeAws_json1_1DescribeExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFeatureGroupCommand = async ( @@ -10591,33 +9335,22 @@ const deserializeAws_json1_1DescribeFeatureGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFlowDefinitionCommand = async ( @@ -10645,33 +9378,22 @@ const deserializeAws_json1_1DescribeFlowDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHumanTaskUiCommand = async ( @@ -10699,33 +9421,22 @@ const deserializeAws_json1_1DescribeHumanTaskUiCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeHyperParameterTuningJobCommand = async ( @@ -10753,33 +9464,22 @@ const deserializeAws_json1_1DescribeHyperParameterTuningJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImageCommand = async ( @@ -10807,33 +9507,22 @@ const deserializeAws_json1_1DescribeImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeImageVersionCommand = async ( @@ -10861,33 +9550,22 @@ const deserializeAws_json1_1DescribeImageVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInferenceRecommendationsJobCommand = async ( @@ -10915,33 +9593,22 @@ const deserializeAws_json1_1DescribeInferenceRecommendationsJobCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLabelingJobCommand = async ( @@ -10969,33 +9636,22 @@ const deserializeAws_json1_1DescribeLabelingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLineageGroupCommand = async ( @@ -11023,33 +9679,22 @@ const deserializeAws_json1_1DescribeLineageGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelCommand = async ( @@ -11077,25 +9722,19 @@ const deserializeAws_json1_1DescribeModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelBiasJobDefinitionCommand = async ( @@ -11123,33 +9762,22 @@ const deserializeAws_json1_1DescribeModelBiasJobDefinitionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelExplainabilityJobDefinitionCommand = async ( @@ -11177,33 +9805,22 @@ const deserializeAws_json1_1DescribeModelExplainabilityJobDefinitionCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelPackageCommand = async ( @@ -11231,25 +9848,19 @@ const deserializeAws_json1_1DescribeModelPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelPackageGroupCommand = async ( @@ -11277,25 +9888,19 @@ const deserializeAws_json1_1DescribeModelPackageGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeModelQualityJobDefinitionCommand = async ( @@ -11323,33 +9928,22 @@ const deserializeAws_json1_1DescribeModelQualityJobDefinitionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMonitoringScheduleCommand = async ( @@ -11377,33 +9971,22 @@ const deserializeAws_json1_1DescribeMonitoringScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNotebookInstanceCommand = async ( @@ -11431,25 +10014,19 @@ const deserializeAws_json1_1DescribeNotebookInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNotebookInstanceLifecycleConfigCommand = async ( @@ -11477,25 +10054,19 @@ const deserializeAws_json1_1DescribeNotebookInstanceLifecycleConfigCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePipelineCommand = async ( @@ -11523,33 +10094,22 @@ const deserializeAws_json1_1DescribePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePipelineDefinitionForExecutionCommand = async ( @@ -11577,33 +10137,22 @@ const deserializeAws_json1_1DescribePipelineDefinitionForExecutionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePipelineExecutionCommand = async ( @@ -11631,33 +10180,22 @@ const deserializeAws_json1_1DescribePipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProcessingJobCommand = async ( @@ -11685,33 +10223,22 @@ const deserializeAws_json1_1DescribeProcessingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProjectCommand = async ( @@ -11739,25 +10266,19 @@ const deserializeAws_json1_1DescribeProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStudioLifecycleConfigCommand = async ( @@ -11785,33 +10306,22 @@ const deserializeAws_json1_1DescribeStudioLifecycleConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSubscribedWorkteamCommand = async ( @@ -11839,25 +10349,19 @@ const deserializeAws_json1_1DescribeSubscribedWorkteamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrainingJobCommand = async ( @@ -11885,33 +10389,22 @@ const deserializeAws_json1_1DescribeTrainingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTransformJobCommand = async ( @@ -11939,33 +10432,22 @@ const deserializeAws_json1_1DescribeTransformJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrialCommand = async ( @@ -11993,33 +10475,22 @@ const deserializeAws_json1_1DescribeTrialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrialComponentCommand = async ( @@ -12047,33 +10518,22 @@ const deserializeAws_json1_1DescribeTrialComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserProfileCommand = async ( @@ -12101,33 +10561,22 @@ const deserializeAws_json1_1DescribeUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkforceCommand = async ( @@ -12155,25 +10604,19 @@ const deserializeAws_json1_1DescribeWorkforceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkteamCommand = async ( @@ -12201,25 +10644,19 @@ const deserializeAws_json1_1DescribeWorkteamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableSagemakerServicecatalogPortfolioCommand = async ( @@ -12247,25 +10684,19 @@ const deserializeAws_json1_1DisableSagemakerServicecatalogPortfolioCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateTrialComponentCommand = async ( @@ -12293,33 +10724,22 @@ const deserializeAws_json1_1DisassociateTrialComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableSagemakerServicecatalogPortfolioCommand = async ( @@ -12347,25 +10767,19 @@ const deserializeAws_json1_1EnableSagemakerServicecatalogPortfolioCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeviceFleetReportCommand = async ( @@ -12393,25 +10807,19 @@ const deserializeAws_json1_1GetDeviceFleetReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLineageGroupPolicyCommand = async ( @@ -12439,33 +10847,22 @@ const deserializeAws_json1_1GetLineageGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetModelPackageGroupPolicyCommand = async ( @@ -12493,25 +10890,19 @@ const deserializeAws_json1_1GetModelPackageGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSagemakerServicecatalogPortfolioStatusCommand = async ( @@ -12539,25 +10930,19 @@ const deserializeAws_json1_1GetSagemakerServicecatalogPortfolioStatusCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSearchSuggestionsCommand = async ( @@ -12585,25 +10970,19 @@ const deserializeAws_json1_1GetSearchSuggestionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListActionsCommand = async ( @@ -12631,33 +11010,22 @@ const deserializeAws_json1_1ListActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAlgorithmsCommand = async ( @@ -12685,25 +11053,19 @@ const deserializeAws_json1_1ListAlgorithmsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAppImageConfigsCommand = async ( @@ -12731,25 +11093,19 @@ const deserializeAws_json1_1ListAppImageConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAppsCommand = async ( @@ -12777,25 +11133,19 @@ const deserializeAws_json1_1ListAppsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListArtifactsCommand = async ( @@ -12823,33 +11173,22 @@ const deserializeAws_json1_1ListArtifactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociationsCommand = async ( @@ -12877,33 +11216,22 @@ const deserializeAws_json1_1ListAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAutoMLJobsCommand = async ( @@ -12931,25 +11259,19 @@ const deserializeAws_json1_1ListAutoMLJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCandidatesForAutoMLJobCommand = async ( @@ -12977,33 +11299,22 @@ const deserializeAws_json1_1ListCandidatesForAutoMLJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCodeRepositoriesCommand = async ( @@ -13031,25 +11342,19 @@ const deserializeAws_json1_1ListCodeRepositoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCompilationJobsCommand = async ( @@ -13077,25 +11382,19 @@ const deserializeAws_json1_1ListCompilationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListContextsCommand = async ( @@ -13123,33 +11422,22 @@ const deserializeAws_json1_1ListContextsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDataQualityJobDefinitionsCommand = async ( @@ -13177,25 +11465,19 @@ const deserializeAws_json1_1ListDataQualityJobDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDeviceFleetsCommand = async ( @@ -13223,25 +11505,19 @@ const deserializeAws_json1_1ListDeviceFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDevicesCommand = async ( @@ -13269,25 +11545,19 @@ const deserializeAws_json1_1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDomainsCommand = async ( @@ -13315,25 +11585,19 @@ const deserializeAws_json1_1ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEdgePackagingJobsCommand = async ( @@ -13361,25 +11625,19 @@ const deserializeAws_json1_1ListEdgePackagingJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEndpointConfigsCommand = async ( @@ -13407,25 +11665,19 @@ const deserializeAws_json1_1ListEndpointConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEndpointsCommand = async ( @@ -13453,25 +11705,19 @@ const deserializeAws_json1_1ListEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExperimentsCommand = async ( @@ -13499,25 +11745,19 @@ const deserializeAws_json1_1ListExperimentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFeatureGroupsCommand = async ( @@ -13545,25 +11785,19 @@ const deserializeAws_json1_1ListFeatureGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFlowDefinitionsCommand = async ( @@ -13591,25 +11825,19 @@ const deserializeAws_json1_1ListFlowDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHumanTaskUisCommand = async ( @@ -13637,25 +11865,19 @@ const deserializeAws_json1_1ListHumanTaskUisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListHyperParameterTuningJobsCommand = async ( @@ -13683,25 +11905,19 @@ const deserializeAws_json1_1ListHyperParameterTuningJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListImagesCommand = async ( @@ -13729,25 +11945,19 @@ const deserializeAws_json1_1ListImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListImageVersionsCommand = async ( @@ -13775,33 +11985,22 @@ const deserializeAws_json1_1ListImageVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInferenceRecommendationsJobsCommand = async ( @@ -13829,25 +12028,19 @@ const deserializeAws_json1_1ListInferenceRecommendationsJobsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLabelingJobsCommand = async ( @@ -13875,25 +12068,19 @@ const deserializeAws_json1_1ListLabelingJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLabelingJobsForWorkteamCommand = async ( @@ -13921,33 +12108,22 @@ const deserializeAws_json1_1ListLabelingJobsForWorkteamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLineageGroupsCommand = async ( @@ -13975,25 +12151,19 @@ const deserializeAws_json1_1ListLineageGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelBiasJobDefinitionsCommand = async ( @@ -14021,25 +12191,19 @@ const deserializeAws_json1_1ListModelBiasJobDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelExplainabilityJobDefinitionsCommand = async ( @@ -14067,25 +12231,19 @@ const deserializeAws_json1_1ListModelExplainabilityJobDefinitionsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelMetadataCommand = async ( @@ -14113,25 +12271,19 @@ const deserializeAws_json1_1ListModelMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelPackageGroupsCommand = async ( @@ -14159,25 +12311,19 @@ const deserializeAws_json1_1ListModelPackageGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelPackagesCommand = async ( @@ -14205,25 +12351,19 @@ const deserializeAws_json1_1ListModelPackagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelQualityJobDefinitionsCommand = async ( @@ -14251,25 +12391,19 @@ const deserializeAws_json1_1ListModelQualityJobDefinitionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListModelsCommand = async ( @@ -14297,25 +12431,19 @@ const deserializeAws_json1_1ListModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMonitoringExecutionsCommand = async ( @@ -14343,25 +12471,19 @@ const deserializeAws_json1_1ListMonitoringExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMonitoringSchedulesCommand = async ( @@ -14389,25 +12511,19 @@ const deserializeAws_json1_1ListMonitoringSchedulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListNotebookInstanceLifecycleConfigsCommand = async ( @@ -14435,25 +12551,19 @@ const deserializeAws_json1_1ListNotebookInstanceLifecycleConfigsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListNotebookInstancesCommand = async ( @@ -14481,25 +12591,19 @@ const deserializeAws_json1_1ListNotebookInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelineExecutionsCommand = async ( @@ -14527,33 +12631,22 @@ const deserializeAws_json1_1ListPipelineExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelineExecutionStepsCommand = async ( @@ -14581,33 +12674,22 @@ const deserializeAws_json1_1ListPipelineExecutionStepsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelineParametersForExecutionCommand = async ( @@ -14635,33 +12717,22 @@ const deserializeAws_json1_1ListPipelineParametersForExecutionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPipelinesCommand = async ( @@ -14689,25 +12760,19 @@ const deserializeAws_json1_1ListPipelinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProcessingJobsCommand = async ( @@ -14735,25 +12800,19 @@ const deserializeAws_json1_1ListProcessingJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProjectsCommand = async ( @@ -14781,25 +12840,19 @@ const deserializeAws_json1_1ListProjectsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStudioLifecycleConfigsCommand = async ( @@ -14827,33 +12880,22 @@ const deserializeAws_json1_1ListStudioLifecycleConfigsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSubscribedWorkteamsCommand = async ( @@ -14881,25 +12923,19 @@ const deserializeAws_json1_1ListSubscribedWorkteamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsCommand = async ( @@ -14927,25 +12963,19 @@ const deserializeAws_json1_1ListTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTrainingJobsCommand = async ( @@ -14973,25 +13003,19 @@ const deserializeAws_json1_1ListTrainingJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTrainingJobsForHyperParameterTuningJobCommand = async ( @@ -15019,33 +13043,22 @@ const deserializeAws_json1_1ListTrainingJobsForHyperParameterTuningJobCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTransformJobsCommand = async ( @@ -15073,25 +13086,19 @@ const deserializeAws_json1_1ListTransformJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTrialComponentsCommand = async ( @@ -15119,33 +13126,22 @@ const deserializeAws_json1_1ListTrialComponentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTrialsCommand = async ( @@ -15173,33 +13169,22 @@ const deserializeAws_json1_1ListTrialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUserProfilesCommand = async ( @@ -15227,25 +13212,19 @@ const deserializeAws_json1_1ListUserProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkforcesCommand = async ( @@ -15273,25 +13252,19 @@ const deserializeAws_json1_1ListWorkforcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkteamsCommand = async ( @@ -15319,25 +13292,19 @@ const deserializeAws_json1_1ListWorkteamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutModelPackageGroupPolicyCommand = async ( @@ -15365,25 +13332,19 @@ const deserializeAws_json1_1PutModelPackageGroupPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1QueryLineageCommand = async ( @@ -15411,33 +13372,22 @@ const deserializeAws_json1_1QueryLineageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterDevicesCommand = async ( @@ -15462,33 +13412,22 @@ const deserializeAws_json1_1RegisterDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RenderUiTemplateCommand = async ( @@ -15516,33 +13455,22 @@ const deserializeAws_json1_1RenderUiTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetryPipelineExecutionCommand = async ( @@ -15570,49 +13498,28 @@ const deserializeAws_json1_1RetryPipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchCommand = async ( @@ -15640,25 +13547,19 @@ const deserializeAws_json1_1SearchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendPipelineExecutionStepFailureCommand = async ( @@ -15686,41 +13587,25 @@ const deserializeAws_json1_1SendPipelineExecutionStepFailureCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendPipelineExecutionStepSuccessCommand = async ( @@ -15748,41 +13633,25 @@ const deserializeAws_json1_1SendPipelineExecutionStepSuccessCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMonitoringScheduleCommand = async ( @@ -15807,33 +13676,22 @@ const deserializeAws_json1_1StartMonitoringScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartNotebookInstanceCommand = async ( @@ -15858,33 +13716,22 @@ const deserializeAws_json1_1StartNotebookInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartPipelineExecutionCommand = async ( @@ -15912,41 +13759,25 @@ const deserializeAws_json1_1StartPipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopAutoMLJobCommand = async ( @@ -15971,33 +13802,22 @@ const deserializeAws_json1_1StopAutoMLJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopCompilationJobCommand = async ( @@ -16022,33 +13842,22 @@ const deserializeAws_json1_1StopCompilationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopEdgePackagingJobCommand = async ( @@ -16073,25 +13882,19 @@ const deserializeAws_json1_1StopEdgePackagingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopHyperParameterTuningJobCommand = async ( @@ -16116,33 +13919,22 @@ const deserializeAws_json1_1StopHyperParameterTuningJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopInferenceRecommendationsJobCommand = async ( @@ -16167,33 +13959,22 @@ const deserializeAws_json1_1StopInferenceRecommendationsJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopLabelingJobCommand = async ( @@ -16218,33 +13999,22 @@ const deserializeAws_json1_1StopLabelingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopMonitoringScheduleCommand = async ( @@ -16269,33 +14039,22 @@ const deserializeAws_json1_1StopMonitoringScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopNotebookInstanceCommand = async ( @@ -16320,25 +14079,19 @@ const deserializeAws_json1_1StopNotebookInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopPipelineExecutionCommand = async ( @@ -16366,33 +14119,22 @@ const deserializeAws_json1_1StopPipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopProcessingJobCommand = async ( @@ -16417,33 +14159,22 @@ const deserializeAws_json1_1StopProcessingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTrainingJobCommand = async ( @@ -16468,33 +14199,22 @@ const deserializeAws_json1_1StopTrainingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTransformJobCommand = async ( @@ -16519,33 +14239,22 @@ const deserializeAws_json1_1StopTransformJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateActionCommand = async ( @@ -16573,41 +14282,25 @@ const deserializeAws_json1_1UpdateActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAppImageConfigCommand = async ( @@ -16635,33 +14328,22 @@ const deserializeAws_json1_1UpdateAppImageConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateArtifactCommand = async ( @@ -16689,41 +14371,25 @@ const deserializeAws_json1_1UpdateArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCodeRepositoryCommand = async ( @@ -16751,25 +14417,19 @@ const deserializeAws_json1_1UpdateCodeRepositoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContextCommand = async ( @@ -16797,41 +14457,25 @@ const deserializeAws_json1_1UpdateContextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDeviceFleetCommand = async ( @@ -16856,33 +14500,22 @@ const deserializeAws_json1_1UpdateDeviceFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDevicesCommand = async ( @@ -16907,25 +14540,19 @@ const deserializeAws_json1_1UpdateDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDomainCommand = async ( @@ -16953,49 +14580,28 @@ const deserializeAws_json1_1UpdateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEndpointCommand = async ( @@ -17023,33 +14629,22 @@ const deserializeAws_json1_1UpdateEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEndpointWeightsAndCapacitiesCommand = async ( @@ -17077,33 +14672,22 @@ const deserializeAws_json1_1UpdateEndpointWeightsAndCapacitiesCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateExperimentCommand = async ( @@ -17131,41 +14715,25 @@ const deserializeAws_json1_1UpdateExperimentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateImageCommand = async ( @@ -17193,41 +14761,25 @@ const deserializeAws_json1_1UpdateImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateModelPackageCommand = async ( @@ -17255,25 +14807,19 @@ const deserializeAws_json1_1UpdateModelPackageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMonitoringScheduleCommand = async ( @@ -17301,41 +14847,25 @@ const deserializeAws_json1_1UpdateMonitoringScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNotebookInstanceCommand = async ( @@ -17363,33 +14893,22 @@ const deserializeAws_json1_1UpdateNotebookInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNotebookInstanceLifecycleConfigCommand = async ( @@ -17417,33 +14936,22 @@ const deserializeAws_json1_1UpdateNotebookInstanceLifecycleConfigCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePipelineCommand = async ( @@ -17471,33 +14979,22 @@ const deserializeAws_json1_1UpdatePipelineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePipelineExecutionCommand = async ( @@ -17525,33 +15022,22 @@ const deserializeAws_json1_1UpdatePipelineExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProjectCommand = async ( @@ -17579,25 +15065,19 @@ const deserializeAws_json1_1UpdateProjectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTrainingJobCommand = async ( @@ -17625,33 +15105,22 @@ const deserializeAws_json1_1UpdateTrainingJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTrialCommand = async ( @@ -17679,41 +15148,25 @@ const deserializeAws_json1_1UpdateTrialCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTrialComponentCommand = async ( @@ -17741,41 +15194,25 @@ const deserializeAws_json1_1UpdateTrialComponentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.sagemaker#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserProfileCommand = async ( @@ -17803,49 +15240,28 @@ const deserializeAws_json1_1UpdateUserProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUse": case "com.amazonaws.sagemaker#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sagemaker#ResourceNotFound": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWorkforceCommand = async ( @@ -17873,25 +15289,19 @@ const deserializeAws_json1_1UpdateWorkforceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWorkteamCommand = async ( @@ -17919,33 +15329,22 @@ const deserializeAws_json1_1UpdateWorkteamCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceLimitExceeded": case "com.amazonaws.sagemaker#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -17954,13 +15353,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseResponse = async ( @@ -17969,13 +15366,11 @@ const deserializeAws_json1_1ResourceInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUse(body, context); - const contents: ResourceInUse = { - name: "ResourceInUse", - $fault: "client", + const exception = new ResourceInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLimitExceededResponse = async ( @@ -17984,13 +15379,11 @@ const deserializeAws_json1_1ResourceLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLimitExceeded(body, context); - const contents: ResourceLimitExceeded = { - name: "ResourceLimitExceeded", - $fault: "client", + const exception = new ResourceLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundResponse = async ( @@ -17999,13 +15392,11 @@ const deserializeAws_json1_1ResourceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFound(body, context); - const contents: ResourceNotFound = { - name: "ResourceNotFound", - $fault: "client", + const exception = new ResourceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActionSource = (input: ActionSource, context: __SerdeContext): any => { diff --git a/clients/client-savingsplans/src/index.ts b/clients/client-savingsplans/src/index.ts index 5247f2f9bad63..416bed166e519 100644 --- a/clients/client-savingsplans/src/index.ts +++ b/clients/client-savingsplans/src/index.ts @@ -2,3 +2,4 @@ export * from "./Savingsplans"; export * from "./SavingsplansClient"; export * from "./commands"; export * from "./models"; +export { SavingsplansServiceException } from "./models/SavingsplansServiceException"; diff --git a/clients/client-savingsplans/src/models/SavingsplansServiceException.ts b/clients/client-savingsplans/src/models/SavingsplansServiceException.ts new file mode 100644 index 0000000000000..2fa760d02a31d --- /dev/null +++ b/clients/client-savingsplans/src/models/SavingsplansServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Savingsplans service. + */ +export class SavingsplansServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SavingsplansServiceException.prototype); + } +} diff --git a/clients/client-savingsplans/src/models/models_0.ts b/clients/client-savingsplans/src/models/models_0.ts index 9360d2753eaab..f5bb31cf54750 100644 --- a/clients/client-savingsplans/src/models/models_0.ts +++ b/clients/client-savingsplans/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SavingsplansServiceException as __BaseException } from "./SavingsplansServiceException"; export interface CreateSavingsPlanRequest { /** @@ -62,37 +65,77 @@ export namespace CreateSavingsPlanResponse { /** *

An unexpected error occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

A service quota has been exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

One of the input parameters is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface DeleteQueuedSavingsPlanRequest { diff --git a/clients/client-savingsplans/src/protocols/Aws_restJson1.ts b/clients/client-savingsplans/src/protocols/Aws_restJson1.ts index 27b14c2447002..fcdbc7165990f 100644 --- a/clients/client-savingsplans/src/protocols/Aws_restJson1.ts +++ b/clients/client-savingsplans/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -7,10 +8,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -65,6 +64,7 @@ import { ServiceQuotaExceededException, ValidationException, } from "../models/models_0"; +import { SavingsplansServiceException as __BaseException } from "../models/SavingsplansServiceException"; export const serializeAws_restJson1CreateSavingsPlanCommand = async ( input: CreateSavingsPlanCommandInput, @@ -410,57 +410,31 @@ const deserializeAws_restJson1CreateSavingsPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.savingsplans#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.savingsplans#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteQueuedSavingsPlanCommand = async ( @@ -485,57 +459,31 @@ const deserializeAws_restJson1DeleteQueuedSavingsPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.savingsplans#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.savingsplans#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSavingsPlanRatesCommand = async ( @@ -572,41 +520,25 @@ const deserializeAws_restJson1DescribeSavingsPlanRatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.savingsplans#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSavingsPlansCommand = async ( @@ -639,41 +571,25 @@ const deserializeAws_restJson1DescribeSavingsPlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSavingsPlansOfferingRatesCommand = async ( @@ -706,41 +622,25 @@ const deserializeAws_restJson1DescribeSavingsPlansOfferingRatesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSavingsPlansOfferingsCommand = async ( @@ -773,41 +673,25 @@ const deserializeAws_restJson1DescribeSavingsPlansOfferingsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -836,49 +720,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.savingsplans#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -903,57 +766,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.savingsplans#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.savingsplans#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -978,117 +815,92 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.savingsplans#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.savingsplans#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.savingsplans#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CurrencyList = (input: (CurrencyCode | string)[], context: __SerdeContext): any => { diff --git a/clients/client-schemas/src/index.ts b/clients/client-schemas/src/index.ts index 19ba043b7e9ca..3d64e75a923ce 100644 --- a/clients/client-schemas/src/index.ts +++ b/clients/client-schemas/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { SchemasServiceException } from "./models/SchemasServiceException"; diff --git a/clients/client-schemas/src/models/SchemasServiceException.ts b/clients/client-schemas/src/models/SchemasServiceException.ts new file mode 100644 index 0000000000000..2f8baf5609624 --- /dev/null +++ b/clients/client-schemas/src/models/SchemasServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Schemas service. + */ +export class SchemasServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SchemasServiceException.prototype); + } +} diff --git a/clients/client-schemas/src/models/models_0.ts b/clients/client-schemas/src/models/models_0.ts index d79d5bc96f16f..7b27e7ad5ce9a 100644 --- a/clients/client-schemas/src/models/models_0.ts +++ b/clients/client-schemas/src/models/models_0.ts @@ -1,5 +1,10 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SchemasServiceException as __BaseException } from "./SchemasServiceException"; export enum DiscovererState { STARTED = "STARTED", @@ -205,9 +210,9 @@ export namespace SearchSchemaSummary { }); } -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -217,6 +222,19 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export enum CodeGenerationStatus { @@ -225,9 +243,9 @@ export enum CodeGenerationStatus { CREATE_IN_PROGRESS = "CREATE_IN_PROGRESS", } -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -237,6 +255,19 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface CreateDiscovererRequest { @@ -316,9 +347,9 @@ export namespace CreateDiscovererResponse { }); } -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -328,11 +359,24 @@ export interface ForbiddenException extends __SmithyException, $MetadataBearer { *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** *

The error code.

*/ @@ -342,11 +386,24 @@ export interface InternalServerErrorException extends __SmithyException, $Metada *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; /** *

The error code.

*/ @@ -356,11 +413,24 @@ export interface ServiceUnavailableException extends __SmithyException, $Metadat *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -370,6 +440,19 @@ export interface UnauthorizedException extends __SmithyException, $MetadataBeare *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface CreateRegistryRequest { @@ -537,9 +620,9 @@ export namespace DeleteDiscovererRequest { }); } -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -549,6 +632,19 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface DeleteRegistryRequest { @@ -692,9 +788,9 @@ export namespace DescribeCodeBindingResponse { }); } -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -704,6 +800,19 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface DescribeDiscovererRequest { @@ -1060,9 +1169,9 @@ export namespace GetResourcePolicyResponse { }); } -export interface GoneException extends __SmithyException, $MetadataBearer { - name: "GoneException"; - $fault: "client"; +export class GoneException extends __BaseException { + readonly name: "GoneException" = "GoneException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -1072,6 +1181,19 @@ export interface GoneException extends __SmithyException, $MetadataBearer { *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "GoneException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, GoneException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface ListDiscoverersRequest { @@ -1298,9 +1420,9 @@ export namespace ListTagsForResourceResponse { }); } -export interface PreconditionFailedException extends __SmithyException, $MetadataBearer { - name: "PreconditionFailedException"; - $fault: "client"; +export class PreconditionFailedException extends __BaseException { + readonly name: "PreconditionFailedException" = "PreconditionFailedException"; + readonly $fault: "client" = "client"; /** *

The error code.

*/ @@ -1310,6 +1432,19 @@ export interface PreconditionFailedException extends __SmithyException, $Metadat *

The message string of the error output.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailedException.prototype); + this.Code = opts.Code; + this.Message = opts.Message; + } } export interface PutCodeBindingRequest { diff --git a/clients/client-schemas/src/protocols/Aws_restJson1.ts b/clients/client-schemas/src/protocols/Aws_restJson1.ts index 5a0a165c7e2ef..c8b9fcf1313c1 100644 --- a/clients/client-schemas/src/protocols/Aws_restJson1.ts +++ b/clients/client-schemas/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -85,6 +84,7 @@ import { TooManyRequestsException, UnauthorizedException, } from "../models/models_0"; +import { SchemasServiceException as __BaseException } from "../models/SchemasServiceException"; export const serializeAws_restJson1CreateDiscovererCommand = async ( input: CreateDiscovererCommandInput, @@ -1229,73 +1229,37 @@ const deserializeAws_restJson1CreateDiscovererCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.schemas#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateRegistryCommand = async ( @@ -1336,73 +1300,37 @@ const deserializeAws_restJson1CreateRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.schemas#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSchemaCommand = async ( @@ -1459,57 +1387,31 @@ const deserializeAws_restJson1CreateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDiscovererCommand = async ( @@ -1534,73 +1436,37 @@ const deserializeAws_restJson1DeleteDiscovererCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteRegistryCommand = async ( @@ -1625,73 +1491,37 @@ const deserializeAws_restJson1DeleteRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourcePolicyCommand = async ( @@ -1716,73 +1546,37 @@ const deserializeAws_restJson1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSchemaCommand = async ( @@ -1807,73 +1601,37 @@ const deserializeAws_restJson1DeleteSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSchemaVersionCommand = async ( @@ -1898,73 +1656,37 @@ const deserializeAws_restJson1DeleteSchemaVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCodeBindingCommand = async ( @@ -2005,73 +1727,37 @@ const deserializeAws_restJson1DescribeCodeBindingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.schemas#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDiscovererCommand = async ( @@ -2124,73 +1810,37 @@ const deserializeAws_restJson1DescribeDiscovererCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRegistryCommand = async ( @@ -2231,73 +1881,37 @@ const deserializeAws_restJson1DescribeRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSchemaCommand = async ( @@ -2358,73 +1972,37 @@ const deserializeAws_restJson1DescribeSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportSchemaCommand = async ( @@ -2469,81 +2047,40 @@ const deserializeAws_restJson1ExportSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.schemas#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCodeBindingSourceCommand = async ( @@ -2570,73 +2107,37 @@ const deserializeAws_restJson1GetCodeBindingSourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.schemas#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDiscoveredSchemaCommand = async ( @@ -2665,65 +2166,34 @@ const deserializeAws_restJson1GetDiscoveredSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcePolicyCommand = async ( @@ -2756,73 +2226,37 @@ const deserializeAws_restJson1GetResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDiscoverersCommand = async ( @@ -2855,65 +2289,34 @@ const deserializeAws_restJson1ListDiscoverersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRegistriesCommand = async ( @@ -2946,65 +2349,34 @@ const deserializeAws_restJson1ListRegistriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSchemasCommand = async ( @@ -3037,65 +2409,34 @@ const deserializeAws_restJson1ListSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSchemaVersionsCommand = async ( @@ -3128,73 +2469,37 @@ const deserializeAws_restJson1ListSchemaVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -3223,57 +2528,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutCodeBindingCommand = async ( @@ -3314,81 +2593,40 @@ const deserializeAws_restJson1PutCodeBindingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "GoneException": case "com.amazonaws.schemas#GoneException": - response = { - ...(await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1GoneExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.schemas#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutResourcePolicyCommand = async ( @@ -3421,81 +2659,40 @@ const deserializeAws_restJson1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.schemas#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchSchemasCommand = async ( @@ -3528,65 +2725,34 @@ const deserializeAws_restJson1SearchSchemasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartDiscovererCommand = async ( @@ -3619,73 +2785,37 @@ const deserializeAws_restJson1StartDiscovererCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopDiscovererCommand = async ( @@ -3718,73 +2848,37 @@ const deserializeAws_restJson1StopDiscovererCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3809,57 +2903,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3884,57 +2952,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDiscovererCommand = async ( @@ -3987,73 +3029,37 @@ const deserializeAws_restJson1UpdateDiscovererCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRegistryCommand = async ( @@ -4094,73 +3100,37 @@ const deserializeAws_restJson1UpdateRegistryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.schemas#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSchemaCommand = async ( @@ -4217,78 +3187,41 @@ const deserializeAws_restJson1UpdateSchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.schemas#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.schemas#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.schemas#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.schemas#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.schemas#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4296,20 +3229,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4317,20 +3248,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4338,20 +3267,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1GoneExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: GoneException = { - name: "GoneException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4359,20 +3286,18 @@ const deserializeAws_restJson1GoneExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new GoneException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4380,20 +3305,18 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4401,20 +3324,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailedException = { - name: "PreconditionFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4422,20 +3343,18 @@ const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new PreconditionFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4443,20 +3362,18 @@ const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4464,20 +3381,18 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -4485,7 +3400,11 @@ const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOfGetDiscoveredSchemaVersionItemInput = ( diff --git a/clients/client-secrets-manager/src/index.ts b/clients/client-secrets-manager/src/index.ts index 38b9ec1d3e5e7..a7a420ade74cb 100644 --- a/clients/client-secrets-manager/src/index.ts +++ b/clients/client-secrets-manager/src/index.ts @@ -3,3 +3,4 @@ export * from "./SecretsManagerClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SecretsManagerServiceException } from "./models/SecretsManagerServiceException"; diff --git a/clients/client-secrets-manager/src/models/SecretsManagerServiceException.ts b/clients/client-secrets-manager/src/models/SecretsManagerServiceException.ts new file mode 100644 index 0000000000000..4bab6a7fd5b1d --- /dev/null +++ b/clients/client-secrets-manager/src/models/SecretsManagerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SecretsManager service. + */ +export class SecretsManagerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SecretsManagerServiceException.prototype); + } +} diff --git a/clients/client-secrets-manager/src/models/models_0.ts b/clients/client-secrets-manager/src/models/models_0.ts index dfbbc49cc2067..e609fab2fafb6 100644 --- a/clients/client-secrets-manager/src/models/models_0.ts +++ b/clients/client-secrets-manager/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SecretsManagerServiceException as __BaseException } from "./SecretsManagerServiceException"; /** *

A custom type that specifies a Region and the KmsKeyId for a replica secret.

@@ -76,19 +78,43 @@ export namespace CancelRotateSecretResponse { /** *

An error occurred on the server side.

*/ -export interface InternalServiceError extends __SmithyException, $MetadataBearer { - name: "InternalServiceError"; - $fault: "server"; +export class InternalServiceError extends __BaseException { + readonly name: "InternalServiceError" = "InternalServiceError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceError.prototype); + this.Message = opts.Message; + } } /** *

The parameter name or value is invalid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } /** @@ -105,19 +131,43 @@ export interface InvalidParameterException extends __SmithyException, $MetadataB * * */ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

Secrets Manager can't find the resource that you asked for.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** @@ -399,10 +449,22 @@ export namespace CreateSecretResponse { /** *

Secrets Manager can't decrypt the protected secret text using the provided KMS key.

*/ -export interface DecryptionFailure extends __SmithyException, $MetadataBearer { - name: "DecryptionFailure"; - $fault: "client"; +export class DecryptionFailure extends __BaseException { + readonly name: "DecryptionFailure" = "DecryptionFailure"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DecryptionFailure", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DecryptionFailure.prototype); + this.Message = opts.Message; + } } /** @@ -410,46 +472,106 @@ export interface DecryptionFailure extends __SmithyException, $MetadataBearer { * KMS key is available, enabled, and not in an invalid state. For more * information, see Key state: Effect on your KMS key.

*/ -export interface EncryptionFailure extends __SmithyException, $MetadataBearer { - name: "EncryptionFailure"; - $fault: "client"; +export class EncryptionFailure extends __BaseException { + readonly name: "EncryptionFailure" = "EncryptionFailure"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EncryptionFailure", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EncryptionFailure.prototype); + this.Message = opts.Message; + } } /** *

The request failed because it would exceed one of the Secrets Manager quotas.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The resource policy has syntax errors.

*/ -export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer { - name: "MalformedPolicyDocumentException"; - $fault: "client"; +export class MalformedPolicyDocumentException extends __BaseException { + readonly name: "MalformedPolicyDocumentException" = "MalformedPolicyDocumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedPolicyDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype); + this.Message = opts.Message; + } } /** *

The request failed because you did not complete all the prerequisite steps.

*/ -export interface PreconditionNotMetException extends __SmithyException, $MetadataBearer { - name: "PreconditionNotMetException"; - $fault: "client"; +export class PreconditionNotMetException extends __BaseException { + readonly name: "PreconditionNotMetException" = "PreconditionNotMetException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionNotMetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionNotMetException.prototype); + this.Message = opts.Message; + } } /** *

A resource with the ID you requested already exists.

*/ -export interface ResourceExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceExistsException"; - $fault: "client"; +export class ResourceExistsException extends __BaseException { + readonly name: "ResourceExistsException" = "ResourceExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceExistsException.prototype); + this.Message = opts.Message; + } } export interface DeleteResourcePolicyRequest { @@ -1056,10 +1178,22 @@ export namespace GetSecretValueResponse { /** *

The NextToken value is invalid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export enum SortOrderType { @@ -1366,10 +1500,22 @@ export namespace ListSecretVersionIdsResponse { /** *

The BlockPublicPolicy parameter is set to true, and the resource policy did not prevent broad access to the secret.

*/ -export interface PublicPolicyException extends __SmithyException, $MetadataBearer { - name: "PublicPolicyException"; - $fault: "client"; +export class PublicPolicyException extends __BaseException { + readonly name: "PublicPolicyException" = "PublicPolicyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PublicPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PublicPolicyException.prototype); + this.Message = opts.Message; + } } export interface PutResourcePolicyRequest { diff --git a/clients/client-secrets-manager/src/protocols/Aws_json1_1.ts b/clients/client-secrets-manager/src/protocols/Aws_json1_1.ts index 23df88ca6884c..ed1c4be5df88a 100644 --- a/clients/client-secrets-manager/src/protocols/Aws_json1_1.ts +++ b/clients/client-secrets-manager/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -124,6 +123,7 @@ import { ValidateResourcePolicyResponse, ValidationErrorsEntry, } from "../models/models_0"; +import { SecretsManagerServiceException as __BaseException } from "../models/SecretsManagerServiceException"; export const serializeAws_json1_1CancelRotateSecretCommand = async ( input: CancelRotateSecretCommandInput, @@ -436,57 +436,31 @@ const deserializeAws_json1_1CancelRotateSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSecretCommand = async ( @@ -514,105 +488,49 @@ const deserializeAws_json1_1CreateSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DecryptionFailure": case "com.amazonaws.secretsmanager#DecryptionFailure": - response = { - ...(await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context); case "EncryptionFailure": case "com.amazonaws.secretsmanager#EncryptionFailure": - response = { - ...(await deserializeAws_json1_1EncryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionFailureResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.secretsmanager#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.secretsmanager#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.secretsmanager#PreconditionNotMetException": - response = { - ...(await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.secretsmanager#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourcePolicyCommand = async ( @@ -640,57 +558,31 @@ const deserializeAws_json1_1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSecretCommand = async ( @@ -718,57 +610,31 @@ const deserializeAws_json1_1DeleteSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSecretCommand = async ( @@ -796,49 +662,28 @@ const deserializeAws_json1_1DescribeSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRandomPasswordCommand = async ( @@ -866,49 +711,28 @@ const deserializeAws_json1_1GetRandomPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetResourcePolicyCommand = async ( @@ -936,57 +760,31 @@ const deserializeAws_json1_1GetResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSecretValueCommand = async ( @@ -1014,65 +812,34 @@ const deserializeAws_json1_1GetSecretValueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DecryptionFailure": case "com.amazonaws.secretsmanager#DecryptionFailure": - response = { - ...(await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSecretsCommand = async ( @@ -1100,49 +867,28 @@ const deserializeAws_json1_1ListSecretsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.secretsmanager#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSecretVersionIdsCommand = async ( @@ -1170,57 +916,31 @@ const deserializeAws_json1_1ListSecretVersionIdsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.secretsmanager#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutResourcePolicyCommand = async ( @@ -1248,73 +968,37 @@ const deserializeAws_json1_1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.secretsmanager#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PublicPolicyException": case "com.amazonaws.secretsmanager#PublicPolicyException": - response = { - ...(await deserializeAws_json1_1PublicPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PublicPolicyExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutSecretValueCommand = async ( @@ -1342,89 +1026,43 @@ const deserializeAws_json1_1PutSecretValueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DecryptionFailure": case "com.amazonaws.secretsmanager#DecryptionFailure": - response = { - ...(await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context); case "EncryptionFailure": case "com.amazonaws.secretsmanager#EncryptionFailure": - response = { - ...(await deserializeAws_json1_1EncryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionFailureResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.secretsmanager#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.secretsmanager#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveRegionsFromReplicationCommand = async ( @@ -1452,57 +1090,31 @@ const deserializeAws_json1_1RemoveRegionsFromReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ReplicateSecretToRegionsCommand = async ( @@ -1530,57 +1142,31 @@ const deserializeAws_json1_1ReplicateSecretToRegionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreSecretCommand = async ( @@ -1608,57 +1194,31 @@ const deserializeAws_json1_1RestoreSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RotateSecretCommand = async ( @@ -1686,57 +1246,31 @@ const deserializeAws_json1_1RotateSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopReplicationToReplicaCommand = async ( @@ -1764,57 +1298,31 @@ const deserializeAws_json1_1StopReplicationToReplicaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1839,57 +1347,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1914,57 +1396,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSecretCommand = async ( @@ -1992,105 +1448,49 @@ const deserializeAws_json1_1UpdateSecretCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DecryptionFailure": case "com.amazonaws.secretsmanager#DecryptionFailure": - response = { - ...(await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DecryptionFailureResponse(parsedOutput, context); case "EncryptionFailure": case "com.amazonaws.secretsmanager#EncryptionFailure": - response = { - ...(await deserializeAws_json1_1EncryptionFailureResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EncryptionFailureResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.secretsmanager#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.secretsmanager#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PreconditionNotMetException": case "com.amazonaws.secretsmanager#PreconditionNotMetException": - response = { - ...(await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PreconditionNotMetExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.secretsmanager#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSecretVersionStageCommand = async ( @@ -2118,65 +1518,34 @@ const deserializeAws_json1_1UpdateSecretVersionStageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.secretsmanager#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ValidateResourcePolicyCommand = async ( @@ -2204,65 +1573,34 @@ const deserializeAws_json1_1ValidateResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.secretsmanager#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.secretsmanager#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.secretsmanager#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.secretsmanager#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.secretsmanager#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DecryptionFailureResponse = async ( @@ -2271,13 +1609,11 @@ const deserializeAws_json1_1DecryptionFailureResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DecryptionFailure(body, context); - const contents: DecryptionFailure = { - name: "DecryptionFailure", - $fault: "client", + const exception = new DecryptionFailure({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EncryptionFailureResponse = async ( @@ -2286,13 +1622,11 @@ const deserializeAws_json1_1EncryptionFailureResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EncryptionFailure(body, context); - const contents: EncryptionFailure = { - name: "EncryptionFailure", - $fault: "client", + const exception = new EncryptionFailure({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceErrorResponse = async ( @@ -2301,13 +1635,11 @@ const deserializeAws_json1_1InternalServiceErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceError(body, context); - const contents: InternalServiceError = { - name: "InternalServiceError", - $fault: "server", + const exception = new InternalServiceError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -2316,13 +1648,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -2331,13 +1661,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -2346,13 +1674,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -2361,13 +1687,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse = async ( @@ -2376,13 +1700,11 @@ const deserializeAws_json1_1MalformedPolicyDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MalformedPolicyDocumentException(body, context); - const contents: MalformedPolicyDocumentException = { - name: "MalformedPolicyDocumentException", - $fault: "client", + const exception = new MalformedPolicyDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PreconditionNotMetExceptionResponse = async ( @@ -2391,13 +1713,11 @@ const deserializeAws_json1_1PreconditionNotMetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PreconditionNotMetException(body, context); - const contents: PreconditionNotMetException = { - name: "PreconditionNotMetException", - $fault: "client", + const exception = new PreconditionNotMetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PublicPolicyExceptionResponse = async ( @@ -2406,13 +1726,11 @@ const deserializeAws_json1_1PublicPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PublicPolicyException(body, context); - const contents: PublicPolicyException = { - name: "PublicPolicyException", - $fault: "client", + const exception = new PublicPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceExistsExceptionResponse = async ( @@ -2421,13 +1739,11 @@ const deserializeAws_json1_1ResourceExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceExistsException(body, context); - const contents: ResourceExistsException = { - name: "ResourceExistsException", - $fault: "client", + const exception = new ResourceExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2436,13 +1752,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddReplicaRegionListType = (input: ReplicaRegionType[], context: __SerdeContext): any => { diff --git a/clients/client-securityhub/src/index.ts b/clients/client-securityhub/src/index.ts index 99fdb227dd314..7fdef8ee05258 100644 --- a/clients/client-securityhub/src/index.ts +++ b/clients/client-securityhub/src/index.ts @@ -3,3 +3,4 @@ export * from "./SecurityHubClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SecurityHubServiceException } from "./models/SecurityHubServiceException"; diff --git a/clients/client-securityhub/src/models/SecurityHubServiceException.ts b/clients/client-securityhub/src/models/SecurityHubServiceException.ts new file mode 100644 index 0000000000000..63b55c5e2c4c7 --- /dev/null +++ b/clients/client-securityhub/src/models/SecurityHubServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SecurityHub service. + */ +export class SecurityHubServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SecurityHubServiceException.prototype); + } +} diff --git a/clients/client-securityhub/src/models/models_0.ts b/clients/client-securityhub/src/models/models_0.ts index 74ef56e64770e..a8d9879336853 100644 --- a/clients/client-securityhub/src/models/models_0.ts +++ b/clients/client-securityhub/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SecurityHubServiceException as __BaseException } from "./SecurityHubServiceException"; export interface AcceptAdministratorInvitationRequest { /** @@ -35,54 +38,119 @@ export namespace AcceptAdministratorInvitationResponse { /** *

Internal server error.

*/ -export interface InternalException extends __SmithyException, $MetadataBearer { - name: "InternalException"; - $fault: "server"; +export class InternalException extends __BaseException { + readonly name: "InternalException" = "InternalException"; + readonly $fault: "server" = "server"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

There is an issue with the account used to make the request. Either Security Hub is not enabled * for the account, or the account does not have permission to perform this action.

*/ -export interface InvalidAccessException extends __SmithyException, $MetadataBearer { - name: "InvalidAccessException"; - $fault: "client"; +export class InvalidAccessException extends __BaseException { + readonly name: "InvalidAccessException" = "InvalidAccessException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAccessException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAccessException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The request was rejected because you supplied an invalid or out-of-range value for an * input parameter.

*/ -export interface InvalidInputException extends __SmithyException, $MetadataBearer { - name: "InvalidInputException"; - $fault: "client"; +export class InvalidInputException extends __BaseException { + readonly name: "InvalidInputException" = "InvalidInputException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The request was rejected because it attempted to create resources beyond the current Amazon Web Services * account or throttling limits. The error code describes the limit exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The request was rejected because we can't find the specified resource.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } export interface AcceptInvitationRequest { @@ -120,11 +188,24 @@ export namespace AcceptInvitationResponse { /** *

You don't have permission to perform the action specified in the request.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** diff --git a/clients/client-securityhub/src/models/models_1.ts b/clients/client-securityhub/src/models/models_1.ts index 400bd2f7575d3..cd9b88c82d6e8 100644 --- a/clients/client-securityhub/src/models/models_1.ts +++ b/clients/client-securityhub/src/models/models_1.ts @@ -1,4 +1,5 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { AccountDetails, @@ -60,6 +61,7 @@ import { AwsRdsDbSubnetGroup, AwsRdsPendingCloudWatchLogsExports, } from "./models_0"; +import { SecurityHubServiceException as __BaseException } from "./SecurityHubServiceException"; /** *

A processor feature.

@@ -6898,11 +6900,24 @@ export namespace CreateActionTargetResponse { /** *

The resource specified in the request conflicts with an existing resource.

*/ -export interface ResourceConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceConflictException"; - $fault: "client"; +export class ResourceConflictException extends __BaseException { + readonly name: "ResourceConflictException" = "ResourceConflictException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceConflictException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } export interface CreateFindingAggregatorRequest { diff --git a/clients/client-securityhub/src/protocols/Aws_restJson1.ts b/clients/client-securityhub/src/protocols/Aws_restJson1.ts index 6eeba918a247a..50863fff1d095 100644 --- a/clients/client-securityhub/src/protocols/Aws_restJson1.ts +++ b/clients/client-securityhub/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -597,6 +596,7 @@ import { Workflow, WorkflowUpdate, } from "../models/models_1"; +import { SecurityHubServiceException as __BaseException } from "../models/SecurityHubServiceException"; export const serializeAws_restJson1AcceptAdministratorInvitationCommand = async ( input: AcceptAdministratorInvitationCommandInput, @@ -2213,65 +2213,34 @@ const deserializeAws_restJson1AcceptAdministratorInvitationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AcceptInvitationCommand = async ( @@ -2296,65 +2265,34 @@ const deserializeAws_restJson1AcceptInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchDisableStandardsCommand = async ( @@ -2386,57 +2324,31 @@ const deserializeAws_restJson1BatchDisableStandardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchEnableStandardsCommand = async ( @@ -2468,57 +2380,31 @@ const deserializeAws_restJson1BatchEnableStandardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchImportFindingsCommand = async ( @@ -2555,57 +2441,31 @@ const deserializeAws_restJson1BatchImportFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1BatchUpdateFindingsCommand = async ( @@ -2644,57 +2504,31 @@ const deserializeAws_restJson1BatchUpdateFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateActionTargetCommand = async ( @@ -2723,65 +2557,34 @@ const deserializeAws_restJson1CreateActionTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.securityhub#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFindingAggregatorCommand = async ( @@ -2822,65 +2625,34 @@ const deserializeAws_restJson1CreateFindingAggregatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.securityhub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateInsightCommand = async ( @@ -2909,65 +2681,34 @@ const deserializeAws_restJson1CreateInsightCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.securityhub#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMembersCommand = async ( @@ -2996,65 +2737,34 @@ const deserializeAws_restJson1CreateMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.securityhub#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeclineInvitationsCommand = async ( @@ -3083,57 +2793,31 @@ const deserializeAws_restJson1DeclineInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteActionTargetCommand = async ( @@ -3162,57 +2846,31 @@ const deserializeAws_restJson1DeleteActionTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFindingAggregatorCommand = async ( @@ -3237,73 +2895,37 @@ const deserializeAws_restJson1DeleteFindingAggregatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.securityhub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInsightCommand = async ( @@ -3332,65 +2954,34 @@ const deserializeAws_restJson1DeleteInsightCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteInvitationsCommand = async ( @@ -3419,65 +3010,34 @@ const deserializeAws_restJson1DeleteInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteMembersCommand = async ( @@ -3506,65 +3066,34 @@ const deserializeAws_restJson1DeleteMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeActionTargetsCommand = async ( @@ -3597,57 +3126,31 @@ const deserializeAws_restJson1DescribeActionTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeHubCommand = async ( @@ -3684,65 +3187,34 @@ const deserializeAws_restJson1DescribeHubCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeOrganizationConfigurationCommand = async ( @@ -3775,57 +3247,31 @@ const deserializeAws_restJson1DescribeOrganizationConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeProductsCommand = async ( @@ -3858,57 +3304,31 @@ const deserializeAws_restJson1DescribeProductsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeStandardsCommand = async ( @@ -3941,49 +3361,28 @@ const deserializeAws_restJson1DescribeStandardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeStandardsControlsCommand = async ( @@ -4016,57 +3415,31 @@ const deserializeAws_restJson1DescribeStandardsControlsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableImportFindingsForProductCommand = async ( @@ -4091,65 +3464,34 @@ const deserializeAws_restJson1DisableImportFindingsForProductCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableOrganizationAdminAccountCommand = async ( @@ -4174,57 +3516,31 @@ const deserializeAws_restJson1DisableOrganizationAdminAccountCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisableSecurityHubCommand = async ( @@ -4249,57 +3565,31 @@ const deserializeAws_restJson1DisableSecurityHubCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateFromAdministratorAccountCommand = async ( @@ -4324,65 +3614,34 @@ const deserializeAws_restJson1DisassociateFromAdministratorAccountCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateFromMasterAccountCommand = async ( @@ -4407,65 +3666,34 @@ const deserializeAws_restJson1DisassociateFromMasterAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateMembersCommand = async ( @@ -4490,65 +3718,34 @@ const deserializeAws_restJson1DisassociateMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableImportFindingsForProductCommand = async ( @@ -4577,65 +3774,34 @@ const deserializeAws_restJson1EnableImportFindingsForProductCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.securityhub#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableOrganizationAdminAccountCommand = async ( @@ -4660,57 +3826,31 @@ const deserializeAws_restJson1EnableOrganizationAdminAccountCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EnableSecurityHubCommand = async ( @@ -4735,65 +3875,34 @@ const deserializeAws_restJson1EnableSecurityHubCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.securityhub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceConflictException": case "com.amazonaws.securityhub#ResourceConflictException": - response = { - ...(await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceConflictExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAdministratorAccountCommand = async ( @@ -4822,65 +3931,34 @@ const deserializeAws_restJson1GetAdministratorAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEnabledStandardsCommand = async ( @@ -4916,57 +3994,31 @@ const deserializeAws_restJson1GetEnabledStandardsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingAggregatorCommand = async ( @@ -5007,73 +4059,37 @@ const deserializeAws_restJson1GetFindingAggregatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.securityhub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFindingsCommand = async ( @@ -5106,57 +4122,31 @@ const deserializeAws_restJson1GetFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightResultsCommand = async ( @@ -5185,65 +4175,34 @@ const deserializeAws_restJson1GetInsightResultsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightsCommand = async ( @@ -5276,65 +4235,34 @@ const deserializeAws_restJson1GetInsightsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInvitationsCountCommand = async ( @@ -5363,57 +4291,31 @@ const deserializeAws_restJson1GetInvitationsCountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMasterAccountCommand = async ( @@ -5442,65 +4344,34 @@ const deserializeAws_restJson1GetMasterAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMembersCommand = async ( @@ -5533,65 +4404,34 @@ const deserializeAws_restJson1GetMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InviteMembersCommand = async ( @@ -5620,65 +4460,34 @@ const deserializeAws_restJson1InviteMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEnabledProductsForImportCommand = async ( @@ -5714,49 +4523,28 @@ const deserializeAws_restJson1ListEnabledProductsForImportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFindingAggregatorsCommand = async ( @@ -5789,65 +4577,34 @@ const deserializeAws_restJson1ListFindingAggregatorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.securityhub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListInvitationsCommand = async ( @@ -5880,57 +4637,31 @@ const deserializeAws_restJson1ListInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMembersCommand = async ( @@ -5963,57 +4694,31 @@ const deserializeAws_restJson1ListMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListOrganizationAdminAccountsCommand = async ( @@ -6046,57 +4751,31 @@ const deserializeAws_restJson1ListOrganizationAdminAccountsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -6125,49 +4804,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -6192,49 +4850,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -6259,49 +4896,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateActionTargetCommand = async ( @@ -6326,57 +4942,31 @@ const deserializeAws_restJson1UpdateActionTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFindingAggregatorCommand = async ( @@ -6417,73 +5007,37 @@ const deserializeAws_restJson1UpdateFindingAggregatorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.securityhub#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFindingsCommand = async ( @@ -6508,65 +5062,34 @@ const deserializeAws_restJson1UpdateFindingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateInsightCommand = async ( @@ -6591,65 +5114,34 @@ const deserializeAws_restJson1UpdateInsightCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateOrganizationConfigurationCommand = async ( @@ -6674,57 +5166,31 @@ const deserializeAws_restJson1UpdateOrganizationConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSecurityHubConfigurationCommand = async ( @@ -6749,65 +5215,34 @@ const deserializeAws_restJson1UpdateSecurityHubConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.securityhub#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateStandardsControlCommand = async ( @@ -6832,70 +5267,38 @@ const deserializeAws_restJson1UpdateStandardsControlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalException": case "com.amazonaws.securityhub#InternalException": - response = { - ...(await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "InvalidAccessException": case "com.amazonaws.securityhub#InvalidAccessException": - response = { - ...(await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidAccessExceptionResponse(parsedOutput, context); case "InvalidInputException": case "com.amazonaws.securityhub#InvalidInputException": - response = { - ...(await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidInputExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.securityhub#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6903,20 +5306,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalException = { - name: "InternalException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6924,20 +5325,18 @@ const deserializeAws_restJson1InternalExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidAccessExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidAccessException = { - name: "InvalidAccessException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6945,20 +5344,18 @@ const deserializeAws_restJson1InvalidAccessExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidAccessException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidInputExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidInputException = { - name: "InvalidInputException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6966,20 +5363,18 @@ const deserializeAws_restJson1InvalidInputExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidInputException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6987,20 +5382,18 @@ const deserializeAws_restJson1LimitExceededExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceConflictException = { - name: "ResourceConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -7008,20 +5401,18 @@ const deserializeAws_restJson1ResourceConflictExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -7029,7 +5420,11 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AccountDetails = (input: AccountDetails, context: __SerdeContext): any => { diff --git a/clients/client-serverlessapplicationrepository/src/index.ts b/clients/client-serverlessapplicationrepository/src/index.ts index ccf7a36ac074e..71bbb38a3827d 100644 --- a/clients/client-serverlessapplicationrepository/src/index.ts +++ b/clients/client-serverlessapplicationrepository/src/index.ts @@ -3,3 +3,4 @@ export * from "./ServerlessApplicationRepositoryClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ServerlessApplicationRepositoryServiceException } from "./models/ServerlessApplicationRepositoryServiceException"; diff --git a/clients/client-serverlessapplicationrepository/src/models/ServerlessApplicationRepositoryServiceException.ts b/clients/client-serverlessapplicationrepository/src/models/ServerlessApplicationRepositoryServiceException.ts new file mode 100644 index 0000000000000..c4cfcb9ae0aa8 --- /dev/null +++ b/clients/client-serverlessapplicationrepository/src/models/ServerlessApplicationRepositoryServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ServerlessApplicationRepository service. + */ +export class ServerlessApplicationRepositoryServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ServerlessApplicationRepositoryServiceException.prototype); + } +} diff --git a/clients/client-serverlessapplicationrepository/src/models/models_0.ts b/clients/client-serverlessapplicationrepository/src/models/models_0.ts index 1f157bba23119..a6f0bf7192aaa 100644 --- a/clients/client-serverlessapplicationrepository/src/models/models_0.ts +++ b/clients/client-serverlessapplicationrepository/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ServerlessApplicationRepositoryServiceException as __BaseException } from "./ServerlessApplicationRepositoryServiceException"; /** *

A nested application summary.

@@ -336,9 +339,9 @@ export namespace VersionSummary { /** *

One of the parameters in the request is invalid.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; /** *

400

*/ @@ -348,14 +351,27 @@ export interface BadRequestException extends __SmithyException, $MetadataBearer *

One of the parameters in the request is invalid.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

The resource already exists.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

409

*/ @@ -365,6 +381,19 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

The resource already exists.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface CreateApplicationRequest { @@ -621,9 +650,9 @@ export namespace CreateApplicationResponse { /** *

The client is not authenticated.

*/ -export interface ForbiddenException extends __SmithyException, $MetadataBearer { - name: "ForbiddenException"; - $fault: "client"; +export class ForbiddenException extends __BaseException { + readonly name: "ForbiddenException" = "ForbiddenException"; + readonly $fault: "client" = "client"; /** *

403

*/ @@ -633,14 +662,27 @@ export interface ForbiddenException extends __SmithyException, $MetadataBearer { *

The client is not authenticated.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ForbiddenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ForbiddenException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

The AWS Serverless Application Repository service encountered an internal error.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; /** *

500

*/ @@ -650,14 +692,27 @@ export interface InternalServerErrorException extends __SmithyException, $Metada *

The AWS Serverless Application Repository service encountered an internal error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } /** *

The client is sending more than the allowed number of requests per unit of time.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; /** *

429

*/ @@ -667,6 +722,19 @@ export interface TooManyRequestsException extends __SmithyException, $MetadataBe *

The client is sending more than the allowed number of requests per unit of time.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface CreateApplicationVersionRequest { @@ -1042,9 +1110,9 @@ export namespace CreateCloudFormationTemplateResponse { /** *

The resource (for example, an access policy statement) specified in the request doesn't exist.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; /** *

404

*/ @@ -1054,6 +1122,19 @@ export interface NotFoundException extends __SmithyException, $MetadataBearer { *

The resource (for example, an access policy statement) specified in the request doesn't exist.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.ErrorCode = opts.ErrorCode; + this.Message = opts.Message; + } } export interface DeleteApplicationRequest { diff --git a/clients/client-serverlessapplicationrepository/src/protocols/Aws_restJson1.ts b/clients/client-serverlessapplicationrepository/src/protocols/Aws_restJson1.ts index f1f77f757adb6..fd560940857e2 100644 --- a/clients/client-serverlessapplicationrepository/src/protocols/Aws_restJson1.ts +++ b/clients/client-serverlessapplicationrepository/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "../commands/CreateApplicationCommand"; @@ -72,6 +71,7 @@ import { Version, VersionSummary, } from "../models/models_0"; +import { ServerlessApplicationRepositoryServiceException as __BaseException } from "../models/ServerlessApplicationRepositoryServiceException"; export const serializeAws_restJson1CreateApplicationCommand = async ( input: CreateApplicationCommandInput, @@ -669,65 +669,34 @@ const deserializeAws_restJson1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.serverlessapplicationrepository#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateApplicationVersionCommand = async ( @@ -791,65 +760,34 @@ const deserializeAws_restJson1CreateApplicationVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.serverlessapplicationrepository#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCloudFormationChangeSetCommand = async ( @@ -890,57 +828,31 @@ const deserializeAws_restJson1CreateCloudFormationChangeSetCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCloudFormationTemplateCommand = async ( @@ -993,65 +905,34 @@ const deserializeAws_restJson1CreateCloudFormationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApplicationCommand = async ( @@ -1076,73 +957,37 @@ const deserializeAws_restJson1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.serverlessapplicationrepository#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationCommand = async ( @@ -1219,65 +1064,34 @@ const deserializeAws_restJson1GetApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationPolicyCommand = async ( @@ -1306,65 +1120,34 @@ const deserializeAws_restJson1GetApplicationPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCloudFormationTemplateCommand = async ( @@ -1417,65 +1200,34 @@ const deserializeAws_restJson1GetCloudFormationTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationDependenciesCommand = async ( @@ -1508,65 +1260,34 @@ const deserializeAws_restJson1ListApplicationDependenciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationsCommand = async ( @@ -1599,57 +1320,31 @@ const deserializeAws_restJson1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationVersionsCommand = async ( @@ -1682,65 +1377,34 @@ const deserializeAws_restJson1ListApplicationVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutApplicationPolicyCommand = async ( @@ -1769,65 +1433,34 @@ const deserializeAws_restJson1PutApplicationPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnshareApplicationCommand = async ( @@ -1852,65 +1485,34 @@ const deserializeAws_restJson1UnshareApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApplicationCommand = async ( @@ -1987,86 +1589,44 @@ const deserializeAws_restJson1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.serverlessapplicationrepository#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.serverlessapplicationrepository#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ForbiddenException": case "com.amazonaws.serverlessapplicationrepository#ForbiddenException": - response = { - ...(await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ForbiddenExceptionResponse(parsedOutput, context); case "InternalServerErrorException": case "com.amazonaws.serverlessapplicationrepository#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.serverlessapplicationrepository#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.serverlessapplicationrepository#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorCode !== undefined && data.errorCode !== null) { contents.ErrorCode = __expectString(data.errorCode); @@ -2074,20 +1634,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorCode !== undefined && data.errorCode !== null) { contents.ErrorCode = __expectString(data.errorCode); @@ -2095,20 +1653,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ForbiddenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ForbiddenException = { - name: "ForbiddenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorCode !== undefined && data.errorCode !== null) { contents.ErrorCode = __expectString(data.errorCode); @@ -2116,20 +1672,18 @@ const deserializeAws_restJson1ForbiddenExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new ForbiddenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorCode !== undefined && data.errorCode !== null) { contents.ErrorCode = __expectString(data.errorCode); @@ -2137,20 +1691,18 @@ const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorCode !== undefined && data.errorCode !== null) { contents.ErrorCode = __expectString(data.errorCode); @@ -2158,20 +1710,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - ErrorCode: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.errorCode !== undefined && data.errorCode !== null) { contents.ErrorCode = __expectString(data.errorCode); @@ -2179,7 +1729,11 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.Message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1__listOf__string = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-service-catalog-appregistry/src/index.ts b/clients/client-service-catalog-appregistry/src/index.ts index dcbdd66b614ef..6e7807ddf741a 100644 --- a/clients/client-service-catalog-appregistry/src/index.ts +++ b/clients/client-service-catalog-appregistry/src/index.ts @@ -3,3 +3,4 @@ export * from "./ServiceCatalogAppRegistryClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ServiceCatalogAppRegistryServiceException } from "./models/ServiceCatalogAppRegistryServiceException"; diff --git a/clients/client-service-catalog-appregistry/src/models/ServiceCatalogAppRegistryServiceException.ts b/clients/client-service-catalog-appregistry/src/models/ServiceCatalogAppRegistryServiceException.ts new file mode 100644 index 0000000000000..3a24c8fab16f6 --- /dev/null +++ b/clients/client-service-catalog-appregistry/src/models/ServiceCatalogAppRegistryServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ServiceCatalogAppRegistry service. + */ +export class ServiceCatalogAppRegistryServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ServiceCatalogAppRegistryServiceException.prototype); + } +} diff --git a/clients/client-service-catalog-appregistry/src/models/models_0.ts b/clients/client-service-catalog-appregistry/src/models/models_0.ts index 0a7c297c51de3..0dfe6fdcfdae7 100644 --- a/clients/client-service-catalog-appregistry/src/models/models_0.ts +++ b/clients/client-service-catalog-appregistry/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ServiceCatalogAppRegistryServiceException as __BaseException } from "./ServiceCatalogAppRegistryServiceException"; /** *

Represents a Amazon Web Services Service Catalog AppRegistry application that is the top-level node in a hierarchy of related @@ -139,37 +142,77 @@ export namespace AssociateAttributeGroupResponse { /** *

The service is experiencing internal problems.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The maximum number of resources per account has been reached.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The request has invalid or missing parameters.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export enum ResourceType { @@ -227,10 +270,20 @@ export namespace AssociateResourceResponse { *

There was a conflict when processing the request (for example, a resource with the given name already * exists within the account).

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** diff --git a/clients/client-service-catalog-appregistry/src/protocols/Aws_restJson1.ts b/clients/client-service-catalog-appregistry/src/protocols/Aws_restJson1.ts index 4cc4d1275b579..715319290330d 100644 --- a/clients/client-service-catalog-appregistry/src/protocols/Aws_restJson1.ts +++ b/clients/client-service-catalog-appregistry/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -9,10 +10,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -86,6 +85,7 @@ import { ServiceQuotaExceededException, ValidationException, } from "../models/models_0"; +import { ServiceCatalogAppRegistryServiceException as __BaseException } from "../models/ServiceCatalogAppRegistryServiceException"; export const serializeAws_restJson1AssociateAttributeGroupCommand = async ( input: AssociateAttributeGroupCommandInput, @@ -829,57 +829,31 @@ const deserializeAws_restJson1AssociateAttributeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.servicecatalogappregistry#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateResourceCommand = async ( @@ -912,57 +886,31 @@ const deserializeAws_restJson1AssociateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.servicecatalogappregistry#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.servicecatalogappregistry#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateApplicationCommand = async ( @@ -991,49 +939,28 @@ const deserializeAws_restJson1CreateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.servicecatalogappregistry#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.servicecatalogappregistry#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAttributeGroupCommand = async ( @@ -1062,57 +989,31 @@ const deserializeAws_restJson1CreateAttributeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.servicecatalogappregistry#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.servicecatalogappregistry#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteApplicationCommand = async ( @@ -1141,49 +1042,28 @@ const deserializeAws_restJson1DeleteApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAttributeGroupCommand = async ( @@ -1212,49 +1092,28 @@ const deserializeAws_restJson1DeleteAttributeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateAttributeGroupCommand = async ( @@ -1287,49 +1146,28 @@ const deserializeAws_restJson1DisassociateAttributeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateResourceCommand = async ( @@ -1362,41 +1200,25 @@ const deserializeAws_restJson1DisassociateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetApplicationCommand = async ( @@ -1457,49 +1279,28 @@ const deserializeAws_restJson1GetApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssociatedResourceCommand = async ( @@ -1528,49 +1329,28 @@ const deserializeAws_restJson1GetAssociatedResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAttributeGroupCommand = async ( @@ -1627,49 +1407,28 @@ const deserializeAws_restJson1GetAttributeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListApplicationsCommand = async ( @@ -1702,41 +1461,25 @@ const deserializeAws_restJson1ListApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssociatedAttributeGroupsCommand = async ( @@ -1769,49 +1512,28 @@ const deserializeAws_restJson1ListAssociatedAttributeGroupsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssociatedResourcesCommand = async ( @@ -1844,49 +1566,28 @@ const deserializeAws_restJson1ListAssociatedResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAttributeGroupsCommand = async ( @@ -1919,41 +1620,25 @@ const deserializeAws_restJson1ListAttributeGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1982,49 +1667,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SyncResourceCommand = async ( @@ -2061,49 +1725,28 @@ const deserializeAws_restJson1SyncResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.servicecatalogappregistry#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2128,49 +1771,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2195,49 +1817,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateApplicationCommand = async ( @@ -2266,49 +1867,28 @@ const deserializeAws_restJson1UpdateApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.servicecatalogappregistry#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAttributeGroupCommand = async ( @@ -2337,142 +1917,111 @@ const deserializeAws_restJson1UpdateAttributeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.servicecatalogappregistry#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.servicecatalogappregistry#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalogappregistry#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.servicecatalogappregistry#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Tags = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-service-catalog/src/index.ts b/clients/client-service-catalog/src/index.ts index 90b9877bd3862..fe4d46a1ce6fc 100644 --- a/clients/client-service-catalog/src/index.ts +++ b/clients/client-service-catalog/src/index.ts @@ -3,3 +3,4 @@ export * from "./ServiceCatalogClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ServiceCatalogServiceException } from "./models/ServiceCatalogServiceException"; diff --git a/clients/client-service-catalog/src/models/ServiceCatalogServiceException.ts b/clients/client-service-catalog/src/models/ServiceCatalogServiceException.ts new file mode 100644 index 0000000000000..fe00ab1fb09ea --- /dev/null +++ b/clients/client-service-catalog/src/models/ServiceCatalogServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ServiceCatalog service. + */ +export class ServiceCatalogServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ServiceCatalogServiceException.prototype); + } +} diff --git a/clients/client-service-catalog/src/models/models_0.ts b/clients/client-service-catalog/src/models/models_0.ts index f7fc3ede1ae4b..678c8ec089f0f 100644 --- a/clients/client-service-catalog/src/models/models_0.ts +++ b/clients/client-service-catalog/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ServiceCatalogServiceException as __BaseException } from "./ServiceCatalogServiceException"; export enum PortfolioShareType { AWS_ORGANIZATIONS = "AWS_ORGANIZATIONS", @@ -77,29 +80,65 @@ export namespace AcceptPortfolioShareOutput { /** *

One or more parameters provided to the operation are not valid.

*/ -export interface InvalidParametersException extends __SmithyException, $MetadataBearer { - name: "InvalidParametersException"; - $fault: "client"; +export class InvalidParametersException extends __BaseException { + readonly name: "InvalidParametersException" = "InvalidParametersException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParametersException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParametersException.prototype); + this.Message = opts.Message; + } } /** *

The current limits of the service would have been exceeded by this operation. Decrease your * resource use or increase your service limits and retry the operation.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export enum AccessLevelFilterKey { @@ -212,10 +251,22 @@ export namespace AssociateBudgetWithResourceOutput { /** *

The specified resource is a duplicate.

*/ -export interface DuplicateResourceException extends __SmithyException, $MetadataBearer { - name: "DuplicateResourceException"; - $fault: "client"; +export class DuplicateResourceException extends __BaseException { + readonly name: "DuplicateResourceException" = "DuplicateResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateResourceException.prototype); + this.Message = opts.Message; + } } export enum PrincipalType { @@ -426,10 +477,22 @@ export namespace AssociateTagOptionWithResourceOutput { *

An attempt was made to modify a resource that is in a state that is not valid. * Check your resources to ensure that they are in valid states before retrying the operation.

*/ -export interface InvalidStateException extends __SmithyException, $MetadataBearer { - name: "InvalidStateException"; - $fault: "client"; +export class InvalidStateException extends __BaseException { + readonly name: "InvalidStateException" = "InvalidStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidStateException.prototype); + this.Message = opts.Message; + } } /** @@ -437,10 +500,22 @@ export interface InvalidStateException extends __SmithyException, $MetadataBeare * not been performed for this account. Please use the AWS console to perform the migration * process before retrying the operation.

*/ -export interface TagOptionNotMigratedException extends __SmithyException, $MetadataBearer { - name: "TagOptionNotMigratedException"; - $fault: "client"; +export class TagOptionNotMigratedException extends __BaseException { + readonly name: "TagOptionNotMigratedException" = "TagOptionNotMigratedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagOptionNotMigratedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagOptionNotMigratedException.prototype); + this.Message = opts.Message; + } } /** @@ -1168,10 +1243,22 @@ export namespace CreatePortfolioShareOutput { /** *

The operation is not supported.

*/ -export interface OperationNotSupportedException extends __SmithyException, $MetadataBearer { - name: "OperationNotSupportedException"; - $fault: "client"; +export class OperationNotSupportedException extends __BaseException { + readonly name: "OperationNotSupportedException" = "OperationNotSupportedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotSupportedException.prototype); + this.Message = opts.Message; + } } export enum ProductType { @@ -2128,10 +2215,22 @@ export namespace DeletePortfolioOutput { /** *

A resource that is currently in use. Ensure that the resource is not in use and retry the operation.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } export interface DeletePortfolioShareInput { diff --git a/clients/client-service-catalog/src/protocols/Aws_json1_1.ts b/clients/client-service-catalog/src/protocols/Aws_json1_1.ts index 881922524c766..fab4fe5241a8a 100644 --- a/clients/client-service-catalog/src/protocols/Aws_json1_1.ts +++ b/clients/client-service-catalog/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -534,6 +533,7 @@ import { UpdateTagOptionOutput, UsageInstruction, } from "../models/models_0"; +import { ServiceCatalogServiceException as __BaseException } from "../models/ServiceCatalogServiceException"; export const serializeAws_json1_1AcceptPortfolioShareCommand = async ( input: AcceptPortfolioShareCommandInput, @@ -1693,49 +1693,28 @@ const deserializeAws_json1_1AcceptPortfolioShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateBudgetWithResourceCommand = async ( @@ -1763,57 +1742,31 @@ const deserializeAws_json1_1AssociateBudgetWithResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociatePrincipalWithPortfolioCommand = async ( @@ -1841,49 +1794,28 @@ const deserializeAws_json1_1AssociatePrincipalWithPortfolioCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateProductWithPortfolioCommand = async ( @@ -1911,49 +1843,28 @@ const deserializeAws_json1_1AssociateProductWithPortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateServiceActionWithProvisioningArtifactCommand = async ( @@ -1981,49 +1892,28 @@ const deserializeAws_json1_1AssociateServiceActionWithProvisioningArtifactComman ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateTagOptionWithResourceCommand = async ( @@ -2051,73 +1941,37 @@ const deserializeAws_json1_1AssociateTagOptionWithResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchAssociateServiceActionWithProvisioningArtifactCommand = async ( @@ -2145,33 +1999,22 @@ const deserializeAws_json1_1BatchAssociateServiceActionWithProvisioningArtifactC ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1BatchDisassociateServiceActionFromProvisioningArtifactCommand = async ( @@ -2199,33 +2042,22 @@ const deserializeAws_json1_1BatchDisassociateServiceActionFromProvisioningArtifa ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CopyProductCommand = async ( @@ -2253,41 +2085,25 @@ const deserializeAws_json1_1CopyProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConstraintCommand = async ( @@ -2315,57 +2131,31 @@ const deserializeAws_json1_1CreateConstraintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePortfolioCommand = async ( @@ -2393,49 +2183,28 @@ const deserializeAws_json1_1CreatePortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePortfolioShareCommand = async ( @@ -2463,65 +2232,34 @@ const deserializeAws_json1_1CreatePortfolioShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProductCommand = async ( @@ -2549,49 +2287,28 @@ const deserializeAws_json1_1CreateProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProvisionedProductPlanCommand = async ( @@ -2619,49 +2336,28 @@ const deserializeAws_json1_1CreateProvisionedProductPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProvisioningArtifactCommand = async ( @@ -2689,49 +2385,28 @@ const deserializeAws_json1_1CreateProvisioningArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateServiceActionCommand = async ( @@ -2759,41 +2434,25 @@ const deserializeAws_json1_1CreateServiceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTagOptionCommand = async ( @@ -2821,49 +2480,28 @@ const deserializeAws_json1_1CreateTagOptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConstraintCommand = async ( @@ -2891,41 +2529,25 @@ const deserializeAws_json1_1DeleteConstraintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePortfolioCommand = async ( @@ -2953,57 +2575,31 @@ const deserializeAws_json1_1DeletePortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.servicecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePortfolioShareCommand = async ( @@ -3031,57 +2627,31 @@ const deserializeAws_json1_1DeletePortfolioShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProductCommand = async ( @@ -3109,57 +2679,31 @@ const deserializeAws_json1_1DeleteProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.servicecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProvisionedProductPlanCommand = async ( @@ -3187,41 +2731,25 @@ const deserializeAws_json1_1DeleteProvisionedProductPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProvisioningArtifactCommand = async ( @@ -3249,49 +2777,28 @@ const deserializeAws_json1_1DeleteProvisioningArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.servicecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServiceActionCommand = async ( @@ -3319,41 +2826,25 @@ const deserializeAws_json1_1DeleteServiceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUseException": case "com.amazonaws.servicecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTagOptionCommand = async ( @@ -3381,49 +2872,28 @@ const deserializeAws_json1_1DeleteTagOptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceInUseException": case "com.amazonaws.servicecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConstraintCommand = async ( @@ -3451,33 +2921,22 @@ const deserializeAws_json1_1DescribeConstraintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCopyProductStatusCommand = async ( @@ -3505,33 +2964,22 @@ const deserializeAws_json1_1DescribeCopyProductStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePortfolioCommand = async ( @@ -3559,33 +3007,22 @@ const deserializeAws_json1_1DescribePortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePortfolioSharesCommand = async ( @@ -3613,41 +3050,25 @@ const deserializeAws_json1_1DescribePortfolioSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePortfolioShareStatusCommand = async ( @@ -3675,49 +3096,28 @@ const deserializeAws_json1_1DescribePortfolioShareStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProductCommand = async ( @@ -3745,41 +3145,25 @@ const deserializeAws_json1_1DescribeProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProductAsAdminCommand = async ( @@ -3807,41 +3191,25 @@ const deserializeAws_json1_1DescribeProductAsAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProductViewCommand = async ( @@ -3869,41 +3237,25 @@ const deserializeAws_json1_1DescribeProductViewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProvisionedProductCommand = async ( @@ -3931,41 +3283,25 @@ const deserializeAws_json1_1DescribeProvisionedProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProvisionedProductPlanCommand = async ( @@ -3993,41 +3329,25 @@ const deserializeAws_json1_1DescribeProvisionedProductPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProvisioningArtifactCommand = async ( @@ -4055,41 +3375,25 @@ const deserializeAws_json1_1DescribeProvisioningArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProvisioningParametersCommand = async ( @@ -4117,41 +3421,25 @@ const deserializeAws_json1_1DescribeProvisioningParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeRecordCommand = async ( @@ -4179,33 +3467,22 @@ const deserializeAws_json1_1DescribeRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServiceActionCommand = async ( @@ -4233,33 +3510,22 @@ const deserializeAws_json1_1DescribeServiceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServiceActionExecutionParametersCommand = async ( @@ -4287,41 +3553,25 @@ const deserializeAws_json1_1DescribeServiceActionExecutionParametersCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTagOptionCommand = async ( @@ -4349,41 +3599,25 @@ const deserializeAws_json1_1DescribeTagOptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableAWSOrganizationsAccessCommand = async ( @@ -4411,49 +3645,28 @@ const deserializeAws_json1_1DisableAWSOrganizationsAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateBudgetFromResourceCommand = async ( @@ -4481,33 +3694,22 @@ const deserializeAws_json1_1DisassociateBudgetFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociatePrincipalFromPortfolioCommand = async ( @@ -4535,41 +3737,25 @@ const deserializeAws_json1_1DisassociatePrincipalFromPortfolioCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateProductFromPortfolioCommand = async ( @@ -4597,49 +3783,28 @@ const deserializeAws_json1_1DisassociateProductFromPortfolioCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.servicecatalog#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateServiceActionFromProvisioningArtifactCommand = async ( @@ -4667,33 +3832,22 @@ const deserializeAws_json1_1DisassociateServiceActionFromProvisioningArtifactCom ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateTagOptionFromResourceCommand = async ( @@ -4721,41 +3875,25 @@ const deserializeAws_json1_1DisassociateTagOptionFromResourceCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableAWSOrganizationsAccessCommand = async ( @@ -4783,49 +3921,28 @@ const deserializeAws_json1_1EnableAWSOrganizationsAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExecuteProvisionedProductPlanCommand = async ( @@ -4853,49 +3970,28 @@ const deserializeAws_json1_1ExecuteProvisionedProductPlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ExecuteProvisionedProductServiceActionCommand = async ( @@ -4923,49 +4019,28 @@ const deserializeAws_json1_1ExecuteProvisionedProductServiceActionCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAWSOrganizationsAccessStatusCommand = async ( @@ -4993,41 +4068,25 @@ const deserializeAws_json1_1GetAWSOrganizationsAccessStatusCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetProvisionedProductOutputsCommand = async ( @@ -5055,41 +4114,25 @@ const deserializeAws_json1_1GetProvisionedProductOutputsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportAsProvisionedProductCommand = async ( @@ -5117,57 +4160,31 @@ const deserializeAws_json1_1ImportAsProvisionedProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAcceptedPortfolioSharesCommand = async ( @@ -5195,41 +4212,25 @@ const deserializeAws_json1_1ListAcceptedPortfolioSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListBudgetsForResourceCommand = async ( @@ -5257,41 +4258,25 @@ const deserializeAws_json1_1ListBudgetsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListConstraintsForPortfolioCommand = async ( @@ -5319,41 +4304,25 @@ const deserializeAws_json1_1ListConstraintsForPortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLaunchPathsCommand = async ( @@ -5381,41 +4350,25 @@ const deserializeAws_json1_1ListLaunchPathsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOrganizationPortfolioAccessCommand = async ( @@ -5443,49 +4396,28 @@ const deserializeAws_json1_1ListOrganizationPortfolioAccessCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPortfolioAccessCommand = async ( @@ -5513,41 +4445,25 @@ const deserializeAws_json1_1ListPortfolioAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPortfoliosCommand = async ( @@ -5575,33 +4491,22 @@ const deserializeAws_json1_1ListPortfoliosCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPortfoliosForProductCommand = async ( @@ -5629,41 +4534,25 @@ const deserializeAws_json1_1ListPortfoliosForProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPrincipalsForPortfolioCommand = async ( @@ -5691,41 +4580,25 @@ const deserializeAws_json1_1ListPrincipalsForPortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProvisionedProductPlansCommand = async ( @@ -5753,41 +4626,25 @@ const deserializeAws_json1_1ListProvisionedProductPlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProvisioningArtifactsCommand = async ( @@ -5815,41 +4672,25 @@ const deserializeAws_json1_1ListProvisioningArtifactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProvisioningArtifactsForServiceActionCommand = async ( @@ -5877,41 +4718,25 @@ const deserializeAws_json1_1ListProvisioningArtifactsForServiceActionCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRecordHistoryCommand = async ( @@ -5939,33 +4764,22 @@ const deserializeAws_json1_1ListRecordHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourcesForTagOptionCommand = async ( @@ -5993,49 +4807,28 @@ const deserializeAws_json1_1ListResourcesForTagOptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServiceActionsCommand = async ( @@ -6063,33 +4856,22 @@ const deserializeAws_json1_1ListServiceActionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServiceActionsForProvisioningArtifactCommand = async ( @@ -6117,41 +4899,25 @@ const deserializeAws_json1_1ListServiceActionsForProvisioningArtifactCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListStackInstancesForProvisionedProductCommand = async ( @@ -6179,41 +4945,25 @@ const deserializeAws_json1_1ListStackInstancesForProvisionedProductCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagOptionsCommand = async ( @@ -6241,41 +4991,25 @@ const deserializeAws_json1_1ListTagOptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ProvisionProductCommand = async ( @@ -6303,49 +5037,28 @@ const deserializeAws_json1_1ProvisionProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RejectPortfolioShareCommand = async ( @@ -6373,33 +5086,22 @@ const deserializeAws_json1_1RejectPortfolioShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ScanProvisionedProductsCommand = async ( @@ -6427,33 +5129,22 @@ const deserializeAws_json1_1ScanProvisionedProductsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchProductsCommand = async ( @@ -6481,33 +5172,22 @@ const deserializeAws_json1_1SearchProductsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchProductsAsAdminCommand = async ( @@ -6535,41 +5215,25 @@ const deserializeAws_json1_1SearchProductsAsAdminCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SearchProvisionedProductsCommand = async ( @@ -6597,33 +5261,22 @@ const deserializeAws_json1_1SearchProvisionedProductsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TerminateProvisionedProductCommand = async ( @@ -6651,33 +5304,22 @@ const deserializeAws_json1_1TerminateProvisionedProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConstraintCommand = async ( @@ -6705,41 +5347,25 @@ const deserializeAws_json1_1UpdateConstraintCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePortfolioCommand = async ( @@ -6767,57 +5393,31 @@ const deserializeAws_json1_1UpdatePortfolioCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.servicecatalog#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePortfolioShareCommand = async ( @@ -6845,57 +5445,31 @@ const deserializeAws_json1_1UpdatePortfolioShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.servicecatalog#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProductCommand = async ( @@ -6923,49 +5497,28 @@ const deserializeAws_json1_1UpdateProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProvisionedProductCommand = async ( @@ -6993,41 +5546,25 @@ const deserializeAws_json1_1UpdateProvisionedProductCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProvisionedProductPropertiesCommand = async ( @@ -7055,49 +5592,28 @@ const deserializeAws_json1_1UpdateProvisionedProductPropertiesCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "InvalidStateException": case "com.amazonaws.servicecatalog#InvalidStateException": - response = { - ...(await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProvisioningArtifactCommand = async ( @@ -7125,41 +5641,25 @@ const deserializeAws_json1_1UpdateProvisioningArtifactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServiceActionCommand = async ( @@ -7187,41 +5687,25 @@ const deserializeAws_json1_1UpdateServiceActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateTagOptionCommand = async ( @@ -7249,57 +5733,31 @@ const deserializeAws_json1_1UpdateTagOptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateResourceException": case "com.amazonaws.servicecatalog#DuplicateResourceException": - response = { - ...(await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateResourceExceptionResponse(parsedOutput, context); case "InvalidParametersException": case "com.amazonaws.servicecatalog#InvalidParametersException": - response = { - ...(await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicecatalog#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TagOptionNotMigratedException": case "com.amazonaws.servicecatalog#TagOptionNotMigratedException": - response = { - ...(await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagOptionNotMigratedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DuplicateResourceExceptionResponse = async ( @@ -7308,13 +5766,11 @@ const deserializeAws_json1_1DuplicateResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateResourceException(body, context); - const contents: DuplicateResourceException = { - name: "DuplicateResourceException", - $fault: "client", + const exception = new DuplicateResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParametersExceptionResponse = async ( @@ -7323,13 +5779,11 @@ const deserializeAws_json1_1InvalidParametersExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParametersException(body, context); - const contents: InvalidParametersException = { - name: "InvalidParametersException", - $fault: "client", + const exception = new InvalidParametersException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidStateExceptionResponse = async ( @@ -7338,13 +5792,11 @@ const deserializeAws_json1_1InvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidStateException(body, context); - const contents: InvalidStateException = { - name: "InvalidStateException", - $fault: "client", + const exception = new InvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7353,13 +5805,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotSupportedExceptionResponse = async ( @@ -7368,13 +5818,11 @@ const deserializeAws_json1_1OperationNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotSupportedException(body, context); - const contents: OperationNotSupportedException = { - name: "OperationNotSupportedException", - $fault: "client", + const exception = new OperationNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -7383,13 +5831,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -7398,13 +5844,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagOptionNotMigratedExceptionResponse = async ( @@ -7413,13 +5857,11 @@ const deserializeAws_json1_1TagOptionNotMigratedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagOptionNotMigratedException(body, context); - const contents: TagOptionNotMigratedException = { - name: "TagOptionNotMigratedException", - $fault: "client", + const exception = new TagOptionNotMigratedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptPortfolioShareInput = ( diff --git a/clients/client-service-quotas/src/index.ts b/clients/client-service-quotas/src/index.ts index 237f36b527258..e67f06add34af 100644 --- a/clients/client-service-quotas/src/index.ts +++ b/clients/client-service-quotas/src/index.ts @@ -3,3 +3,4 @@ export * from "./ServiceQuotasClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ServiceQuotasServiceException } from "./models/ServiceQuotasServiceException"; diff --git a/clients/client-service-quotas/src/models/ServiceQuotasServiceException.ts b/clients/client-service-quotas/src/models/ServiceQuotasServiceException.ts new file mode 100644 index 0000000000000..43d86fbbf3585 --- /dev/null +++ b/clients/client-service-quotas/src/models/ServiceQuotasServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ServiceQuotas service. + */ +export class ServiceQuotasServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ServiceQuotasServiceException.prototype); + } +} diff --git a/clients/client-service-quotas/src/models/models_0.ts b/clients/client-service-quotas/src/models/models_0.ts index 852cf546c4924..d3deb372e0e0a 100644 --- a/clients/client-service-quotas/src/models/models_0.ts +++ b/clients/client-service-quotas/src/models/models_0.ts @@ -1,12 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ServiceQuotasServiceException as __BaseException } from "./ServiceQuotasServiceException"; /** *

You do not have sufficient permission to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface AssociateServiceQuotaTemplateRequest {} @@ -35,65 +50,149 @@ export namespace AssociateServiceQuotaTemplateResponse { *

The action you attempted is not allowed unless Service Access with Service Quotas is * enabled in your organization.

*/ -export interface AWSServiceAccessNotEnabledException extends __SmithyException, $MetadataBearer { - name: "AWSServiceAccessNotEnabledException"; - $fault: "client"; +export class AWSServiceAccessNotEnabledException extends __BaseException { + readonly name: "AWSServiceAccessNotEnabledException" = "AWSServiceAccessNotEnabledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AWSServiceAccessNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AWSServiceAccessNotEnabledException.prototype); + this.Message = opts.Message; + } } /** *

You can't perform this action because a dependency does not have access.

*/ -export interface DependencyAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "DependencyAccessDeniedException"; - $fault: "client"; +export class DependencyAccessDeniedException extends __BaseException { + readonly name: "DependencyAccessDeniedException" = "DependencyAccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DependencyAccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DependencyAccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

The account making this call is not a member of an organization.

*/ -export interface NoAvailableOrganizationException extends __SmithyException, $MetadataBearer { - name: "NoAvailableOrganizationException"; - $fault: "client"; +export class NoAvailableOrganizationException extends __BaseException { + readonly name: "NoAvailableOrganizationException" = "NoAvailableOrganizationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoAvailableOrganizationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoAvailableOrganizationException.prototype); + this.Message = opts.Message; + } } /** *

The organization that your account belongs to is not in All Features mode.

*/ -export interface OrganizationNotInAllFeaturesModeException extends __SmithyException, $MetadataBearer { - name: "OrganizationNotInAllFeaturesModeException"; - $fault: "client"; +export class OrganizationNotInAllFeaturesModeException extends __BaseException { + readonly name: "OrganizationNotInAllFeaturesModeException" = "OrganizationNotInAllFeaturesModeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationNotInAllFeaturesModeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationNotInAllFeaturesModeException.prototype); + this.Message = opts.Message; + } } /** *

Something went wrong.

*/ -export interface ServiceException extends __SmithyException, $MetadataBearer { - name: "ServiceException"; - $fault: "server"; +export class ServiceException extends __BaseException { + readonly name: "ServiceException" = "ServiceException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceException.prototype); + this.Message = opts.Message; + } } /** *

The Service Quotas template is not available in this AWS Region.

*/ -export interface TemplatesNotAvailableInRegionException extends __SmithyException, $MetadataBearer { - name: "TemplatesNotAvailableInRegionException"; - $fault: "client"; +export class TemplatesNotAvailableInRegionException extends __BaseException { + readonly name: "TemplatesNotAvailableInRegionException" = "TemplatesNotAvailableInRegionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TemplatesNotAvailableInRegionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TemplatesNotAvailableInRegionException.prototype); + this.Message = opts.Message; + } } /** *

Due to throttling, the request was denied. Slow down the rate of request calls, or request * an increase for this quota.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } export interface DeleteServiceQuotaIncreaseRequestFromTemplateRequest { @@ -136,19 +235,43 @@ export namespace DeleteServiceQuotaIncreaseRequestFromTemplateResponse { /** *

Invalid input was provided.

*/ -export interface IllegalArgumentException extends __SmithyException, $MetadataBearer { - name: "IllegalArgumentException"; - $fault: "client"; +export class IllegalArgumentException extends __BaseException { + readonly name: "IllegalArgumentException" = "IllegalArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalArgumentException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource does not exist.

*/ -export interface NoSuchResourceException extends __SmithyException, $MetadataBearer { - name: "NoSuchResourceException"; - $fault: "client"; +export class NoSuchResourceException extends __BaseException { + readonly name: "NoSuchResourceException" = "NoSuchResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoSuchResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoSuchResourceException.prototype); + this.Message = opts.Message; + } } export interface DisassociateServiceQuotaTemplateRequest {} @@ -176,10 +299,22 @@ export namespace DisassociateServiceQuotaTemplateResponse { /** *

The quota request template is not associated with your organization.

*/ -export interface ServiceQuotaTemplateNotInUseException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaTemplateNotInUseException"; - $fault: "client"; +export class ServiceQuotaTemplateNotInUseException extends __BaseException { + readonly name: "ServiceQuotaTemplateNotInUseException" = "ServiceQuotaTemplateNotInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaTemplateNotInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaTemplateNotInUseException.prototype); + this.Message = opts.Message; + } } export enum ErrorCode { @@ -738,19 +873,43 @@ export namespace Tag { /** *

Invalid input was provided.

*/ -export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationTokenException"; - $fault: "client"; +export class InvalidPaginationTokenException extends __BaseException { + readonly name: "InvalidPaginationTokenException" = "InvalidPaginationTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationTokenException.prototype); + this.Message = opts.Message; + } } /** *

The resource is in an invalid state.

*/ -export interface InvalidResourceStateException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceStateException"; - $fault: "client"; +export class InvalidResourceStateException extends __BaseException { + readonly name: "InvalidResourceStateException" = "InvalidResourceStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceStateException.prototype); + this.Message = opts.Message; + } } export interface ListAWSDefaultServiceQuotasRequest { @@ -1171,10 +1330,22 @@ export namespace PutServiceQuotaIncreaseRequestIntoTemplateResponse { *

You have exceeded your service quota. To perform the requested action, remove some of the * relevant resources, or use Service Quotas to request a service quota increase.

*/ -export interface QuotaExceededException extends __SmithyException, $MetadataBearer { - name: "QuotaExceededException"; - $fault: "client"; +export class QuotaExceededException extends __BaseException { + readonly name: "QuotaExceededException" = "QuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QuotaExceededException.prototype); + this.Message = opts.Message; + } } export interface RequestServiceQuotaIncreaseRequest { @@ -1222,19 +1393,43 @@ export namespace RequestServiceQuotaIncreaseResponse { /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The specified tag is a reserved word and cannot be used.

*/ -export interface TagPolicyViolationException extends __SmithyException, $MetadataBearer { - name: "TagPolicyViolationException"; - $fault: "client"; +export class TagPolicyViolationException extends __BaseException { + readonly name: "TagPolicyViolationException" = "TagPolicyViolationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagPolicyViolationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagPolicyViolationException.prototype); + this.Message = opts.Message; + } } export interface TagResourceRequest { @@ -1275,10 +1470,22 @@ export namespace TagResourceResponse { * Tag * restrictions in the Service Quotas User Guide.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + } } export interface UntagResourceRequest { diff --git a/clients/client-service-quotas/src/protocols/Aws_json1_1.ts b/clients/client-service-quotas/src/protocols/Aws_json1_1.ts index 2d7682d2b9b2a..2868d0044c7af 100644 --- a/clients/client-service-quotas/src/protocols/Aws_json1_1.ts +++ b/clients/client-service-quotas/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -144,6 +143,7 @@ import { UntagResourceRequest, UntagResourceResponse, } from "../models/models_0"; +import { ServiceQuotasServiceException as __BaseException } from "../models/ServiceQuotasServiceException"; export const serializeAws_json1_1AssociateServiceQuotaTemplateCommand = async ( input: AssociateServiceQuotaTemplateCommandInput, @@ -417,89 +417,43 @@ const deserializeAws_json1_1AssociateServiceQuotaTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "OrganizationNotInAllFeaturesModeException": case "com.amazonaws.servicequotas#OrganizationNotInAllFeaturesModeException": - response = { - ...(await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServiceQuotaIncreaseRequestFromTemplateCommand = async ( @@ -527,97 +481,46 @@ const deserializeAws_json1_1DeleteServiceQuotaIncreaseRequestFromTemplateCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateServiceQuotaTemplateCommand = async ( @@ -645,89 +548,43 @@ const deserializeAws_json1_1DisassociateServiceQuotaTemplateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaTemplateNotInUseException": case "com.amazonaws.servicequotas#ServiceQuotaTemplateNotInUseException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaTemplateNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaTemplateNotInUseExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAssociationForServiceQuotaTemplateCommand = async ( @@ -755,89 +612,43 @@ const deserializeAws_json1_1GetAssociationForServiceQuotaTemplateCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "ServiceQuotaTemplateNotInUseException": case "com.amazonaws.servicequotas#ServiceQuotaTemplateNotInUseException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaTemplateNotInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaTemplateNotInUseExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAWSDefaultServiceQuotaCommand = async ( @@ -865,65 +676,34 @@ const deserializeAws_json1_1GetAWSDefaultServiceQuotaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRequestedServiceQuotaChangeCommand = async ( @@ -951,65 +731,34 @@ const deserializeAws_json1_1GetRequestedServiceQuotaChangeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetServiceQuotaCommand = async ( @@ -1037,65 +786,34 @@ const deserializeAws_json1_1GetServiceQuotaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetServiceQuotaIncreaseRequestFromTemplateCommand = async ( @@ -1123,97 +841,46 @@ const deserializeAws_json1_1GetServiceQuotaIncreaseRequestFromTemplateCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAWSDefaultServiceQuotasCommand = async ( @@ -1241,73 +908,37 @@ const deserializeAws_json1_1ListAWSDefaultServiceQuotasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.servicequotas#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRequestedServiceQuotaChangeHistoryCommand = async ( @@ -1335,73 +966,37 @@ const deserializeAws_json1_1ListRequestedServiceQuotaChangeHistoryCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.servicequotas#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRequestedServiceQuotaChangeHistoryByQuotaCommand = async ( @@ -1429,73 +1024,37 @@ const deserializeAws_json1_1ListRequestedServiceQuotaChangeHistoryByQuotaCommand ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.servicequotas#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServiceQuotaIncreaseRequestsInTemplateCommand = async ( @@ -1523,89 +1082,43 @@ const deserializeAws_json1_1ListServiceQuotaIncreaseRequestsInTemplateCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServiceQuotasCommand = async ( @@ -1633,73 +1146,37 @@ const deserializeAws_json1_1ListServiceQuotasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.servicequotas#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServicesCommand = async ( @@ -1727,65 +1204,34 @@ const deserializeAws_json1_1ListServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.servicequotas#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1813,65 +1259,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutServiceQuotaIncreaseRequestIntoTemplateCommand = async ( @@ -1899,105 +1314,49 @@ const deserializeAws_json1_1PutServiceQuotaIncreaseRequestIntoTemplateCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "AWSServiceAccessNotEnabledException": case "com.amazonaws.servicequotas#AWSServiceAccessNotEnabledException": - response = { - ...(await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoAvailableOrganizationException": case "com.amazonaws.servicequotas#NoAvailableOrganizationException": - response = { - ...(await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAvailableOrganizationExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "QuotaExceededException": case "com.amazonaws.servicequotas#QuotaExceededException": - response = { - ...(await deserializeAws_json1_1QuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1QuotaExceededExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TemplatesNotAvailableInRegionException": case "com.amazonaws.servicequotas#TemplatesNotAvailableInRegionException": - response = { - ...(await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RequestServiceQuotaIncreaseCommand = async ( @@ -2025,97 +1384,46 @@ const deserializeAws_json1_1RequestServiceQuotaIncreaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DependencyAccessDeniedException": case "com.amazonaws.servicequotas#DependencyAccessDeniedException": - response = { - ...(await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DependencyAccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.servicequotas#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "QuotaExceededException": case "com.amazonaws.servicequotas#QuotaExceededException": - response = { - ...(await deserializeAws_json1_1QuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1QuotaExceededExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.servicequotas#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2143,81 +1451,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TagPolicyViolationException": case "com.amazonaws.servicequotas#TagPolicyViolationException": - response = { - ...(await deserializeAws_json1_1TagPolicyViolationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TagPolicyViolationExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.servicequotas#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2245,65 +1512,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.servicequotas#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "IllegalArgumentException": case "com.amazonaws.servicequotas#IllegalArgumentException": - response = { - ...(await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IllegalArgumentExceptionResponse(parsedOutput, context); case "NoSuchResourceException": case "com.amazonaws.servicequotas#NoSuchResourceException": - response = { - ...(await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoSuchResourceExceptionResponse(parsedOutput, context); case "ServiceException": case "com.amazonaws.servicequotas#ServiceException": - response = { - ...(await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.servicequotas#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -2312,13 +1548,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse = async ( @@ -2327,13 +1561,11 @@ const deserializeAws_json1_1AWSServiceAccessNotEnabledExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AWSServiceAccessNotEnabledException(body, context); - const contents: AWSServiceAccessNotEnabledException = { - name: "AWSServiceAccessNotEnabledException", - $fault: "client", + const exception = new AWSServiceAccessNotEnabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DependencyAccessDeniedExceptionResponse = async ( @@ -2342,13 +1574,11 @@ const deserializeAws_json1_1DependencyAccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DependencyAccessDeniedException(body, context); - const contents: DependencyAccessDeniedException = { - name: "DependencyAccessDeniedException", - $fault: "client", + const exception = new DependencyAccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IllegalArgumentExceptionResponse = async ( @@ -2357,13 +1587,11 @@ const deserializeAws_json1_1IllegalArgumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IllegalArgumentException(body, context); - const contents: IllegalArgumentException = { - name: "IllegalArgumentException", - $fault: "client", + const exception = new IllegalArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPaginationTokenExceptionResponse = async ( @@ -2372,13 +1600,11 @@ const deserializeAws_json1_1InvalidPaginationTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPaginationTokenException(body, context); - const contents: InvalidPaginationTokenException = { - name: "InvalidPaginationTokenException", - $fault: "client", + const exception = new InvalidPaginationTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceStateExceptionResponse = async ( @@ -2387,13 +1613,11 @@ const deserializeAws_json1_1InvalidResourceStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceStateException(body, context); - const contents: InvalidResourceStateException = { - name: "InvalidResourceStateException", - $fault: "client", + const exception = new InvalidResourceStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoAvailableOrganizationExceptionResponse = async ( @@ -2402,13 +1626,11 @@ const deserializeAws_json1_1NoAvailableOrganizationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoAvailableOrganizationException(body, context); - const contents: NoAvailableOrganizationException = { - name: "NoAvailableOrganizationException", - $fault: "client", + const exception = new NoAvailableOrganizationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoSuchResourceExceptionResponse = async ( @@ -2417,13 +1639,11 @@ const deserializeAws_json1_1NoSuchResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoSuchResourceException(body, context); - const contents: NoSuchResourceException = { - name: "NoSuchResourceException", - $fault: "client", + const exception = new NoSuchResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse = async ( @@ -2432,13 +1652,11 @@ const deserializeAws_json1_1OrganizationNotInAllFeaturesModeExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationNotInAllFeaturesModeException(body, context); - const contents: OrganizationNotInAllFeaturesModeException = { - name: "OrganizationNotInAllFeaturesModeException", - $fault: "client", + const exception = new OrganizationNotInAllFeaturesModeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1QuotaExceededExceptionResponse = async ( @@ -2447,13 +1665,11 @@ const deserializeAws_json1_1QuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1QuotaExceededException(body, context); - const contents: QuotaExceededException = { - name: "QuotaExceededException", - $fault: "client", + const exception = new QuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -2462,13 +1678,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceExceptionResponse = async ( @@ -2477,13 +1691,11 @@ const deserializeAws_json1_1ServiceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceException(body, context); - const contents: ServiceException = { - name: "ServiceException", - $fault: "server", + const exception = new ServiceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaTemplateNotInUseExceptionResponse = async ( @@ -2492,13 +1704,11 @@ const deserializeAws_json1_1ServiceQuotaTemplateNotInUseExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaTemplateNotInUseException(body, context); - const contents: ServiceQuotaTemplateNotInUseException = { - name: "ServiceQuotaTemplateNotInUseException", - $fault: "client", + const exception = new ServiceQuotaTemplateNotInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TagPolicyViolationExceptionResponse = async ( @@ -2507,13 +1717,11 @@ const deserializeAws_json1_1TagPolicyViolationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TagPolicyViolationException(body, context); - const contents: TagPolicyViolationException = { - name: "TagPolicyViolationException", - $fault: "client", + const exception = new TagPolicyViolationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse = async ( @@ -2522,13 +1730,11 @@ const deserializeAws_json1_1TemplatesNotAvailableInRegionExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TemplatesNotAvailableInRegionException(body, context); - const contents: TemplatesNotAvailableInRegionException = { - name: "TemplatesNotAvailableInRegionException", - $fault: "client", + const exception = new TemplatesNotAvailableInRegionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -2537,13 +1743,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -2552,13 +1756,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateServiceQuotaTemplateRequest = ( diff --git a/clients/client-servicediscovery/src/index.ts b/clients/client-servicediscovery/src/index.ts index 5f88baae1a46b..7192d36b1f534 100644 --- a/clients/client-servicediscovery/src/index.ts +++ b/clients/client-servicediscovery/src/index.ts @@ -3,3 +3,4 @@ export * from "./ServiceDiscoveryClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ServiceDiscoveryServiceException } from "./models/ServiceDiscoveryServiceException"; diff --git a/clients/client-servicediscovery/src/models/ServiceDiscoveryServiceException.ts b/clients/client-servicediscovery/src/models/ServiceDiscoveryServiceException.ts new file mode 100644 index 0000000000000..90e0fd98de90f --- /dev/null +++ b/clients/client-servicediscovery/src/models/ServiceDiscoveryServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from ServiceDiscovery service. + */ +export class ServiceDiscoveryServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ServiceDiscoveryServiceException.prototype); + } +} diff --git a/clients/client-servicediscovery/src/models/models_0.ts b/clients/client-servicediscovery/src/models/models_0.ts index 940db8c18bf07..b95c10f3bb7fd 100644 --- a/clients/client-servicediscovery/src/models/models_0.ts +++ b/clients/client-servicediscovery/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ServiceDiscoveryServiceException as __BaseException } from "./ServiceDiscoveryServiceException"; /** *

A custom key-value pair that's associated with a resource.

@@ -80,32 +83,57 @@ export namespace CreateHttpNamespaceResponse { /** *

The operation is already in progress.

*/ -export interface DuplicateRequest extends __SmithyException, $MetadataBearer { - name: "DuplicateRequest"; - $fault: "client"; +export class DuplicateRequest extends __BaseException { + readonly name: "DuplicateRequest" = "DuplicateRequest"; + readonly $fault: "client" = "client"; Message?: string; /** *

The ID of the operation that's already in progress.

*/ DuplicateOperationId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateRequest", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateRequest.prototype); + this.Message = opts.Message; + this.DuplicateOperationId = opts.DuplicateOperationId; + } } /** *

One or more specified values aren't valid. For example, a required value might be missing, a numeric value might * be outside the allowed range, or a string value might exceed length constraints.

*/ -export interface InvalidInput extends __SmithyException, $MetadataBearer { - name: "InvalidInput"; - $fault: "client"; +export class InvalidInput extends __BaseException { + readonly name: "InvalidInput" = "InvalidInput"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInput", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInput.prototype); + this.Message = opts.Message; + } } /** *

The namespace that you're trying to create already exists.

*/ -export interface NamespaceAlreadyExists extends __SmithyException, $MetadataBearer { - name: "NamespaceAlreadyExists"; - $fault: "client"; +export class NamespaceAlreadyExists extends __BaseException { + readonly name: "NamespaceAlreadyExists" = "NamespaceAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; /** *

The CreatorRequestId that was used to create the namespace.

@@ -116,29 +144,68 @@ export interface NamespaceAlreadyExists extends __SmithyException, $MetadataBear *

The ID of the existing namespace.

*/ NamespaceId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NamespaceAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NamespaceAlreadyExists.prototype); + this.Message = opts.Message; + this.CreatorRequestId = opts.CreatorRequestId; + this.NamespaceId = opts.NamespaceId; + } } /** *

The resource can't be created because you've reached the quota on the number of resources.

*/ -export interface ResourceLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceeded"; - $fault: "client"; +export class ResourceLimitExceeded extends __BaseException { + readonly name: "ResourceLimitExceeded" = "ResourceLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceeded.prototype); + this.Message = opts.Message; + } } /** *

The list of tags on the resource is over the quota. The maximum number of tags that can be applied to a resource * is 50.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The name of the resource.

*/ ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } /** @@ -1042,18 +1109,30 @@ export namespace CreateServiceResponse { /** *

No namespace exists with the specified ID.

*/ -export interface NamespaceNotFound extends __SmithyException, $MetadataBearer { - name: "NamespaceNotFound"; - $fault: "client"; +export class NamespaceNotFound extends __BaseException { + readonly name: "NamespaceNotFound" = "NamespaceNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NamespaceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NamespaceNotFound.prototype); + this.Message = opts.Message; + } } /** *

The service can't be created because a service with the same name already exists.

*/ -export interface ServiceAlreadyExists extends __SmithyException, $MetadataBearer { - name: "ServiceAlreadyExists"; - $fault: "client"; +export class ServiceAlreadyExists extends __BaseException { + readonly name: "ServiceAlreadyExists" = "ServiceAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; /** *

The CreatorRequestId that was used to create the service.

@@ -1064,16 +1143,42 @@ export interface ServiceAlreadyExists extends __SmithyException, $MetadataBearer *

The ID of the existing service.

*/ ServiceId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceAlreadyExists.prototype); + this.Message = opts.Message; + this.CreatorRequestId = opts.CreatorRequestId; + this.ServiceId = opts.ServiceId; + } } /** *

The health check for the instance that's specified by ServiceId and InstanceId isn't a * custom health check.

*/ -export interface CustomHealthNotFound extends __SmithyException, $MetadataBearer { - name: "CustomHealthNotFound"; - $fault: "client"; +export class CustomHealthNotFound extends __BaseException { + readonly name: "CustomHealthNotFound" = "CustomHealthNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomHealthNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomHealthNotFound.prototype); + this.Message = opts.Message; + } } export enum CustomHealthStatus { @@ -1118,10 +1223,22 @@ export namespace DeleteNamespaceResponse { *

The specified resource can't be deleted because it contains other resources. For example, you can't delete a * service that contains any instances.

*/ -export interface ResourceInUse extends __SmithyException, $MetadataBearer { - name: "ResourceInUse"; - $fault: "client"; +export class ResourceInUse extends __BaseException { + readonly name: "ResourceInUse" = "ResourceInUse"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUse", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUse.prototype); + this.Message = opts.Message; + } } export interface DeleteServiceRequest { @@ -1154,10 +1271,22 @@ export namespace DeleteServiceResponse { /** *

No service exists with the specified ID.

*/ -export interface ServiceNotFound extends __SmithyException, $MetadataBearer { - name: "ServiceNotFound"; - $fault: "client"; +export class ServiceNotFound extends __BaseException { + readonly name: "ServiceNotFound" = "ServiceNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceNotFound.prototype); + this.Message = opts.Message; + } } export interface DeregisterInstanceRequest { @@ -1202,10 +1331,22 @@ export namespace DeregisterInstanceResponse { *

No instance exists with the specified ID, or the instance was recently registered, and information about the * instance hasn't propagated yet.

*/ -export interface InstanceNotFound extends __SmithyException, $MetadataBearer { - name: "InstanceNotFound"; - $fault: "client"; +export class InstanceNotFound extends __BaseException { + readonly name: "InstanceNotFound" = "InstanceNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InstanceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InstanceNotFound.prototype); + this.Message = opts.Message; + } } export enum HealthStatusFilter { @@ -1358,10 +1499,22 @@ export namespace DiscoverInstancesResponse { * information, see Cloud Map API request throttling * quota in the Cloud Map Developer Guide.

*/ -export interface RequestLimitExceeded extends __SmithyException, $MetadataBearer { - name: "RequestLimitExceeded"; - $fault: "client"; +export class RequestLimitExceeded extends __BaseException { + readonly name: "RequestLimitExceeded" = "RequestLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestLimitExceeded.prototype); + this.Message = opts.Message; + } } /** @@ -2005,10 +2158,22 @@ export namespace GetOperationResponse { /** *

No operation exists with the specified ID.

*/ -export interface OperationNotFound extends __SmithyException, $MetadataBearer { - name: "OperationNotFound"; - $fault: "client"; +export class OperationNotFound extends __BaseException { + readonly name: "OperationNotFound" = "OperationNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotFound.prototype); + this.Message = opts.Message; + } } export interface GetServiceRequest { @@ -2838,10 +3003,22 @@ export namespace ListTagsForResourceResponse { /** *

The operation can't be completed because the resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-servicediscovery/src/protocols/Aws_json1_1.ts b/clients/client-servicediscovery/src/protocols/Aws_json1_1.ts index 71aaaf7a1369c..d63692706addc 100644 --- a/clients/client-servicediscovery/src/protocols/Aws_json1_1.ts +++ b/clients/client-servicediscovery/src/protocols/Aws_json1_1.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -14,10 +15,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -178,6 +177,7 @@ import { UpdateServiceRequest, UpdateServiceResponse, } from "../models/models_0"; +import { ServiceDiscoveryServiceException as __BaseException } from "../models/ServiceDiscoveryServiceException"; export const serializeAws_json1_1CreateHttpNamespaceCommand = async ( input: CreateHttpNamespaceCommandInput, @@ -549,65 +549,34 @@ const deserializeAws_json1_1CreateHttpNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceAlreadyExists": case "com.amazonaws.servicediscovery#NamespaceAlreadyExists": - response = { - ...(await deserializeAws_json1_1NamespaceAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceAlreadyExistsResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.servicediscovery#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.servicediscovery#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePrivateDnsNamespaceCommand = async ( @@ -635,65 +604,34 @@ const deserializeAws_json1_1CreatePrivateDnsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceAlreadyExists": case "com.amazonaws.servicediscovery#NamespaceAlreadyExists": - response = { - ...(await deserializeAws_json1_1NamespaceAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceAlreadyExistsResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.servicediscovery#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.servicediscovery#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePublicDnsNamespaceCommand = async ( @@ -721,65 +659,34 @@ const deserializeAws_json1_1CreatePublicDnsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceAlreadyExists": case "com.amazonaws.servicediscovery#NamespaceAlreadyExists": - response = { - ...(await deserializeAws_json1_1NamespaceAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceAlreadyExistsResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.servicediscovery#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.servicediscovery#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateServiceCommand = async ( @@ -807,65 +714,34 @@ const deserializeAws_json1_1CreateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.servicediscovery#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ServiceAlreadyExists": case "com.amazonaws.servicediscovery#ServiceAlreadyExists": - response = { - ...(await deserializeAws_json1_1ServiceAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceAlreadyExistsResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.servicediscovery#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteNamespaceCommand = async ( @@ -893,57 +769,31 @@ const deserializeAws_json1_1DeleteNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServiceCommand = async ( @@ -971,49 +821,28 @@ const deserializeAws_json1_1DeleteServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterInstanceCommand = async ( @@ -1041,65 +870,34 @@ const deserializeAws_json1_1DeregisterInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InstanceNotFound": case "com.amazonaws.servicediscovery#InstanceNotFound": - response = { - ...(await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DiscoverInstancesCommand = async ( @@ -1127,57 +925,31 @@ const deserializeAws_json1_1DiscoverInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); case "RequestLimitExceeded": case "com.amazonaws.servicediscovery#RequestLimitExceeded": - response = { - ...(await deserializeAws_json1_1RequestLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1RequestLimitExceededResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstanceCommand = async ( @@ -1205,49 +977,28 @@ const deserializeAws_json1_1GetInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceNotFound": case "com.amazonaws.servicediscovery#InstanceNotFound": - response = { - ...(await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInstancesHealthStatusCommand = async ( @@ -1275,49 +1026,28 @@ const deserializeAws_json1_1GetInstancesHealthStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InstanceNotFound": case "com.amazonaws.servicediscovery#InstanceNotFound": - response = { - ...(await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetNamespaceCommand = async ( @@ -1345,41 +1075,25 @@ const deserializeAws_json1_1GetNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOperationCommand = async ( @@ -1407,41 +1121,25 @@ const deserializeAws_json1_1GetOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "OperationNotFound": case "com.amazonaws.servicediscovery#OperationNotFound": - response = { - ...(await deserializeAws_json1_1OperationNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetServiceCommand = async ( @@ -1469,41 +1167,25 @@ const deserializeAws_json1_1GetServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInstancesCommand = async ( @@ -1531,41 +1213,25 @@ const deserializeAws_json1_1ListInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListNamespacesCommand = async ( @@ -1593,33 +1259,22 @@ const deserializeAws_json1_1ListNamespacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOperationsCommand = async ( @@ -1647,33 +1302,22 @@ const deserializeAws_json1_1ListOperationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServicesCommand = async ( @@ -1701,33 +1345,22 @@ const deserializeAws_json1_1ListServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -1755,41 +1388,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicediscovery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterInstanceCommand = async ( @@ -1817,65 +1434,34 @@ const deserializeAws_json1_1RegisterInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); case "ResourceLimitExceeded": case "com.amazonaws.servicediscovery#ResourceLimitExceeded": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -1903,49 +1489,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicediscovery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.servicediscovery#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -1973,41 +1538,25 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.servicediscovery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateHttpNamespaceCommand = async ( @@ -2035,57 +1584,31 @@ const deserializeAws_json1_1UpdateHttpNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateInstanceCustomHealthStatusCommand = async ( @@ -2110,57 +1633,31 @@ const deserializeAws_json1_1UpdateInstanceCustomHealthStatusCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomHealthNotFound": case "com.amazonaws.servicediscovery#CustomHealthNotFound": - response = { - ...(await deserializeAws_json1_1CustomHealthNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomHealthNotFoundResponse(parsedOutput, context); case "InstanceNotFound": case "com.amazonaws.servicediscovery#InstanceNotFound": - response = { - ...(await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InstanceNotFoundResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePrivateDnsNamespaceCommand = async ( @@ -2188,57 +1685,31 @@ const deserializeAws_json1_1UpdatePrivateDnsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePublicDnsNamespaceCommand = async ( @@ -2266,57 +1737,31 @@ const deserializeAws_json1_1UpdatePublicDnsNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "NamespaceNotFound": case "com.amazonaws.servicediscovery#NamespaceNotFound": - response = { - ...(await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NamespaceNotFoundResponse(parsedOutput, context); case "ResourceInUse": case "com.amazonaws.servicediscovery#ResourceInUse": - response = { - ...(await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServiceCommand = async ( @@ -2344,49 +1789,28 @@ const deserializeAws_json1_1UpdateServiceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateRequest": case "com.amazonaws.servicediscovery#DuplicateRequest": - response = { - ...(await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateRequestResponse(parsedOutput, context); case "InvalidInput": case "com.amazonaws.servicediscovery#InvalidInput": - response = { - ...(await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputResponse(parsedOutput, context); case "ServiceNotFound": case "com.amazonaws.servicediscovery#ServiceNotFound": - response = { - ...(await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1CustomHealthNotFoundResponse = async ( @@ -2395,13 +1819,11 @@ const deserializeAws_json1_1CustomHealthNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomHealthNotFound(body, context); - const contents: CustomHealthNotFound = { - name: "CustomHealthNotFound", - $fault: "client", + const exception = new CustomHealthNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateRequestResponse = async ( @@ -2410,13 +1832,11 @@ const deserializeAws_json1_1DuplicateRequestResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateRequest(body, context); - const contents: DuplicateRequest = { - name: "DuplicateRequest", - $fault: "client", + const exception = new DuplicateRequest({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InstanceNotFoundResponse = async ( @@ -2425,13 +1845,11 @@ const deserializeAws_json1_1InstanceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InstanceNotFound(body, context); - const contents: InstanceNotFound = { - name: "InstanceNotFound", - $fault: "client", + const exception = new InstanceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputResponse = async ( @@ -2440,13 +1858,11 @@ const deserializeAws_json1_1InvalidInputResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInput(body, context); - const contents: InvalidInput = { - name: "InvalidInput", - $fault: "client", + const exception = new InvalidInput({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NamespaceAlreadyExistsResponse = async ( @@ -2455,13 +1871,11 @@ const deserializeAws_json1_1NamespaceAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NamespaceAlreadyExists(body, context); - const contents: NamespaceAlreadyExists = { - name: "NamespaceAlreadyExists", - $fault: "client", + const exception = new NamespaceAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NamespaceNotFoundResponse = async ( @@ -2470,13 +1884,11 @@ const deserializeAws_json1_1NamespaceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NamespaceNotFound(body, context); - const contents: NamespaceNotFound = { - name: "NamespaceNotFound", - $fault: "client", + const exception = new NamespaceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotFoundResponse = async ( @@ -2485,13 +1897,11 @@ const deserializeAws_json1_1OperationNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotFound(body, context); - const contents: OperationNotFound = { - name: "OperationNotFound", - $fault: "client", + const exception = new OperationNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1RequestLimitExceededResponse = async ( @@ -2500,13 +1910,11 @@ const deserializeAws_json1_1RequestLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1RequestLimitExceeded(body, context); - const contents: RequestLimitExceeded = { - name: "RequestLimitExceeded", - $fault: "client", + const exception = new RequestLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseResponse = async ( @@ -2515,13 +1923,11 @@ const deserializeAws_json1_1ResourceInUseResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUse(body, context); - const contents: ResourceInUse = { - name: "ResourceInUse", - $fault: "client", + const exception = new ResourceInUse({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLimitExceededResponse = async ( @@ -2530,13 +1936,11 @@ const deserializeAws_json1_1ResourceLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLimitExceeded(body, context); - const contents: ResourceLimitExceeded = { - name: "ResourceLimitExceeded", - $fault: "client", + const exception = new ResourceLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -2545,13 +1949,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceAlreadyExistsResponse = async ( @@ -2560,13 +1962,11 @@ const deserializeAws_json1_1ServiceAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceAlreadyExists(body, context); - const contents: ServiceAlreadyExists = { - name: "ServiceAlreadyExists", - $fault: "client", + const exception = new ServiceAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceNotFoundResponse = async ( @@ -2575,13 +1975,11 @@ const deserializeAws_json1_1ServiceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceNotFound(body, context); - const contents: ServiceNotFound = { - name: "ServiceNotFound", - $fault: "client", + const exception = new ServiceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -2590,13 +1988,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1Attributes = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-ses/src/index.ts b/clients/client-ses/src/index.ts index 480367aaf0587..b4e01282841eb 100644 --- a/clients/client-ses/src/index.ts +++ b/clients/client-ses/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { SESServiceException } from "./models/SESServiceException"; diff --git a/clients/client-ses/src/models/SESServiceException.ts b/clients/client-ses/src/models/SESServiceException.ts new file mode 100644 index 0000000000000..b202cae67e385 --- /dev/null +++ b/clients/client-ses/src/models/SESServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SES service. + */ +export class SESServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SESServiceException.prototype); + } +} diff --git a/clients/client-ses/src/models/models_0.ts b/clients/client-ses/src/models/models_0.ts index 9c1dc8f4b4ff1..8875965394664 100644 --- a/clients/client-ses/src/models/models_0.ts +++ b/clients/client-ses/src/models/models_0.ts @@ -1,13 +1,26 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SESServiceException as __BaseException } from "./SESServiceException"; /** *

Indicates that email sending is disabled for your entire Amazon SES account.

*

You can enable or disable email sending for your Amazon SES account using UpdateAccountSendingEnabled.

*/ -export interface AccountSendingPausedException extends __SmithyException, $MetadataBearer { - name: "AccountSendingPausedException"; - $fault: "client"; - message?: string; +export class AccountSendingPausedException extends __BaseException { + readonly name: "AccountSendingPausedException" = "AccountSendingPausedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountSendingPausedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountSendingPausedException.prototype); + } } /** @@ -42,16 +55,27 @@ export namespace AddHeaderAction { /** *

Indicates that a resource could not be created because of a naming conflict.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Indicates that a resource could not be created because the resource name already * exists.

*/ Name?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Name = opts.Name; + } } export enum BehaviorOnMXFailure { @@ -575,16 +599,27 @@ export namespace BulkEmailDestinationStatus { /** *

Indicates that the delete operation could not be completed.

*/ -export interface CannotDeleteException extends __SmithyException, $MetadataBearer { - name: "CannotDeleteException"; - $fault: "client"; +export class CannotDeleteException extends __BaseException { + readonly name: "CannotDeleteException" = "CannotDeleteException"; + readonly $fault: "client" = "client"; /** *

Indicates that a resource could not be deleted because no resource with the specified * name exists.

*/ Name?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CannotDeleteException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CannotDeleteException.prototype); + this.Name = opts.Name; + } } /** @@ -643,24 +678,45 @@ export namespace CloneReceiptRuleSetResponse { * of Amazon SES limits, see the Amazon SES Developer * Guide.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

Indicates that the provided receipt rule set does not exist.

*/ -export interface RuleSetDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "RuleSetDoesNotExistException"; - $fault: "client"; +export class RuleSetDoesNotExistException extends __BaseException { + readonly name: "RuleSetDoesNotExistException" = "RuleSetDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Indicates that the named receipt rule set does not exist.

*/ Name?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RuleSetDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RuleSetDoesNotExistException.prototype); + this.Name = opts.Name; + } } export enum DimensionValueSource { @@ -785,15 +841,26 @@ export namespace ConfigurationSet { *

Indicates that the configuration set could not be created because of a naming * conflict.

*/ -export interface ConfigurationSetAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ConfigurationSetAlreadyExistsException"; - $fault: "client"; +export class ConfigurationSetAlreadyExistsException extends __BaseException { + readonly name: "ConfigurationSetAlreadyExistsException" = "ConfigurationSetAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ ConfigurationSetName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConfigurationSetAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConfigurationSetAlreadyExistsException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + } } export enum ConfigurationSetAttribute { @@ -806,30 +873,52 @@ export enum ConfigurationSetAttribute { /** *

Indicates that the configuration set does not exist.

*/ -export interface ConfigurationSetDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "ConfigurationSetDoesNotExistException"; - $fault: "client"; +export class ConfigurationSetDoesNotExistException extends __BaseException { + readonly name: "ConfigurationSetDoesNotExistException" = "ConfigurationSetDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ ConfigurationSetName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConfigurationSetDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConfigurationSetDoesNotExistException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + } } /** *

Indicates that email sending is disabled for the configuration set.

*

You can enable or disable email sending for a configuration set using UpdateConfigurationSetSendingEnabled.

*/ -export interface ConfigurationSetSendingPausedException extends __SmithyException, $MetadataBearer { - name: "ConfigurationSetSendingPausedException"; - $fault: "client"; +export class ConfigurationSetSendingPausedException extends __BaseException { + readonly name: "ConfigurationSetSendingPausedException" = "ConfigurationSetSendingPausedException"; + readonly $fault: "client" = "client"; /** *

The name of the configuration set for which email sending is disabled.

*/ ConfigurationSetName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConfigurationSetSendingPausedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConfigurationSetSendingPausedException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + } } /** @@ -872,10 +961,20 @@ export namespace CreateConfigurationSetResponse { *

Indicates that the configuration set is invalid. See the error message for * details.

*/ -export interface InvalidConfigurationSetException extends __SmithyException, $MetadataBearer { - name: "InvalidConfigurationSetException"; - $fault: "client"; - message?: string; +export class InvalidConfigurationSetException extends __BaseException { + readonly name: "InvalidConfigurationSetException" = "InvalidConfigurationSetException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConfigurationSetException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConfigurationSetException.prototype); + } } /** @@ -1060,9 +1159,9 @@ export namespace CreateConfigurationSetEventDestinationResponse { *

Indicates that the event destination could not be created because of a naming * conflict.

*/ -export interface EventDestinationAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EventDestinationAlreadyExistsException"; - $fault: "client"; +export class EventDestinationAlreadyExistsException extends __BaseException { + readonly name: "EventDestinationAlreadyExistsException" = "EventDestinationAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ @@ -1073,16 +1172,28 @@ export interface EventDestinationAlreadyExistsException extends __SmithyExceptio */ EventDestinationName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDestinationAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDestinationAlreadyExistsException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + this.EventDestinationName = opts.EventDestinationName; + } } /** *

Indicates that the Amazon CloudWatch destination is invalid. See the error message for * details.

*/ -export interface InvalidCloudWatchDestinationException extends __SmithyException, $MetadataBearer { - name: "InvalidCloudWatchDestinationException"; - $fault: "client"; +export class InvalidCloudWatchDestinationException extends __BaseException { + readonly name: "InvalidCloudWatchDestinationException" = "InvalidCloudWatchDestinationException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ @@ -1093,16 +1204,28 @@ export interface InvalidCloudWatchDestinationException extends __SmithyException */ EventDestinationName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCloudWatchDestinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCloudWatchDestinationException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + this.EventDestinationName = opts.EventDestinationName; + } } /** *

Indicates that the Amazon Kinesis Firehose destination is invalid. See the error * message for details.

*/ -export interface InvalidFirehoseDestinationException extends __SmithyException, $MetadataBearer { - name: "InvalidFirehoseDestinationException"; - $fault: "client"; +export class InvalidFirehoseDestinationException extends __BaseException { + readonly name: "InvalidFirehoseDestinationException" = "InvalidFirehoseDestinationException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ @@ -1113,16 +1236,28 @@ export interface InvalidFirehoseDestinationException extends __SmithyException, */ EventDestinationName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFirehoseDestinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFirehoseDestinationException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + this.EventDestinationName = opts.EventDestinationName; + } } /** *

Indicates that the Amazon Simple Notification Service (Amazon SNS) destination is * invalid. See the error message for details.

*/ -export interface InvalidSNSDestinationException extends __SmithyException, $MetadataBearer { - name: "InvalidSNSDestinationException"; - $fault: "client"; +export class InvalidSNSDestinationException extends __BaseException { + readonly name: "InvalidSNSDestinationException" = "InvalidSNSDestinationException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ @@ -1133,7 +1268,19 @@ export interface InvalidSNSDestinationException extends __SmithyException, $Meta */ EventDestinationName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSNSDestinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSNSDestinationException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + this.EventDestinationName = opts.EventDestinationName; + } } /** @@ -1217,26 +1364,47 @@ export namespace CreateConfigurationSetTrackingOptionsResponse { * * */ -export interface InvalidTrackingOptionsException extends __SmithyException, $MetadataBearer { - name: "InvalidTrackingOptionsException"; - $fault: "client"; - message?: string; +export class InvalidTrackingOptionsException extends __BaseException { + readonly name: "InvalidTrackingOptionsException" = "InvalidTrackingOptionsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTrackingOptionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTrackingOptionsException.prototype); + } } /** *

Indicates that the configuration set you specified already contains a TrackingOptions * object.

*/ -export interface TrackingOptionsAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "TrackingOptionsAlreadyExistsException"; - $fault: "client"; +export class TrackingOptionsAlreadyExistsException extends __BaseException { + readonly name: "TrackingOptionsAlreadyExistsException" = "TrackingOptionsAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Indicates that a TrackingOptions object already exists in the specified configuration * set.

*/ ConfigurationSetName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrackingOptionsAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrackingOptionsAlreadyExistsException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + } } /** @@ -1291,42 +1459,75 @@ export namespace CreateCustomVerificationEmailTemplateRequest { /** *

Indicates that custom verification email template provided content is invalid.

*/ -export interface CustomVerificationEmailInvalidContentException extends __SmithyException, $MetadataBearer { - name: "CustomVerificationEmailInvalidContentException"; - $fault: "client"; - message?: string; +export class CustomVerificationEmailInvalidContentException extends __BaseException { + readonly name: "CustomVerificationEmailInvalidContentException" = "CustomVerificationEmailInvalidContentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomVerificationEmailInvalidContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomVerificationEmailInvalidContentException.prototype); + } } /** *

Indicates that a custom verification email template with the name you specified * already exists.

*/ -export interface CustomVerificationEmailTemplateAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "CustomVerificationEmailTemplateAlreadyExistsException"; - $fault: "client"; +export class CustomVerificationEmailTemplateAlreadyExistsException extends __BaseException { + readonly name: "CustomVerificationEmailTemplateAlreadyExistsException" = + "CustomVerificationEmailTemplateAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

Indicates that the provided custom verification email template with the specified * template name already exists.

*/ CustomVerificationEmailTemplateName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomVerificationEmailTemplateAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomVerificationEmailTemplateAlreadyExistsException.prototype); + this.CustomVerificationEmailTemplateName = opts.CustomVerificationEmailTemplateName; + } } /** *

Indicates that the sender address specified for a custom verification email is not * verified, and is therefore not eligible to send the custom verification email.

*/ -export interface FromEmailAddressNotVerifiedException extends __SmithyException, $MetadataBearer { - name: "FromEmailAddressNotVerifiedException"; - $fault: "client"; +export class FromEmailAddressNotVerifiedException extends __BaseException { + readonly name: "FromEmailAddressNotVerifiedException" = "FromEmailAddressNotVerifiedException"; + readonly $fault: "client" = "client"; /** *

Indicates that the from email address associated with the custom verification email * template is not verified.

*/ FromEmailAddress?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FromEmailAddressNotVerifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FromEmailAddressNotVerifiedException.prototype); + this.FromEmailAddress = opts.FromEmailAddress; + } } export enum ReceiptFilterPolicy { @@ -1876,15 +2077,26 @@ export namespace CreateReceiptRuleResponse { * about giving permissions, see the Amazon SES * Developer Guide.

*/ -export interface InvalidLambdaFunctionException extends __SmithyException, $MetadataBearer { - name: "InvalidLambdaFunctionException"; - $fault: "client"; +export class InvalidLambdaFunctionException extends __BaseException { + readonly name: "InvalidLambdaFunctionException" = "InvalidLambdaFunctionException"; + readonly $fault: "client" = "client"; /** *

Indicates that the ARN of the function was not found.

*/ FunctionArn?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLambdaFunctionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLambdaFunctionException.prototype); + this.FunctionArn = opts.FunctionArn; + } } /** @@ -1893,15 +2105,26 @@ export interface InvalidLambdaFunctionException extends __SmithyException, $Meta * information about giving permissions, see the Amazon SES * Developer Guide.

*/ -export interface InvalidS3ConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidS3ConfigurationException"; - $fault: "client"; +export class InvalidS3ConfigurationException extends __BaseException { + readonly name: "InvalidS3ConfigurationException" = "InvalidS3ConfigurationException"; + readonly $fault: "client" = "client"; /** *

Indicated that the S3 Bucket was not found.

*/ Bucket?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3ConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3ConfigurationException.prototype); + this.Bucket = opts.Bucket; + } } /** @@ -1910,29 +2133,51 @@ export interface InvalidS3ConfigurationException extends __SmithyException, $Met * permissions, see the Amazon SES * Developer Guide.

*/ -export interface InvalidSnsTopicException extends __SmithyException, $MetadataBearer { - name: "InvalidSnsTopicException"; - $fault: "client"; +export class InvalidSnsTopicException extends __BaseException { + readonly name: "InvalidSnsTopicException" = "InvalidSnsTopicException"; + readonly $fault: "client" = "client"; /** *

Indicates that the topic does not exist.

*/ Topic?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSnsTopicException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSnsTopicException.prototype); + this.Topic = opts.Topic; + } } /** *

Indicates that the provided receipt rule does not exist.

*/ -export interface RuleDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "RuleDoesNotExistException"; - $fault: "client"; +export class RuleDoesNotExistException extends __BaseException { + readonly name: "RuleDoesNotExistException" = "RuleDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Indicates that the named receipt rule does not exist.

*/ Name?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RuleDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RuleDoesNotExistException.prototype); + this.Name = opts.Name; + } } /** @@ -2056,11 +2301,22 @@ export namespace CreateTemplateResponse { *

Indicates that the template that you specified could not be rendered. This issue may * occur when a template refers to a partial that does not exist.

*/ -export interface InvalidTemplateException extends __SmithyException, $MetadataBearer { - name: "InvalidTemplateException"; - $fault: "client"; +export class InvalidTemplateException extends __BaseException { + readonly name: "InvalidTemplateException" = "InvalidTemplateException"; + readonly $fault: "client" = "client"; TemplateName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTemplateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTemplateException.prototype); + this.TemplateName = opts.TemplateName; + } } export enum CustomMailFromStatus { @@ -2115,15 +2371,27 @@ export namespace CustomVerificationEmailTemplate { *

Indicates that a custom verification email template with the name you specified does * not exist.

*/ -export interface CustomVerificationEmailTemplateDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "CustomVerificationEmailTemplateDoesNotExistException"; - $fault: "client"; +export class CustomVerificationEmailTemplateDoesNotExistException extends __BaseException { + readonly name: "CustomVerificationEmailTemplateDoesNotExistException" = + "CustomVerificationEmailTemplateDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Indicates that the provided custom verification email template does not exist.

*/ CustomVerificationEmailTemplateName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomVerificationEmailTemplateDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomVerificationEmailTemplateDoesNotExistException.prototype); + this.CustomVerificationEmailTemplateName = opts.CustomVerificationEmailTemplateName; + } } /** @@ -2207,9 +2475,9 @@ export namespace DeleteConfigurationSetEventDestinationResponse { /** *

Indicates that the event destination does not exist.

*/ -export interface EventDestinationDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "EventDestinationDoesNotExistException"; - $fault: "client"; +export class EventDestinationDoesNotExistException extends __BaseException { + readonly name: "EventDestinationDoesNotExistException" = "EventDestinationDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Indicates that the configuration set does not exist.

*/ @@ -2220,7 +2488,19 @@ export interface EventDestinationDoesNotExistException extends __SmithyException */ EventDestinationName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EventDestinationDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EventDestinationDoesNotExistException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + this.EventDestinationName = opts.EventDestinationName; + } } /** @@ -2261,16 +2541,27 @@ export namespace DeleteConfigurationSetTrackingOptionsResponse { /** *

Indicates that the TrackingOptions object you specified does not exist.

*/ -export interface TrackingOptionsDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "TrackingOptionsDoesNotExistException"; - $fault: "client"; +export class TrackingOptionsDoesNotExistException extends __BaseException { + readonly name: "TrackingOptionsDoesNotExistException" = "TrackingOptionsDoesNotExistException"; + readonly $fault: "client" = "client"; /** *

Indicates that a TrackingOptions object does not exist in the specified configuration * set.

*/ ConfigurationSetName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TrackingOptionsDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TrackingOptionsDoesNotExistException.prototype); + this.ConfigurationSetName = opts.ConfigurationSetName; + } } /** @@ -3461,11 +3752,22 @@ export namespace GetTemplateResponse { *

Indicates that the Template object you specified does not exist in your Amazon SES * account.

*/ -export interface TemplateDoesNotExistException extends __SmithyException, $MetadataBearer { - name: "TemplateDoesNotExistException"; - $fault: "client"; +export class TemplateDoesNotExistException extends __BaseException { + readonly name: "TemplateDoesNotExistException" = "TemplateDoesNotExistException"; + readonly $fault: "client" = "client"; TemplateName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TemplateDoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TemplateDoesNotExistException.prototype); + this.TemplateName = opts.TemplateName; + } } export type IdentityType = "Domain" | "EmailAddress"; @@ -3473,31 +3775,62 @@ export type IdentityType = "Domain" | "EmailAddress"; /** *

Indicates that provided delivery option is invalid.

*/ -export interface InvalidDeliveryOptionsException extends __SmithyException, $MetadataBearer { - name: "InvalidDeliveryOptionsException"; - $fault: "client"; - message?: string; +export class InvalidDeliveryOptionsException extends __BaseException { + readonly name: "InvalidDeliveryOptionsException" = "InvalidDeliveryOptionsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeliveryOptionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeliveryOptionsException.prototype); + } } /** *

Indicates that the provided policy is invalid. Check the error stack for more * information about what caused the error.

*/ -export interface InvalidPolicyException extends __SmithyException, $MetadataBearer { - name: "InvalidPolicyException"; - $fault: "client"; - message?: string; +export class InvalidPolicyException extends __BaseException { + readonly name: "InvalidPolicyException" = "InvalidPolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPolicyException.prototype); + } } /** *

Indicates that one or more of the replacement values you provided is invalid. This * error may occur when the TemplateData object contains invalid JSON.

*/ -export interface InvalidRenderingParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidRenderingParameterException"; - $fault: "client"; +export class InvalidRenderingParameterException extends __BaseException { + readonly name: "InvalidRenderingParameterException" = "InvalidRenderingParameterException"; + readonly $fault: "client" = "client"; TemplateName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRenderingParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRenderingParameterException.prototype); + this.TemplateName = opts.TemplateName; + } } /** @@ -3903,10 +4236,20 @@ export namespace ListVerifiedEmailAddressesResponse { * custom MAIL FROM domain settings for an identity, see the Amazon SES Developer * Guide.

*/ -export interface MailFromDomainNotVerifiedException extends __SmithyException, $MetadataBearer { - name: "MailFromDomainNotVerifiedException"; - $fault: "client"; - message?: string; +export class MailFromDomainNotVerifiedException extends __BaseException { + readonly name: "MailFromDomainNotVerifiedException" = "MailFromDomainNotVerifiedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MailFromDomainNotVerifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MailFromDomainNotVerifiedException.prototype); + } } /** @@ -3973,10 +4316,20 @@ export namespace MessageDsn { *

Indicates that the action failed, and the message could not be sent. Check the error * stack for more information about what caused the error.

*/ -export interface MessageRejected extends __SmithyException, $MetadataBearer { - name: "MessageRejected"; - $fault: "client"; - message?: string; +export class MessageRejected extends __BaseException { + readonly name: "MessageRejected" = "MessageRejected"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MessageRejected", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MessageRejected.prototype); + } } /** @@ -3984,11 +4337,22 @@ export interface MessageRejected extends __SmithyException, $MetadataBearer { * not specified. Ensure that the TemplateData object contains references to all of the * replacement tags in the specified template.

*/ -export interface MissingRenderingAttributeException extends __SmithyException, $MetadataBearer { - name: "MissingRenderingAttributeException"; - $fault: "client"; +export class MissingRenderingAttributeException extends __BaseException { + readonly name: "MissingRenderingAttributeException" = "MissingRenderingAttributeException"; + readonly $fault: "client" = "client"; TemplateName?: string; - message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingRenderingAttributeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingRenderingAttributeException.prototype); + this.TemplateName = opts.TemplateName; + } } export type NotificationType = "Bounce" | "Complaint" | "Delivery"; @@ -3996,10 +4360,20 @@ export type NotificationType = "Bounce" | "Complaint" | "Delivery"; /** *

Indicates that the account has not been granted production access.

*/ -export interface ProductionAccessNotGrantedException extends __SmithyException, $MetadataBearer { - name: "ProductionAccessNotGrantedException"; - $fault: "client"; - message?: string; +export class ProductionAccessNotGrantedException extends __BaseException { + readonly name: "ProductionAccessNotGrantedException" = "ProductionAccessNotGrantedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProductionAccessNotGrantedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProductionAccessNotGrantedException.prototype); + } } /** diff --git a/clients/client-ses/src/protocols/Aws_query.ts b/clients/client-ses/src/protocols/Aws_query.ts index e6b65165bd310..49d92886990d5 100644 --- a/clients/client-ses/src/protocols/Aws_query.ts +++ b/clients/client-ses/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -451,6 +450,7 @@ import { VerifyEmailIdentityResponse, WorkmailAction, } from "../models/models_0"; +import { SESServiceException as __BaseException } from "../models/SESServiceException"; export const serializeAws_queryCloneReceiptRuleSetCommand = async ( input: CloneReceiptRuleSetCommandInput, @@ -1605,49 +1605,28 @@ const deserializeAws_queryCloneReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.ses#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateConfigurationSetCommand = async ( @@ -1675,49 +1654,28 @@ const deserializeAws_queryCreateConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetAlreadyExistsException": case "com.amazonaws.ses#ConfigurationSetAlreadyExistsException": - response = { - ...(await deserializeAws_queryConfigurationSetAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidConfigurationSetException": case "com.amazonaws.ses#InvalidConfigurationSetException": - response = { - ...(await deserializeAws_queryInvalidConfigurationSetExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidConfigurationSetExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateConfigurationSetEventDestinationCommand = async ( @@ -1748,73 +1706,37 @@ const deserializeAws_queryCreateConfigurationSetEventDestinationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "EventDestinationAlreadyExistsException": case "com.amazonaws.ses#EventDestinationAlreadyExistsException": - response = { - ...(await deserializeAws_queryEventDestinationAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventDestinationAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidCloudWatchDestinationException": case "com.amazonaws.ses#InvalidCloudWatchDestinationException": - response = { - ...(await deserializeAws_queryInvalidCloudWatchDestinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCloudWatchDestinationExceptionResponse(parsedOutput, context); case "InvalidFirehoseDestinationException": case "com.amazonaws.ses#InvalidFirehoseDestinationException": - response = { - ...(await deserializeAws_queryInvalidFirehoseDestinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidFirehoseDestinationExceptionResponse(parsedOutput, context); case "InvalidSNSDestinationException": case "com.amazonaws.ses#InvalidSNSDestinationException": - response = { - ...(await deserializeAws_queryInvalidSNSDestinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSNSDestinationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateConfigurationSetTrackingOptionsCommand = async ( @@ -1845,49 +1767,28 @@ const deserializeAws_queryCreateConfigurationSetTrackingOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidTrackingOptionsException": case "com.amazonaws.ses#InvalidTrackingOptionsException": - response = { - ...(await deserializeAws_queryInvalidTrackingOptionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTrackingOptionsExceptionResponse(parsedOutput, context); case "TrackingOptionsAlreadyExistsException": case "com.amazonaws.ses#TrackingOptionsAlreadyExistsException": - response = { - ...(await deserializeAws_queryTrackingOptionsAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTrackingOptionsAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateCustomVerificationEmailTemplateCommand = async ( @@ -1912,60 +1813,34 @@ const deserializeAws_queryCreateCustomVerificationEmailTemplateCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomVerificationEmailInvalidContentException": case "com.amazonaws.ses#CustomVerificationEmailInvalidContentException": - response = { - ...(await deserializeAws_queryCustomVerificationEmailInvalidContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomVerificationEmailInvalidContentExceptionResponse(parsedOutput, context); case "CustomVerificationEmailTemplateAlreadyExistsException": case "com.amazonaws.ses#CustomVerificationEmailTemplateAlreadyExistsException": - response = { - ...(await deserializeAws_queryCustomVerificationEmailTemplateAlreadyExistsExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomVerificationEmailTemplateAlreadyExistsExceptionResponse( + parsedOutput, + context + ); case "FromEmailAddressNotVerifiedException": case "com.amazonaws.ses#FromEmailAddressNotVerifiedException": - response = { - ...(await deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateReceiptFilterCommand = async ( @@ -1993,41 +1868,25 @@ const deserializeAws_queryCreateReceiptFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.ses#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateReceiptRuleCommand = async ( @@ -2055,81 +1914,40 @@ const deserializeAws_queryCreateReceiptRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.ses#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidLambdaFunctionException": case "com.amazonaws.ses#InvalidLambdaFunctionException": - response = { - ...(await deserializeAws_queryInvalidLambdaFunctionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidLambdaFunctionExceptionResponse(parsedOutput, context); case "InvalidS3ConfigurationException": case "com.amazonaws.ses#InvalidS3ConfigurationException": - response = { - ...(await deserializeAws_queryInvalidS3ConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3ConfigurationExceptionResponse(parsedOutput, context); case "InvalidSnsTopicException": case "com.amazonaws.ses#InvalidSnsTopicException": - response = { - ...(await deserializeAws_queryInvalidSnsTopicExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSnsTopicExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "RuleDoesNotExistException": case "com.amazonaws.ses#RuleDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context); case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateReceiptRuleSetCommand = async ( @@ -2157,41 +1975,25 @@ const deserializeAws_queryCreateReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.ses#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateTemplateCommand = async ( @@ -2219,49 +2021,28 @@ const deserializeAws_queryCreateTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.ses#AlreadyExistsException": - response = { - ...(await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAlreadyExistsExceptionResponse(parsedOutput, context); case "InvalidTemplateException": case "com.amazonaws.ses#InvalidTemplateException": - response = { - ...(await deserializeAws_queryInvalidTemplateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTemplateExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteConfigurationSetCommand = async ( @@ -2289,33 +2070,22 @@ const deserializeAws_queryDeleteConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteConfigurationSetEventDestinationCommand = async ( @@ -2346,41 +2116,25 @@ const deserializeAws_queryDeleteConfigurationSetEventDestinationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "EventDestinationDoesNotExistException": case "com.amazonaws.ses#EventDestinationDoesNotExistException": - response = { - ...(await deserializeAws_queryEventDestinationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventDestinationDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteConfigurationSetTrackingOptionsCommand = async ( @@ -2411,41 +2165,25 @@ const deserializeAws_queryDeleteConfigurationSetTrackingOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "TrackingOptionsDoesNotExistException": case "com.amazonaws.ses#TrackingOptionsDoesNotExistException": - response = { - ...(await deserializeAws_queryTrackingOptionsDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTrackingOptionsDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteCustomVerificationEmailTemplateCommand = async ( @@ -2470,25 +2208,19 @@ const deserializeAws_queryDeleteCustomVerificationEmailTemplateCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteIdentityCommand = async ( @@ -2516,25 +2248,19 @@ const deserializeAws_queryDeleteIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteIdentityPolicyCommand = async ( @@ -2562,25 +2288,19 @@ const deserializeAws_queryDeleteIdentityPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteReceiptFilterCommand = async ( @@ -2608,25 +2328,19 @@ const deserializeAws_queryDeleteReceiptFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteReceiptRuleCommand = async ( @@ -2654,33 +2368,22 @@ const deserializeAws_queryDeleteReceiptRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteReceiptRuleSetCommand = async ( @@ -2708,33 +2411,22 @@ const deserializeAws_queryDeleteReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CannotDeleteException": case "com.amazonaws.ses#CannotDeleteException": - response = { - ...(await deserializeAws_queryCannotDeleteExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCannotDeleteExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteTemplateCommand = async ( @@ -2762,25 +2454,19 @@ const deserializeAws_queryDeleteTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteVerifiedEmailAddressCommand = async ( @@ -2805,25 +2491,19 @@ const deserializeAws_queryDeleteVerifiedEmailAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeActiveReceiptRuleSetCommand = async ( @@ -2851,25 +2531,19 @@ const deserializeAws_queryDescribeActiveReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeConfigurationSetCommand = async ( @@ -2897,33 +2571,22 @@ const deserializeAws_queryDescribeConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReceiptRuleCommand = async ( @@ -2951,41 +2614,25 @@ const deserializeAws_queryDescribeReceiptRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RuleDoesNotExistException": case "com.amazonaws.ses#RuleDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context); case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDescribeReceiptRuleSetCommand = async ( @@ -3013,33 +2660,22 @@ const deserializeAws_queryDescribeReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetAccountSendingEnabledCommand = async ( @@ -3067,25 +2703,19 @@ const deserializeAws_queryGetAccountSendingEnabledCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetCustomVerificationEmailTemplateCommand = async ( @@ -3116,36 +2746,25 @@ const deserializeAws_queryGetCustomVerificationEmailTemplateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomVerificationEmailTemplateDoesNotExistException": case "com.amazonaws.ses#CustomVerificationEmailTemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse( + parsedOutput, + context + ); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetIdentityDkimAttributesCommand = async ( @@ -3173,25 +2792,19 @@ const deserializeAws_queryGetIdentityDkimAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetIdentityMailFromDomainAttributesCommand = async ( @@ -3222,25 +2835,19 @@ const deserializeAws_queryGetIdentityMailFromDomainAttributesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetIdentityNotificationAttributesCommand = async ( @@ -3271,25 +2878,19 @@ const deserializeAws_queryGetIdentityNotificationAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetIdentityPoliciesCommand = async ( @@ -3317,25 +2918,19 @@ const deserializeAws_queryGetIdentityPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetIdentityVerificationAttributesCommand = async ( @@ -3366,25 +2961,19 @@ const deserializeAws_queryGetIdentityVerificationAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSendQuotaCommand = async ( @@ -3412,25 +3001,19 @@ const deserializeAws_queryGetSendQuotaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSendStatisticsCommand = async ( @@ -3458,25 +3041,19 @@ const deserializeAws_queryGetSendStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetTemplateCommand = async ( @@ -3504,33 +3081,22 @@ const deserializeAws_queryGetTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "TemplateDoesNotExistException": case "com.amazonaws.ses#TemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListConfigurationSetsCommand = async ( @@ -3558,25 +3124,19 @@ const deserializeAws_queryListConfigurationSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListCustomVerificationEmailTemplatesCommand = async ( @@ -3607,25 +3167,19 @@ const deserializeAws_queryListCustomVerificationEmailTemplatesCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListIdentitiesCommand = async ( @@ -3653,25 +3207,19 @@ const deserializeAws_queryListIdentitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListIdentityPoliciesCommand = async ( @@ -3699,25 +3247,19 @@ const deserializeAws_queryListIdentityPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListReceiptFiltersCommand = async ( @@ -3745,25 +3287,19 @@ const deserializeAws_queryListReceiptFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListReceiptRuleSetsCommand = async ( @@ -3791,25 +3327,19 @@ const deserializeAws_queryListReceiptRuleSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTemplatesCommand = async ( @@ -3837,25 +3367,19 @@ const deserializeAws_queryListTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListVerifiedEmailAddressesCommand = async ( @@ -3883,25 +3407,19 @@ const deserializeAws_queryListVerifiedEmailAddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutConfigurationSetDeliveryOptionsCommand = async ( @@ -3932,41 +3450,25 @@ const deserializeAws_queryPutConfigurationSetDeliveryOptionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidDeliveryOptionsException": case "com.amazonaws.ses#InvalidDeliveryOptionsException": - response = { - ...(await deserializeAws_queryInvalidDeliveryOptionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidDeliveryOptionsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPutIdentityPolicyCommand = async ( @@ -3994,33 +3496,22 @@ const deserializeAws_queryPutIdentityPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidPolicyException": case "com.amazonaws.ses#InvalidPolicyException": - response = { - ...(await deserializeAws_queryInvalidPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidPolicyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryReorderReceiptRuleSetCommand = async ( @@ -4048,41 +3539,25 @@ const deserializeAws_queryReorderReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RuleDoesNotExistException": case "com.amazonaws.ses#RuleDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context); case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendBounceCommand = async ( @@ -4110,33 +3585,22 @@ const deserializeAws_querySendBounceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "MessageRejected": case "com.amazonaws.ses#MessageRejected": - response = { - ...(await deserializeAws_queryMessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageRejectedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendBulkTemplatedEmailCommand = async ( @@ -4164,73 +3628,37 @@ const deserializeAws_querySendBulkTemplatedEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSendingPausedException": case "com.amazonaws.ses#AccountSendingPausedException": - response = { - ...(await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context); case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "ConfigurationSetSendingPausedException": case "com.amazonaws.ses#ConfigurationSetSendingPausedException": - response = { - ...(await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.ses#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.ses#MessageRejected": - response = { - ...(await deserializeAws_queryMessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageRejectedResponse(parsedOutput, context); case "TemplateDoesNotExistException": case "com.amazonaws.ses#TemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendCustomVerificationEmailCommand = async ( @@ -4258,68 +3686,37 @@ const deserializeAws_querySendCustomVerificationEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "CustomVerificationEmailTemplateDoesNotExistException": case "com.amazonaws.ses#CustomVerificationEmailTemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse( + parsedOutput, + context + ); case "FromEmailAddressNotVerifiedException": case "com.amazonaws.ses#FromEmailAddressNotVerifiedException": - response = { - ...(await deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.ses#MessageRejected": - response = { - ...(await deserializeAws_queryMessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageRejectedResponse(parsedOutput, context); case "ProductionAccessNotGrantedException": case "com.amazonaws.ses#ProductionAccessNotGrantedException": - response = { - ...(await deserializeAws_queryProductionAccessNotGrantedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryProductionAccessNotGrantedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendEmailCommand = async ( @@ -4347,65 +3744,34 @@ const deserializeAws_querySendEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSendingPausedException": case "com.amazonaws.ses#AccountSendingPausedException": - response = { - ...(await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context); case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "ConfigurationSetSendingPausedException": case "com.amazonaws.ses#ConfigurationSetSendingPausedException": - response = { - ...(await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.ses#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.ses#MessageRejected": - response = { - ...(await deserializeAws_queryMessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageRejectedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendRawEmailCommand = async ( @@ -4433,65 +3799,34 @@ const deserializeAws_querySendRawEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSendingPausedException": case "com.amazonaws.ses#AccountSendingPausedException": - response = { - ...(await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context); case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "ConfigurationSetSendingPausedException": case "com.amazonaws.ses#ConfigurationSetSendingPausedException": - response = { - ...(await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.ses#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.ses#MessageRejected": - response = { - ...(await deserializeAws_queryMessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageRejectedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendTemplatedEmailCommand = async ( @@ -4519,73 +3854,37 @@ const deserializeAws_querySendTemplatedEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSendingPausedException": case "com.amazonaws.ses#AccountSendingPausedException": - response = { - ...(await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAccountSendingPausedExceptionResponse(parsedOutput, context); case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "ConfigurationSetSendingPausedException": case "com.amazonaws.ses#ConfigurationSetSendingPausedException": - response = { - ...(await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetSendingPausedExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.ses#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.ses#MessageRejected": - response = { - ...(await deserializeAws_queryMessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageRejectedResponse(parsedOutput, context); case "TemplateDoesNotExistException": case "com.amazonaws.ses#TemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetActiveReceiptRuleSetCommand = async ( @@ -4613,33 +3912,22 @@ const deserializeAws_querySetActiveReceiptRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetIdentityDkimEnabledCommand = async ( @@ -4667,25 +3955,19 @@ const deserializeAws_querySetIdentityDkimEnabledCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetIdentityFeedbackForwardingEnabledCommand = async ( @@ -4716,25 +3998,19 @@ const deserializeAws_querySetIdentityFeedbackForwardingEnabledCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetIdentityHeadersInNotificationsEnabledCommand = async ( @@ -4765,25 +4041,19 @@ const deserializeAws_querySetIdentityHeadersInNotificationsEnabledCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetIdentityMailFromDomainCommand = async ( @@ -4811,25 +4081,19 @@ const deserializeAws_querySetIdentityMailFromDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetIdentityNotificationTopicCommand = async ( @@ -4857,25 +4121,19 @@ const deserializeAws_querySetIdentityNotificationTopicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetReceiptRulePositionCommand = async ( @@ -4903,41 +4161,25 @@ const deserializeAws_querySetReceiptRulePositionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RuleDoesNotExistException": case "com.amazonaws.ses#RuleDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context); case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTestRenderTemplateCommand = async ( @@ -4965,49 +4207,28 @@ const deserializeAws_queryTestRenderTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRenderingParameterException": case "com.amazonaws.ses#InvalidRenderingParameterException": - response = { - ...(await deserializeAws_queryInvalidRenderingParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidRenderingParameterExceptionResponse(parsedOutput, context); case "MissingRenderingAttributeException": case "com.amazonaws.ses#MissingRenderingAttributeException": - response = { - ...(await deserializeAws_queryMissingRenderingAttributeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMissingRenderingAttributeExceptionResponse(parsedOutput, context); case "TemplateDoesNotExistException": case "com.amazonaws.ses#TemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateAccountSendingEnabledCommand = async ( @@ -5032,25 +4253,19 @@ const deserializeAws_queryUpdateAccountSendingEnabledCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateConfigurationSetEventDestinationCommand = async ( @@ -5081,65 +4296,34 @@ const deserializeAws_queryUpdateConfigurationSetEventDestinationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "EventDestinationDoesNotExistException": case "com.amazonaws.ses#EventDestinationDoesNotExistException": - response = { - ...(await deserializeAws_queryEventDestinationDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEventDestinationDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidCloudWatchDestinationException": case "com.amazonaws.ses#InvalidCloudWatchDestinationException": - response = { - ...(await deserializeAws_queryInvalidCloudWatchDestinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidCloudWatchDestinationExceptionResponse(parsedOutput, context); case "InvalidFirehoseDestinationException": case "com.amazonaws.ses#InvalidFirehoseDestinationException": - response = { - ...(await deserializeAws_queryInvalidFirehoseDestinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidFirehoseDestinationExceptionResponse(parsedOutput, context); case "InvalidSNSDestinationException": case "com.amazonaws.ses#InvalidSNSDestinationException": - response = { - ...(await deserializeAws_queryInvalidSNSDestinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSNSDestinationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateConfigurationSetReputationMetricsEnabledCommand = async ( @@ -5164,33 +4348,22 @@ const deserializeAws_queryUpdateConfigurationSetReputationMetricsEnabledCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateConfigurationSetSendingEnabledCommand = async ( @@ -5215,33 +4388,22 @@ const deserializeAws_queryUpdateConfigurationSetSendingEnabledCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateConfigurationSetTrackingOptionsCommand = async ( @@ -5272,49 +4434,28 @@ const deserializeAws_queryUpdateConfigurationSetTrackingOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConfigurationSetDoesNotExistException": case "com.amazonaws.ses#ConfigurationSetDoesNotExistException": - response = { - ...(await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse(parsedOutput, context); case "InvalidTrackingOptionsException": case "com.amazonaws.ses#InvalidTrackingOptionsException": - response = { - ...(await deserializeAws_queryInvalidTrackingOptionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTrackingOptionsExceptionResponse(parsedOutput, context); case "TrackingOptionsDoesNotExistException": case "com.amazonaws.ses#TrackingOptionsDoesNotExistException": - response = { - ...(await deserializeAws_queryTrackingOptionsDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTrackingOptionsDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateCustomVerificationEmailTemplateCommand = async ( @@ -5339,52 +4480,31 @@ const deserializeAws_queryUpdateCustomVerificationEmailTemplateCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomVerificationEmailInvalidContentException": case "com.amazonaws.ses#CustomVerificationEmailInvalidContentException": - response = { - ...(await deserializeAws_queryCustomVerificationEmailInvalidContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomVerificationEmailInvalidContentExceptionResponse(parsedOutput, context); case "CustomVerificationEmailTemplateDoesNotExistException": case "com.amazonaws.ses#CustomVerificationEmailTemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse( - parsedOutput, - context - )), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse( + parsedOutput, + context + ); case "FromEmailAddressNotVerifiedException": case "com.amazonaws.ses#FromEmailAddressNotVerifiedException": - response = { - ...(await deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateReceiptRuleCommand = async ( @@ -5412,73 +4532,37 @@ const deserializeAws_queryUpdateReceiptRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidLambdaFunctionException": case "com.amazonaws.ses#InvalidLambdaFunctionException": - response = { - ...(await deserializeAws_queryInvalidLambdaFunctionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidLambdaFunctionExceptionResponse(parsedOutput, context); case "InvalidS3ConfigurationException": case "com.amazonaws.ses#InvalidS3ConfigurationException": - response = { - ...(await deserializeAws_queryInvalidS3ConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidS3ConfigurationExceptionResponse(parsedOutput, context); case "InvalidSnsTopicException": case "com.amazonaws.ses#InvalidSnsTopicException": - response = { - ...(await deserializeAws_queryInvalidSnsTopicExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSnsTopicExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.ses#LimitExceededException": - response = { - ...(await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryLimitExceededExceptionResponse(parsedOutput, context); case "RuleDoesNotExistException": case "com.amazonaws.ses#RuleDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleDoesNotExistExceptionResponse(parsedOutput, context); case "RuleSetDoesNotExistException": case "com.amazonaws.ses#RuleSetDoesNotExistException": - response = { - ...(await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRuleSetDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUpdateTemplateCommand = async ( @@ -5506,41 +4590,25 @@ const deserializeAws_queryUpdateTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidTemplateException": case "com.amazonaws.ses#InvalidTemplateException": - response = { - ...(await deserializeAws_queryInvalidTemplateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidTemplateExceptionResponse(parsedOutput, context); case "TemplateDoesNotExistException": case "com.amazonaws.ses#TemplateDoesNotExistException": - response = { - ...(await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTemplateDoesNotExistExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryVerifyDomainDkimCommand = async ( @@ -5568,25 +4636,19 @@ const deserializeAws_queryVerifyDomainDkimCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryVerifyDomainIdentityCommand = async ( @@ -5614,25 +4676,19 @@ const deserializeAws_queryVerifyDomainIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryVerifyEmailAddressCommand = async ( @@ -5657,25 +4713,19 @@ const deserializeAws_queryVerifyEmailAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryVerifyEmailIdentityCommand = async ( @@ -5703,25 +4753,19 @@ const deserializeAws_queryVerifyEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAccountSendingPausedExceptionResponse = async ( @@ -5730,13 +4774,11 @@ const deserializeAws_queryAccountSendingPausedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAccountSendingPausedException(body.Error, context); - const contents: AccountSendingPausedException = { - name: "AccountSendingPausedException", - $fault: "client", + const exception = new AccountSendingPausedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryAlreadyExistsExceptionResponse = async ( @@ -5745,13 +4787,11 @@ const deserializeAws_queryAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAlreadyExistsException(body.Error, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCannotDeleteExceptionResponse = async ( @@ -5760,13 +4800,11 @@ const deserializeAws_queryCannotDeleteExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCannotDeleteException(body.Error, context); - const contents: CannotDeleteException = { - name: "CannotDeleteException", - $fault: "client", + const exception = new CannotDeleteException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryConfigurationSetAlreadyExistsExceptionResponse = async ( @@ -5775,13 +4813,11 @@ const deserializeAws_queryConfigurationSetAlreadyExistsExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryConfigurationSetAlreadyExistsException(body.Error, context); - const contents: ConfigurationSetAlreadyExistsException = { - name: "ConfigurationSetAlreadyExistsException", - $fault: "client", + const exception = new ConfigurationSetAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse = async ( @@ -5790,13 +4826,11 @@ const deserializeAws_queryConfigurationSetDoesNotExistExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryConfigurationSetDoesNotExistException(body.Error, context); - const contents: ConfigurationSetDoesNotExistException = { - name: "ConfigurationSetDoesNotExistException", - $fault: "client", + const exception = new ConfigurationSetDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryConfigurationSetSendingPausedExceptionResponse = async ( @@ -5805,13 +4839,11 @@ const deserializeAws_queryConfigurationSetSendingPausedExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryConfigurationSetSendingPausedException(body.Error, context); - const contents: ConfigurationSetSendingPausedException = { - name: "ConfigurationSetSendingPausedException", - $fault: "client", + const exception = new ConfigurationSetSendingPausedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomVerificationEmailInvalidContentExceptionResponse = async ( @@ -5820,13 +4852,11 @@ const deserializeAws_queryCustomVerificationEmailInvalidContentExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomVerificationEmailInvalidContentException(body.Error, context); - const contents: CustomVerificationEmailInvalidContentException = { - name: "CustomVerificationEmailInvalidContentException", - $fault: "client", + const exception = new CustomVerificationEmailInvalidContentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomVerificationEmailTemplateAlreadyExistsExceptionResponse = async ( @@ -5838,13 +4868,11 @@ const deserializeAws_queryCustomVerificationEmailTemplateAlreadyExistsExceptionR body.Error, context ); - const contents: CustomVerificationEmailTemplateAlreadyExistsException = { - name: "CustomVerificationEmailTemplateAlreadyExistsException", - $fault: "client", + const exception = new CustomVerificationEmailTemplateAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionResponse = async ( @@ -5856,13 +4884,11 @@ const deserializeAws_queryCustomVerificationEmailTemplateDoesNotExistExceptionRe body.Error, context ); - const contents: CustomVerificationEmailTemplateDoesNotExistException = { - name: "CustomVerificationEmailTemplateDoesNotExistException", - $fault: "client", + const exception = new CustomVerificationEmailTemplateDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEventDestinationAlreadyExistsExceptionResponse = async ( @@ -5871,13 +4897,11 @@ const deserializeAws_queryEventDestinationAlreadyExistsExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEventDestinationAlreadyExistsException(body.Error, context); - const contents: EventDestinationAlreadyExistsException = { - name: "EventDestinationAlreadyExistsException", - $fault: "client", + const exception = new EventDestinationAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEventDestinationDoesNotExistExceptionResponse = async ( @@ -5886,13 +4910,11 @@ const deserializeAws_queryEventDestinationDoesNotExistExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEventDestinationDoesNotExistException(body.Error, context); - const contents: EventDestinationDoesNotExistException = { - name: "EventDestinationDoesNotExistException", - $fault: "client", + const exception = new EventDestinationDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse = async ( @@ -5901,13 +4923,11 @@ const deserializeAws_queryFromEmailAddressNotVerifiedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryFromEmailAddressNotVerifiedException(body.Error, context); - const contents: FromEmailAddressNotVerifiedException = { - name: "FromEmailAddressNotVerifiedException", - $fault: "client", + const exception = new FromEmailAddressNotVerifiedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidCloudWatchDestinationExceptionResponse = async ( @@ -5916,13 +4936,11 @@ const deserializeAws_queryInvalidCloudWatchDestinationExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidCloudWatchDestinationException(body.Error, context); - const contents: InvalidCloudWatchDestinationException = { - name: "InvalidCloudWatchDestinationException", - $fault: "client", + const exception = new InvalidCloudWatchDestinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidConfigurationSetExceptionResponse = async ( @@ -5931,13 +4949,11 @@ const deserializeAws_queryInvalidConfigurationSetExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidConfigurationSetException(body.Error, context); - const contents: InvalidConfigurationSetException = { - name: "InvalidConfigurationSetException", - $fault: "client", + const exception = new InvalidConfigurationSetException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidDeliveryOptionsExceptionResponse = async ( @@ -5946,13 +4962,11 @@ const deserializeAws_queryInvalidDeliveryOptionsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidDeliveryOptionsException(body.Error, context); - const contents: InvalidDeliveryOptionsException = { - name: "InvalidDeliveryOptionsException", - $fault: "client", + const exception = new InvalidDeliveryOptionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidFirehoseDestinationExceptionResponse = async ( @@ -5961,13 +4975,11 @@ const deserializeAws_queryInvalidFirehoseDestinationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidFirehoseDestinationException(body.Error, context); - const contents: InvalidFirehoseDestinationException = { - name: "InvalidFirehoseDestinationException", - $fault: "client", + const exception = new InvalidFirehoseDestinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidLambdaFunctionExceptionResponse = async ( @@ -5976,13 +4988,11 @@ const deserializeAws_queryInvalidLambdaFunctionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidLambdaFunctionException(body.Error, context); - const contents: InvalidLambdaFunctionException = { - name: "InvalidLambdaFunctionException", - $fault: "client", + const exception = new InvalidLambdaFunctionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidPolicyExceptionResponse = async ( @@ -5991,13 +5001,11 @@ const deserializeAws_queryInvalidPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidPolicyException(body.Error, context); - const contents: InvalidPolicyException = { - name: "InvalidPolicyException", - $fault: "client", + const exception = new InvalidPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidRenderingParameterExceptionResponse = async ( @@ -6006,13 +5014,11 @@ const deserializeAws_queryInvalidRenderingParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidRenderingParameterException(body.Error, context); - const contents: InvalidRenderingParameterException = { - name: "InvalidRenderingParameterException", - $fault: "client", + const exception = new InvalidRenderingParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidS3ConfigurationExceptionResponse = async ( @@ -6021,13 +5027,11 @@ const deserializeAws_queryInvalidS3ConfigurationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidS3ConfigurationException(body.Error, context); - const contents: InvalidS3ConfigurationException = { - name: "InvalidS3ConfigurationException", - $fault: "client", + const exception = new InvalidS3ConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSNSDestinationExceptionResponse = async ( @@ -6036,13 +5040,11 @@ const deserializeAws_queryInvalidSNSDestinationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSNSDestinationException(body.Error, context); - const contents: InvalidSNSDestinationException = { - name: "InvalidSNSDestinationException", - $fault: "client", + const exception = new InvalidSNSDestinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSnsTopicExceptionResponse = async ( @@ -6051,13 +5053,11 @@ const deserializeAws_queryInvalidSnsTopicExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSnsTopicException(body.Error, context); - const contents: InvalidSnsTopicException = { - name: "InvalidSnsTopicException", - $fault: "client", + const exception = new InvalidSnsTopicException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidTemplateExceptionResponse = async ( @@ -6066,13 +5066,11 @@ const deserializeAws_queryInvalidTemplateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidTemplateException(body.Error, context); - const contents: InvalidTemplateException = { - name: "InvalidTemplateException", - $fault: "client", + const exception = new InvalidTemplateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidTrackingOptionsExceptionResponse = async ( @@ -6081,13 +5079,11 @@ const deserializeAws_queryInvalidTrackingOptionsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidTrackingOptionsException(body.Error, context); - const contents: InvalidTrackingOptionsException = { - name: "InvalidTrackingOptionsException", - $fault: "client", + const exception = new InvalidTrackingOptionsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryLimitExceededExceptionResponse = async ( @@ -6096,13 +5092,11 @@ const deserializeAws_queryLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryLimitExceededException(body.Error, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse = async ( @@ -6111,13 +5105,11 @@ const deserializeAws_queryMailFromDomainNotVerifiedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMailFromDomainNotVerifiedException(body.Error, context); - const contents: MailFromDomainNotVerifiedException = { - name: "MailFromDomainNotVerifiedException", - $fault: "client", + const exception = new MailFromDomainNotVerifiedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMessageRejectedResponse = async ( @@ -6126,13 +5118,11 @@ const deserializeAws_queryMessageRejectedResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMessageRejected(body.Error, context); - const contents: MessageRejected = { - name: "MessageRejected", - $fault: "client", + const exception = new MessageRejected({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMissingRenderingAttributeExceptionResponse = async ( @@ -6141,13 +5131,11 @@ const deserializeAws_queryMissingRenderingAttributeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMissingRenderingAttributeException(body.Error, context); - const contents: MissingRenderingAttributeException = { - name: "MissingRenderingAttributeException", - $fault: "client", + const exception = new MissingRenderingAttributeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryProductionAccessNotGrantedExceptionResponse = async ( @@ -6156,13 +5144,11 @@ const deserializeAws_queryProductionAccessNotGrantedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryProductionAccessNotGrantedException(body.Error, context); - const contents: ProductionAccessNotGrantedException = { - name: "ProductionAccessNotGrantedException", - $fault: "client", + const exception = new ProductionAccessNotGrantedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryRuleDoesNotExistExceptionResponse = async ( @@ -6171,13 +5157,11 @@ const deserializeAws_queryRuleDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryRuleDoesNotExistException(body.Error, context); - const contents: RuleDoesNotExistException = { - name: "RuleDoesNotExistException", - $fault: "client", + const exception = new RuleDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryRuleSetDoesNotExistExceptionResponse = async ( @@ -6186,13 +5170,11 @@ const deserializeAws_queryRuleSetDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryRuleSetDoesNotExistException(body.Error, context); - const contents: RuleSetDoesNotExistException = { - name: "RuleSetDoesNotExistException", - $fault: "client", + const exception = new RuleSetDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTemplateDoesNotExistExceptionResponse = async ( @@ -6201,13 +5183,11 @@ const deserializeAws_queryTemplateDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTemplateDoesNotExistException(body.Error, context); - const contents: TemplateDoesNotExistException = { - name: "TemplateDoesNotExistException", - $fault: "client", + const exception = new TemplateDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTrackingOptionsAlreadyExistsExceptionResponse = async ( @@ -6216,13 +5196,11 @@ const deserializeAws_queryTrackingOptionsAlreadyExistsExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTrackingOptionsAlreadyExistsException(body.Error, context); - const contents: TrackingOptionsAlreadyExistsException = { - name: "TrackingOptionsAlreadyExistsException", - $fault: "client", + const exception = new TrackingOptionsAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTrackingOptionsDoesNotExistExceptionResponse = async ( @@ -6231,13 +5209,11 @@ const deserializeAws_queryTrackingOptionsDoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTrackingOptionsDoesNotExistException(body.Error, context); - const contents: TrackingOptionsDoesNotExistException = { - name: "TrackingOptionsDoesNotExistException", - $fault: "client", + const exception = new TrackingOptionsDoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAddHeaderAction = (input: AddHeaderAction, context: __SerdeContext): any => { diff --git a/clients/client-sesv2/src/index.ts b/clients/client-sesv2/src/index.ts index e2915f14daf9d..5e51dd6b3d5de 100644 --- a/clients/client-sesv2/src/index.ts +++ b/clients/client-sesv2/src/index.ts @@ -3,3 +3,4 @@ export * from "./SESv2Client"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SESv2ServiceException } from "./models/SESv2ServiceException"; diff --git a/clients/client-sesv2/src/models/SESv2ServiceException.ts b/clients/client-sesv2/src/models/SESv2ServiceException.ts new file mode 100644 index 0000000000000..7ce9c167d95c9 --- /dev/null +++ b/clients/client-sesv2/src/models/SESv2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SESv2 service. + */ +export class SESv2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SESv2ServiceException.prototype); + } +} diff --git a/clients/client-sesv2/src/models/models_0.ts b/clients/client-sesv2/src/models/models_0.ts index b9f758d227b5c..83a8e6e427f64 100644 --- a/clients/client-sesv2/src/models/models_0.ts +++ b/clients/client-sesv2/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SESv2ServiceException as __BaseException } from "./SESv2ServiceException"; export enum ContactLanguage { EN = "EN", @@ -132,28 +134,58 @@ export namespace AccountDetails { *

The message can't be sent because the account's ability to send email has been * permanently restricted.

*/ -export interface AccountSuspendedException extends __SmithyException, $MetadataBearer { - name: "AccountSuspendedException"; - $fault: "client"; - message?: string; +export class AccountSuspendedException extends __BaseException { + readonly name: "AccountSuspendedException" = "AccountSuspendedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccountSuspendedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccountSuspendedException.prototype); + } } /** *

The resource specified in your request already exists.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; - message?: string; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + } } /** *

The input you provided is invalid.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + } } export enum BehaviorOnMxFailure { @@ -667,19 +699,39 @@ export namespace CloudWatchDestination { /** *

The resource is being modified by another operation or thread.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "server"; - message?: string; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + } } /** *

If there is already an ongoing account details update under review.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } export enum SubscriptionStatus { @@ -1098,28 +1150,58 @@ export namespace CreateConfigurationSetResponse { /** *

There are too many instances of the specified resource type.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; - message?: string; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + } } /** *

The resource you attempted to access doesn't exist.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** *

Too many requests have been made to the operation.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - message?: string; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** @@ -1751,29 +1833,59 @@ export namespace CreateDeliverabilityTestReportResponse { /** *

The message can't be sent because the sending domain isn't verified.

*/ -export interface MailFromDomainNotVerifiedException extends __SmithyException, $MetadataBearer { - name: "MailFromDomainNotVerifiedException"; - $fault: "client"; - message?: string; +export class MailFromDomainNotVerifiedException extends __BaseException { + readonly name: "MailFromDomainNotVerifiedException" = "MailFromDomainNotVerifiedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MailFromDomainNotVerifiedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MailFromDomainNotVerifiedException.prototype); + } } /** *

The message can't be sent because it contains invalid content.

*/ -export interface MessageRejected extends __SmithyException, $MetadataBearer { - name: "MessageRejected"; - $fault: "client"; - message?: string; +export class MessageRejected extends __BaseException { + readonly name: "MessageRejected" = "MessageRejected"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MessageRejected", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MessageRejected.prototype); + } } /** *

The message can't be sent because the account's ability to send email is currently * paused.

*/ -export interface SendingPausedException extends __SmithyException, $MetadataBearer { - name: "SendingPausedException"; - $fault: "client"; - message?: string; +export class SendingPausedException extends __BaseException { + readonly name: "SendingPausedException" = "SendingPausedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SendingPausedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SendingPausedException.prototype); + } } export enum DkimSigningKeyLength { @@ -4629,10 +4741,20 @@ export namespace ImportJobSummary { /** *

The specified request includes an invalid or expired token.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; - message?: string; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + } } /** diff --git a/clients/client-sesv2/src/protocols/Aws_restJson1.ts b/clients/client-sesv2/src/protocols/Aws_restJson1.ts index 064f9abb5b83b..d8f7cafb352ba 100644 --- a/clients/client-sesv2/src/protocols/Aws_restJson1.ts +++ b/clients/client-sesv2/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -352,6 +351,7 @@ import { TrackingOptions, VolumeStatistics, } from "../models/models_0"; +import { SESv2ServiceException as __BaseException } from "../models/SESv2ServiceException"; export const serializeAws_restJson1CreateConfigurationSetCommand = async ( input: CreateConfigurationSetCommandInput, @@ -3041,73 +3041,37 @@ const deserializeAws_restJson1CreateConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateConfigurationSetEventDestinationCommand = async ( @@ -3132,65 +3096,34 @@ const deserializeAws_restJson1CreateConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateContactCommand = async ( @@ -3215,57 +3148,31 @@ const deserializeAws_restJson1CreateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateContactListCommand = async ( @@ -3290,57 +3197,31 @@ const deserializeAws_restJson1CreateContactListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCustomVerificationEmailTemplateCommand = async ( @@ -3365,65 +3246,34 @@ const deserializeAws_restJson1CreateCustomVerificationEmailTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDedicatedIpPoolCommand = async ( @@ -3448,65 +3298,34 @@ const deserializeAws_restJson1CreateDedicatedIpPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateDeliverabilityTestReportCommand = async ( @@ -3539,97 +3358,46 @@ const deserializeAws_restJson1CreateDeliverabilityTestReportCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSuspendedException": case "com.amazonaws.sesv2#AccountSuspendedException": - response = { - ...(await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.sesv2#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.sesv2#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "SendingPausedException": case "com.amazonaws.sesv2#SendingPausedException": - response = { - ...(await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEmailIdentityCommand = async ( @@ -3666,73 +3434,37 @@ const deserializeAws_restJson1CreateEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEmailIdentityPolicyCommand = async ( @@ -3757,65 +3489,34 @@ const deserializeAws_restJson1CreateEmailIdentityPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateEmailTemplateCommand = async ( @@ -3840,57 +3541,31 @@ const deserializeAws_restJson1CreateEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateImportJobCommand = async ( @@ -3919,49 +3594,28 @@ const deserializeAws_restJson1CreateImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationSetCommand = async ( @@ -3986,57 +3640,31 @@ const deserializeAws_restJson1DeleteConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteConfigurationSetEventDestinationCommand = async ( @@ -4061,49 +3689,28 @@ const deserializeAws_restJson1DeleteConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteContactCommand = async ( @@ -4128,49 +3735,28 @@ const deserializeAws_restJson1DeleteContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteContactListCommand = async ( @@ -4195,57 +3781,31 @@ const deserializeAws_restJson1DeleteContactListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCustomVerificationEmailTemplateCommand = async ( @@ -4270,49 +3830,28 @@ const deserializeAws_restJson1DeleteCustomVerificationEmailTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDedicatedIpPoolCommand = async ( @@ -4337,57 +3876,31 @@ const deserializeAws_restJson1DeleteDedicatedIpPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEmailIdentityCommand = async ( @@ -4412,57 +3925,31 @@ const deserializeAws_restJson1DeleteEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEmailIdentityPolicyCommand = async ( @@ -4487,49 +3974,28 @@ const deserializeAws_restJson1DeleteEmailIdentityPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteEmailTemplateCommand = async ( @@ -4554,49 +4020,28 @@ const deserializeAws_restJson1DeleteEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSuppressedDestinationCommand = async ( @@ -4621,49 +4066,28 @@ const deserializeAws_restJson1DeleteSuppressedDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAccountCommand = async ( @@ -4716,41 +4140,25 @@ const deserializeAws_restJson1GetAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBlacklistReportsCommand = async ( @@ -4779,49 +4187,28 @@ const deserializeAws_restJson1GetBlacklistReportsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationSetCommand = async ( @@ -4874,49 +4261,28 @@ const deserializeAws_restJson1GetConfigurationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetConfigurationSetEventDestinationsCommand = async ( @@ -4945,49 +4311,28 @@ const deserializeAws_restJson1GetConfigurationSetEventDestinationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContactCommand = async ( @@ -5047,49 +4392,28 @@ const deserializeAws_restJson1GetContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContactListCommand = async ( @@ -5138,49 +4462,28 @@ const deserializeAws_restJson1GetContactListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCustomVerificationEmailTemplateCommand = async ( @@ -5229,49 +4532,28 @@ const deserializeAws_restJson1GetCustomVerificationEmailTemplateCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDedicatedIpCommand = async ( @@ -5300,49 +4582,28 @@ const deserializeAws_restJson1GetDedicatedIpCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDedicatedIpsCommand = async ( @@ -5375,49 +4636,28 @@ const deserializeAws_restJson1GetDedicatedIpsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeliverabilityDashboardOptionsCommand = async ( @@ -5470,49 +4710,28 @@ const deserializeAws_restJson1GetDeliverabilityDashboardOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDeliverabilityTestReportCommand = async ( @@ -5560,49 +4779,28 @@ const deserializeAws_restJson1GetDeliverabilityTestReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainDeliverabilityCampaignCommand = async ( @@ -5634,49 +4832,28 @@ const deserializeAws_restJson1GetDomainDeliverabilityCampaignCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDomainStatisticsReportCommand = async ( @@ -5709,49 +4886,28 @@ const deserializeAws_restJson1GetDomainStatisticsReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEmailIdentityCommand = async ( @@ -5808,49 +4964,28 @@ const deserializeAws_restJson1GetEmailIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEmailIdentityPoliciesCommand = async ( @@ -5879,49 +5014,28 @@ const deserializeAws_restJson1GetEmailIdentityPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEmailTemplateCommand = async ( @@ -5954,49 +5068,28 @@ const deserializeAws_restJson1GetEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetImportJobCommand = async ( @@ -6057,49 +5150,28 @@ const deserializeAws_restJson1GetImportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSuppressedDestinationCommand = async ( @@ -6128,49 +5200,28 @@ const deserializeAws_restJson1GetSuppressedDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListConfigurationSetsCommand = async ( @@ -6203,41 +5254,25 @@ const deserializeAws_restJson1ListConfigurationSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContactListsCommand = async ( @@ -6270,41 +5305,25 @@ const deserializeAws_restJson1ListContactListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContactsCommand = async ( @@ -6337,49 +5356,28 @@ const deserializeAws_restJson1ListContactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListCustomVerificationEmailTemplatesCommand = async ( @@ -6415,41 +5413,25 @@ const deserializeAws_restJson1ListCustomVerificationEmailTemplatesCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDedicatedIpPoolsCommand = async ( @@ -6482,41 +5464,25 @@ const deserializeAws_restJson1ListDedicatedIpPoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeliverabilityTestReportsCommand = async ( @@ -6552,49 +5518,28 @@ const deserializeAws_restJson1ListDeliverabilityTestReportsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainDeliverabilityCampaignsCommand = async ( @@ -6630,49 +5575,28 @@ const deserializeAws_restJson1ListDomainDeliverabilityCampaignsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEmailIdentitiesCommand = async ( @@ -6705,41 +5629,25 @@ const deserializeAws_restJson1ListEmailIdentitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListEmailTemplatesCommand = async ( @@ -6772,41 +5680,25 @@ const deserializeAws_restJson1ListEmailTemplatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListImportJobsCommand = async ( @@ -6839,41 +5731,25 @@ const deserializeAws_restJson1ListImportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSuppressedDestinationsCommand = async ( @@ -6909,49 +5785,28 @@ const deserializeAws_restJson1ListSuppressedDestinationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.sesv2#InvalidNextTokenException": - response = { - ...(await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidNextTokenExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -6980,49 +5835,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountDedicatedIpWarmupAttributesCommand = async ( @@ -7047,41 +5881,25 @@ const deserializeAws_restJson1PutAccountDedicatedIpWarmupAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountDetailsCommand = async ( @@ -7106,49 +5924,28 @@ const deserializeAws_restJson1PutAccountDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.sesv2#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountSendingAttributesCommand = async ( @@ -7173,41 +5970,25 @@ const deserializeAws_restJson1PutAccountSendingAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutAccountSuppressionAttributesCommand = async ( @@ -7232,41 +6013,25 @@ const deserializeAws_restJson1PutAccountSuppressionAttributesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetDeliveryOptionsCommand = async ( @@ -7291,49 +6056,28 @@ const deserializeAws_restJson1PutConfigurationSetDeliveryOptionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetReputationOptionsCommand = async ( @@ -7358,49 +6102,28 @@ const deserializeAws_restJson1PutConfigurationSetReputationOptionsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetSendingOptionsCommand = async ( @@ -7425,49 +6148,28 @@ const deserializeAws_restJson1PutConfigurationSetSendingOptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetSuppressionOptionsCommand = async ( @@ -7492,49 +6194,28 @@ const deserializeAws_restJson1PutConfigurationSetSuppressionOptionsCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutConfigurationSetTrackingOptionsCommand = async ( @@ -7559,49 +6240,28 @@ const deserializeAws_restJson1PutConfigurationSetTrackingOptionsCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDedicatedIpInPoolCommand = async ( @@ -7626,49 +6286,28 @@ const deserializeAws_restJson1PutDedicatedIpInPoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDedicatedIpWarmupAttributesCommand = async ( @@ -7693,49 +6332,28 @@ const deserializeAws_restJson1PutDedicatedIpWarmupAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutDeliverabilityDashboardOptionCommand = async ( @@ -7760,65 +6378,34 @@ const deserializeAws_restJson1PutDeliverabilityDashboardOptionCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.sesv2#AlreadyExistsException": - response = { - ...(await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AlreadyExistsExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityConfigurationSetAttributesCommand = async ( @@ -7843,49 +6430,28 @@ const deserializeAws_restJson1PutEmailIdentityConfigurationSetAttributesCommandE ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityDkimAttributesCommand = async ( @@ -7910,49 +6476,28 @@ const deserializeAws_restJson1PutEmailIdentityDkimAttributesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityDkimSigningAttributesCommand = async ( @@ -7985,49 +6530,28 @@ const deserializeAws_restJson1PutEmailIdentityDkimSigningAttributesCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityFeedbackAttributesCommand = async ( @@ -8052,49 +6576,28 @@ const deserializeAws_restJson1PutEmailIdentityFeedbackAttributesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEmailIdentityMailFromAttributesCommand = async ( @@ -8119,49 +6622,28 @@ const deserializeAws_restJson1PutEmailIdentityMailFromAttributesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSuppressedDestinationCommand = async ( @@ -8186,41 +6668,25 @@ const deserializeAws_restJson1PutSuppressedDestinationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendBulkEmailCommand = async ( @@ -8252,89 +6718,43 @@ const deserializeAws_restJson1SendBulkEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSuspendedException": case "com.amazonaws.sesv2#AccountSuspendedException": - response = { - ...(await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.sesv2#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.sesv2#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "SendingPausedException": case "com.amazonaws.sesv2#SendingPausedException": - response = { - ...(await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendCustomVerificationEmailCommand = async ( @@ -8363,81 +6783,40 @@ const deserializeAws_restJson1SendCustomVerificationEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.sesv2#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.sesv2#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "SendingPausedException": case "com.amazonaws.sesv2#SendingPausedException": - response = { - ...(await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SendEmailCommand = async ( @@ -8466,89 +6845,43 @@ const deserializeAws_restJson1SendEmailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccountSuspendedException": case "com.amazonaws.sesv2#AccountSuspendedException": - response = { - ...(await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccountSuspendedExceptionResponse(parsedOutput, context); case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.sesv2#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "MailFromDomainNotVerifiedException": case "com.amazonaws.sesv2#MailFromDomainNotVerifiedException": - response = { - ...(await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.sesv2#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "SendingPausedException": case "com.amazonaws.sesv2#SendingPausedException": - response = { - ...(await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SendingPausedExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -8573,57 +6906,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestRenderEmailTemplateCommand = async ( @@ -8652,49 +6959,28 @@ const deserializeAws_restJson1TestRenderEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -8719,57 +7005,31 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateConfigurationSetEventDestinationCommand = async ( @@ -8794,49 +7054,28 @@ const deserializeAws_restJson1UpdateConfigurationSetEventDestinationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactCommand = async ( @@ -8861,57 +7100,31 @@ const deserializeAws_restJson1UpdateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContactListCommand = async ( @@ -8936,57 +7149,31 @@ const deserializeAws_restJson1UpdateContactListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConcurrentModificationException": case "com.amazonaws.sesv2#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCustomVerificationEmailTemplateCommand = async ( @@ -9011,49 +7198,28 @@ const deserializeAws_restJson1UpdateCustomVerificationEmailTemplateCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEmailIdentityPolicyCommand = async ( @@ -9078,49 +7244,28 @@ const deserializeAws_restJson1UpdateEmailIdentityPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateEmailTemplateCommand = async ( @@ -9145,253 +7290,220 @@ const deserializeAws_restJson1UpdateEmailTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.sesv2#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sesv2#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sesv2#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccountSuspendedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccountSuspendedException = { - name: "AccountSuspendedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccountSuspendedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidNextTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidNextTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MailFromDomainNotVerifiedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MailFromDomainNotVerifiedException = { - name: "MailFromDomainNotVerifiedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MailFromDomainNotVerifiedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MessageRejectedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MessageRejected = { - name: "MessageRejected", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MessageRejected({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SendingPausedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SendingPausedException = { - name: "SendingPausedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new SendingPausedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AdditionalContactEmailAddresses = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-sfn/src/index.ts b/clients/client-sfn/src/index.ts index b4bcfcad7847f..b023f3c259efd 100644 --- a/clients/client-sfn/src/index.ts +++ b/clients/client-sfn/src/index.ts @@ -3,3 +3,4 @@ export * from "./SFNClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SFNServiceException } from "./models/SFNServiceException"; diff --git a/clients/client-sfn/src/models/SFNServiceException.ts b/clients/client-sfn/src/models/SFNServiceException.ts new file mode 100644 index 0000000000000..66a8fa7186277 --- /dev/null +++ b/clients/client-sfn/src/models/SFNServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SFN service. + */ +export class SFNServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SFNServiceException.prototype); + } +} diff --git a/clients/client-sfn/src/models/models_0.ts b/clients/client-sfn/src/models/models_0.ts index 8b30f0129ec50..b196701efda58 100644 --- a/clients/client-sfn/src/models/models_0.ts +++ b/clients/client-sfn/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SFNServiceException as __BaseException } from "./SFNServiceException"; /** *

The specified activity does not exist.

*/ -export interface ActivityDoesNotExist extends __SmithyException, $MetadataBearer { - name: "ActivityDoesNotExist"; - $fault: "client"; - message?: string; +export class ActivityDoesNotExist extends __BaseException { + readonly name: "ActivityDoesNotExist" = "ActivityDoesNotExist"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActivityDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActivityDoesNotExist.prototype); + } } /** @@ -40,10 +52,20 @@ export namespace ActivityFailedEventDetails { *

The maximum number of activities has been reached. Existing activities must be deleted * before a new activity can be created.

*/ -export interface ActivityLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ActivityLimitExceeded"; - $fault: "client"; - message?: string; +export class ActivityLimitExceeded extends __BaseException { + readonly name: "ActivityLimitExceeded" = "ActivityLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActivityLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActivityLimitExceeded.prototype); + } } /** @@ -260,10 +282,20 @@ export namespace ActivityTimedOutEventDetails { *

The maximum number of workers concurrently polling for activity tasks has been * reached.

*/ -export interface ActivityWorkerLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ActivityWorkerLimitExceeded"; - $fault: "client"; - message?: string; +export class ActivityWorkerLimitExceeded extends __BaseException { + readonly name: "ActivityWorkerLimitExceeded" = "ActivityWorkerLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ActivityWorkerLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ActivityWorkerLimitExceeded.prototype); + } } /** @@ -370,21 +402,42 @@ export namespace CreateActivityOutput { /** *

The provided name is invalid.

*/ -export interface InvalidName extends __SmithyException, $MetadataBearer { - name: "InvalidName"; - $fault: "client"; - message?: string; +export class InvalidName extends __BaseException { + readonly name: "InvalidName" = "InvalidName"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidName", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidName.prototype); + } } /** *

You've exceeded the number of tags allowed for a resource. See the Limits Topic in the * AWS Step Functions Developer Guide.

*/ -export interface TooManyTags extends __SmithyException, $MetadataBearer { - name: "TooManyTags"; - $fault: "client"; - message?: string; +export class TooManyTags extends __BaseException { + readonly name: "TooManyTags" = "TooManyTags"; + readonly $fault: "client" = "client"; resourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTags", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTags.prototype); + this.resourceName = opts.resourceName; + } } /** @@ -588,75 +641,155 @@ export namespace CreateStateMachineOutput { /** *

The provided Amazon Resource Name (ARN) is invalid.

*/ -export interface InvalidArn extends __SmithyException, $MetadataBearer { - name: "InvalidArn"; - $fault: "client"; - message?: string; +export class InvalidArn extends __BaseException { + readonly name: "InvalidArn" = "InvalidArn"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArn", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArn.prototype); + } } /** *

The provided Amazon States Language definition is invalid.

*/ -export interface InvalidDefinition extends __SmithyException, $MetadataBearer { - name: "InvalidDefinition"; - $fault: "client"; - message?: string; +export class InvalidDefinition extends __BaseException { + readonly name: "InvalidDefinition" = "InvalidDefinition"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDefinition", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDefinition.prototype); + } } /** *

*/ -export interface InvalidLoggingConfiguration extends __SmithyException, $MetadataBearer { - name: "InvalidLoggingConfiguration"; - $fault: "client"; - message?: string; +export class InvalidLoggingConfiguration extends __BaseException { + readonly name: "InvalidLoggingConfiguration" = "InvalidLoggingConfiguration"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidLoggingConfiguration", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidLoggingConfiguration.prototype); + } } /** *

Your tracingConfiguration key does not match, or enabled has not been set to true or false.

*/ -export interface InvalidTracingConfiguration extends __SmithyException, $MetadataBearer { - name: "InvalidTracingConfiguration"; - $fault: "client"; - message?: string; +export class InvalidTracingConfiguration extends __BaseException { + readonly name: "InvalidTracingConfiguration" = "InvalidTracingConfiguration"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTracingConfiguration", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTracingConfiguration.prototype); + } } /** *

A state machine with the same name but a different definition or role ARN already * exists.

*/ -export interface StateMachineAlreadyExists extends __SmithyException, $MetadataBearer { - name: "StateMachineAlreadyExists"; - $fault: "client"; - message?: string; +export class StateMachineAlreadyExists extends __BaseException { + readonly name: "StateMachineAlreadyExists" = "StateMachineAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StateMachineAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StateMachineAlreadyExists.prototype); + } } /** *

The specified state machine is being deleted.

*/ -export interface StateMachineDeleting extends __SmithyException, $MetadataBearer { - name: "StateMachineDeleting"; - $fault: "client"; - message?: string; +export class StateMachineDeleting extends __BaseException { + readonly name: "StateMachineDeleting" = "StateMachineDeleting"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StateMachineDeleting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StateMachineDeleting.prototype); + } } /** *

The maximum number of state machines has been reached. Existing state machines must be * deleted before a new state machine can be created.

*/ -export interface StateMachineLimitExceeded extends __SmithyException, $MetadataBearer { - name: "StateMachineLimitExceeded"; - $fault: "client"; - message?: string; +export class StateMachineLimitExceeded extends __BaseException { + readonly name: "StateMachineLimitExceeded" = "StateMachineLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StateMachineLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StateMachineLimitExceeded.prototype); + } } /** *

*/ -export interface StateMachineTypeNotSupported extends __SmithyException, $MetadataBearer { - name: "StateMachineTypeNotSupported"; - $fault: "client"; - message?: string; +export class StateMachineTypeNotSupported extends __BaseException { + readonly name: "StateMachineTypeNotSupported" = "StateMachineTypeNotSupported"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StateMachineTypeNotSupported", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StateMachineTypeNotSupported.prototype); + } } export interface DeleteActivityInput { @@ -912,10 +1045,20 @@ export namespace DescribeExecutionOutput { /** *

The specified execution does not exist.

*/ -export interface ExecutionDoesNotExist extends __SmithyException, $MetadataBearer { - name: "ExecutionDoesNotExist"; - $fault: "client"; - message?: string; +export class ExecutionDoesNotExist extends __BaseException { + readonly name: "ExecutionDoesNotExist" = "ExecutionDoesNotExist"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExecutionDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExecutionDoesNotExist.prototype); + } } export interface DescribeStateMachineInput { @@ -1021,10 +1164,20 @@ export namespace DescribeStateMachineOutput { /** *

The specified state machine does not exist.

*/ -export interface StateMachineDoesNotExist extends __SmithyException, $MetadataBearer { - name: "StateMachineDoesNotExist"; - $fault: "client"; - message?: string; +export class StateMachineDoesNotExist extends __BaseException { + readonly name: "StateMachineDoesNotExist" = "StateMachineDoesNotExist"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StateMachineDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StateMachineDoesNotExist.prototype); + } } export interface DescribeStateMachineForExecutionInput { @@ -2266,10 +2419,20 @@ export namespace GetExecutionHistoryOutput { /** *

The provided token is invalid.

*/ -export interface InvalidToken extends __SmithyException, $MetadataBearer { - name: "InvalidToken"; - $fault: "client"; - message?: string; +export class InvalidToken extends __BaseException { + readonly name: "InvalidToken" = "InvalidToken"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidToken.prototype); + } } export interface ListActivitiesInput { @@ -2575,11 +2738,22 @@ export namespace ListTagsForResourceOutput { *

Could not find the referenced resource. Only state machine and activity ARNs are * supported.

*/ -export interface ResourceNotFound extends __SmithyException, $MetadataBearer { - name: "ResourceNotFound"; - $fault: "client"; - message?: string; +export class ResourceNotFound extends __BaseException { + readonly name: "ResourceNotFound" = "ResourceNotFound"; + readonly $fault: "client" = "client"; resourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFound.prototype); + this.resourceName = opts.resourceName; + } } export interface SendTaskFailureInput { @@ -2623,16 +2797,36 @@ export namespace SendTaskFailureOutput { }); } -export interface TaskDoesNotExist extends __SmithyException, $MetadataBearer { - name: "TaskDoesNotExist"; - $fault: "client"; - message?: string; +export class TaskDoesNotExist extends __BaseException { + readonly name: "TaskDoesNotExist" = "TaskDoesNotExist"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TaskDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TaskDoesNotExist.prototype); + } } -export interface TaskTimedOut extends __SmithyException, $MetadataBearer { - name: "TaskTimedOut"; - $fault: "client"; - message?: string; +export class TaskTimedOut extends __BaseException { + readonly name: "TaskTimedOut" = "TaskTimedOut"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TaskTimedOut", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TaskTimedOut.prototype); + } } export interface SendTaskHeartbeatInput { @@ -2667,10 +2861,20 @@ export namespace SendTaskHeartbeatOutput { /** *

The provided JSON output data is invalid.

*/ -export interface InvalidOutput extends __SmithyException, $MetadataBearer { - name: "InvalidOutput"; - $fault: "client"; - message?: string; +export class InvalidOutput extends __BaseException { + readonly name: "InvalidOutput" = "InvalidOutput"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOutput", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOutput.prototype); + } } export interface SendTaskSuccessInput { @@ -2716,29 +2920,59 @@ export namespace SendTaskSuccessOutput { * idempotent.

* */ -export interface ExecutionAlreadyExists extends __SmithyException, $MetadataBearer { - name: "ExecutionAlreadyExists"; - $fault: "client"; - message?: string; +export class ExecutionAlreadyExists extends __BaseException { + readonly name: "ExecutionAlreadyExists" = "ExecutionAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExecutionAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExecutionAlreadyExists.prototype); + } } /** *

The maximum number of running executions has been reached. Running executions must end or * be stopped before a new execution can be started.

*/ -export interface ExecutionLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ExecutionLimitExceeded"; - $fault: "client"; - message?: string; +export class ExecutionLimitExceeded extends __BaseException { + readonly name: "ExecutionLimitExceeded" = "ExecutionLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExecutionLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExecutionLimitExceeded.prototype); + } } /** *

The provided JSON input data is invalid.

*/ -export interface InvalidExecutionInput extends __SmithyException, $MetadataBearer { - name: "InvalidExecutionInput"; - $fault: "client"; - message?: string; +export class InvalidExecutionInput extends __BaseException { + readonly name: "InvalidExecutionInput" = "InvalidExecutionInput"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidExecutionInput", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidExecutionInput.prototype); + } } export interface StartExecutionInput { @@ -3097,10 +3331,20 @@ export namespace UntagResourceOutput { *

Request is missing a required parameter. This error occurs if both definition * and roleArn are not specified.

*/ -export interface MissingRequiredParameter extends __SmithyException, $MetadataBearer { - name: "MissingRequiredParameter"; - $fault: "client"; - message?: string; +export class MissingRequiredParameter extends __BaseException { + readonly name: "MissingRequiredParameter" = "MissingRequiredParameter"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingRequiredParameter", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingRequiredParameter.prototype); + } } export interface UpdateStateMachineInput { diff --git a/clients/client-sfn/src/protocols/Aws_json1_0.ts b/clients/client-sfn/src/protocols/Aws_json1_0.ts index 212906f27add6..000e8e8ab684d 100644 --- a/clients/client-sfn/src/protocols/Aws_json1_0.ts +++ b/clients/client-sfn/src/protocols/Aws_json1_0.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -15,10 +16,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateActivityCommandInput, CreateActivityCommandOutput } from "../commands/CreateActivityCommand"; @@ -169,6 +168,7 @@ import { UpdateStateMachineInput, UpdateStateMachineOutput, } from "../models/models_0"; +import { SFNServiceException as __BaseException } from "../models/SFNServiceException"; export const serializeAws_json1_0CreateActivityCommand = async ( input: CreateActivityCommandInput, @@ -501,49 +501,28 @@ const deserializeAws_json1_0CreateActivityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActivityLimitExceeded": case "com.amazonaws.sfn#ActivityLimitExceeded": - response = { - ...(await deserializeAws_json1_0ActivityLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ActivityLimitExceededResponse(parsedOutput, context); case "InvalidName": case "com.amazonaws.sfn#InvalidName": - response = { - ...(await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context); case "TooManyTags": case "com.amazonaws.sfn#TooManyTags": - response = { - ...(await deserializeAws_json1_0TooManyTagsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TooManyTagsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateStateMachineCommand = async ( @@ -571,105 +550,49 @@ const deserializeAws_json1_0CreateStateMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "InvalidDefinition": case "com.amazonaws.sfn#InvalidDefinition": - response = { - ...(await deserializeAws_json1_0InvalidDefinitionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidDefinitionResponse(parsedOutput, context); case "InvalidLoggingConfiguration": case "com.amazonaws.sfn#InvalidLoggingConfiguration": - response = { - ...(await deserializeAws_json1_0InvalidLoggingConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidLoggingConfigurationResponse(parsedOutput, context); case "InvalidName": case "com.amazonaws.sfn#InvalidName": - response = { - ...(await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context); case "InvalidTracingConfiguration": case "com.amazonaws.sfn#InvalidTracingConfiguration": - response = { - ...(await deserializeAws_json1_0InvalidTracingConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTracingConfigurationResponse(parsedOutput, context); case "StateMachineAlreadyExists": case "com.amazonaws.sfn#StateMachineAlreadyExists": - response = { - ...(await deserializeAws_json1_0StateMachineAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineAlreadyExistsResponse(parsedOutput, context); case "StateMachineDeleting": case "com.amazonaws.sfn#StateMachineDeleting": - response = { - ...(await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context); case "StateMachineLimitExceeded": case "com.amazonaws.sfn#StateMachineLimitExceeded": - response = { - ...(await deserializeAws_json1_0StateMachineLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineLimitExceededResponse(parsedOutput, context); case "StateMachineTypeNotSupported": case "com.amazonaws.sfn#StateMachineTypeNotSupported": - response = { - ...(await deserializeAws_json1_0StateMachineTypeNotSupportedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineTypeNotSupportedResponse(parsedOutput, context); case "TooManyTags": case "com.amazonaws.sfn#TooManyTags": - response = { - ...(await deserializeAws_json1_0TooManyTagsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TooManyTagsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteActivityCommand = async ( @@ -697,33 +620,22 @@ const deserializeAws_json1_0DeleteActivityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteStateMachineCommand = async ( @@ -751,33 +663,22 @@ const deserializeAws_json1_0DeleteStateMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeActivityCommand = async ( @@ -805,41 +706,25 @@ const deserializeAws_json1_0DescribeActivityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActivityDoesNotExist": case "com.amazonaws.sfn#ActivityDoesNotExist": - response = { - ...(await deserializeAws_json1_0ActivityDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ActivityDoesNotExistResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeExecutionCommand = async ( @@ -867,41 +752,25 @@ const deserializeAws_json1_0DescribeExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExecutionDoesNotExist": case "com.amazonaws.sfn#ExecutionDoesNotExist": - response = { - ...(await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeStateMachineCommand = async ( @@ -929,41 +798,25 @@ const deserializeAws_json1_0DescribeStateMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "StateMachineDoesNotExist": case "com.amazonaws.sfn#StateMachineDoesNotExist": - response = { - ...(await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeStateMachineForExecutionCommand = async ( @@ -991,41 +844,25 @@ const deserializeAws_json1_0DescribeStateMachineForExecutionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExecutionDoesNotExist": case "com.amazonaws.sfn#ExecutionDoesNotExist": - response = { - ...(await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetActivityTaskCommand = async ( @@ -1053,49 +890,28 @@ const deserializeAws_json1_0GetActivityTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ActivityDoesNotExist": case "com.amazonaws.sfn#ActivityDoesNotExist": - response = { - ...(await deserializeAws_json1_0ActivityDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ActivityDoesNotExistResponse(parsedOutput, context); case "ActivityWorkerLimitExceeded": case "com.amazonaws.sfn#ActivityWorkerLimitExceeded": - response = { - ...(await deserializeAws_json1_0ActivityWorkerLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ActivityWorkerLimitExceededResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetExecutionHistoryCommand = async ( @@ -1123,49 +939,28 @@ const deserializeAws_json1_0GetExecutionHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExecutionDoesNotExist": case "com.amazonaws.sfn#ExecutionDoesNotExist": - response = { - ...(await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListActivitiesCommand = async ( @@ -1193,33 +988,22 @@ const deserializeAws_json1_0ListActivitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListExecutionsCommand = async ( @@ -1247,57 +1031,31 @@ const deserializeAws_json1_0ListExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); case "StateMachineDoesNotExist": case "com.amazonaws.sfn#StateMachineDoesNotExist": - response = { - ...(await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context); case "StateMachineTypeNotSupported": case "com.amazonaws.sfn#StateMachineTypeNotSupported": - response = { - ...(await deserializeAws_json1_0StateMachineTypeNotSupportedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineTypeNotSupportedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListStateMachinesCommand = async ( @@ -1325,33 +1083,22 @@ const deserializeAws_json1_0ListStateMachinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -1379,41 +1126,25 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sfn#ResourceNotFound": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0SendTaskFailureCommand = async ( @@ -1441,49 +1172,28 @@ const deserializeAws_json1_0SendTaskFailureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); case "TaskDoesNotExist": case "com.amazonaws.sfn#TaskDoesNotExist": - response = { - ...(await deserializeAws_json1_0TaskDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TaskDoesNotExistResponse(parsedOutput, context); case "TaskTimedOut": case "com.amazonaws.sfn#TaskTimedOut": - response = { - ...(await deserializeAws_json1_0TaskTimedOutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TaskTimedOutResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0SendTaskHeartbeatCommand = async ( @@ -1511,49 +1221,28 @@ const deserializeAws_json1_0SendTaskHeartbeatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); case "TaskDoesNotExist": case "com.amazonaws.sfn#TaskDoesNotExist": - response = { - ...(await deserializeAws_json1_0TaskDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TaskDoesNotExistResponse(parsedOutput, context); case "TaskTimedOut": case "com.amazonaws.sfn#TaskTimedOut": - response = { - ...(await deserializeAws_json1_0TaskTimedOutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TaskTimedOutResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0SendTaskSuccessCommand = async ( @@ -1581,57 +1270,31 @@ const deserializeAws_json1_0SendTaskSuccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidOutput": case "com.amazonaws.sfn#InvalidOutput": - response = { - ...(await deserializeAws_json1_0InvalidOutputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidOutputResponse(parsedOutput, context); case "InvalidToken": case "com.amazonaws.sfn#InvalidToken": - response = { - ...(await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTokenResponse(parsedOutput, context); case "TaskDoesNotExist": case "com.amazonaws.sfn#TaskDoesNotExist": - response = { - ...(await deserializeAws_json1_0TaskDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TaskDoesNotExistResponse(parsedOutput, context); case "TaskTimedOut": case "com.amazonaws.sfn#TaskTimedOut": - response = { - ...(await deserializeAws_json1_0TaskTimedOutResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TaskTimedOutResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartExecutionCommand = async ( @@ -1659,81 +1322,40 @@ const deserializeAws_json1_0StartExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExecutionAlreadyExists": case "com.amazonaws.sfn#ExecutionAlreadyExists": - response = { - ...(await deserializeAws_json1_0ExecutionAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExecutionAlreadyExistsResponse(parsedOutput, context); case "ExecutionLimitExceeded": case "com.amazonaws.sfn#ExecutionLimitExceeded": - response = { - ...(await deserializeAws_json1_0ExecutionLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExecutionLimitExceededResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "InvalidExecutionInput": case "com.amazonaws.sfn#InvalidExecutionInput": - response = { - ...(await deserializeAws_json1_0InvalidExecutionInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidExecutionInputResponse(parsedOutput, context); case "InvalidName": case "com.amazonaws.sfn#InvalidName": - response = { - ...(await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context); case "StateMachineDeleting": case "com.amazonaws.sfn#StateMachineDeleting": - response = { - ...(await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context); case "StateMachineDoesNotExist": case "com.amazonaws.sfn#StateMachineDoesNotExist": - response = { - ...(await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartSyncExecutionCommand = async ( @@ -1761,73 +1383,37 @@ const deserializeAws_json1_0StartSyncExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "InvalidExecutionInput": case "com.amazonaws.sfn#InvalidExecutionInput": - response = { - ...(await deserializeAws_json1_0InvalidExecutionInputResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidExecutionInputResponse(parsedOutput, context); case "InvalidName": case "com.amazonaws.sfn#InvalidName": - response = { - ...(await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidNameResponse(parsedOutput, context); case "StateMachineDeleting": case "com.amazonaws.sfn#StateMachineDeleting": - response = { - ...(await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context); case "StateMachineDoesNotExist": case "com.amazonaws.sfn#StateMachineDoesNotExist": - response = { - ...(await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context); case "StateMachineTypeNotSupported": case "com.amazonaws.sfn#StateMachineTypeNotSupported": - response = { - ...(await deserializeAws_json1_0StateMachineTypeNotSupportedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineTypeNotSupportedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StopExecutionCommand = async ( @@ -1855,41 +1441,25 @@ const deserializeAws_json1_0StopExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExecutionDoesNotExist": case "com.amazonaws.sfn#ExecutionDoesNotExist": - response = { - ...(await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ExecutionDoesNotExistResponse(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -1917,49 +1487,28 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sfn#ResourceNotFound": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundResponse(parsedOutput, context); case "TooManyTags": case "com.amazonaws.sfn#TooManyTags": - response = { - ...(await deserializeAws_json1_0TooManyTagsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TooManyTagsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -1987,41 +1536,25 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "ResourceNotFound": case "com.amazonaws.sfn#ResourceNotFound": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateStateMachineCommand = async ( @@ -2049,81 +1582,40 @@ const deserializeAws_json1_0UpdateStateMachineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": - response = { - ...(await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidArnResponse(parsedOutput, context); case "InvalidDefinition": case "com.amazonaws.sfn#InvalidDefinition": - response = { - ...(await deserializeAws_json1_0InvalidDefinitionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidDefinitionResponse(parsedOutput, context); case "InvalidLoggingConfiguration": case "com.amazonaws.sfn#InvalidLoggingConfiguration": - response = { - ...(await deserializeAws_json1_0InvalidLoggingConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidLoggingConfigurationResponse(parsedOutput, context); case "InvalidTracingConfiguration": case "com.amazonaws.sfn#InvalidTracingConfiguration": - response = { - ...(await deserializeAws_json1_0InvalidTracingConfigurationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidTracingConfigurationResponse(parsedOutput, context); case "MissingRequiredParameter": case "com.amazonaws.sfn#MissingRequiredParameter": - response = { - ...(await deserializeAws_json1_0MissingRequiredParameterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0MissingRequiredParameterResponse(parsedOutput, context); case "StateMachineDeleting": case "com.amazonaws.sfn#StateMachineDeleting": - response = { - ...(await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDeletingResponse(parsedOutput, context); case "StateMachineDoesNotExist": case "com.amazonaws.sfn#StateMachineDoesNotExist": - response = { - ...(await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0StateMachineDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0ActivityDoesNotExistResponse = async ( @@ -2132,13 +1624,11 @@ const deserializeAws_json1_0ActivityDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ActivityDoesNotExist(body, context); - const contents: ActivityDoesNotExist = { - name: "ActivityDoesNotExist", - $fault: "client", + const exception = new ActivityDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ActivityLimitExceededResponse = async ( @@ -2147,13 +1637,11 @@ const deserializeAws_json1_0ActivityLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ActivityLimitExceeded(body, context); - const contents: ActivityLimitExceeded = { - name: "ActivityLimitExceeded", - $fault: "client", + const exception = new ActivityLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ActivityWorkerLimitExceededResponse = async ( @@ -2162,13 +1650,11 @@ const deserializeAws_json1_0ActivityWorkerLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ActivityWorkerLimitExceeded(body, context); - const contents: ActivityWorkerLimitExceeded = { - name: "ActivityWorkerLimitExceeded", - $fault: "client", + const exception = new ActivityWorkerLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ExecutionAlreadyExistsResponse = async ( @@ -2177,13 +1663,11 @@ const deserializeAws_json1_0ExecutionAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ExecutionAlreadyExists(body, context); - const contents: ExecutionAlreadyExists = { - name: "ExecutionAlreadyExists", - $fault: "client", + const exception = new ExecutionAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ExecutionDoesNotExistResponse = async ( @@ -2192,13 +1676,11 @@ const deserializeAws_json1_0ExecutionDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ExecutionDoesNotExist(body, context); - const contents: ExecutionDoesNotExist = { - name: "ExecutionDoesNotExist", - $fault: "client", + const exception = new ExecutionDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ExecutionLimitExceededResponse = async ( @@ -2207,13 +1689,11 @@ const deserializeAws_json1_0ExecutionLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ExecutionLimitExceeded(body, context); - const contents: ExecutionLimitExceeded = { - name: "ExecutionLimitExceeded", - $fault: "client", + const exception = new ExecutionLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidArnResponse = async ( @@ -2222,13 +1702,11 @@ const deserializeAws_json1_0InvalidArnResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidArn(body, context); - const contents: InvalidArn = { - name: "InvalidArn", - $fault: "client", + const exception = new InvalidArn({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidDefinitionResponse = async ( @@ -2237,13 +1715,11 @@ const deserializeAws_json1_0InvalidDefinitionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidDefinition(body, context); - const contents: InvalidDefinition = { - name: "InvalidDefinition", - $fault: "client", + const exception = new InvalidDefinition({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidExecutionInputResponse = async ( @@ -2252,13 +1728,11 @@ const deserializeAws_json1_0InvalidExecutionInputResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidExecutionInput(body, context); - const contents: InvalidExecutionInput = { - name: "InvalidExecutionInput", - $fault: "client", + const exception = new InvalidExecutionInput({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidLoggingConfigurationResponse = async ( @@ -2267,13 +1741,11 @@ const deserializeAws_json1_0InvalidLoggingConfigurationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidLoggingConfiguration(body, context); - const contents: InvalidLoggingConfiguration = { - name: "InvalidLoggingConfiguration", - $fault: "client", + const exception = new InvalidLoggingConfiguration({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidNameResponse = async ( @@ -2282,13 +1754,11 @@ const deserializeAws_json1_0InvalidNameResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidName(body, context); - const contents: InvalidName = { - name: "InvalidName", - $fault: "client", + const exception = new InvalidName({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidOutputResponse = async ( @@ -2297,13 +1767,11 @@ const deserializeAws_json1_0InvalidOutputResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidOutput(body, context); - const contents: InvalidOutput = { - name: "InvalidOutput", - $fault: "client", + const exception = new InvalidOutput({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidTokenResponse = async ( @@ -2312,13 +1780,11 @@ const deserializeAws_json1_0InvalidTokenResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidToken(body, context); - const contents: InvalidToken = { - name: "InvalidToken", - $fault: "client", + const exception = new InvalidToken({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidTracingConfigurationResponse = async ( @@ -2327,13 +1793,11 @@ const deserializeAws_json1_0InvalidTracingConfigurationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidTracingConfiguration(body, context); - const contents: InvalidTracingConfiguration = { - name: "InvalidTracingConfiguration", - $fault: "client", + const exception = new InvalidTracingConfiguration({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0MissingRequiredParameterResponse = async ( @@ -2342,13 +1806,11 @@ const deserializeAws_json1_0MissingRequiredParameterResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0MissingRequiredParameter(body, context); - const contents: MissingRequiredParameter = { - name: "MissingRequiredParameter", - $fault: "client", + const exception = new MissingRequiredParameter({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundResponse = async ( @@ -2357,13 +1819,11 @@ const deserializeAws_json1_0ResourceNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFound(body, context); - const contents: ResourceNotFound = { - name: "ResourceNotFound", - $fault: "client", + const exception = new ResourceNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0StateMachineAlreadyExistsResponse = async ( @@ -2372,13 +1832,11 @@ const deserializeAws_json1_0StateMachineAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0StateMachineAlreadyExists(body, context); - const contents: StateMachineAlreadyExists = { - name: "StateMachineAlreadyExists", - $fault: "client", + const exception = new StateMachineAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0StateMachineDeletingResponse = async ( @@ -2387,13 +1845,11 @@ const deserializeAws_json1_0StateMachineDeletingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0StateMachineDeleting(body, context); - const contents: StateMachineDeleting = { - name: "StateMachineDeleting", - $fault: "client", + const exception = new StateMachineDeleting({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0StateMachineDoesNotExistResponse = async ( @@ -2402,13 +1858,11 @@ const deserializeAws_json1_0StateMachineDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0StateMachineDoesNotExist(body, context); - const contents: StateMachineDoesNotExist = { - name: "StateMachineDoesNotExist", - $fault: "client", + const exception = new StateMachineDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0StateMachineLimitExceededResponse = async ( @@ -2417,13 +1871,11 @@ const deserializeAws_json1_0StateMachineLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0StateMachineLimitExceeded(body, context); - const contents: StateMachineLimitExceeded = { - name: "StateMachineLimitExceeded", - $fault: "client", + const exception = new StateMachineLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0StateMachineTypeNotSupportedResponse = async ( @@ -2432,13 +1884,11 @@ const deserializeAws_json1_0StateMachineTypeNotSupportedResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0StateMachineTypeNotSupported(body, context); - const contents: StateMachineTypeNotSupported = { - name: "StateMachineTypeNotSupported", - $fault: "client", + const exception = new StateMachineTypeNotSupported({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TaskDoesNotExistResponse = async ( @@ -2447,13 +1897,11 @@ const deserializeAws_json1_0TaskDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TaskDoesNotExist(body, context); - const contents: TaskDoesNotExist = { - name: "TaskDoesNotExist", - $fault: "client", + const exception = new TaskDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TaskTimedOutResponse = async ( @@ -2462,13 +1910,11 @@ const deserializeAws_json1_0TaskTimedOutResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TaskTimedOut(body, context); - const contents: TaskTimedOut = { - name: "TaskTimedOut", - $fault: "client", + const exception = new TaskTimedOut({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TooManyTagsResponse = async ( @@ -2477,13 +1923,11 @@ const deserializeAws_json1_0TooManyTagsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TooManyTags(body, context); - const contents: TooManyTags = { - name: "TooManyTags", - $fault: "client", + const exception = new TooManyTags({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CloudWatchLogsLogGroup = (input: CloudWatchLogsLogGroup, context: __SerdeContext): any => { diff --git a/clients/client-shield/src/index.ts b/clients/client-shield/src/index.ts index b27860f531878..d0900420c9479 100644 --- a/clients/client-shield/src/index.ts +++ b/clients/client-shield/src/index.ts @@ -3,3 +3,4 @@ export * from "./ShieldClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { ShieldServiceException } from "./models/ShieldServiceException"; diff --git a/clients/client-shield/src/models/ShieldServiceException.ts b/clients/client-shield/src/models/ShieldServiceException.ts new file mode 100644 index 0000000000000..c861c7f2c30a0 --- /dev/null +++ b/clients/client-shield/src/models/ShieldServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Shield service. + */ +export class ShieldServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, ShieldServiceException.prototype); + } +} diff --git a/clients/client-shield/src/models/models_0.ts b/clients/client-shield/src/models/models_0.ts index 0247a851932a2..f0a735832a54e 100644 --- a/clients/client-shield/src/models/models_0.ts +++ b/clients/client-shield/src/models/models_0.ts @@ -1,21 +1,44 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { ShieldServiceException as __BaseException } from "./ShieldServiceException"; /** *

Exception that indicates the specified AttackId does not exist, or the requester does not have the appropriate permissions to access the AttackId.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** *

In order to grant the necessary access to the Shield Response Team (SRT) the user submitting the request must have the iam:PassRole permission. This error indicates the user did not have the appropriate permissions. For more information, see Granting a User Permissions to Pass a Role to an Amazon Web Services Service.

*/ -export interface AccessDeniedForDependencyException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedForDependencyException"; - $fault: "client"; - message?: string; +export class AccessDeniedForDependencyException extends __BaseException { + readonly name: "AccessDeniedForDependencyException" = "AccessDeniedForDependencyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedForDependencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedForDependencyException.prototype); + } } /** @@ -143,19 +166,39 @@ export namespace AssociateDRTLogBucketResponse { /** *

Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; - message?: string; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + } } /** *

Exception that indicates that the operation would not cause any change to occur.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; - message?: string; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + } } /** @@ -190,10 +233,9 @@ export enum ValidationExceptionReason { /** *

Exception that indicates that the parameters passed to the API are invalid. If available, this exception includes details in additional properties.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; /** *

Additional information about the exception.

*/ @@ -203,15 +245,28 @@ export interface InvalidParameterException extends __SmithyException, $MetadataB *

Fields that caused the exception.

*/ fields?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.reason = opts.reason; + this.fields = opts.fields; + } } /** *

Exception that indicates that the operation would exceed a limit.

*/ -export interface LimitsExceededException extends __SmithyException, $MetadataBearer { - name: "LimitsExceededException"; - $fault: "client"; - message?: string; +export class LimitsExceededException extends __BaseException { + readonly name: "LimitsExceededException" = "LimitsExceededException"; + readonly $fault: "client" = "client"; /** *

The type of limit that would be exceeded.

*/ @@ -221,38 +276,84 @@ export interface LimitsExceededException extends __SmithyException, $MetadataBea *

The threshold that would be exceeded.

*/ Limit?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitsExceededException.prototype); + this.Type = opts.Type; + this.Limit = opts.Limit; + } } /** *

The ARN of the role that you specifed does not exist.

*/ -export interface NoAssociatedRoleException extends __SmithyException, $MetadataBearer { - name: "NoAssociatedRoleException"; - $fault: "client"; - message?: string; +export class NoAssociatedRoleException extends __BaseException { + readonly name: "NoAssociatedRoleException" = "NoAssociatedRoleException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoAssociatedRoleException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoAssociatedRoleException.prototype); + } } /** *

Exception that indicates that the resource state has been modified by another * client. Retrieve the resource and then retry your request.

*/ -export interface OptimisticLockException extends __SmithyException, $MetadataBearer { - name: "OptimisticLockException"; - $fault: "client"; - message?: string; +export class OptimisticLockException extends __BaseException { + readonly name: "OptimisticLockException" = "OptimisticLockException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptimisticLockException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptimisticLockException.prototype); + } } /** *

Exception indicating the specified resource does not exist. If available, this exception includes details in additional properties.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Type of resource.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceType = opts.resourceType; + } } export interface AssociateDRTRoleRequest { @@ -318,10 +419,20 @@ export namespace AssociateHealthCheckResponse { /** *

Exception that indicates that the resource is invalid. You might not have access to the resource, or the resource might not exist.

*/ -export interface InvalidResourceException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceException"; - $fault: "client"; - message?: string; +export class InvalidResourceException extends __BaseException { + readonly name: "InvalidResourceException" = "InvalidResourceException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceException.prototype); + } } /** @@ -955,14 +1066,26 @@ export namespace CreateProtectionResponse { /** *

Exception indicating the specified resource already exists. If available, this exception includes details in additional properties.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; /** *

The type of resource that already exists.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.resourceType = opts.resourceType; + } } export enum ProtectionGroupAggregation { @@ -1152,10 +1275,20 @@ export namespace DeleteSubscriptionResponse { /** *

You are trying to update a subscription that has not yet completed the 1-year commitment. You can change the AutoRenew parameter during the last 30 days of your subscription. This exception indicates that you are attempting to change AutoRenew prior to that period.

*/ -export interface LockedSubscriptionException extends __SmithyException, $MetadataBearer { - name: "LockedSubscriptionException"; - $fault: "client"; - message?: string; +export class LockedSubscriptionException extends __BaseException { + readonly name: "LockedSubscriptionException" = "LockedSubscriptionException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LockedSubscriptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LockedSubscriptionException.prototype); + } } export interface DescribeAttackRequest { @@ -1992,10 +2125,20 @@ export namespace ListAttacksResponse { /** *

Exception that indicates that the NextToken specified in the request is invalid. Submit the request using the NextToken value that was returned in the prior response.

*/ -export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidPaginationTokenException"; - $fault: "client"; - message?: string; +export class InvalidPaginationTokenException extends __BaseException { + readonly name: "InvalidPaginationTokenException" = "InvalidPaginationTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPaginationTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPaginationTokenException.prototype); + } } export interface ListProtectionGroupsRequest { diff --git a/clients/client-shield/src/protocols/Aws_json1_1.ts b/clients/client-shield/src/protocols/Aws_json1_1.ts index 274300b64d9a7..650fe7e39adea 100644 --- a/clients/client-shield/src/protocols/Aws_json1_1.ts +++ b/clients/client-shield/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -238,6 +237,7 @@ import { UpdateSubscriptionResponse, ValidationExceptionField, } from "../models/models_0"; +import { ShieldServiceException as __BaseException } from "../models/ShieldServiceException"; export const serializeAws_json1_1AssociateDRTLogBucketCommand = async ( input: AssociateDRTLogBucketCommandInput, @@ -732,89 +732,43 @@ const deserializeAws_json1_1AssociateDRTLogBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedForDependencyException": case "com.amazonaws.shield#AccessDeniedForDependencyException": - response = { - ...(await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitsExceededException": case "com.amazonaws.shield#LimitsExceededException": - response = { - ...(await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context); case "NoAssociatedRoleException": case "com.amazonaws.shield#NoAssociatedRoleException": - response = { - ...(await deserializeAws_json1_1NoAssociatedRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAssociatedRoleExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateDRTRoleCommand = async ( @@ -842,73 +796,37 @@ const deserializeAws_json1_1AssociateDRTRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedForDependencyException": case "com.amazonaws.shield#AccessDeniedForDependencyException": - response = { - ...(await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateHealthCheckCommand = async ( @@ -936,73 +854,37 @@ const deserializeAws_json1_1AssociateHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.shield#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "LimitsExceededException": case "com.amazonaws.shield#LimitsExceededException": - response = { - ...(await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateProactiveEngagementDetailsCommand = async ( @@ -1030,65 +912,34 @@ const deserializeAws_json1_1AssociateProactiveEngagementDetailsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProtectionCommand = async ( @@ -1116,89 +967,43 @@ const deserializeAws_json1_1CreateProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.shield#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "LimitsExceededException": case "com.amazonaws.shield#LimitsExceededException": - response = { - ...(await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.shield#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateProtectionGroupCommand = async ( @@ -1226,73 +1031,37 @@ const deserializeAws_json1_1CreateProtectionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitsExceededException": case "com.amazonaws.shield#LimitsExceededException": - response = { - ...(await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.shield#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSubscriptionCommand = async ( @@ -1320,41 +1089,25 @@ const deserializeAws_json1_1CreateSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.shield#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProtectionCommand = async ( @@ -1382,49 +1135,28 @@ const deserializeAws_json1_1DeleteProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteProtectionGroupCommand = async ( @@ -1452,49 +1184,28 @@ const deserializeAws_json1_1DeleteProtectionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSubscriptionCommand = async ( @@ -1522,49 +1233,28 @@ const deserializeAws_json1_1DeleteSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "LockedSubscriptionException": case "com.amazonaws.shield#LockedSubscriptionException": - response = { - ...(await deserializeAws_json1_1LockedSubscriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LockedSubscriptionExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAttackCommand = async ( @@ -1592,41 +1282,25 @@ const deserializeAws_json1_1DescribeAttackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.shield#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAttackStatisticsCommand = async ( @@ -1654,33 +1328,22 @@ const deserializeAws_json1_1DescribeAttackStatisticsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDRTAccessCommand = async ( @@ -1708,41 +1371,25 @@ const deserializeAws_json1_1DescribeDRTAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEmergencyContactSettingsCommand = async ( @@ -1770,41 +1417,25 @@ const deserializeAws_json1_1DescribeEmergencyContactSettingsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProtectionCommand = async ( @@ -1832,49 +1463,28 @@ const deserializeAws_json1_1DescribeProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeProtectionGroupCommand = async ( @@ -1902,41 +1512,25 @@ const deserializeAws_json1_1DescribeProtectionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSubscriptionCommand = async ( @@ -1964,41 +1558,25 @@ const deserializeAws_json1_1DescribeSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableApplicationLayerAutomaticResponseCommand = async ( @@ -2026,65 +1604,34 @@ const deserializeAws_json1_1DisableApplicationLayerAutomaticResponseCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableProactiveEngagementCommand = async ( @@ -2112,65 +1659,34 @@ const deserializeAws_json1_1DisableProactiveEngagementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateDRTLogBucketCommand = async ( @@ -2198,73 +1714,37 @@ const deserializeAws_json1_1DisassociateDRTLogBucketCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedForDependencyException": case "com.amazonaws.shield#AccessDeniedForDependencyException": - response = { - ...(await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "NoAssociatedRoleException": case "com.amazonaws.shield#NoAssociatedRoleException": - response = { - ...(await deserializeAws_json1_1NoAssociatedRoleExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoAssociatedRoleExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateDRTRoleCommand = async ( @@ -2292,57 +1772,31 @@ const deserializeAws_json1_1DisassociateDRTRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateHealthCheckCommand = async ( @@ -2370,65 +1824,34 @@ const deserializeAws_json1_1DisassociateHealthCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.shield#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableApplicationLayerAutomaticResponseCommand = async ( @@ -2456,73 +1879,37 @@ const deserializeAws_json1_1EnableApplicationLayerAutomaticResponseCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitsExceededException": case "com.amazonaws.shield#LimitsExceededException": - response = { - ...(await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitsExceededExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EnableProactiveEngagementCommand = async ( @@ -2550,65 +1937,34 @@ const deserializeAws_json1_1EnableProactiveEngagementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSubscriptionStateCommand = async ( @@ -2636,33 +1992,22 @@ const deserializeAws_json1_1GetSubscriptionStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAttacksCommand = async ( @@ -2690,49 +2035,28 @@ const deserializeAws_json1_1ListAttacksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProtectionGroupsCommand = async ( @@ -2760,49 +2084,28 @@ const deserializeAws_json1_1ListProtectionGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.shield#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListProtectionsCommand = async ( @@ -2830,49 +2133,28 @@ const deserializeAws_json1_1ListProtectionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.shield#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourcesInProtectionGroupCommand = async ( @@ -2900,49 +2182,28 @@ const deserializeAws_json1_1ListResourcesInProtectionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidPaginationTokenException": case "com.amazonaws.shield#InvalidPaginationTokenException": - response = { - ...(await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPaginationTokenExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2970,49 +2231,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.shield#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3040,57 +2280,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.shield#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3118,57 +2332,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.shield#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateApplicationLayerAutomaticResponseCommand = async ( @@ -3196,65 +2384,34 @@ const deserializeAws_json1_1UpdateApplicationLayerAutomaticResponseCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.shield#InvalidOperationException": - response = { - ...(await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateEmergencyContactSettingsCommand = async ( @@ -3282,57 +2439,31 @@ const deserializeAws_json1_1UpdateEmergencyContactSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateProtectionGroupCommand = async ( @@ -3360,57 +2491,31 @@ const deserializeAws_json1_1UpdateProtectionGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSubscriptionCommand = async ( @@ -3438,65 +2543,34 @@ const deserializeAws_json1_1UpdateSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalErrorException": case "com.amazonaws.shield#InternalErrorException": - response = { - ...(await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.shield#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LockedSubscriptionException": case "com.amazonaws.shield#LockedSubscriptionException": - response = { - ...(await deserializeAws_json1_1LockedSubscriptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LockedSubscriptionExceptionResponse(parsedOutput, context); case "OptimisticLockException": case "com.amazonaws.shield#OptimisticLockException": - response = { - ...(await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OptimisticLockExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.shield#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -3505,13 +2579,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse = async ( @@ -3520,13 +2592,11 @@ const deserializeAws_json1_1AccessDeniedForDependencyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedForDependencyException(body, context); - const contents: AccessDeniedForDependencyException = { - name: "AccessDeniedForDependencyException", - $fault: "client", + const exception = new AccessDeniedForDependencyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorExceptionResponse = async ( @@ -3535,13 +2605,11 @@ const deserializeAws_json1_1InternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalErrorException(body, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( @@ -3550,13 +2618,11 @@ const deserializeAws_json1_1InvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOperationException(body, context); - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", + const exception = new InvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPaginationTokenExceptionResponse = async ( @@ -3565,13 +2631,11 @@ const deserializeAws_json1_1InvalidPaginationTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPaginationTokenException(body, context); - const contents: InvalidPaginationTokenException = { - name: "InvalidPaginationTokenException", - $fault: "client", + const exception = new InvalidPaginationTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -3580,13 +2644,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceExceptionResponse = async ( @@ -3595,13 +2657,11 @@ const deserializeAws_json1_1InvalidResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceException(body, context); - const contents: InvalidResourceException = { - name: "InvalidResourceException", - $fault: "client", + const exception = new InvalidResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitsExceededExceptionResponse = async ( @@ -3610,13 +2670,11 @@ const deserializeAws_json1_1LimitsExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitsExceededException(body, context); - const contents: LimitsExceededException = { - name: "LimitsExceededException", - $fault: "client", + const exception = new LimitsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LockedSubscriptionExceptionResponse = async ( @@ -3625,13 +2683,11 @@ const deserializeAws_json1_1LockedSubscriptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LockedSubscriptionException(body, context); - const contents: LockedSubscriptionException = { - name: "LockedSubscriptionException", - $fault: "client", + const exception = new LockedSubscriptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoAssociatedRoleExceptionResponse = async ( @@ -3640,13 +2696,11 @@ const deserializeAws_json1_1NoAssociatedRoleExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoAssociatedRoleException(body, context); - const contents: NoAssociatedRoleException = { - name: "NoAssociatedRoleException", - $fault: "client", + const exception = new NoAssociatedRoleException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OptimisticLockExceptionResponse = async ( @@ -3655,13 +2709,11 @@ const deserializeAws_json1_1OptimisticLockExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OptimisticLockException(body, context); - const contents: OptimisticLockException = { - name: "OptimisticLockException", - $fault: "client", + const exception = new OptimisticLockException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -3670,13 +2722,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3685,13 +2735,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AssociateDRTLogBucketRequest = ( diff --git a/clients/client-signer/src/index.ts b/clients/client-signer/src/index.ts index df94bf75da71e..5e9c75f4ce446 100644 --- a/clients/client-signer/src/index.ts +++ b/clients/client-signer/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { SignerServiceException } from "./models/SignerServiceException"; diff --git a/clients/client-signer/src/models/SignerServiceException.ts b/clients/client-signer/src/models/SignerServiceException.ts new file mode 100644 index 0000000000000..c09c17d940e1c --- /dev/null +++ b/clients/client-signer/src/models/SignerServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Signer service. + */ +export class SignerServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SignerServiceException.prototype); + } +} diff --git a/clients/client-signer/src/models/models_0.ts b/clients/client-signer/src/models/models_0.ts index bc26c470e6939..24c48a594801b 100644 --- a/clients/client-signer/src/models/models_0.ts +++ b/clients/client-signer/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SignerServiceException as __BaseException } from "./SignerServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.code = opts.code; + } } export interface AddProfilePermissionRequest { @@ -71,73 +85,150 @@ export namespace AddProfilePermissionResponse { /** *

The resource encountered a conflicting state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.code = opts.code; + } } /** *

An internal error occurred.

*/ -export interface InternalServiceErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServiceErrorException"; - $fault: "server"; - message?: string; +export class InternalServiceErrorException extends __BaseException { + readonly name: "InternalServiceErrorException" = "InternalServiceErrorException"; + readonly $fault: "server" = "server"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceErrorException.prototype); + this.code = opts.code; + } } /** *

A specified resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.code = opts.code; + } } /** *

The client is making a request that exceeds service limits.

*/ -export interface ServiceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceLimitExceededException"; - $fault: "client"; - message?: string; +export class ServiceLimitExceededException extends __BaseException { + readonly name: "ServiceLimitExceededException" = "ServiceLimitExceededException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceLimitExceededException.prototype); + this.code = opts.code; + } } /** *

The allowed number of job-signing requests has been exceeded.

*

This error supersedes the error ThrottlingException.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - message?: string; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.code = opts.code; + } } /** *

You signing certificate could not be validated.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.code = opts.code; + } } /** *

The request contains invalid parameters for the ARN or tags. This exception also * occurs when you call a tagging API on a cancelled signing profile.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; - message?: string; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.code = opts.code; + } } export interface CancelSigningProfileRequest { @@ -1418,11 +1509,22 @@ export namespace ListTagsForResourceResponse { /** *

The signing profile was not found.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.code = opts.code; + } } export interface PutSigningProfileRequest { @@ -1669,11 +1771,22 @@ export namespace StartSigningJobResponse { *

The request was denied due to request throttling.

*

Instead of this error, TooManyRequestsException should be used.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.code = opts.code; + } } export interface TagResourceRequest { diff --git a/clients/client-signer/src/protocols/Aws_restJson1.ts b/clients/client-signer/src/protocols/Aws_restJson1.ts index e8cfec10f38e1..d2a3b49453a2b 100644 --- a/clients/client-signer/src/protocols/Aws_restJson1.ts +++ b/clients/client-signer/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -94,6 +93,7 @@ import { TooManyRequestsException, ValidationException, } from "../models/models_0"; +import { SignerServiceException as __BaseException } from "../models/SignerServiceException"; export const serializeAws_restJson1AddProfilePermissionCommand = async ( input: AddProfilePermissionCommandInput, @@ -693,81 +693,40 @@ const deserializeAws_restJson1AddProfilePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.signer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceLimitExceededException": case "com.amazonaws.signer#ServiceLimitExceededException": - response = { - ...(await deserializeAws_restJson1ServiceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CancelSigningProfileCommand = async ( @@ -792,57 +751,31 @@ const deserializeAws_restJson1CancelSigningProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeSigningJobCommand = async ( @@ -943,57 +876,31 @@ const deserializeAws_restJson1DescribeSigningJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSigningPlatformCommand = async ( @@ -1054,57 +961,31 @@ const deserializeAws_restJson1GetSigningPlatformCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSigningProfileCommand = async ( @@ -1188,57 +1069,31 @@ const deserializeAws_restJson1GetSigningProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListProfilePermissionsCommand = async ( @@ -1279,65 +1134,34 @@ const deserializeAws_restJson1ListProfilePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSigningJobsCommand = async ( @@ -1370,57 +1194,31 @@ const deserializeAws_restJson1ListSigningJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSigningPlatformsCommand = async ( @@ -1453,57 +1251,31 @@ const deserializeAws_restJson1ListSigningPlatformsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListSigningProfilesCommand = async ( @@ -1536,49 +1308,28 @@ const deserializeAws_restJson1ListSigningProfilesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1607,57 +1358,31 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.signer#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.signer#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutSigningProfileCommand = async ( @@ -1694,65 +1419,34 @@ const deserializeAws_restJson1PutSigningProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveProfilePermissionCommand = async ( @@ -1781,73 +1475,37 @@ const deserializeAws_restJson1RemoveProfilePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.signer#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RevokeSignatureCommand = async ( @@ -1872,65 +1530,34 @@ const deserializeAws_restJson1RevokeSignatureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RevokeSigningProfileCommand = async ( @@ -1955,65 +1582,34 @@ const deserializeAws_restJson1RevokeSigningProfileCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartSigningJobCommand = async ( @@ -2046,73 +1642,37 @@ const deserializeAws_restJson1StartSigningJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.signer#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.signer#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.signer#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.signer#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2137,57 +1697,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.signer#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.signer#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2212,70 +1746,38 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.signer#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "InternalServiceErrorException": case "com.amazonaws.signer#InternalServiceErrorException": - response = { - ...(await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServiceErrorExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.signer#NotFoundException": - response = { - ...(await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1NotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.signer#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2283,20 +1785,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2304,20 +1804,18 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2325,20 +1823,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServiceErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServiceErrorException = { - name: "InternalServiceErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2346,20 +1842,18 @@ const deserializeAws_restJson1InternalServiceErrorExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServiceErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1NotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2367,20 +1861,18 @@ const deserializeAws_restJson1NotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new NotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2388,20 +1880,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceLimitExceededException = { - name: "ServiceLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2409,20 +1899,18 @@ const deserializeAws_restJson1ServiceLimitExceededExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2430,20 +1918,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2451,20 +1937,18 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - code: undefined, - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.code !== undefined && data.code !== null) { contents.code = __expectString(data.code); @@ -2472,7 +1956,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Destination = (input: Destination, context: __SerdeContext): any => { diff --git a/clients/client-sms/src/index.ts b/clients/client-sms/src/index.ts index c9d59b8beeebf..04eec3ebcdc26 100644 --- a/clients/client-sms/src/index.ts +++ b/clients/client-sms/src/index.ts @@ -3,3 +3,4 @@ export * from "./SMSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SMSServiceException } from "./models/SMSServiceException"; diff --git a/clients/client-sms/src/models/SMSServiceException.ts b/clients/client-sms/src/models/SMSServiceException.ts new file mode 100644 index 0000000000000..ecfa948bcc095 --- /dev/null +++ b/clients/client-sms/src/models/SMSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SMS service. + */ +export class SMSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SMSServiceException.prototype); + } +} diff --git a/clients/client-sms/src/models/models_0.ts b/clients/client-sms/src/models/models_0.ts index 7de43c2a8269e..1b6dfe986e092 100644 --- a/clients/client-sms/src/models/models_0.ts +++ b/clients/client-sms/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SMSServiceException as __BaseException } from "./SMSServiceException"; export enum AppLaunchConfigurationStatus { Configured = "CONFIGURED", @@ -598,47 +601,97 @@ export namespace CreateAppResponse { /** *

An internal error occurred.

*/ -export interface InternalError extends __SmithyException, $MetadataBearer { - name: "InternalError"; - $fault: "server"; - message?: string; +export class InternalError extends __BaseException { + readonly name: "InternalError" = "InternalError"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalError.prototype); + } } /** *

A specified parameter is not valid.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

A required parameter is missing.

*/ -export interface MissingRequiredParameterException extends __SmithyException, $MetadataBearer { - name: "MissingRequiredParameterException"; - $fault: "client"; - message?: string; +export class MissingRequiredParameterException extends __BaseException { + readonly name: "MissingRequiredParameterException" = "MissingRequiredParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MissingRequiredParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MissingRequiredParameterException.prototype); + } } /** *

This operation is not allowed.

*/ -export interface OperationNotPermittedException extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedException"; - $fault: "client"; - message?: string; +export class OperationNotPermittedException extends __BaseException { + readonly name: "OperationNotPermittedException" = "OperationNotPermittedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedException.prototype); + } } /** *

You lack permissions needed to perform this operation. Check your IAM policies, * and ensure that you are using the correct access keys.

*/ -export interface UnauthorizedOperationException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedOperationException"; - $fault: "client"; - message?: string; +export class UnauthorizedOperationException extends __BaseException { + readonly name: "UnauthorizedOperationException" = "UnauthorizedOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedOperationException.prototype); + } } export enum LicenseType { @@ -745,36 +798,77 @@ export namespace CreateReplicationJobResponse { /** *

There are no connectors available.

*/ -export interface NoConnectorsAvailableException extends __SmithyException, $MetadataBearer { - name: "NoConnectorsAvailableException"; - $fault: "client"; - message?: string; +export class NoConnectorsAvailableException extends __BaseException { + readonly name: "NoConnectorsAvailableException" = "NoConnectorsAvailableException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NoConnectorsAvailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NoConnectorsAvailableException.prototype); + } } /** *

The specified replication job already exists.

*/ -export interface ReplicationJobAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ReplicationJobAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ReplicationJobAlreadyExistsException extends __BaseException { + readonly name: "ReplicationJobAlreadyExistsException" = "ReplicationJobAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationJobAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationJobAlreadyExistsException.prototype); + } } /** *

The specified server cannot be replicated.

*/ -export interface ServerCannotBeReplicatedException extends __SmithyException, $MetadataBearer { - name: "ServerCannotBeReplicatedException"; - $fault: "client"; - message?: string; +export class ServerCannotBeReplicatedException extends __BaseException { + readonly name: "ServerCannotBeReplicatedException" = "ServerCannotBeReplicatedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServerCannotBeReplicatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServerCannotBeReplicatedException.prototype); + } } /** *

The service is temporarily unavailable.

*/ -export interface TemporarilyUnavailableException extends __SmithyException, $MetadataBearer { - name: "TemporarilyUnavailableException"; - $fault: "server"; +export class TemporarilyUnavailableException extends __BaseException { + readonly name: "TemporarilyUnavailableException" = "TemporarilyUnavailableException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TemporarilyUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, TemporarilyUnavailableException.prototype); + } } export interface DeleteAppRequest { @@ -927,10 +1021,20 @@ export namespace DeleteReplicationJobResponse { /** *

The specified replication job does not exist.

*/ -export interface ReplicationJobNotFoundException extends __SmithyException, $MetadataBearer { - name: "ReplicationJobNotFoundException"; - $fault: "client"; - message?: string; +export class ReplicationJobNotFoundException extends __BaseException { + readonly name: "ReplicationJobNotFoundException" = "ReplicationJobNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationJobNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationJobNotFoundException.prototype); + } } export interface DeleteServerCatalogRequest {} @@ -2578,20 +2682,40 @@ export namespace StartOnDemandAppReplicationResponse { *

The user has the required permissions, so the request would have succeeded, * but a dry run was performed.

*/ -export interface DryRunOperationException extends __SmithyException, $MetadataBearer { - name: "DryRunOperationException"; - $fault: "client"; - message?: string; +export class DryRunOperationException extends __BaseException { + readonly name: "DryRunOperationException" = "DryRunOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DryRunOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DryRunOperationException.prototype); + } } /** *

You have exceeded the number of on-demand replication runs you can request in a * 24-hour period.

*/ -export interface ReplicationRunLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ReplicationRunLimitExceededException"; - $fault: "client"; - message?: string; +export class ReplicationRunLimitExceededException extends __BaseException { + readonly name: "ReplicationRunLimitExceededException" = "ReplicationRunLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReplicationRunLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReplicationRunLimitExceededException.prototype); + } } export interface StartOnDemandReplicationRunRequest { diff --git a/clients/client-sms/src/protocols/Aws_json1_1.ts b/clients/client-sms/src/protocols/Aws_json1_1.ts index 594b7fec62a13..3b1a0252c2d6d 100644 --- a/clients/client-sms/src/protocols/Aws_json1_1.ts +++ b/clients/client-sms/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateAppCommandInput, CreateAppCommandOutput } from "../commands/CreateAppCommand"; @@ -225,6 +224,7 @@ import { VmServer, VmServerAddress, } from "../models/models_0"; +import { SMSServiceException as __BaseException } from "../models/SMSServiceException"; export const serializeAws_json1_1CreateAppCommand = async ( input: CreateAppCommandInput, @@ -706,65 +706,34 @@ const deserializeAws_json1_1CreateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateReplicationJobCommand = async ( @@ -792,97 +761,46 @@ const deserializeAws_json1_1CreateReplicationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "NoConnectorsAvailableException": case "com.amazonaws.sms#NoConnectorsAvailableException": - response = { - ...(await deserializeAws_json1_1NoConnectorsAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoConnectorsAvailableExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ReplicationJobAlreadyExistsException": case "com.amazonaws.sms#ReplicationJobAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ReplicationJobAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationJobAlreadyExistsExceptionResponse(parsedOutput, context); case "ServerCannotBeReplicatedException": case "com.amazonaws.sms#ServerCannotBeReplicatedException": - response = { - ...(await deserializeAws_json1_1ServerCannotBeReplicatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerCannotBeReplicatedExceptionResponse(parsedOutput, context); case "TemporarilyUnavailableException": case "com.amazonaws.sms#TemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1TemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemporarilyUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppCommand = async ( @@ -910,65 +828,34 @@ const deserializeAws_json1_1DeleteAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppLaunchConfigurationCommand = async ( @@ -996,65 +883,34 @@ const deserializeAws_json1_1DeleteAppLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppReplicationConfigurationCommand = async ( @@ -1082,65 +938,34 @@ const deserializeAws_json1_1DeleteAppReplicationConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAppValidationConfigurationCommand = async ( @@ -1168,65 +993,34 @@ const deserializeAws_json1_1DeleteAppValidationConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteReplicationJobCommand = async ( @@ -1254,65 +1048,34 @@ const deserializeAws_json1_1DeleteReplicationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ReplicationJobNotFoundException": case "com.amazonaws.sms#ReplicationJobNotFoundException": - response = { - ...(await deserializeAws_json1_1ReplicationJobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationJobNotFoundExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServerCatalogCommand = async ( @@ -1340,57 +1103,31 @@ const deserializeAws_json1_1DeleteServerCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateConnectorCommand = async ( @@ -1418,57 +1155,31 @@ const deserializeAws_json1_1DisassociateConnectorCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateChangeSetCommand = async ( @@ -1496,65 +1207,34 @@ const deserializeAws_json1_1GenerateChangeSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GenerateTemplateCommand = async ( @@ -1582,65 +1262,34 @@ const deserializeAws_json1_1GenerateTemplateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAppCommand = async ( @@ -1668,65 +1317,34 @@ const deserializeAws_json1_1GetAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAppLaunchConfigurationCommand = async ( @@ -1754,65 +1372,34 @@ const deserializeAws_json1_1GetAppLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAppReplicationConfigurationCommand = async ( @@ -1840,65 +1427,34 @@ const deserializeAws_json1_1GetAppReplicationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAppValidationConfigurationCommand = async ( @@ -1926,65 +1482,34 @@ const deserializeAws_json1_1GetAppValidationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAppValidationOutputCommand = async ( @@ -2012,65 +1537,34 @@ const deserializeAws_json1_1GetAppValidationOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConnectorsCommand = async ( @@ -2098,33 +1592,22 @@ const deserializeAws_json1_1GetConnectorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetReplicationJobsCommand = async ( @@ -2152,49 +1635,28 @@ const deserializeAws_json1_1GetReplicationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetReplicationRunsCommand = async ( @@ -2222,49 +1684,28 @@ const deserializeAws_json1_1GetReplicationRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetServersCommand = async ( @@ -2292,57 +1733,31 @@ const deserializeAws_json1_1GetServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportAppCatalogCommand = async ( @@ -2370,65 +1785,34 @@ const deserializeAws_json1_1ImportAppCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportServerCatalogCommand = async ( @@ -2456,65 +1840,34 @@ const deserializeAws_json1_1ImportServerCatalogCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "NoConnectorsAvailableException": case "com.amazonaws.sms#NoConnectorsAvailableException": - response = { - ...(await deserializeAws_json1_1NoConnectorsAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NoConnectorsAvailableExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1LaunchAppCommand = async ( @@ -2542,65 +1895,34 @@ const deserializeAws_json1_1LaunchAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAppsCommand = async ( @@ -2628,65 +1950,34 @@ const deserializeAws_json1_1ListAppsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1NotifyAppValidationOutputCommand = async ( @@ -2714,65 +2005,34 @@ const deserializeAws_json1_1NotifyAppValidationOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAppLaunchConfigurationCommand = async ( @@ -2800,65 +2060,34 @@ const deserializeAws_json1_1PutAppLaunchConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAppReplicationConfigurationCommand = async ( @@ -2886,65 +2115,34 @@ const deserializeAws_json1_1PutAppReplicationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAppValidationConfigurationCommand = async ( @@ -2972,65 +2170,34 @@ const deserializeAws_json1_1PutAppValidationConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartAppReplicationCommand = async ( @@ -3058,65 +2225,34 @@ const deserializeAws_json1_1StartAppReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartOnDemandAppReplicationCommand = async ( @@ -3144,65 +2280,34 @@ const deserializeAws_json1_1StartOnDemandAppReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartOnDemandReplicationRunCommand = async ( @@ -3230,73 +2335,37 @@ const deserializeAws_json1_1StartOnDemandReplicationRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DryRunOperationException": case "com.amazonaws.sms#DryRunOperationException": - response = { - ...(await deserializeAws_json1_1DryRunOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DryRunOperationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ReplicationRunLimitExceededException": case "com.amazonaws.sms#ReplicationRunLimitExceededException": - response = { - ...(await deserializeAws_json1_1ReplicationRunLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationRunLimitExceededExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopAppReplicationCommand = async ( @@ -3324,65 +2393,34 @@ const deserializeAws_json1_1StopAppReplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TerminateAppCommand = async ( @@ -3410,65 +2448,34 @@ const deserializeAws_json1_1TerminateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAppCommand = async ( @@ -3496,65 +2503,34 @@ const deserializeAws_json1_1UpdateAppCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateReplicationJobCommand = async ( @@ -3582,89 +2558,43 @@ const deserializeAws_json1_1UpdateReplicationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalError": case "com.amazonaws.sms#InternalError": - response = { - ...(await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sms#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MissingRequiredParameterException": case "com.amazonaws.sms#MissingRequiredParameterException": - response = { - ...(await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MissingRequiredParameterExceptionResponse(parsedOutput, context); case "OperationNotPermittedException": case "com.amazonaws.sms#OperationNotPermittedException": - response = { - ...(await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotPermittedExceptionResponse(parsedOutput, context); case "ReplicationJobNotFoundException": case "com.amazonaws.sms#ReplicationJobNotFoundException": - response = { - ...(await deserializeAws_json1_1ReplicationJobNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReplicationJobNotFoundExceptionResponse(parsedOutput, context); case "ServerCannotBeReplicatedException": case "com.amazonaws.sms#ServerCannotBeReplicatedException": - response = { - ...(await deserializeAws_json1_1ServerCannotBeReplicatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServerCannotBeReplicatedExceptionResponse(parsedOutput, context); case "TemporarilyUnavailableException": case "com.amazonaws.sms#TemporarilyUnavailableException": - response = { - ...(await deserializeAws_json1_1TemporarilyUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TemporarilyUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.sms#UnauthorizedOperationException": - response = { - ...(await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnauthorizedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DryRunOperationExceptionResponse = async ( @@ -3673,13 +2603,11 @@ const deserializeAws_json1_1DryRunOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DryRunOperationException(body, context); - const contents: DryRunOperationException = { - name: "DryRunOperationException", - $fault: "client", + const exception = new DryRunOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalErrorResponse = async ( @@ -3688,13 +2616,11 @@ const deserializeAws_json1_1InternalErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalError(body, context); - const contents: InternalError = { - name: "InternalError", - $fault: "server", + const exception = new InternalError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -3703,13 +2629,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MissingRequiredParameterExceptionResponse = async ( @@ -3718,13 +2642,11 @@ const deserializeAws_json1_1MissingRequiredParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MissingRequiredParameterException(body, context); - const contents: MissingRequiredParameterException = { - name: "MissingRequiredParameterException", - $fault: "client", + const exception = new MissingRequiredParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NoConnectorsAvailableExceptionResponse = async ( @@ -3733,13 +2655,11 @@ const deserializeAws_json1_1NoConnectorsAvailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NoConnectorsAvailableException(body, context); - const contents: NoConnectorsAvailableException = { - name: "NoConnectorsAvailableException", - $fault: "client", + const exception = new NoConnectorsAvailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( @@ -3748,13 +2668,11 @@ const deserializeAws_json1_1OperationNotPermittedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotPermittedException(body, context); - const contents: OperationNotPermittedException = { - name: "OperationNotPermittedException", - $fault: "client", + const exception = new OperationNotPermittedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReplicationJobAlreadyExistsExceptionResponse = async ( @@ -3763,13 +2681,11 @@ const deserializeAws_json1_1ReplicationJobAlreadyExistsExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReplicationJobAlreadyExistsException(body, context); - const contents: ReplicationJobAlreadyExistsException = { - name: "ReplicationJobAlreadyExistsException", - $fault: "client", + const exception = new ReplicationJobAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReplicationJobNotFoundExceptionResponse = async ( @@ -3778,13 +2694,11 @@ const deserializeAws_json1_1ReplicationJobNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReplicationJobNotFoundException(body, context); - const contents: ReplicationJobNotFoundException = { - name: "ReplicationJobNotFoundException", - $fault: "client", + const exception = new ReplicationJobNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReplicationRunLimitExceededExceptionResponse = async ( @@ -3793,13 +2707,11 @@ const deserializeAws_json1_1ReplicationRunLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReplicationRunLimitExceededException(body, context); - const contents: ReplicationRunLimitExceededException = { - name: "ReplicationRunLimitExceededException", - $fault: "client", + const exception = new ReplicationRunLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServerCannotBeReplicatedExceptionResponse = async ( @@ -3808,13 +2720,11 @@ const deserializeAws_json1_1ServerCannotBeReplicatedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServerCannotBeReplicatedException(body, context); - const contents: ServerCannotBeReplicatedException = { - name: "ServerCannotBeReplicatedException", - $fault: "client", + const exception = new ServerCannotBeReplicatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TemporarilyUnavailableExceptionResponse = async ( @@ -3823,13 +2733,11 @@ const deserializeAws_json1_1TemporarilyUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TemporarilyUnavailableException(body, context); - const contents: TemporarilyUnavailableException = { - name: "TemporarilyUnavailableException", - $fault: "server", + const exception = new TemporarilyUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnauthorizedOperationExceptionResponse = async ( @@ -3838,13 +2746,11 @@ const deserializeAws_json1_1UnauthorizedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnauthorizedOperationException(body, context); - const contents: UnauthorizedOperationException = { - name: "UnauthorizedOperationException", - $fault: "client", + const exception = new UnauthorizedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AppIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-snow-device-management/src/index.ts b/clients/client-snow-device-management/src/index.ts index 28801bf5d9666..304d3f8c939d8 100644 --- a/clients/client-snow-device-management/src/index.ts +++ b/clients/client-snow-device-management/src/index.ts @@ -3,3 +3,4 @@ export * from "./SnowDeviceManagementClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SnowDeviceManagementServiceException } from "./models/SnowDeviceManagementServiceException"; diff --git a/clients/client-snow-device-management/src/models/SnowDeviceManagementServiceException.ts b/clients/client-snow-device-management/src/models/SnowDeviceManagementServiceException.ts new file mode 100644 index 0000000000000..34ec64a30ccbb --- /dev/null +++ b/clients/client-snow-device-management/src/models/SnowDeviceManagementServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SnowDeviceManagement service. + */ +export class SnowDeviceManagementServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SnowDeviceManagementServiceException.prototype); + } +} diff --git a/clients/client-snow-device-management/src/models/models_0.ts b/clients/client-snow-device-management/src/models/models_0.ts index e1577a24cfa35..391897ea7ce64 100644 --- a/clients/client-snow-device-management/src/models/models_0.ts +++ b/clients/client-snow-device-management/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SnowDeviceManagementServiceException as __BaseException } from "./SnowDeviceManagementServiceException"; /** *

You don't have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AttachmentStatus { @@ -52,41 +65,81 @@ export namespace CancelTaskOutput { /** *

An unexpected error occurred while processing the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - $retryable: {}; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + $retryable = {}; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } /** *

The request references a resource that doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - $retryable: { - throttling: true; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; + $retryable = { + throttling: true, }; - message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + } } /** *

The input fails to satisfy the constraints specified by an Amazon Web Services service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -294,10 +347,20 @@ export namespace CreateTaskOutput { /** *

The request would cause a service quota to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } export interface DescribeDeviceInput { diff --git a/clients/client-snow-device-management/src/protocols/Aws_restJson1.ts b/clients/client-snow-device-management/src/protocols/Aws_restJson1.ts index 0ebf718f87bea..6d8d596d2ecb2 100644 --- a/clients/client-snow-device-management/src/protocols/Aws_restJson1.ts +++ b/clients/client-snow-device-management/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -66,6 +65,7 @@ import { Unlock, ValidationException, } from "../models/models_0"; +import { SnowDeviceManagementServiceException as __BaseException } from "../models/SnowDeviceManagementServiceException"; export const serializeAws_restJson1CancelTaskCommand = async ( input: CancelTaskCommandInput, @@ -489,65 +489,34 @@ const deserializeAws_restJson1CancelTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTaskCommand = async ( @@ -580,73 +549,37 @@ const deserializeAws_restJson1CreateTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.snowdevicemanagement#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeviceCommand = async ( @@ -718,65 +651,34 @@ const deserializeAws_restJson1DescribeDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeviceEc2InstancesCommand = async ( @@ -805,65 +707,34 @@ const deserializeAws_restJson1DescribeDeviceEc2InstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeExecutionCommand = async ( @@ -912,65 +783,34 @@ const deserializeAws_restJson1DescribeExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeTaskCommand = async ( @@ -1031,65 +871,34 @@ const deserializeAws_restJson1DescribeTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDeviceResourcesCommand = async ( @@ -1122,65 +931,34 @@ const deserializeAws_restJson1ListDeviceResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevicesCommand = async ( @@ -1213,57 +991,31 @@ const deserializeAws_restJson1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListExecutionsCommand = async ( @@ -1296,65 +1048,34 @@ const deserializeAws_restJson1ListExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -1383,49 +1104,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTasksCommand = async ( @@ -1458,57 +1158,31 @@ const deserializeAws_restJson1ListTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.snowdevicemanagement#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.snowdevicemanagement#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1533,49 +1207,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1600,155 +1253,124 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.snowdevicemanagement#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.snowdevicemanagement#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.snowdevicemanagement#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $retryable: {}, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $retryable: { - throttling: true, - }, - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Command = (input: Command, context: __SerdeContext): any => { diff --git a/clients/client-snowball/src/index.ts b/clients/client-snowball/src/index.ts index f78fb9cb13e15..ccc909abf9882 100644 --- a/clients/client-snowball/src/index.ts +++ b/clients/client-snowball/src/index.ts @@ -3,3 +3,4 @@ export * from "./SnowballClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SnowballServiceException } from "./models/SnowballServiceException"; diff --git a/clients/client-snowball/src/models/SnowballServiceException.ts b/clients/client-snowball/src/models/SnowballServiceException.ts new file mode 100644 index 0000000000000..f02dd942e5242 --- /dev/null +++ b/clients/client-snowball/src/models/SnowballServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Snowball service. + */ +export class SnowballServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SnowballServiceException.prototype); + } +} diff --git a/clients/client-snowball/src/models/models_0.ts b/clients/client-snowball/src/models/models_0.ts index d193d1e443251..d08b3a504faa8 100644 --- a/clients/client-snowball/src/models/models_0.ts +++ b/clients/client-snowball/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SnowballServiceException as __BaseException } from "./SnowballServiceException"; /** *

The address that you want the Snow device(s) associated with a specific job to be @@ -125,34 +128,71 @@ export namespace CancelClusterResult { *

The action can't be performed because the job's current state doesn't allow that action * to be performed.

*/ -export interface InvalidJobStateException extends __SmithyException, $MetadataBearer { - name: "InvalidJobStateException"; - $fault: "client"; +export class InvalidJobStateException extends __BaseException { + readonly name: "InvalidJobStateException" = "InvalidJobStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidJobStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidJobStateException.prototype); + this.Message = opts.Message; + } } /** *

The specified resource can't be found. Check the information you provided in your last * request, and try again.

*/ -export interface InvalidResourceException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceException"; - $fault: "client"; +export class InvalidResourceException extends __BaseException { + readonly name: "InvalidResourceException" = "InvalidResourceException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The provided resource value is invalid.

*/ ResourceType?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

The provided Key Management Service key lacks the permissions to perform the specified * CreateJob or UpdateJob action.

*/ -export interface KMSRequestFailedException extends __SmithyException, $MetadataBearer { - name: "KMSRequestFailedException"; - $fault: "client"; +export class KMSRequestFailedException extends __BaseException { + readonly name: "KMSRequestFailedException" = "KMSRequestFailedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSRequestFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSRequestFailedException.prototype); + this.Message = opts.Message; + } } export interface CancelJobRequest { @@ -221,10 +261,22 @@ export namespace CreateAddressResult { *

The address provided was invalid. Check the address with your region's carrier, and try * again.

*/ -export interface InvalidAddressException extends __SmithyException, $MetadataBearer { - name: "InvalidAddressException"; - $fault: "client"; +export class InvalidAddressException extends __BaseException { + readonly name: "InvalidAddressException" = "InvalidAddressException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAddressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAddressException.prototype); + this.Message = opts.Message; + } } /** @@ -232,10 +284,22 @@ export interface InvalidAddressException extends __SmithyException, $MetadataBea * occurred. Check the address with your region's carrier and try again. If the issue persists, * contact Amazon Web Services Support.

*/ -export interface UnsupportedAddressException extends __SmithyException, $MetadataBearer { - name: "UnsupportedAddressException"; - $fault: "client"; +export class UnsupportedAddressException extends __BaseException { + readonly name: "UnsupportedAddressException" = "UnsupportedAddressException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedAddressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedAddressException.prototype); + this.Message = opts.Message; + } } export enum JobType { @@ -816,19 +880,43 @@ export namespace CreateClusterResult { *

Your IAM user lacks the necessary Amazon EC2 permissions to perform the attempted * action.

*/ -export interface Ec2RequestFailedException extends __SmithyException, $MetadataBearer { - name: "Ec2RequestFailedException"; - $fault: "client"; +export class Ec2RequestFailedException extends __BaseException { + readonly name: "Ec2RequestFailedException" = "Ec2RequestFailedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "Ec2RequestFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, Ec2RequestFailedException.prototype); + this.Message = opts.Message; + } } /** *

Job or cluster creation failed. One or more inputs were invalid. Confirm that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType, and try again.

*/ -export interface InvalidInputCombinationException extends __SmithyException, $MetadataBearer { - name: "InvalidInputCombinationException"; - $fault: "client"; +export class InvalidInputCombinationException extends __BaseException { + readonly name: "InvalidInputCombinationException" = "InvalidInputCombinationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInputCombinationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInputCombinationException.prototype); + this.Message = opts.Message; + } } /** @@ -836,10 +924,22 @@ export interface InvalidInputCombinationException extends __SmithyException, $Me * five nodes for your cluster and you have more nodes to create for this cluster, try again and * create jobs until your cluster has exactly five nodes.

*/ -export interface ClusterLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ClusterLimitExceededException"; - $fault: "client"; +export class ClusterLimitExceededException extends __BaseException { + readonly name: "ClusterLimitExceededException" = "ClusterLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ClusterLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ClusterLimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -1151,15 +1251,28 @@ export namespace CreateLongTermPricingResult { *

You get this exception when you call CreateReturnShippingLabel more than once * when other requests are not completed.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

You get this resource when you call CreateReturnShippingLabel more than once when other requests are not completed. .

*/ ConflictResource?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.ConflictResource = opts.ConflictResource; + this.Message = opts.Message; + } } export interface CreateReturnShippingLabelRequest { @@ -1214,10 +1327,22 @@ export namespace CreateReturnShippingLabelResult { * return shipping label already exists. In this case, use * DescribeReturnShippingLabel to get the URL.

*/ -export interface ReturnShippingLabelAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ReturnShippingLabelAlreadyExistsException"; - $fault: "client"; +export class ReturnShippingLabelAlreadyExistsException extends __BaseException { + readonly name: "ReturnShippingLabelAlreadyExistsException" = "ReturnShippingLabelAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReturnShippingLabelAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReturnShippingLabelAlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface DescribeAddressRequest { @@ -1304,10 +1429,22 @@ export namespace DescribeAddressesResult { * stopped. Run the operation without changing the NextToken string, and try * again.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface DescribeClusterRequest { diff --git a/clients/client-snowball/src/protocols/Aws_json1_1.ts b/clients/client-snowball/src/protocols/Aws_json1_1.ts index a05a2214c58dd..a2678e6c760db 100644 --- a/clients/client-snowball/src/protocols/Aws_json1_1.ts +++ b/clients/client-snowball/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CancelClusterCommandInput, CancelClusterCommandOutput } from "../commands/CancelClusterCommand"; @@ -154,6 +153,7 @@ import { UpdateLongTermPricingResult, WirelessConnection, } from "../models/models_0"; +import { SnowballServiceException as __BaseException } from "../models/SnowballServiceException"; export const serializeAws_json1_1CancelClusterCommand = async ( input: CancelClusterCommandInput, @@ -505,49 +505,28 @@ const deserializeAws_json1_1CancelClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "KMSRequestFailedException": case "com.amazonaws.snowball#KMSRequestFailedException": - response = { - ...(await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelJobCommand = async ( @@ -575,49 +554,28 @@ const deserializeAws_json1_1CancelJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "KMSRequestFailedException": case "com.amazonaws.snowball#KMSRequestFailedException": - response = { - ...(await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAddressCommand = async ( @@ -645,41 +603,25 @@ const deserializeAws_json1_1CreateAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAddressException": case "com.amazonaws.snowball#InvalidAddressException": - response = { - ...(await deserializeAws_json1_1InvalidAddressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAddressExceptionResponse(parsedOutput, context); case "UnsupportedAddressException": case "com.amazonaws.snowball#UnsupportedAddressException": - response = { - ...(await deserializeAws_json1_1UnsupportedAddressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedAddressExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateClusterCommand = async ( @@ -707,57 +649,31 @@ const deserializeAws_json1_1CreateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "Ec2RequestFailedException": case "com.amazonaws.snowball#Ec2RequestFailedException": - response = { - ...(await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context); case "InvalidInputCombinationException": case "com.amazonaws.snowball#InvalidInputCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "KMSRequestFailedException": case "com.amazonaws.snowball#KMSRequestFailedException": - response = { - ...(await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateJobCommand = async ( @@ -785,65 +701,34 @@ const deserializeAws_json1_1CreateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterLimitExceededException": case "com.amazonaws.snowball#ClusterLimitExceededException": - response = { - ...(await deserializeAws_json1_1ClusterLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterLimitExceededExceptionResponse(parsedOutput, context); case "Ec2RequestFailedException": case "com.amazonaws.snowball#Ec2RequestFailedException": - response = { - ...(await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context); case "InvalidInputCombinationException": case "com.amazonaws.snowball#InvalidInputCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "KMSRequestFailedException": case "com.amazonaws.snowball#KMSRequestFailedException": - response = { - ...(await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLongTermPricingCommand = async ( @@ -871,33 +756,22 @@ const deserializeAws_json1_1CreateLongTermPricingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateReturnShippingLabelCommand = async ( @@ -925,65 +799,34 @@ const deserializeAws_json1_1CreateReturnShippingLabelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.snowball#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InvalidInputCombinationException": case "com.amazonaws.snowball#InvalidInputCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context); case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "ReturnShippingLabelAlreadyExistsException": case "com.amazonaws.snowball#ReturnShippingLabelAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ReturnShippingLabelAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReturnShippingLabelAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAddressCommand = async ( @@ -1011,33 +854,22 @@ const deserializeAws_json1_1DescribeAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAddressesCommand = async ( @@ -1065,41 +897,25 @@ const deserializeAws_json1_1DescribeAddressesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.snowball#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClusterCommand = async ( @@ -1127,33 +943,22 @@ const deserializeAws_json1_1DescribeClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeJobCommand = async ( @@ -1181,33 +986,22 @@ const deserializeAws_json1_1DescribeJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeReturnShippingLabelCommand = async ( @@ -1235,49 +1029,28 @@ const deserializeAws_json1_1DescribeReturnShippingLabelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.snowball#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobManifestCommand = async ( @@ -1305,41 +1078,25 @@ const deserializeAws_json1_1GetJobManifestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetJobUnlockCodeCommand = async ( @@ -1367,41 +1124,25 @@ const deserializeAws_json1_1GetJobUnlockCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSnowballUsageCommand = async ( @@ -1429,25 +1170,19 @@ const deserializeAws_json1_1GetSnowballUsageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSoftwareUpdatesCommand = async ( @@ -1475,41 +1210,25 @@ const deserializeAws_json1_1GetSoftwareUpdatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListClusterJobsCommand = async ( @@ -1537,41 +1256,25 @@ const deserializeAws_json1_1ListClusterJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.snowball#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListClustersCommand = async ( @@ -1599,33 +1302,22 @@ const deserializeAws_json1_1ListClustersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.snowball#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCompatibleImagesCommand = async ( @@ -1653,41 +1345,25 @@ const deserializeAws_json1_1ListCompatibleImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "Ec2RequestFailedException": case "com.amazonaws.snowball#Ec2RequestFailedException": - response = { - ...(await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.snowball#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListJobsCommand = async ( @@ -1715,33 +1391,22 @@ const deserializeAws_json1_1ListJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.snowball#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLongTermPricingCommand = async ( @@ -1769,41 +1434,25 @@ const deserializeAws_json1_1ListLongTermPricingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidNextTokenException": case "com.amazonaws.snowball#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateClusterCommand = async ( @@ -1831,65 +1480,34 @@ const deserializeAws_json1_1UpdateClusterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "Ec2RequestFailedException": case "com.amazonaws.snowball#Ec2RequestFailedException": - response = { - ...(await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context); case "InvalidInputCombinationException": case "com.amazonaws.snowball#InvalidInputCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context); case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "KMSRequestFailedException": case "com.amazonaws.snowball#KMSRequestFailedException": - response = { - ...(await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateJobCommand = async ( @@ -1917,73 +1535,37 @@ const deserializeAws_json1_1UpdateJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ClusterLimitExceededException": case "com.amazonaws.snowball#ClusterLimitExceededException": - response = { - ...(await deserializeAws_json1_1ClusterLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ClusterLimitExceededExceptionResponse(parsedOutput, context); case "Ec2RequestFailedException": case "com.amazonaws.snowball#Ec2RequestFailedException": - response = { - ...(await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1Ec2RequestFailedExceptionResponse(parsedOutput, context); case "InvalidInputCombinationException": case "com.amazonaws.snowball#InvalidInputCombinationException": - response = { - ...(await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInputCombinationExceptionResponse(parsedOutput, context); case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); case "KMSRequestFailedException": case "com.amazonaws.snowball#KMSRequestFailedException": - response = { - ...(await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1KMSRequestFailedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateJobShipmentStateCommand = async ( @@ -2011,41 +1593,25 @@ const deserializeAws_json1_1UpdateJobShipmentStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidJobStateException": case "com.amazonaws.snowball#InvalidJobStateException": - response = { - ...(await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobStateExceptionResponse(parsedOutput, context); case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateLongTermPricingCommand = async ( @@ -2073,33 +1639,22 @@ const deserializeAws_json1_1UpdateLongTermPricingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidResourceException": case "com.amazonaws.snowball#InvalidResourceException": - response = { - ...(await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ClusterLimitExceededExceptionResponse = async ( @@ -2108,13 +1663,11 @@ const deserializeAws_json1_1ClusterLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ClusterLimitExceededException(body, context); - const contents: ClusterLimitExceededException = { - name: "ClusterLimitExceededException", - $fault: "client", + const exception = new ClusterLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -2123,13 +1676,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1Ec2RequestFailedExceptionResponse = async ( @@ -2138,13 +1689,11 @@ const deserializeAws_json1_1Ec2RequestFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1Ec2RequestFailedException(body, context); - const contents: Ec2RequestFailedException = { - name: "Ec2RequestFailedException", - $fault: "client", + const exception = new Ec2RequestFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAddressExceptionResponse = async ( @@ -2153,13 +1702,11 @@ const deserializeAws_json1_1InvalidAddressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAddressException(body, context); - const contents: InvalidAddressException = { - name: "InvalidAddressException", - $fault: "client", + const exception = new InvalidAddressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInputCombinationExceptionResponse = async ( @@ -2168,13 +1715,11 @@ const deserializeAws_json1_1InvalidInputCombinationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInputCombinationException(body, context); - const contents: InvalidInputCombinationException = { - name: "InvalidInputCombinationException", - $fault: "client", + const exception = new InvalidInputCombinationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidJobStateExceptionResponse = async ( @@ -2183,13 +1728,11 @@ const deserializeAws_json1_1InvalidJobStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidJobStateException(body, context); - const contents: InvalidJobStateException = { - name: "InvalidJobStateException", - $fault: "client", + const exception = new InvalidJobStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -2198,13 +1741,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceExceptionResponse = async ( @@ -2213,13 +1754,11 @@ const deserializeAws_json1_1InvalidResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceException(body, context); - const contents: InvalidResourceException = { - name: "InvalidResourceException", - $fault: "client", + const exception = new InvalidResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1KMSRequestFailedExceptionResponse = async ( @@ -2228,13 +1767,11 @@ const deserializeAws_json1_1KMSRequestFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1KMSRequestFailedException(body, context); - const contents: KMSRequestFailedException = { - name: "KMSRequestFailedException", - $fault: "client", + const exception = new KMSRequestFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReturnShippingLabelAlreadyExistsExceptionResponse = async ( @@ -2243,13 +1780,11 @@ const deserializeAws_json1_1ReturnShippingLabelAlreadyExistsExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReturnShippingLabelAlreadyExistsException(body, context); - const contents: ReturnShippingLabelAlreadyExistsException = { - name: "ReturnShippingLabelAlreadyExistsException", - $fault: "client", + const exception = new ReturnShippingLabelAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedAddressExceptionResponse = async ( @@ -2258,13 +1793,11 @@ const deserializeAws_json1_1UnsupportedAddressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedAddressException(body, context); - const contents: UnsupportedAddressException = { - name: "UnsupportedAddressException", - $fault: "client", + const exception = new UnsupportedAddressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1Address = (input: Address, context: __SerdeContext): any => { diff --git a/clients/client-sns/src/index.ts b/clients/client-sns/src/index.ts index dcf3d553e6b49..859fda29314a9 100644 --- a/clients/client-sns/src/index.ts +++ b/clients/client-sns/src/index.ts @@ -3,3 +3,4 @@ export * from "./SNSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SNSServiceException } from "./models/SNSServiceException"; diff --git a/clients/client-sns/src/models/SNSServiceException.ts b/clients/client-sns/src/models/SNSServiceException.ts new file mode 100644 index 0000000000000..ea88293ed4880 --- /dev/null +++ b/clients/client-sns/src/models/SNSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SNS service. + */ +export class SNSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SNSServiceException.prototype); + } +} diff --git a/clients/client-sns/src/models/models_0.ts b/clients/client-sns/src/models/models_0.ts index 2384d9a780cf8..0c3a86cbe7fe4 100644 --- a/clients/client-sns/src/models/models_0.ts +++ b/clients/client-sns/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SNSServiceException as __BaseException } from "./SNSServiceException"; export interface AddPermissionInput { /** @@ -37,38 +40,78 @@ export namespace AddPermissionInput { /** *

Indicates that the user has been denied access to the requested resource.

*/ -export interface AuthorizationErrorException extends __SmithyException, $MetadataBearer { - name: "AuthorizationErrorException"; - $fault: "client"; - message?: string; +export class AuthorizationErrorException extends __BaseException { + readonly name: "AuthorizationErrorException" = "AuthorizationErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationErrorException.prototype); + } } /** *

Indicates an internal service error.

*/ -export interface InternalErrorException extends __SmithyException, $MetadataBearer { - name: "InternalErrorException"; - $fault: "server"; - message?: string; +export class InternalErrorException extends __BaseException { + readonly name: "InternalErrorException" = "InternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalErrorException.prototype); + } } /** *

Indicates that a request parameter does not comply with the associated * constraints.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; - message?: string; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + } } /** *

Indicates that the requested resource does not exist.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; - message?: string; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + } } /** @@ -124,13 +167,20 @@ export namespace CheckIfPhoneNumberIsOptedOutResponse { /** *

Indicates that the rate at which requests have been submitted for this action exceeds the limit for your Amazon Web Services account.

*/ -export interface ThrottledException extends __SmithyException, $MetadataBearer { - name: "ThrottledException"; - $fault: "client"; +export class ThrottledException extends __BaseException { + readonly name: "ThrottledException" = "ThrottledException"; + readonly $fault: "client" = "client"; /** - *

Throttled request.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledException.prototype); + } } /** @@ -189,20 +239,40 @@ export namespace ConfirmSubscriptionResponse { * add more filter polices, submit an Amazon SNS Limit Increase case in the Amazon Web Services Support * Center.

*/ -export interface FilterPolicyLimitExceededException extends __SmithyException, $MetadataBearer { - name: "FilterPolicyLimitExceededException"; - $fault: "client"; - message?: string; +export class FilterPolicyLimitExceededException extends __BaseException { + readonly name: "FilterPolicyLimitExceededException" = "FilterPolicyLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FilterPolicyLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FilterPolicyLimitExceededException.prototype); + } } /** *

Indicates that the customer already owns the maximum allowed number of * subscriptions.

*/ -export interface SubscriptionLimitExceededException extends __SmithyException, $MetadataBearer { - name: "SubscriptionLimitExceededException"; - $fault: "client"; - message?: string; +export class SubscriptionLimitExceededException extends __BaseException { + readonly name: "SubscriptionLimitExceededException" = "SubscriptionLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubscriptionLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubscriptionLimitExceededException.prototype); + } } /** @@ -369,30 +439,60 @@ export namespace CreateSMSSandboxPhoneNumberResult { *

Indicates that the specified phone number opted out of receiving SMS messages from * your Amazon Web Services account. You can't send SMS messages to phone numbers that opt out.

*/ -export interface OptedOutException extends __SmithyException, $MetadataBearer { - name: "OptedOutException"; - $fault: "client"; - message?: string; +export class OptedOutException extends __BaseException { + readonly name: "OptedOutException" = "OptedOutException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OptedOutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OptedOutException.prototype); + } } /** *

Indicates that a request parameter does not comply with the associated * constraints.

*/ -export interface UserErrorException extends __SmithyException, $MetadataBearer { - name: "UserErrorException"; - $fault: "client"; - message?: string; +export class UserErrorException extends __BaseException { + readonly name: "UserErrorException" = "UserErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UserErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UserErrorException.prototype); + } } /** *

Can't perform multiple operations on a tag simultaneously. Perform the operations * sequentially.

*/ -export interface ConcurrentAccessException extends __SmithyException, $MetadataBearer { - name: "ConcurrentAccessException"; - $fault: "client"; - message?: string; +export class ConcurrentAccessException extends __BaseException { + readonly name: "ConcurrentAccessException" = "ConcurrentAccessException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentAccessException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentAccessException.prototype); + } } /** @@ -549,48 +649,98 @@ export namespace CreateTopicResponse { *

The credential signature isn't valid. You must use an HTTPS endpoint and sign your * request using Signature Version 4.

*/ -export interface InvalidSecurityException extends __SmithyException, $MetadataBearer { - name: "InvalidSecurityException"; - $fault: "client"; - message?: string; +export class InvalidSecurityException extends __BaseException { + readonly name: "InvalidSecurityException" = "InvalidSecurityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSecurityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSecurityException.prototype); + } } /** *

A tag has been added to a resource with the same ARN as a deleted resource. Wait a * short while and then retry the operation.

*/ -export interface StaleTagException extends __SmithyException, $MetadataBearer { - name: "StaleTagException"; - $fault: "client"; - message?: string; +export class StaleTagException extends __BaseException { + readonly name: "StaleTagException" = "StaleTagException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StaleTagException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StaleTagException.prototype); + } } /** *

Can't add more than 50 tags to a topic.

*/ -export interface TagLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TagLimitExceededException"; - $fault: "client"; - message?: string; +export class TagLimitExceededException extends __BaseException { + readonly name: "TagLimitExceededException" = "TagLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagLimitExceededException.prototype); + } } /** *

The request doesn't comply with the IAM tag policy. Correct your request and then * retry it.

*/ -export interface TagPolicyException extends __SmithyException, $MetadataBearer { - name: "TagPolicyException"; - $fault: "client"; - message?: string; +export class TagPolicyException extends __BaseException { + readonly name: "TagPolicyException" = "TagPolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TagPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TagPolicyException.prototype); + } } /** *

Indicates that the customer already owns the maximum allowed number of topics.

*/ -export interface TopicLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TopicLimitExceededException"; - $fault: "client"; - message?: string; +export class TopicLimitExceededException extends __BaseException { + readonly name: "TopicLimitExceededException" = "TopicLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TopicLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TopicLimitExceededException.prototype); + } } /** @@ -662,10 +812,20 @@ export namespace DeleteSMSSandboxPhoneNumberResult { *

Can’t perform the action on the specified resource. Make sure that the resource * exists.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } export interface DeleteTopicInput { @@ -1307,10 +1467,22 @@ export namespace ListOriginationNumbersResult { /** *

Indicates that a parameter in the request is invalid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } /** @@ -1773,45 +1945,79 @@ export namespace OptInPhoneNumberResponse { /** *

Exception error indicating endpoint disabled.

*/ -export interface EndpointDisabledException extends __SmithyException, $MetadataBearer { - name: "EndpointDisabledException"; - $fault: "client"; +export class EndpointDisabledException extends __BaseException { + readonly name: "EndpointDisabledException" = "EndpointDisabledException"; + readonly $fault: "client" = "client"; /** - *

Message for endpoint disabled.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "EndpointDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EndpointDisabledException.prototype); + } } /** *

Indicates that a request parameter does not comply with the associated constraints.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; /** - *

The parameter of an entry in a request doesn't abide by the specification.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + } } /** *

The ciphertext references a key that doesn't exist or that you don't have access * to.

*/ -export interface KMSAccessDeniedException extends __SmithyException, $MetadataBearer { - name: "KMSAccessDeniedException"; - $fault: "client"; - message?: string; +export class KMSAccessDeniedException extends __BaseException { + readonly name: "KMSAccessDeniedException" = "KMSAccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSAccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSAccessDeniedException.prototype); + } } /** *

The request was rejected because the specified customer master key (CMK) isn't * enabled.

*/ -export interface KMSDisabledException extends __SmithyException, $MetadataBearer { - name: "KMSDisabledException"; - $fault: "client"; - message?: string; +export class KMSDisabledException extends __BaseException { + readonly name: "KMSDisabledException" = "KMSDisabledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSDisabledException.prototype); + } } /** @@ -1820,29 +2026,59 @@ export interface KMSDisabledException extends __SmithyException, $MetadataBearer * Customer Master Key in the Key Management Service Developer * Guide.

*/ -export interface KMSInvalidStateException extends __SmithyException, $MetadataBearer { - name: "KMSInvalidStateException"; - $fault: "client"; - message?: string; +export class KMSInvalidStateException extends __BaseException { + readonly name: "KMSInvalidStateException" = "KMSInvalidStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSInvalidStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSInvalidStateException.prototype); + } } /** *

The request was rejected because the specified entity or resource can't be * found.

*/ -export interface KMSNotFoundException extends __SmithyException, $MetadataBearer { - name: "KMSNotFoundException"; - $fault: "client"; - message?: string; +export class KMSNotFoundException extends __BaseException { + readonly name: "KMSNotFoundException" = "KMSNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSNotFoundException.prototype); + } } /** *

The Amazon Web Services access key ID needs a subscription for the service.

*/ -export interface KMSOptInRequired extends __SmithyException, $MetadataBearer { - name: "KMSOptInRequired"; - $fault: "client"; - message?: string; +export class KMSOptInRequired extends __BaseException { + readonly name: "KMSOptInRequired" = "KMSOptInRequired"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSOptInRequired", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSOptInRequired.prototype); + } } /** @@ -1851,22 +2087,39 @@ export interface KMSOptInRequired extends __SmithyException, $MetadataBearer { * the Key Management Service Developer Guide. *

*/ -export interface KMSThrottlingException extends __SmithyException, $MetadataBearer { - name: "KMSThrottlingException"; - $fault: "client"; - message?: string; +export class KMSThrottlingException extends __BaseException { + readonly name: "KMSThrottlingException" = "KMSThrottlingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "KMSThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, KMSThrottlingException.prototype); + } } /** *

Exception error indicating platform application disabled.

*/ -export interface PlatformApplicationDisabledException extends __SmithyException, $MetadataBearer { - name: "PlatformApplicationDisabledException"; - $fault: "client"; +export class PlatformApplicationDisabledException extends __BaseException { + readonly name: "PlatformApplicationDisabledException" = "PlatformApplicationDisabledException"; + readonly $fault: "client" = "client"; /** - *

Message for platform application disabled.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "PlatformApplicationDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PlatformApplicationDisabledException.prototype); + } } /** @@ -2109,37 +2362,77 @@ export namespace PublishResponse { /** *

Two or more batch entries in the request have the same Id.

*/ -export interface BatchEntryIdsNotDistinctException extends __SmithyException, $MetadataBearer { - name: "BatchEntryIdsNotDistinctException"; - $fault: "client"; - message?: string; +export class BatchEntryIdsNotDistinctException extends __BaseException { + readonly name: "BatchEntryIdsNotDistinctException" = "BatchEntryIdsNotDistinctException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchEntryIdsNotDistinctException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchEntryIdsNotDistinctException.prototype); + } } /** *

The length of all the batch messages put together is more than the limit.

*/ -export interface BatchRequestTooLongException extends __SmithyException, $MetadataBearer { - name: "BatchRequestTooLongException"; - $fault: "client"; - message?: string; +export class BatchRequestTooLongException extends __BaseException { + readonly name: "BatchRequestTooLongException" = "BatchRequestTooLongException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchRequestTooLongException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchRequestTooLongException.prototype); + } } /** *

The batch request doesn't contain any entries.

*/ -export interface EmptyBatchRequestException extends __SmithyException, $MetadataBearer { - name: "EmptyBatchRequestException"; - $fault: "client"; - message?: string; +export class EmptyBatchRequestException extends __BaseException { + readonly name: "EmptyBatchRequestException" = "EmptyBatchRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EmptyBatchRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EmptyBatchRequestException.prototype); + } } /** *

The Id of a batch entry in a batch request doesn't abide by the specification.

*/ -export interface InvalidBatchEntryIdException extends __SmithyException, $MetadataBearer { - name: "InvalidBatchEntryIdException"; - $fault: "client"; - message?: string; +export class InvalidBatchEntryIdException extends __BaseException { + readonly name: "InvalidBatchEntryIdException" = "InvalidBatchEntryIdException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBatchEntryIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBatchEntryIdException.prototype); + } } /** @@ -2364,10 +2657,20 @@ export namespace PublishBatchResponse { /** *

The batch request contains more entries than permissible.

*/ -export interface TooManyEntriesInBatchRequestException extends __SmithyException, $MetadataBearer { - name: "TooManyEntriesInBatchRequestException"; - $fault: "client"; - message?: string; +export class TooManyEntriesInBatchRequestException extends __BaseException { + readonly name: "TooManyEntriesInBatchRequestException" = "TooManyEntriesInBatchRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyEntriesInBatchRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyEntriesInBatchRequestException.prototype); + } } /** @@ -3126,14 +3429,27 @@ export namespace UntagResourceResponse { /** *

Indicates that the one-time password (OTP) used for verification is invalid.

*/ -export interface VerificationException extends __SmithyException, $MetadataBearer { - name: "VerificationException"; - $fault: "client"; +export class VerificationException extends __BaseException { + readonly name: "VerificationException" = "VerificationException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** *

The status of the verification error.

*/ Status: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "VerificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, VerificationException.prototype); + this.Message = opts.Message; + this.Status = opts.Status; + } } export interface VerifySMSSandboxPhoneNumberInput { diff --git a/clients/client-sns/src/protocols/Aws_query.ts b/clients/client-sns/src/protocols/Aws_query.ts index 56e2c4bc6d00d..13ff2ccf12add 100644 --- a/clients/client-sns/src/protocols/Aws_query.ts +++ b/clients/client-sns/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -241,6 +240,7 @@ import { VerifySMSSandboxPhoneNumberInput, VerifySMSSandboxPhoneNumberResult, } from "../models/models_0"; +import { SNSServiceException as __BaseException } from "../models/SNSServiceException"; export const serializeAws_queryAddPermissionCommand = async ( input: AddPermissionCommandInput, @@ -904,57 +904,31 @@ const deserializeAws_queryAddPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCheckIfPhoneNumberIsOptedOutCommand = async ( @@ -982,57 +956,31 @@ const deserializeAws_queryCheckIfPhoneNumberIsOptedOutCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryConfirmSubscriptionCommand = async ( @@ -1060,73 +1008,37 @@ const deserializeAws_queryConfirmSubscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "FilterPolicyLimitExceededException": case "com.amazonaws.sns#FilterPolicyLimitExceededException": - response = { - ...(await deserializeAws_queryFilterPolicyLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryFilterPolicyLimitExceededExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); case "SubscriptionLimitExceededException": case "com.amazonaws.sns#SubscriptionLimitExceededException": - response = { - ...(await deserializeAws_querySubscriptionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreatePlatformApplicationCommand = async ( @@ -1154,49 +1066,28 @@ const deserializeAws_queryCreatePlatformApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreatePlatformEndpointCommand = async ( @@ -1224,57 +1115,31 @@ const deserializeAws_queryCreatePlatformEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateSMSSandboxPhoneNumberCommand = async ( @@ -1302,73 +1167,37 @@ const deserializeAws_queryCreateSMSSandboxPhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "OptedOutException": case "com.amazonaws.sns#OptedOutException": - response = { - ...(await deserializeAws_queryOptedOutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOptedOutExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); case "UserErrorException": case "com.amazonaws.sns#UserErrorException": - response = { - ...(await deserializeAws_queryUserErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateTopicCommand = async ( @@ -1396,97 +1225,46 @@ const deserializeAws_queryCreateTopicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.sns#ConcurrentAccessException": - response = { - ...(await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "StaleTagException": case "com.amazonaws.sns#StaleTagException": - response = { - ...(await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.sns#TagLimitExceededException": - response = { - ...(await deserializeAws_queryTagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.sns#TagPolicyException": - response = { - ...(await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context); case "TopicLimitExceededException": case "com.amazonaws.sns#TopicLimitExceededException": - response = { - ...(await deserializeAws_queryTopicLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTopicLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteEndpointCommand = async ( @@ -1511,49 +1289,28 @@ const deserializeAws_queryDeleteEndpointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeletePlatformApplicationCommand = async ( @@ -1578,49 +1335,28 @@ const deserializeAws_queryDeletePlatformApplicationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteSMSSandboxPhoneNumberCommand = async ( @@ -1648,73 +1384,37 @@ const deserializeAws_queryDeleteSMSSandboxPhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sns#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); case "UserErrorException": case "com.amazonaws.sns#UserErrorException": - response = { - ...(await deserializeAws_queryUserErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUserErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteTopicCommand = async ( @@ -1739,81 +1439,40 @@ const deserializeAws_queryDeleteTopicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.sns#ConcurrentAccessException": - response = { - ...(await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); case "StaleTagException": case "com.amazonaws.sns#StaleTagException": - response = { - ...(await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.sns#TagPolicyException": - response = { - ...(await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetEndpointAttributesCommand = async ( @@ -1841,57 +1500,31 @@ const deserializeAws_queryGetEndpointAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetPlatformApplicationAttributesCommand = async ( @@ -1922,57 +1555,31 @@ const deserializeAws_queryGetPlatformApplicationAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSMSAttributesCommand = async ( @@ -2000,57 +1607,31 @@ const deserializeAws_queryGetSMSAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSMSSandboxAccountStatusCommand = async ( @@ -2078,49 +1659,28 @@ const deserializeAws_queryGetSMSSandboxAccountStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSubscriptionAttributesCommand = async ( @@ -2148,57 +1708,31 @@ const deserializeAws_queryGetSubscriptionAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetTopicAttributesCommand = async ( @@ -2226,65 +1760,34 @@ const deserializeAws_queryGetTopicAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListEndpointsByPlatformApplicationCommand = async ( @@ -2315,57 +1818,31 @@ const deserializeAws_queryListEndpointsByPlatformApplicationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListOriginationNumbersCommand = async ( @@ -2393,65 +1870,34 @@ const deserializeAws_queryListOriginationNumbersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.sns#ValidationException": - response = { - ...(await deserializeAws_queryValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPhoneNumbersOptedOutCommand = async ( @@ -2479,57 +1925,31 @@ const deserializeAws_queryListPhoneNumbersOptedOutCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListPlatformApplicationsCommand = async ( @@ -2557,49 +1977,28 @@ const deserializeAws_queryListPlatformApplicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSMSSandboxPhoneNumbersCommand = async ( @@ -2627,65 +2026,34 @@ const deserializeAws_queryListSMSSandboxPhoneNumbersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sns#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSubscriptionsCommand = async ( @@ -2713,49 +2081,28 @@ const deserializeAws_queryListSubscriptionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListSubscriptionsByTopicCommand = async ( @@ -2783,57 +2130,31 @@ const deserializeAws_queryListSubscriptionsByTopicCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTagsForResourceCommand = async ( @@ -2861,65 +2182,34 @@ const deserializeAws_queryListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.sns#ConcurrentAccessException": - response = { - ...(await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sns#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.sns#TagPolicyException": - response = { - ...(await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListTopicsCommand = async ( @@ -2947,49 +2237,28 @@ const deserializeAws_queryListTopicsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryOptInPhoneNumberCommand = async ( @@ -3017,57 +2286,31 @@ const deserializeAws_queryOptInPhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPublishCommand = async ( @@ -3095,137 +2338,61 @@ const deserializeAws_queryPublishCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "EndpointDisabledException": case "com.amazonaws.sns#EndpointDisabledException": - response = { - ...(await deserializeAws_queryEndpointDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointDisabledExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.sns#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.sns#KMSAccessDeniedException": - response = { - ...(await deserializeAws_queryKMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.sns#KMSDisabledException": - response = { - ...(await deserializeAws_queryKMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.sns#KMSInvalidStateException": - response = { - ...(await deserializeAws_queryKMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.sns#KMSNotFoundException": - response = { - ...(await deserializeAws_queryKMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSNotFoundExceptionResponse(parsedOutput, context); case "KMSOptInRequired": case "com.amazonaws.sns#KMSOptInRequired": - response = { - ...(await deserializeAws_queryKMSOptInRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSOptInRequiredResponse(parsedOutput, context); case "KMSThrottlingException": case "com.amazonaws.sns#KMSThrottlingException": - response = { - ...(await deserializeAws_queryKMSThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSThrottlingExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); case "PlatformApplicationDisabledException": case "com.amazonaws.sns#PlatformApplicationDisabledException": - response = { - ...(await deserializeAws_queryPlatformApplicationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPlatformApplicationDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPublishBatchCommand = async ( @@ -3253,177 +2420,76 @@ const deserializeAws_queryPublishBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "BatchEntryIdsNotDistinctException": case "com.amazonaws.sns#BatchEntryIdsNotDistinctException": - response = { - ...(await deserializeAws_queryBatchEntryIdsNotDistinctExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchEntryIdsNotDistinctExceptionResponse(parsedOutput, context); case "BatchRequestTooLongException": case "com.amazonaws.sns#BatchRequestTooLongException": - response = { - ...(await deserializeAws_queryBatchRequestTooLongExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchRequestTooLongExceptionResponse(parsedOutput, context); case "EmptyBatchRequestException": case "com.amazonaws.sns#EmptyBatchRequestException": - response = { - ...(await deserializeAws_queryEmptyBatchRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEmptyBatchRequestExceptionResponse(parsedOutput, context); case "EndpointDisabledException": case "com.amazonaws.sns#EndpointDisabledException": - response = { - ...(await deserializeAws_queryEndpointDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEndpointDisabledExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidBatchEntryIdException": case "com.amazonaws.sns#InvalidBatchEntryIdException": - response = { - ...(await deserializeAws_queryInvalidBatchEntryIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidBatchEntryIdExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.sns#InvalidParameterValueException": - response = { - ...(await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "KMSAccessDeniedException": case "com.amazonaws.sns#KMSAccessDeniedException": - response = { - ...(await deserializeAws_queryKMSAccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSAccessDeniedExceptionResponse(parsedOutput, context); case "KMSDisabledException": case "com.amazonaws.sns#KMSDisabledException": - response = { - ...(await deserializeAws_queryKMSDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSDisabledExceptionResponse(parsedOutput, context); case "KMSInvalidStateException": case "com.amazonaws.sns#KMSInvalidStateException": - response = { - ...(await deserializeAws_queryKMSInvalidStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSInvalidStateExceptionResponse(parsedOutput, context); case "KMSNotFoundException": case "com.amazonaws.sns#KMSNotFoundException": - response = { - ...(await deserializeAws_queryKMSNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSNotFoundExceptionResponse(parsedOutput, context); case "KMSOptInRequired": case "com.amazonaws.sns#KMSOptInRequired": - response = { - ...(await deserializeAws_queryKMSOptInRequiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSOptInRequiredResponse(parsedOutput, context); case "KMSThrottlingException": case "com.amazonaws.sns#KMSThrottlingException": - response = { - ...(await deserializeAws_queryKMSThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryKMSThrottlingExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); case "PlatformApplicationDisabledException": case "com.amazonaws.sns#PlatformApplicationDisabledException": - response = { - ...(await deserializeAws_queryPlatformApplicationDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPlatformApplicationDisabledExceptionResponse(parsedOutput, context); case "TooManyEntriesInBatchRequestException": case "com.amazonaws.sns#TooManyEntriesInBatchRequestException": - response = { - ...(await deserializeAws_queryTooManyEntriesInBatchRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyEntriesInBatchRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemovePermissionCommand = async ( @@ -3448,57 +2514,31 @@ const deserializeAws_queryRemovePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetEndpointAttributesCommand = async ( @@ -3523,57 +2563,31 @@ const deserializeAws_querySetEndpointAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetPlatformApplicationAttributesCommand = async ( @@ -3598,57 +2612,31 @@ const deserializeAws_querySetPlatformApplicationAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetSMSAttributesCommand = async ( @@ -3676,57 +2664,31 @@ const deserializeAws_querySetSMSAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetSubscriptionAttributesCommand = async ( @@ -3751,65 +2713,34 @@ const deserializeAws_querySetSubscriptionAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "FilterPolicyLimitExceededException": case "com.amazonaws.sns#FilterPolicyLimitExceededException": - response = { - ...(await deserializeAws_queryFilterPolicyLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryFilterPolicyLimitExceededExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetTopicAttributesCommand = async ( @@ -3834,65 +2765,34 @@ const deserializeAws_querySetTopicAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySubscribeCommand = async ( @@ -3920,81 +2820,40 @@ const deserializeAws_querySubscribeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "FilterPolicyLimitExceededException": case "com.amazonaws.sns#FilterPolicyLimitExceededException": - response = { - ...(await deserializeAws_queryFilterPolicyLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryFilterPolicyLimitExceededExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); case "SubscriptionLimitExceededException": case "com.amazonaws.sns#SubscriptionLimitExceededException": - response = { - ...(await deserializeAws_querySubscriptionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_querySubscriptionLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagResourceCommand = async ( @@ -4022,81 +2881,40 @@ const deserializeAws_queryTagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.sns#ConcurrentAccessException": - response = { - ...(await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sns#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "StaleTagException": case "com.amazonaws.sns#StaleTagException": - response = { - ...(await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.sns#TagLimitExceededException": - response = { - ...(await deserializeAws_queryTagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.sns#TagPolicyException": - response = { - ...(await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUnsubscribeCommand = async ( @@ -4121,65 +2939,34 @@ const deserializeAws_queryUnsubscribeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "InvalidSecurityException": case "com.amazonaws.sns#InvalidSecurityException": - response = { - ...(await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidSecurityExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.sns#NotFoundException": - response = { - ...(await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagResourceCommand = async ( @@ -4207,81 +2994,40 @@ const deserializeAws_queryUntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "ConcurrentAccessException": case "com.amazonaws.sns#ConcurrentAccessException": - response = { - ...(await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryConcurrentAccessExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sns#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "StaleTagException": case "com.amazonaws.sns#StaleTagException": - response = { - ...(await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryStaleTagExceptionResponse(parsedOutput, context); case "TagLimitExceededException": case "com.amazonaws.sns#TagLimitExceededException": - response = { - ...(await deserializeAws_queryTagLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagLimitExceededExceptionResponse(parsedOutput, context); case "TagPolicyException": case "com.amazonaws.sns#TagPolicyException": - response = { - ...(await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTagPolicyExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryVerifySMSSandboxPhoneNumberCommand = async ( @@ -4309,73 +3055,37 @@ const deserializeAws_queryVerifySMSSandboxPhoneNumberCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "AuthorizationErrorException": case "com.amazonaws.sns#AuthorizationErrorException": - response = { - ...(await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryAuthorizationErrorExceptionResponse(parsedOutput, context); case "InternalErrorException": case "com.amazonaws.sns#InternalErrorException": - response = { - ...(await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInternalErrorExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.sns#InvalidParameterException": - response = { - ...(await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidParameterExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sns#ResourceNotFoundException": - response = { - ...(await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.sns#ThrottledException": - response = { - ...(await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryThrottledExceptionResponse(parsedOutput, context); case "VerificationException": case "com.amazonaws.sns#VerificationException": - response = { - ...(await deserializeAws_queryVerificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryVerificationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryAuthorizationErrorExceptionResponse = async ( @@ -4384,13 +3094,11 @@ const deserializeAws_queryAuthorizationErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryAuthorizationErrorException(body.Error, context); - const contents: AuthorizationErrorException = { - name: "AuthorizationErrorException", - $fault: "client", + const exception = new AuthorizationErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBatchEntryIdsNotDistinctExceptionResponse = async ( @@ -4399,13 +3107,11 @@ const deserializeAws_queryBatchEntryIdsNotDistinctExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBatchEntryIdsNotDistinctException(body.Error, context); - const contents: BatchEntryIdsNotDistinctException = { - name: "BatchEntryIdsNotDistinctException", - $fault: "client", + const exception = new BatchEntryIdsNotDistinctException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBatchRequestTooLongExceptionResponse = async ( @@ -4414,13 +3120,11 @@ const deserializeAws_queryBatchRequestTooLongExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBatchRequestTooLongException(body.Error, context); - const contents: BatchRequestTooLongException = { - name: "BatchRequestTooLongException", - $fault: "client", + const exception = new BatchRequestTooLongException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryConcurrentAccessExceptionResponse = async ( @@ -4429,13 +3133,11 @@ const deserializeAws_queryConcurrentAccessExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryConcurrentAccessException(body.Error, context); - const contents: ConcurrentAccessException = { - name: "ConcurrentAccessException", - $fault: "client", + const exception = new ConcurrentAccessException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEmptyBatchRequestExceptionResponse = async ( @@ -4444,13 +3146,11 @@ const deserializeAws_queryEmptyBatchRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEmptyBatchRequestException(body.Error, context); - const contents: EmptyBatchRequestException = { - name: "EmptyBatchRequestException", - $fault: "client", + const exception = new EmptyBatchRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEndpointDisabledExceptionResponse = async ( @@ -4459,13 +3159,11 @@ const deserializeAws_queryEndpointDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEndpointDisabledException(body.Error, context); - const contents: EndpointDisabledException = { - name: "EndpointDisabledException", - $fault: "client", + const exception = new EndpointDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryFilterPolicyLimitExceededExceptionResponse = async ( @@ -4474,13 +3172,11 @@ const deserializeAws_queryFilterPolicyLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryFilterPolicyLimitExceededException(body.Error, context); - const contents: FilterPolicyLimitExceededException = { - name: "FilterPolicyLimitExceededException", - $fault: "client", + const exception = new FilterPolicyLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInternalErrorExceptionResponse = async ( @@ -4489,13 +3185,11 @@ const deserializeAws_queryInternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInternalErrorException(body.Error, context); - const contents: InternalErrorException = { - name: "InternalErrorException", - $fault: "server", + const exception = new InternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidBatchEntryIdExceptionResponse = async ( @@ -4504,13 +3198,11 @@ const deserializeAws_queryInvalidBatchEntryIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidBatchEntryIdException(body.Error, context); - const contents: InvalidBatchEntryIdException = { - name: "InvalidBatchEntryIdException", - $fault: "client", + const exception = new InvalidBatchEntryIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidParameterExceptionResponse = async ( @@ -4519,13 +3211,11 @@ const deserializeAws_queryInvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidParameterException(body.Error, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidParameterValueExceptionResponse = async ( @@ -4534,13 +3224,11 @@ const deserializeAws_queryInvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidParameterValueException(body.Error, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidSecurityExceptionResponse = async ( @@ -4549,13 +3237,11 @@ const deserializeAws_queryInvalidSecurityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidSecurityException(body.Error, context); - const contents: InvalidSecurityException = { - name: "InvalidSecurityException", - $fault: "client", + const exception = new InvalidSecurityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSAccessDeniedExceptionResponse = async ( @@ -4564,13 +3250,11 @@ const deserializeAws_queryKMSAccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSAccessDeniedException(body.Error, context); - const contents: KMSAccessDeniedException = { - name: "KMSAccessDeniedException", - $fault: "client", + const exception = new KMSAccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSDisabledExceptionResponse = async ( @@ -4579,13 +3263,11 @@ const deserializeAws_queryKMSDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSDisabledException(body.Error, context); - const contents: KMSDisabledException = { - name: "KMSDisabledException", - $fault: "client", + const exception = new KMSDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSInvalidStateExceptionResponse = async ( @@ -4594,13 +3276,11 @@ const deserializeAws_queryKMSInvalidStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSInvalidStateException(body.Error, context); - const contents: KMSInvalidStateException = { - name: "KMSInvalidStateException", - $fault: "client", + const exception = new KMSInvalidStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSNotFoundExceptionResponse = async ( @@ -4609,13 +3289,11 @@ const deserializeAws_queryKMSNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSNotFoundException(body.Error, context); - const contents: KMSNotFoundException = { - name: "KMSNotFoundException", - $fault: "client", + const exception = new KMSNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSOptInRequiredResponse = async ( @@ -4624,13 +3302,11 @@ const deserializeAws_queryKMSOptInRequiredResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSOptInRequired(body.Error, context); - const contents: KMSOptInRequired = { - name: "KMSOptInRequired", - $fault: "client", + const exception = new KMSOptInRequired({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryKMSThrottlingExceptionResponse = async ( @@ -4639,13 +3315,11 @@ const deserializeAws_queryKMSThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryKMSThrottlingException(body.Error, context); - const contents: KMSThrottlingException = { - name: "KMSThrottlingException", - $fault: "client", + const exception = new KMSThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryNotFoundExceptionResponse = async ( @@ -4654,13 +3328,11 @@ const deserializeAws_queryNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryNotFoundException(body.Error, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOptedOutExceptionResponse = async ( @@ -4669,13 +3341,11 @@ const deserializeAws_queryOptedOutExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOptedOutException(body.Error, context); - const contents: OptedOutException = { - name: "OptedOutException", - $fault: "client", + const exception = new OptedOutException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPlatformApplicationDisabledExceptionResponse = async ( @@ -4684,13 +3354,11 @@ const deserializeAws_queryPlatformApplicationDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPlatformApplicationDisabledException(body.Error, context); - const contents: PlatformApplicationDisabledException = { - name: "PlatformApplicationDisabledException", - $fault: "client", + const exception = new PlatformApplicationDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryResourceNotFoundExceptionResponse = async ( @@ -4699,13 +3367,11 @@ const deserializeAws_queryResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryResourceNotFoundException(body.Error, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryStaleTagExceptionResponse = async ( @@ -4714,13 +3380,11 @@ const deserializeAws_queryStaleTagExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryStaleTagException(body.Error, context); - const contents: StaleTagException = { - name: "StaleTagException", - $fault: "client", + const exception = new StaleTagException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_querySubscriptionLimitExceededExceptionResponse = async ( @@ -4729,13 +3393,11 @@ const deserializeAws_querySubscriptionLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_querySubscriptionLimitExceededException(body.Error, context); - const contents: SubscriptionLimitExceededException = { - name: "SubscriptionLimitExceededException", - $fault: "client", + const exception = new SubscriptionLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTagLimitExceededExceptionResponse = async ( @@ -4744,13 +3406,11 @@ const deserializeAws_queryTagLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTagLimitExceededException(body.Error, context); - const contents: TagLimitExceededException = { - name: "TagLimitExceededException", - $fault: "client", + const exception = new TagLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTagPolicyExceptionResponse = async ( @@ -4759,13 +3419,11 @@ const deserializeAws_queryTagPolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTagPolicyException(body.Error, context); - const contents: TagPolicyException = { - name: "TagPolicyException", - $fault: "client", + const exception = new TagPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryThrottledExceptionResponse = async ( @@ -4774,13 +3432,11 @@ const deserializeAws_queryThrottledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryThrottledException(body.Error, context); - const contents: ThrottledException = { - name: "ThrottledException", - $fault: "client", + const exception = new ThrottledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyEntriesInBatchRequestExceptionResponse = async ( @@ -4789,13 +3445,11 @@ const deserializeAws_queryTooManyEntriesInBatchRequestExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyEntriesInBatchRequestException(body.Error, context); - const contents: TooManyEntriesInBatchRequestException = { - name: "TooManyEntriesInBatchRequestException", - $fault: "client", + const exception = new TooManyEntriesInBatchRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTopicLimitExceededExceptionResponse = async ( @@ -4804,13 +3458,11 @@ const deserializeAws_queryTopicLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTopicLimitExceededException(body.Error, context); - const contents: TopicLimitExceededException = { - name: "TopicLimitExceededException", - $fault: "client", + const exception = new TopicLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUserErrorExceptionResponse = async ( @@ -4819,13 +3471,11 @@ const deserializeAws_queryUserErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUserErrorException(body.Error, context); - const contents: UserErrorException = { - name: "UserErrorException", - $fault: "client", + const exception = new UserErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryValidationExceptionResponse = async ( @@ -4834,13 +3484,11 @@ const deserializeAws_queryValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryValidationException(body.Error, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryVerificationExceptionResponse = async ( @@ -4849,13 +3497,11 @@ const deserializeAws_queryVerificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryVerificationException(body.Error, context); - const contents: VerificationException = { - name: "VerificationException", - $fault: "client", + const exception = new VerificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryActionsList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-sqs/src/index.ts b/clients/client-sqs/src/index.ts index 59f37170ee989..abe723b8d1bf1 100644 --- a/clients/client-sqs/src/index.ts +++ b/clients/client-sqs/src/index.ts @@ -3,3 +3,4 @@ export * from "./SQSClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SQSServiceException } from "./models/SQSServiceException"; diff --git a/clients/client-sqs/src/models/SQSServiceException.ts b/clients/client-sqs/src/models/SQSServiceException.ts new file mode 100644 index 0000000000000..0d2d3f25266d9 --- /dev/null +++ b/clients/client-sqs/src/models/SQSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SQS service. + */ +export class SQSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SQSServiceException.prototype); + } +} diff --git a/clients/client-sqs/src/models/models_0.ts b/clients/client-sqs/src/models/models_0.ts index 4ce87d26e7bd5..6a5b30311945a 100644 --- a/clients/client-sqs/src/models/models_0.ts +++ b/clients/client-sqs/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SQSServiceException as __BaseException } from "./SQSServiceException"; /** *

@@ -47,9 +50,20 @@ export namespace AddPermissionRequest { * AddPermission returns this error if the maximum number of permissions * for the queue is reached.

*/ -export interface OverLimit extends __SmithyException, $MetadataBearer { - name: "OverLimit"; - $fault: "client"; +export class OverLimit extends __BaseException { + readonly name: "OverLimit" = "OverLimit"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OverLimit", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OverLimit.prototype); + } } export interface ChangeMessageVisibilityRequest { @@ -84,25 +98,58 @@ export namespace ChangeMessageVisibilityRequest { /** *

The specified message isn't in flight.

*/ -export interface MessageNotInflight extends __SmithyException, $MetadataBearer { - name: "MessageNotInflight"; - $fault: "client"; +export class MessageNotInflight extends __BaseException { + readonly name: "MessageNotInflight" = "MessageNotInflight"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MessageNotInflight", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MessageNotInflight.prototype); + } } /** *

The specified receipt handle isn't valid.

*/ -export interface ReceiptHandleIsInvalid extends __SmithyException, $MetadataBearer { - name: "ReceiptHandleIsInvalid"; - $fault: "client"; +export class ReceiptHandleIsInvalid extends __BaseException { + readonly name: "ReceiptHandleIsInvalid" = "ReceiptHandleIsInvalid"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReceiptHandleIsInvalid", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReceiptHandleIsInvalid.prototype); + } } /** *

Two or more batch entries in the request have the same Id.

*/ -export interface BatchEntryIdsNotDistinct extends __SmithyException, $MetadataBearer { - name: "BatchEntryIdsNotDistinct"; - $fault: "client"; +export class BatchEntryIdsNotDistinct extends __BaseException { + readonly name: "BatchEntryIdsNotDistinct" = "BatchEntryIdsNotDistinct"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchEntryIdsNotDistinct", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchEntryIdsNotDistinct.prototype); + } } /** @@ -268,25 +315,58 @@ export namespace ChangeMessageVisibilityBatchResult { /** *

The batch request doesn't contain any entries.

*/ -export interface EmptyBatchRequest extends __SmithyException, $MetadataBearer { - name: "EmptyBatchRequest"; - $fault: "client"; +export class EmptyBatchRequest extends __BaseException { + readonly name: "EmptyBatchRequest" = "EmptyBatchRequest"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EmptyBatchRequest", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EmptyBatchRequest.prototype); + } } /** *

The Id of a batch entry in a batch request doesn't abide by the specification.

*/ -export interface InvalidBatchEntryId extends __SmithyException, $MetadataBearer { - name: "InvalidBatchEntryId"; - $fault: "client"; +export class InvalidBatchEntryId extends __BaseException { + readonly name: "InvalidBatchEntryId" = "InvalidBatchEntryId"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidBatchEntryId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidBatchEntryId.prototype); + } } /** *

The batch request contains more entries than permissible.

*/ -export interface TooManyEntriesInBatchRequest extends __SmithyException, $MetadataBearer { - name: "TooManyEntriesInBatchRequest"; - $fault: "client"; +export class TooManyEntriesInBatchRequest extends __BaseException { + readonly name: "TooManyEntriesInBatchRequest" = "TooManyEntriesInBatchRequest"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyEntriesInBatchRequest", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyEntriesInBatchRequest.prototype); + } } export type QueueAttributeName = @@ -566,18 +646,40 @@ export namespace CreateQueueResult { *

You must wait 60 seconds after deleting a queue before you can create another queue * with the same name.

*/ -export interface QueueDeletedRecently extends __SmithyException, $MetadataBearer { - name: "QueueDeletedRecently"; - $fault: "client"; +export class QueueDeletedRecently extends __BaseException { + readonly name: "QueueDeletedRecently" = "QueueDeletedRecently"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueueDeletedRecently", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueueDeletedRecently.prototype); + } } /** *

A queue with this name already exists. Amazon SQS returns this error only if the request * includes attributes whose values differ from those of the existing queue.

*/ -export interface QueueNameExists extends __SmithyException, $MetadataBearer { - name: "QueueNameExists"; - $fault: "client"; +export class QueueNameExists extends __BaseException { + readonly name: "QueueNameExists" = "QueueNameExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueueNameExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueueNameExists.prototype); + } } /** @@ -608,9 +710,20 @@ export namespace DeleteMessageRequest { /** *

The specified receipt handle isn't valid for the current version.

*/ -export interface InvalidIdFormat extends __SmithyException, $MetadataBearer { - name: "InvalidIdFormat"; - $fault: "client"; +export class InvalidIdFormat extends __BaseException { + readonly name: "InvalidIdFormat" = "InvalidIdFormat"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIdFormat", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIdFormat.prototype); + } } /** @@ -955,9 +1068,20 @@ export namespace GetQueueAttributesResult { /** *

The specified attribute doesn't exist.

*/ -export interface InvalidAttributeName extends __SmithyException, $MetadataBearer { - name: "InvalidAttributeName"; - $fault: "client"; +export class InvalidAttributeName extends __BaseException { + readonly name: "InvalidAttributeName" = "InvalidAttributeName"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAttributeName", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAttributeName.prototype); + } } /** @@ -1007,9 +1131,20 @@ export namespace GetQueueUrlResult { /** *

The specified queue doesn't exist.

*/ -export interface QueueDoesNotExist extends __SmithyException, $MetadataBearer { - name: "QueueDoesNotExist"; - $fault: "client"; +export class QueueDoesNotExist extends __BaseException { + readonly name: "QueueDoesNotExist" = "QueueDoesNotExist"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueueDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueueDoesNotExist.prototype); + } } /** @@ -1159,9 +1294,20 @@ export namespace ListQueueTagsResult { /** *

Indicates that the specified queue previously received a PurgeQueue request within the last 60 seconds (the time it can take to delete the messages in the queue).

*/ -export interface PurgeQueueInProgress extends __SmithyException, $MetadataBearer { - name: "PurgeQueueInProgress"; - $fault: "client"; +export class PurgeQueueInProgress extends __BaseException { + readonly name: "PurgeQueueInProgress" = "PurgeQueueInProgress"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PurgeQueueInProgress", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PurgeQueueInProgress.prototype); + } } /** @@ -1563,9 +1709,20 @@ export namespace RemovePermissionRequest { /** *

The message contains characters outside the allowed set.

*/ -export interface InvalidMessageContents extends __SmithyException, $MetadataBearer { - name: "InvalidMessageContents"; - $fault: "client"; +export class InvalidMessageContents extends __BaseException { + readonly name: "InvalidMessageContents" = "InvalidMessageContents"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidMessageContents", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidMessageContents.prototype); + } } export type MessageSystemAttributeNameForSends = "AWSTraceHeader"; @@ -1810,17 +1967,39 @@ export namespace SendMessageResult { /** *

Error code 400. Unsupported operation.

*/ -export interface UnsupportedOperation extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperation"; - $fault: "client"; +export class UnsupportedOperation extends __BaseException { + readonly name: "UnsupportedOperation" = "UnsupportedOperation"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperation.prototype); + } } /** *

The length of all the messages put together is more than the limit.

*/ -export interface BatchRequestTooLong extends __SmithyException, $MetadataBearer { - name: "BatchRequestTooLong"; - $fault: "client"; +export class BatchRequestTooLong extends __BaseException { + readonly name: "BatchRequestTooLong" = "BatchRequestTooLong"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BatchRequestTooLong", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BatchRequestTooLong.prototype); + } } /** diff --git a/clients/client-sqs/src/protocols/Aws_query.ts b/clients/client-sqs/src/protocols/Aws_query.ts index e44060042ebcd..90ac78e3e165a 100644 --- a/clients/client-sqs/src/protocols/Aws_query.ts +++ b/clients/client-sqs/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, getArrayIfSingleItem as __getArrayIfSingleItem, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -106,6 +105,7 @@ import { UnsupportedOperation, UntagQueueRequest, } from "../models/models_0"; +import { SQSServiceException as __BaseException } from "../models/SQSServiceException"; export const serializeAws_queryAddPermissionCommand = async ( input: AddPermissionCommandInput, @@ -449,33 +449,22 @@ const deserializeAws_queryAddPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OverLimit": case "com.amazonaws.sqs#OverLimit": - response = { - ...(await deserializeAws_queryOverLimitResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOverLimitResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryChangeMessageVisibilityCommand = async ( @@ -500,41 +489,25 @@ const deserializeAws_queryChangeMessageVisibilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "MessageNotInflight": case "com.amazonaws.sqs#MessageNotInflight": - response = { - ...(await deserializeAws_queryMessageNotInflightResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMessageNotInflightResponse(parsedOutput, context); case "ReceiptHandleIsInvalid": case "com.amazonaws.sqs#ReceiptHandleIsInvalid": - response = { - ...(await deserializeAws_queryReceiptHandleIsInvalidResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReceiptHandleIsInvalidResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryChangeMessageVisibilityBatchCommand = async ( @@ -562,57 +535,31 @@ const deserializeAws_queryChangeMessageVisibilityBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchEntryIdsNotDistinct": case "com.amazonaws.sqs#BatchEntryIdsNotDistinct": - response = { - ...(await deserializeAws_queryBatchEntryIdsNotDistinctResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchEntryIdsNotDistinctResponse(parsedOutput, context); case "EmptyBatchRequest": case "com.amazonaws.sqs#EmptyBatchRequest": - response = { - ...(await deserializeAws_queryEmptyBatchRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEmptyBatchRequestResponse(parsedOutput, context); case "InvalidBatchEntryId": case "com.amazonaws.sqs#InvalidBatchEntryId": - response = { - ...(await deserializeAws_queryInvalidBatchEntryIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidBatchEntryIdResponse(parsedOutput, context); case "TooManyEntriesInBatchRequest": case "com.amazonaws.sqs#TooManyEntriesInBatchRequest": - response = { - ...(await deserializeAws_queryTooManyEntriesInBatchRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyEntriesInBatchRequestResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryCreateQueueCommand = async ( @@ -640,41 +587,25 @@ const deserializeAws_queryCreateQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "QueueDeletedRecently": case "com.amazonaws.sqs#QueueDeletedRecently": - response = { - ...(await deserializeAws_queryQueueDeletedRecentlyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryQueueDeletedRecentlyResponse(parsedOutput, context); case "QueueNameExists": case "com.amazonaws.sqs#QueueNameExists": - response = { - ...(await deserializeAws_queryQueueNameExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryQueueNameExistsResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteMessageCommand = async ( @@ -699,41 +630,25 @@ const deserializeAws_queryDeleteMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidIdFormat": case "com.amazonaws.sqs#InvalidIdFormat": - response = { - ...(await deserializeAws_queryInvalidIdFormatResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidIdFormatResponse(parsedOutput, context); case "ReceiptHandleIsInvalid": case "com.amazonaws.sqs#ReceiptHandleIsInvalid": - response = { - ...(await deserializeAws_queryReceiptHandleIsInvalidResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryReceiptHandleIsInvalidResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteMessageBatchCommand = async ( @@ -761,57 +676,31 @@ const deserializeAws_queryDeleteMessageBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchEntryIdsNotDistinct": case "com.amazonaws.sqs#BatchEntryIdsNotDistinct": - response = { - ...(await deserializeAws_queryBatchEntryIdsNotDistinctResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchEntryIdsNotDistinctResponse(parsedOutput, context); case "EmptyBatchRequest": case "com.amazonaws.sqs#EmptyBatchRequest": - response = { - ...(await deserializeAws_queryEmptyBatchRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEmptyBatchRequestResponse(parsedOutput, context); case "InvalidBatchEntryId": case "com.amazonaws.sqs#InvalidBatchEntryId": - response = { - ...(await deserializeAws_queryInvalidBatchEntryIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidBatchEntryIdResponse(parsedOutput, context); case "TooManyEntriesInBatchRequest": case "com.amazonaws.sqs#TooManyEntriesInBatchRequest": - response = { - ...(await deserializeAws_queryTooManyEntriesInBatchRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyEntriesInBatchRequestResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDeleteQueueCommand = async ( @@ -836,25 +725,19 @@ const deserializeAws_queryDeleteQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetQueueAttributesCommand = async ( @@ -882,33 +765,22 @@ const deserializeAws_queryGetQueueAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAttributeName": case "com.amazonaws.sqs#InvalidAttributeName": - response = { - ...(await deserializeAws_queryInvalidAttributeNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAttributeNameResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetQueueUrlCommand = async ( @@ -936,33 +808,22 @@ const deserializeAws_queryGetQueueUrlCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "QueueDoesNotExist": case "com.amazonaws.sqs#QueueDoesNotExist": - response = { - ...(await deserializeAws_queryQueueDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryQueueDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListDeadLetterSourceQueuesCommand = async ( @@ -990,33 +851,22 @@ const deserializeAws_queryListDeadLetterSourceQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "QueueDoesNotExist": case "com.amazonaws.sqs#QueueDoesNotExist": - response = { - ...(await deserializeAws_queryQueueDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryQueueDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListQueuesCommand = async ( @@ -1044,25 +894,19 @@ const deserializeAws_queryListQueuesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryListQueueTagsCommand = async ( @@ -1090,25 +934,19 @@ const deserializeAws_queryListQueueTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryPurgeQueueCommand = async ( @@ -1133,41 +971,25 @@ const deserializeAws_queryPurgeQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "PurgeQueueInProgress": case "com.amazonaws.sqs#PurgeQueueInProgress": - response = { - ...(await deserializeAws_queryPurgeQueueInProgressResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPurgeQueueInProgressResponse(parsedOutput, context); case "QueueDoesNotExist": case "com.amazonaws.sqs#QueueDoesNotExist": - response = { - ...(await deserializeAws_queryQueueDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryQueueDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryReceiveMessageCommand = async ( @@ -1195,33 +1017,22 @@ const deserializeAws_queryReceiveMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "OverLimit": case "com.amazonaws.sqs#OverLimit": - response = { - ...(await deserializeAws_queryOverLimitResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryOverLimitResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRemovePermissionCommand = async ( @@ -1246,25 +1057,19 @@ const deserializeAws_queryRemovePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendMessageCommand = async ( @@ -1292,41 +1097,25 @@ const deserializeAws_querySendMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidMessageContents": case "com.amazonaws.sqs#InvalidMessageContents": - response = { - ...(await deserializeAws_queryInvalidMessageContentsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidMessageContentsResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.sqs#UnsupportedOperation": - response = { - ...(await deserializeAws_queryUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySendMessageBatchCommand = async ( @@ -1354,73 +1143,37 @@ const deserializeAws_querySendMessageBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "BatchEntryIdsNotDistinct": case "com.amazonaws.sqs#BatchEntryIdsNotDistinct": - response = { - ...(await deserializeAws_queryBatchEntryIdsNotDistinctResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchEntryIdsNotDistinctResponse(parsedOutput, context); case "BatchRequestTooLong": case "com.amazonaws.sqs#BatchRequestTooLong": - response = { - ...(await deserializeAws_queryBatchRequestTooLongResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryBatchRequestTooLongResponse(parsedOutput, context); case "EmptyBatchRequest": case "com.amazonaws.sqs#EmptyBatchRequest": - response = { - ...(await deserializeAws_queryEmptyBatchRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryEmptyBatchRequestResponse(parsedOutput, context); case "InvalidBatchEntryId": case "com.amazonaws.sqs#InvalidBatchEntryId": - response = { - ...(await deserializeAws_queryInvalidBatchEntryIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidBatchEntryIdResponse(parsedOutput, context); case "TooManyEntriesInBatchRequest": case "com.amazonaws.sqs#TooManyEntriesInBatchRequest": - response = { - ...(await deserializeAws_queryTooManyEntriesInBatchRequestResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryTooManyEntriesInBatchRequestResponse(parsedOutput, context); case "UnsupportedOperation": case "com.amazonaws.sqs#UnsupportedOperation": - response = { - ...(await deserializeAws_queryUnsupportedOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryUnsupportedOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySetQueueAttributesCommand = async ( @@ -1445,33 +1198,22 @@ const deserializeAws_querySetQueueAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAttributeName": case "com.amazonaws.sqs#InvalidAttributeName": - response = { - ...(await deserializeAws_queryInvalidAttributeNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAttributeNameResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryTagQueueCommand = async ( @@ -1496,25 +1238,19 @@ const deserializeAws_queryTagQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryUntagQueueCommand = async ( @@ -1539,25 +1275,19 @@ const deserializeAws_queryUntagQueueCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryBatchEntryIdsNotDistinctResponse = async ( @@ -1566,13 +1296,11 @@ const deserializeAws_queryBatchEntryIdsNotDistinctResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBatchEntryIdsNotDistinct(body.Error, context); - const contents: BatchEntryIdsNotDistinct = { - name: "BatchEntryIdsNotDistinct", - $fault: "client", + const exception = new BatchEntryIdsNotDistinct({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryBatchRequestTooLongResponse = async ( @@ -1581,13 +1309,11 @@ const deserializeAws_queryBatchRequestTooLongResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryBatchRequestTooLong(body.Error, context); - const contents: BatchRequestTooLong = { - name: "BatchRequestTooLong", - $fault: "client", + const exception = new BatchRequestTooLong({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryEmptyBatchRequestResponse = async ( @@ -1596,13 +1322,11 @@ const deserializeAws_queryEmptyBatchRequestResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryEmptyBatchRequest(body.Error, context); - const contents: EmptyBatchRequest = { - name: "EmptyBatchRequest", - $fault: "client", + const exception = new EmptyBatchRequest({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidAttributeNameResponse = async ( @@ -1611,13 +1335,11 @@ const deserializeAws_queryInvalidAttributeNameResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidAttributeName(body.Error, context); - const contents: InvalidAttributeName = { - name: "InvalidAttributeName", - $fault: "client", + const exception = new InvalidAttributeName({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidBatchEntryIdResponse = async ( @@ -1626,13 +1348,11 @@ const deserializeAws_queryInvalidBatchEntryIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidBatchEntryId(body.Error, context); - const contents: InvalidBatchEntryId = { - name: "InvalidBatchEntryId", - $fault: "client", + const exception = new InvalidBatchEntryId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidIdFormatResponse = async ( @@ -1641,13 +1361,11 @@ const deserializeAws_queryInvalidIdFormatResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidIdFormat(body.Error, context); - const contents: InvalidIdFormat = { - name: "InvalidIdFormat", - $fault: "client", + const exception = new InvalidIdFormat({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidMessageContentsResponse = async ( @@ -1656,13 +1374,11 @@ const deserializeAws_queryInvalidMessageContentsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidMessageContents(body.Error, context); - const contents: InvalidMessageContents = { - name: "InvalidMessageContents", - $fault: "client", + const exception = new InvalidMessageContents({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMessageNotInflightResponse = async ( @@ -1671,13 +1387,11 @@ const deserializeAws_queryMessageNotInflightResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMessageNotInflight(body.Error, context); - const contents: MessageNotInflight = { - name: "MessageNotInflight", - $fault: "client", + const exception = new MessageNotInflight({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryOverLimitResponse = async ( @@ -1686,13 +1400,11 @@ const deserializeAws_queryOverLimitResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryOverLimit(body.Error, context); - const contents: OverLimit = { - name: "OverLimit", - $fault: "client", + const exception = new OverLimit({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPurgeQueueInProgressResponse = async ( @@ -1701,13 +1413,11 @@ const deserializeAws_queryPurgeQueueInProgressResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPurgeQueueInProgress(body.Error, context); - const contents: PurgeQueueInProgress = { - name: "PurgeQueueInProgress", - $fault: "client", + const exception = new PurgeQueueInProgress({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryQueueDeletedRecentlyResponse = async ( @@ -1716,13 +1426,11 @@ const deserializeAws_queryQueueDeletedRecentlyResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryQueueDeletedRecently(body.Error, context); - const contents: QueueDeletedRecently = { - name: "QueueDeletedRecently", - $fault: "client", + const exception = new QueueDeletedRecently({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryQueueDoesNotExistResponse = async ( @@ -1731,13 +1439,11 @@ const deserializeAws_queryQueueDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryQueueDoesNotExist(body.Error, context); - const contents: QueueDoesNotExist = { - name: "QueueDoesNotExist", - $fault: "client", + const exception = new QueueDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryQueueNameExistsResponse = async ( @@ -1746,13 +1452,11 @@ const deserializeAws_queryQueueNameExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryQueueNameExists(body.Error, context); - const contents: QueueNameExists = { - name: "QueueNameExists", - $fault: "client", + const exception = new QueueNameExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryReceiptHandleIsInvalidResponse = async ( @@ -1761,13 +1465,11 @@ const deserializeAws_queryReceiptHandleIsInvalidResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryReceiptHandleIsInvalid(body.Error, context); - const contents: ReceiptHandleIsInvalid = { - name: "ReceiptHandleIsInvalid", - $fault: "client", + const exception = new ReceiptHandleIsInvalid({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryTooManyEntriesInBatchRequestResponse = async ( @@ -1776,13 +1478,11 @@ const deserializeAws_queryTooManyEntriesInBatchRequestResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryTooManyEntriesInBatchRequest(body.Error, context); - const contents: TooManyEntriesInBatchRequest = { - name: "TooManyEntriesInBatchRequest", - $fault: "client", + const exception = new TooManyEntriesInBatchRequest({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryUnsupportedOperationResponse = async ( @@ -1791,13 +1491,11 @@ const deserializeAws_queryUnsupportedOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryUnsupportedOperation(body.Error, context); - const contents: UnsupportedOperation = { - name: "UnsupportedOperation", - $fault: "client", + const exception = new UnsupportedOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryActionNameList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-ssm-contacts/src/index.ts b/clients/client-ssm-contacts/src/index.ts index d9c0665745914..5c6fc46a1ca27 100644 --- a/clients/client-ssm-contacts/src/index.ts +++ b/clients/client-ssm-contacts/src/index.ts @@ -3,3 +3,4 @@ export * from "./SSMContactsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SSMContactsServiceException } from "./models/SSMContactsServiceException"; diff --git a/clients/client-ssm-contacts/src/models/SSMContactsServiceException.ts b/clients/client-ssm-contacts/src/models/SSMContactsServiceException.ts new file mode 100644 index 0000000000000..859633df6eafd --- /dev/null +++ b/clients/client-ssm-contacts/src/models/SSMContactsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SSMContacts service. + */ +export class SSMContactsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSMContactsServiceException.prototype); + } +} diff --git a/clients/client-ssm-contacts/src/models/models_0.ts b/clients/client-ssm-contacts/src/models/models_0.ts index 4497ced560296..e5f6aff08c508 100644 --- a/clients/client-ssm-contacts/src/models/models_0.ts +++ b/clients/client-ssm-contacts/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SSMContactsServiceException as __BaseException } from "./SSMContactsServiceException"; export enum AcceptCodeValidation { ENFORCE = "ENFORCE", @@ -72,32 +75,57 @@ export namespace AcceptPageResult { /** *

You don't have sufficient access to perform this operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

Unexpected error occurred while * processing the request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; /** * Advice to clients on when the call can be safely retried */ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** *

Request references a resource that doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** * Hypothetical resource identifier that was not found @@ -108,14 +136,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * Hypothetical resource type that was not found */ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** * Service Quotas requirement to identify originating service @@ -131,6 +173,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer * Advice to clients on when the call can be safely retried */ RetryAfterSeconds?: number; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } /** @@ -168,9 +225,9 @@ export enum ValidationExceptionReason { *

The input fails to satisfy the constraints specified by an Amazon Web Services * service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** * Reason the request failed validation @@ -181,6 +238,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer * The fields that caused the error */ Fields?: ValidationExceptionField[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Fields = opts.Fields; + } } export interface ActivateContactChannelRequest { @@ -255,9 +326,9 @@ export enum ChannelType { /** *

Updating or deleting a resource causes an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** * Identifier of the resource in use @@ -268,6 +339,20 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * ype of the resource in use */ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } export enum ContactType { @@ -586,18 +671,30 @@ export namespace CreateContactResult { /** *

The operation failed to due an encryption key error.

*/ -export interface DataEncryptionException extends __SmithyException, $MetadataBearer { - name: "DataEncryptionException"; - $fault: "client"; +export class DataEncryptionException extends __BaseException { + readonly name: "DataEncryptionException" = "DataEncryptionException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DataEncryptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DataEncryptionException.prototype); + this.Message = opts.Message; + } } /** *

Request would cause a service quota to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message: string | undefined; /** * Identifier of the resource affected @@ -618,6 +715,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad * Service Quotas requirement to identify originating quota */ ServiceCode: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } export interface CreateContactChannelRequest { diff --git a/clients/client-ssm-contacts/src/protocols/Aws_json1_1.ts b/clients/client-ssm-contacts/src/protocols/Aws_json1_1.ts index 4faa492e47244..06dca9d3b86d9 100644 --- a/clients/client-ssm-contacts/src/protocols/Aws_json1_1.ts +++ b/clients/client-ssm-contacts/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -146,6 +145,7 @@ import { ValidationException, ValidationExceptionField, } from "../models/models_0"; +import { SSMContactsServiceException as __BaseException } from "../models/SSMContactsServiceException"; export const serializeAws_json1_1AcceptPageCommand = async ( input: AcceptPageCommandInput, @@ -523,65 +523,34 @@ const deserializeAws_json1_1AcceptPageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ActivateContactChannelCommand = async ( @@ -609,65 +578,34 @@ const deserializeAws_json1_1ActivateContactChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContactCommand = async ( @@ -695,81 +633,40 @@ const deserializeAws_json1_1CreateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmcontacts#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssmcontacts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateContactChannelCommand = async ( @@ -797,73 +694,37 @@ const deserializeAws_json1_1CreateContactChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmcontacts#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeactivateContactChannelCommand = async ( @@ -891,65 +752,34 @@ const deserializeAws_json1_1DeactivateContactChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContactCommand = async ( @@ -977,65 +807,34 @@ const deserializeAws_json1_1DeleteContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteContactChannelCommand = async ( @@ -1063,65 +862,34 @@ const deserializeAws_json1_1DeleteContactChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEngagementCommand = async ( @@ -1149,73 +917,37 @@ const deserializeAws_json1_1DescribeEngagementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePageCommand = async ( @@ -1243,73 +975,37 @@ const deserializeAws_json1_1DescribePageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContactCommand = async ( @@ -1337,73 +1033,37 @@ const deserializeAws_json1_1GetContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContactChannelCommand = async ( @@ -1431,73 +1091,37 @@ const deserializeAws_json1_1GetContactChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetContactPolicyCommand = async ( @@ -1525,65 +1149,34 @@ const deserializeAws_json1_1GetContactPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListContactChannelsCommand = async ( @@ -1611,73 +1204,37 @@ const deserializeAws_json1_1ListContactChannelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListContactsCommand = async ( @@ -1705,57 +1262,31 @@ const deserializeAws_json1_1ListContactsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListEngagementsCommand = async ( @@ -1783,57 +1314,31 @@ const deserializeAws_json1_1ListEngagementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPageReceiptsCommand = async ( @@ -1861,65 +1366,34 @@ const deserializeAws_json1_1ListPageReceiptsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPagesByContactCommand = async ( @@ -1947,65 +1421,34 @@ const deserializeAws_json1_1ListPagesByContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPagesByEngagementCommand = async ( @@ -2033,65 +1476,34 @@ const deserializeAws_json1_1ListPagesByEngagementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2119,65 +1531,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutContactPolicyCommand = async ( @@ -2205,73 +1586,37 @@ const deserializeAws_json1_1PutContactPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmcontacts#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendActivationCodeCommand = async ( @@ -2299,81 +1644,40 @@ const deserializeAws_json1_1SendActivationCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssmcontacts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartEngagementCommand = async ( @@ -2401,73 +1705,37 @@ const deserializeAws_json1_1StartEngagementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopEngagementCommand = async ( @@ -2495,65 +1763,34 @@ const deserializeAws_json1_1StopEngagementCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2581,73 +1818,37 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssmcontacts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2675,65 +1876,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContactCommand = async ( @@ -2761,81 +1931,40 @@ const deserializeAws_json1_1UpdateContactCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssmcontacts#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateContactChannelCommand = async ( @@ -2863,81 +1992,40 @@ const deserializeAws_json1_1UpdateContactChannelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmcontacts#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmcontacts#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "DataEncryptionException": case "com.amazonaws.ssmcontacts#DataEncryptionException": - response = { - ...(await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DataEncryptionExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmcontacts#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmcontacts#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmcontacts#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmcontacts#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -2946,13 +2034,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -2961,13 +2047,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DataEncryptionExceptionResponse = async ( @@ -2976,13 +2060,11 @@ const deserializeAws_json1_1DataEncryptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DataEncryptionException(body, context); - const contents: DataEncryptionException = { - name: "DataEncryptionException", - $fault: "client", + const exception = new DataEncryptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -2991,13 +2073,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3006,13 +2086,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( @@ -3021,13 +2099,11 @@ const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -3036,13 +2112,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -3051,13 +2125,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AcceptPageRequest = (input: AcceptPageRequest, context: __SerdeContext): any => { diff --git a/clients/client-ssm-incidents/src/index.ts b/clients/client-ssm-incidents/src/index.ts index 8c10018560331..12fffc0f50670 100644 --- a/clients/client-ssm-incidents/src/index.ts +++ b/clients/client-ssm-incidents/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { SSMIncidentsServiceException } from "./models/SSMIncidentsServiceException"; diff --git a/clients/client-ssm-incidents/src/models/SSMIncidentsServiceException.ts b/clients/client-ssm-incidents/src/models/SSMIncidentsServiceException.ts new file mode 100644 index 0000000000000..e588931802156 --- /dev/null +++ b/clients/client-ssm-incidents/src/models/SSMIncidentsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SSMIncidents service. + */ +export class SSMIncidentsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSMIncidentsServiceException.prototype); + } +} diff --git a/clients/client-ssm-incidents/src/models/models_0.ts b/clients/client-ssm-incidents/src/models/models_0.ts index 07e05db2eb32d..f868a3e0ec00b 100644 --- a/clients/client-ssm-incidents/src/models/models_0.ts +++ b/clients/client-ssm-incidents/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SSMIncidentsServiceException as __BaseException } from "./SSMIncidentsServiceException"; /** *

You don't have sufficient access to perform this operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message: string | undefined; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum SsmTargetAccount { @@ -370,10 +383,9 @@ export enum ResourceType { /** *

Updating or deleting a resource causes an inconsistent state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message: string | undefined; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** * The identifier of the requested resource */ @@ -388,6 +400,21 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * If present in the output, the operation can be retried after this time */ retryAfter?: Date; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceIdentifier = opts.resourceIdentifier; + this.resourceType = opts.resourceType; + this.retryAfter = opts.retryAfter; + } } /** @@ -453,10 +480,20 @@ export namespace CreateReplicationSetOutput { *

The request processing has failed because of an unknown error, exception or * failure.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message: string | undefined; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + } } export enum ServiceCode { @@ -466,10 +503,9 @@ export enum ServiceCode { /** *

Request would cause a service quota to be exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message: string | undefined; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** * The identifier for the requested resource */ @@ -489,15 +525,30 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad * Originating quota code */ quotaCode: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceIdentifier = opts.resourceIdentifier; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message: string | undefined; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** * Originating service code */ @@ -507,16 +558,40 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer * Originating quota code */ quotaCode: string | undefined; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } /** *

The input fails to satisfy the constraints specified by an Amazon Web Services * service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message: string | undefined; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } /** @@ -677,10 +752,9 @@ export namespace CreateResponsePlanOutput { /** *

Request references a resource which doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message: string | undefined; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** * The identifier for the requested resource */ @@ -690,6 +764,20 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * The resource type */ resourceType?: ResourceType | string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceIdentifier = opts.resourceIdentifier; + this.resourceType = opts.resourceType; + } } export interface CreateTimelineEventInput { diff --git a/clients/client-ssm-incidents/src/protocols/Aws_restJson1.ts b/clients/client-ssm-incidents/src/protocols/Aws_restJson1.ts index 045e3e0fa71c9..01f6685c5a433 100644 --- a/clients/client-ssm-incidents/src/protocols/Aws_restJson1.ts +++ b/clients/client-ssm-incidents/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -127,6 +126,7 @@ import { UpdateReplicationSetAction, ValidationException, } from "../models/models_0"; +import { SSMIncidentsServiceException as __BaseException } from "../models/SSMIncidentsServiceException"; export const serializeAws_restJson1CreateReplicationSetCommand = async ( input: CreateReplicationSetCommandInput, @@ -980,73 +980,37 @@ const deserializeAws_restJson1CreateReplicationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssmincidents#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateResponsePlanCommand = async ( @@ -1075,73 +1039,37 @@ const deserializeAws_restJson1CreateResponsePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTimelineEventCommand = async ( @@ -1174,73 +1102,37 @@ const deserializeAws_restJson1CreateTimelineEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIncidentRecordCommand = async ( @@ -1265,57 +1157,31 @@ const deserializeAws_restJson1DeleteIncidentRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteReplicationSetCommand = async ( @@ -1340,65 +1206,34 @@ const deserializeAws_restJson1DeleteReplicationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResourcePolicyCommand = async ( @@ -1423,65 +1258,34 @@ const deserializeAws_restJson1DeleteResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteResponsePlanCommand = async ( @@ -1506,57 +1310,31 @@ const deserializeAws_restJson1DeleteResponsePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTimelineEventCommand = async ( @@ -1581,57 +1359,31 @@ const deserializeAws_restJson1DeleteTimelineEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIncidentRecordCommand = async ( @@ -1660,65 +1412,34 @@ const deserializeAws_restJson1GetIncidentRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetReplicationSetCommand = async ( @@ -1747,65 +1468,34 @@ const deserializeAws_restJson1GetReplicationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcePoliciesCommand = async ( @@ -1838,65 +1528,34 @@ const deserializeAws_restJson1GetResourcePoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResponsePlanCommand = async ( @@ -1949,65 +1608,34 @@ const deserializeAws_restJson1GetResponsePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTimelineEventCommand = async ( @@ -2036,65 +1664,34 @@ const deserializeAws_restJson1GetTimelineEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIncidentRecordsCommand = async ( @@ -2130,57 +1727,31 @@ const deserializeAws_restJson1ListIncidentRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListRelatedItemsCommand = async ( @@ -2213,57 +1784,31 @@ const deserializeAws_restJson1ListRelatedItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListReplicationSetsCommand = async ( @@ -2296,57 +1841,31 @@ const deserializeAws_restJson1ListReplicationSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListResponsePlansCommand = async ( @@ -2382,57 +1901,31 @@ const deserializeAws_restJson1ListResponsePlansCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2461,65 +1954,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTimelineEventsCommand = async ( @@ -2552,57 +2014,31 @@ const deserializeAws_restJson1ListTimelineEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutResourcePolicyCommand = async ( @@ -2631,65 +2067,34 @@ const deserializeAws_restJson1PutResourcePolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartIncidentCommand = async ( @@ -2718,73 +2123,37 @@ const deserializeAws_restJson1StartIncidentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2809,81 +2178,40 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssmincidents#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2908,73 +2236,37 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDeletionProtectionCommand = async ( @@ -2999,65 +2291,34 @@ const deserializeAws_restJson1UpdateDeletionProtectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIncidentRecordCommand = async ( @@ -3082,73 +2343,37 @@ const deserializeAws_restJson1UpdateIncidentRecordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateRelatedItemsCommand = async ( @@ -3173,73 +2398,37 @@ const deserializeAws_restJson1UpdateRelatedItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateReplicationSetCommand = async ( @@ -3264,65 +2453,34 @@ const deserializeAws_restJson1UpdateReplicationSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateResponsePlanCommand = async ( @@ -3347,73 +2505,37 @@ const deserializeAws_restJson1UpdateResponsePlanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTimelineEventCommand = async ( @@ -3438,105 +2560,60 @@ const deserializeAws_restJson1UpdateTimelineEventCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssmincidents#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssmincidents#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssmincidents#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssmincidents#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssmincidents#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssmincidents#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceIdentifier: undefined, - resourceType: undefined, - retryAfter: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3550,38 +2627,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.retryAfter !== undefined && data.retryAfter !== null) { contents.retryAfter = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.retryAfter))); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceIdentifier: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3592,23 +2665,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - resourceIdentifier: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3625,21 +2693,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3650,24 +2715,27 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Action = (input: Action, context: __SerdeContext): any => { diff --git a/clients/client-ssm/src/index.ts b/clients/client-ssm/src/index.ts index c9050480e9e23..7a8aa72d3af02 100644 --- a/clients/client-ssm/src/index.ts +++ b/clients/client-ssm/src/index.ts @@ -4,3 +4,4 @@ export * from "./commands"; export * from "./models"; export * from "./pagination"; export * from "./waiters"; +export { SSMServiceException } from "./models/SSMServiceException"; diff --git a/clients/client-ssm/src/models/SSMServiceException.ts b/clients/client-ssm/src/models/SSMServiceException.ts new file mode 100644 index 0000000000000..613ceefac8147 --- /dev/null +++ b/clients/client-ssm/src/models/SSMServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SSM service. + */ +export class SSMServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSMServiceException.prototype); + } +} diff --git a/clients/client-ssm/src/models/models_0.ts b/clients/client-ssm/src/models/models_0.ts index 6c65872f5368e..f0136dc98e324 100644 --- a/clients/client-ssm/src/models/models_0.ts +++ b/clients/client-ssm/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SSMServiceException as __BaseException } from "./SSMServiceException"; /** *

Information includes the Amazon Web Services account ID where the current document is shared and the @@ -206,55 +208,124 @@ export namespace AddTagsToResourceResult { /** *

An error occurred on the server side.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + } } /** *

The resource ID isn't valid. Verify that you entered the correct ID and try again.

*/ -export interface InvalidResourceId extends __SmithyException, $MetadataBearer { - name: "InvalidResourceId"; - $fault: "client"; +export class InvalidResourceId extends __BaseException { + readonly name: "InvalidResourceId" = "InvalidResourceId"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceId.prototype); + } } /** *

The resource type isn't valid. For example, if you are attempting to tag an EC2 instance, * the instance must be a registered managed node.

*/ -export interface InvalidResourceType extends __SmithyException, $MetadataBearer { - name: "InvalidResourceType"; - $fault: "client"; +export class InvalidResourceType extends __BaseException { + readonly name: "InvalidResourceType" = "InvalidResourceType"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceType", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceType.prototype); + } } /** *

The Targets parameter includes too many tags. Remove one or more tags and try * the command again.

*/ -export interface TooManyTagsError extends __SmithyException, $MetadataBearer { - name: "TooManyTagsError"; - $fault: "client"; +export class TooManyTagsError extends __BaseException { + readonly name: "TooManyTagsError" = "TooManyTagsError"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsError.prototype); + } } /** *

There are concurrent updates for a resource that supports one update at a time.

*/ -export interface TooManyUpdates extends __SmithyException, $MetadataBearer { - name: "TooManyUpdates"; - $fault: "client"; +export class TooManyUpdates extends __BaseException { + readonly name: "TooManyUpdates" = "TooManyUpdates"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyUpdates", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyUpdates.prototype); + this.Message = opts.Message; + } } /** *

Error returned if an attempt is made to register a patch group with a patch baseline that is * already registered with a different patch baseline.

*/ -export interface AlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "AlreadyExistsException"; - $fault: "client"; +export class AlreadyExistsException extends __BaseException { + readonly name: "AlreadyExistsException" = "AlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AlreadyExistsException.prototype); + this.Message = opts.Message; + } } export interface AssociateOpsItemRelatedItemRequest { @@ -315,44 +386,98 @@ export namespace AssociateOpsItemRelatedItemResponse { *

A specified parameter argument isn't valid. Verify the available arguments and try * again.

*/ -export interface OpsItemInvalidParameterException extends __SmithyException, $MetadataBearer { - name: "OpsItemInvalidParameterException"; - $fault: "client"; +export class OpsItemInvalidParameterException extends __BaseException { + readonly name: "OpsItemInvalidParameterException" = "OpsItemInvalidParameterException"; + readonly $fault: "client" = "client"; ParameterNames?: string[]; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsItemInvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsItemInvalidParameterException.prototype); + this.ParameterNames = opts.ParameterNames; + this.Message = opts.Message; + } } /** *

The request caused OpsItems to exceed one or more quotas. For information about OpsItem * quotas, see What are the resource limits for OpsCenter?.

*/ -export interface OpsItemLimitExceededException extends __SmithyException, $MetadataBearer { - name: "OpsItemLimitExceededException"; - $fault: "client"; +export class OpsItemLimitExceededException extends __BaseException { + readonly name: "OpsItemLimitExceededException" = "OpsItemLimitExceededException"; + readonly $fault: "client" = "client"; ResourceTypes?: string[]; Limit?: number; LimitType?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsItemLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsItemLimitExceededException.prototype); + this.ResourceTypes = opts.ResourceTypes; + this.Limit = opts.Limit; + this.LimitType = opts.LimitType; + this.Message = opts.Message; + } } /** *

The specified OpsItem ID doesn't exist. Verify the ID and try again.

*/ -export interface OpsItemNotFoundException extends __SmithyException, $MetadataBearer { - name: "OpsItemNotFoundException"; - $fault: "client"; +export class OpsItemNotFoundException extends __BaseException { + readonly name: "OpsItemNotFoundException" = "OpsItemNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsItemNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsItemNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The Amazon Resource Name (ARN) is already associated with the OpsItem.

*/ -export interface OpsItemRelatedItemAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "OpsItemRelatedItemAlreadyExistsException"; - $fault: "client"; +export class OpsItemRelatedItemAlreadyExistsException extends __BaseException { + readonly name: "OpsItemRelatedItemAlreadyExistsException" = "OpsItemRelatedItemAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; ResourceUri?: string; OpsItemId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsItemRelatedItemAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsItemRelatedItemAlreadyExistsException.prototype); + this.Message = opts.Message; + this.ResourceUri = opts.ResourceUri; + this.OpsItemId = opts.OpsItemId; + } } /** @@ -398,17 +523,39 @@ export namespace CancelCommandResult { /** *

You can't specify a managed node ID in more than one association.

*/ -export interface DuplicateInstanceId extends __SmithyException, $MetadataBearer { - name: "DuplicateInstanceId"; - $fault: "client"; +export class DuplicateInstanceId extends __BaseException { + readonly name: "DuplicateInstanceId" = "DuplicateInstanceId"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateInstanceId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateInstanceId.prototype); + } } /** *

The specified command ID isn't valid. Verify the ID and try again.

*/ -export interface InvalidCommandId extends __SmithyException, $MetadataBearer { - name: "InvalidCommandId"; - $fault: "client"; +export class InvalidCommandId extends __BaseException { + readonly name: "InvalidCommandId" = "InvalidCommandId"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCommandId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCommandId.prototype); + } } /** @@ -431,10 +578,22 @@ export interface InvalidCommandId extends __SmithyException, $MetadataBearer { * * */ -export interface InvalidInstanceId extends __SmithyException, $MetadataBearer { - name: "InvalidInstanceId"; - $fault: "client"; +export class InvalidInstanceId extends __BaseException { + readonly name: "InvalidInstanceId" = "InvalidInstanceId"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInstanceId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInstanceId.prototype); + this.Message = opts.Message; + } } export interface CancelMaintenanceWindowExecutionRequest { @@ -475,10 +634,22 @@ export namespace CancelMaintenanceWindowExecutionResult { *

For information about resource quotas in Amazon Web Services Systems Manager, see Systems Manager service quotas in the * Amazon Web Services General Reference.

*/ -export interface DoesNotExistException extends __SmithyException, $MetadataBearer { - name: "DoesNotExistException"; - $fault: "client"; +export class DoesNotExistException extends __BaseException { + readonly name: "DoesNotExistException" = "DoesNotExistException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DoesNotExistException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DoesNotExistException.prototype); + this.Message = opts.Message; + } } /** @@ -617,26 +788,60 @@ export namespace CreateActivationResult { *

You must specify values for all required parameters in the Amazon Web Services Systems Manager document (SSM * document). You can only supply values to parameters defined in the SSM document.

*/ -export interface InvalidParameters extends __SmithyException, $MetadataBearer { - name: "InvalidParameters"; - $fault: "client"; +export class InvalidParameters extends __BaseException { + readonly name: "InvalidParameters" = "InvalidParameters"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameters", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameters.prototype); + this.Message = opts.Message; + } } /** *

The specified association already exists.

*/ -export interface AssociationAlreadyExists extends __SmithyException, $MetadataBearer { - name: "AssociationAlreadyExists"; - $fault: "client"; +export class AssociationAlreadyExists extends __BaseException { + readonly name: "AssociationAlreadyExists" = "AssociationAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociationAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociationAlreadyExists.prototype); + } } /** *

You can have at most 2,000 active associations.

*/ -export interface AssociationLimitExceeded extends __SmithyException, $MetadataBearer { - name: "AssociationLimitExceeded"; - $fault: "client"; +export class AssociationLimitExceeded extends __BaseException { + readonly name: "AssociationLimitExceeded" = "AssociationLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociationLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociationLimitExceeded.prototype); + } } export enum AssociationComplianceSeverity { @@ -1292,60 +1497,131 @@ export namespace CreateAssociationResult { /** *

The specified SSM document doesn't exist.

*/ -export interface InvalidDocument extends __SmithyException, $MetadataBearer { - name: "InvalidDocument"; - $fault: "client"; +export class InvalidDocument extends __BaseException { + readonly name: "InvalidDocument" = "InvalidDocument"; + readonly $fault: "client" = "client"; /** *

The SSM document doesn't exist or the document isn't available to the user. This exception * can be issued by various API operations.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDocument", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDocument.prototype); + this.Message = opts.Message; + } } /** *

The document version isn't valid or doesn't exist.

*/ -export interface InvalidDocumentVersion extends __SmithyException, $MetadataBearer { - name: "InvalidDocumentVersion"; - $fault: "client"; +export class InvalidDocumentVersion extends __BaseException { + readonly name: "InvalidDocumentVersion" = "InvalidDocumentVersion"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDocumentVersion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDocumentVersion.prototype); + this.Message = opts.Message; + } } /** *

The output location isn't valid or doesn't exist.

*/ -export interface InvalidOutputLocation extends __SmithyException, $MetadataBearer { - name: "InvalidOutputLocation"; - $fault: "client"; +export class InvalidOutputLocation extends __BaseException { + readonly name: "InvalidOutputLocation" = "InvalidOutputLocation"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOutputLocation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOutputLocation.prototype); + } } /** *

The schedule is invalid. Verify your cron or rate expression and try again.

*/ -export interface InvalidSchedule extends __SmithyException, $MetadataBearer { - name: "InvalidSchedule"; - $fault: "client"; +export class InvalidSchedule extends __BaseException { + readonly name: "InvalidSchedule" = "InvalidSchedule"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidSchedule", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidSchedule.prototype); + this.Message = opts.Message; + } } /** *

The target isn't valid or doesn't exist. It might not be configured for Systems Manager or you might * not have permission to perform the operation.

*/ -export interface InvalidTarget extends __SmithyException, $MetadataBearer { - name: "InvalidTarget"; - $fault: "client"; +export class InvalidTarget extends __BaseException { + readonly name: "InvalidTarget" = "InvalidTarget"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTarget", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTarget.prototype); + this.Message = opts.Message; + } } /** *

The document doesn't support the platform type of the given managed node ID(s). For example, * you sent an document for a Windows managed node to a Linux node.

*/ -export interface UnsupportedPlatformType extends __SmithyException, $MetadataBearer { - name: "UnsupportedPlatformType"; - $fault: "client"; +export class UnsupportedPlatformType extends __BaseException { + readonly name: "UnsupportedPlatformType" = "UnsupportedPlatformType"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedPlatformType", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedPlatformType.prototype); + this.Message = opts.Message; + } } /** @@ -2141,49 +2417,109 @@ export namespace CreateDocumentResult { /** *

The specified document already exists.

*/ -export interface DocumentAlreadyExists extends __SmithyException, $MetadataBearer { - name: "DocumentAlreadyExists"; - $fault: "client"; +export class DocumentAlreadyExists extends __BaseException { + readonly name: "DocumentAlreadyExists" = "DocumentAlreadyExists"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentAlreadyExists.prototype); + this.Message = opts.Message; + } } /** *

You can have at most 500 active SSM documents.

*/ -export interface DocumentLimitExceeded extends __SmithyException, $MetadataBearer { - name: "DocumentLimitExceeded"; - $fault: "client"; +export class DocumentLimitExceeded extends __BaseException { + readonly name: "DocumentLimitExceeded" = "DocumentLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentLimitExceeded.prototype); + this.Message = opts.Message; + } } /** *

The content for the document isn't valid.

*/ -export interface InvalidDocumentContent extends __SmithyException, $MetadataBearer { - name: "InvalidDocumentContent"; - $fault: "client"; +export class InvalidDocumentContent extends __BaseException { + readonly name: "InvalidDocumentContent" = "InvalidDocumentContent"; + readonly $fault: "client" = "client"; /** *

A description of the validation error.

*/ Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDocumentContent", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDocumentContent.prototype); + this.Message = opts.Message; + } } /** *

The version of the document schema isn't supported.

*/ -export interface InvalidDocumentSchemaVersion extends __SmithyException, $MetadataBearer { - name: "InvalidDocumentSchemaVersion"; - $fault: "client"; +export class InvalidDocumentSchemaVersion extends __BaseException { + readonly name: "InvalidDocumentSchemaVersion" = "InvalidDocumentSchemaVersion"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDocumentSchemaVersion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDocumentSchemaVersion.prototype); + this.Message = opts.Message; + } } /** *

The size limit of a document is 64 KB.

*/ -export interface MaxDocumentSizeExceeded extends __SmithyException, $MetadataBearer { - name: "MaxDocumentSizeExceeded"; - $fault: "client"; +export class MaxDocumentSizeExceeded extends __BaseException { + readonly name: "MaxDocumentSizeExceeded" = "MaxDocumentSizeExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaxDocumentSizeExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaxDocumentSizeExceeded.prototype); + this.Message = opts.Message; + } } export interface CreateMaintenanceWindowRequest { @@ -2323,10 +2659,22 @@ export namespace CreateMaintenanceWindowResult { *

Error returned when an idempotent operation is retried and the parameters don't match the * original call to the API with the same idempotency token.

*/ -export interface IdempotentParameterMismatch extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatch"; - $fault: "client"; +export class IdempotentParameterMismatch extends __BaseException { + readonly name: "IdempotentParameterMismatch" = "IdempotentParameterMismatch"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatch", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatch.prototype); + this.Message = opts.Message; + } } /** @@ -2335,10 +2683,22 @@ export interface IdempotentParameterMismatch extends __SmithyException, $Metadat *

For information about resource quotas in Systems Manager, see Systems Manager service quotas in the * Amazon Web Services General Reference.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -2557,11 +2917,24 @@ export namespace CreateOpsItemResponse { /** *

The OpsItem already exists.

*/ -export interface OpsItemAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "OpsItemAlreadyExistsException"; - $fault: "client"; +export class OpsItemAlreadyExistsException extends __BaseException { + readonly name: "OpsItemAlreadyExistsException" = "OpsItemAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; OpsItemId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsItemAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsItemAlreadyExistsException.prototype); + this.Message = opts.Message; + this.OpsItemId = opts.OpsItemId; + } } /** @@ -2644,39 +3017,79 @@ export namespace CreateOpsMetadataResult { /** *

An OpsMetadata object already exists for the selected resource.

*/ -export interface OpsMetadataAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "OpsMetadataAlreadyExistsException"; - $fault: "client"; - message?: string; +export class OpsMetadataAlreadyExistsException extends __BaseException { + readonly name: "OpsMetadataAlreadyExistsException" = "OpsMetadataAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsMetadataAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsMetadataAlreadyExistsException.prototype); + } } /** *

One of the arguments passed is invalid.

*/ -export interface OpsMetadataInvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "OpsMetadataInvalidArgumentException"; - $fault: "client"; - message?: string; +export class OpsMetadataInvalidArgumentException extends __BaseException { + readonly name: "OpsMetadataInvalidArgumentException" = "OpsMetadataInvalidArgumentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsMetadataInvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsMetadataInvalidArgumentException.prototype); + } } /** *

Your account reached the maximum number of OpsMetadata objects allowed by Application Manager. The * maximum is 200 OpsMetadata objects. Delete one or more OpsMetadata object and try again.

*/ -export interface OpsMetadataLimitExceededException extends __SmithyException, $MetadataBearer { - name: "OpsMetadataLimitExceededException"; - $fault: "client"; - message?: string; +export class OpsMetadataLimitExceededException extends __BaseException { + readonly name: "OpsMetadataLimitExceededException" = "OpsMetadataLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsMetadataLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsMetadataLimitExceededException.prototype); + } } /** *

The system is processing too many concurrent updates. Wait a few moments and try * again.

*/ -export interface OpsMetadataTooManyUpdatesException extends __SmithyException, $MetadataBearer { - name: "OpsMetadataTooManyUpdatesException"; - $fault: "client"; - message?: string; +export class OpsMetadataTooManyUpdatesException extends __BaseException { + readonly name: "OpsMetadataTooManyUpdatesException" = "OpsMetadataTooManyUpdatesException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsMetadataTooManyUpdatesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsMetadataTooManyUpdatesException.prototype); + } } export enum PatchComplianceLevel { @@ -3265,28 +3678,64 @@ export namespace CreateResourceDataSyncResult { /** *

A sync configuration with the same name already exists.

*/ -export interface ResourceDataSyncAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceDataSyncAlreadyExistsException"; - $fault: "client"; +export class ResourceDataSyncAlreadyExistsException extends __BaseException { + readonly name: "ResourceDataSyncAlreadyExistsException" = "ResourceDataSyncAlreadyExistsException"; + readonly $fault: "client" = "client"; SyncName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDataSyncAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDataSyncAlreadyExistsException.prototype); + this.SyncName = opts.SyncName; + } } /** *

You have exceeded the allowed maximum sync configurations.

*/ -export interface ResourceDataSyncCountExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceDataSyncCountExceededException"; - $fault: "client"; +export class ResourceDataSyncCountExceededException extends __BaseException { + readonly name: "ResourceDataSyncCountExceededException" = "ResourceDataSyncCountExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDataSyncCountExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDataSyncCountExceededException.prototype); + this.Message = opts.Message; + } } /** *

The specified sync configuration is invalid.

*/ -export interface ResourceDataSyncInvalidConfigurationException extends __SmithyException, $MetadataBearer { - name: "ResourceDataSyncInvalidConfigurationException"; - $fault: "client"; +export class ResourceDataSyncInvalidConfigurationException extends __BaseException { + readonly name: "ResourceDataSyncInvalidConfigurationException" = "ResourceDataSyncInvalidConfigurationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDataSyncInvalidConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDataSyncInvalidConfigurationException.prototype); + this.Message = opts.Message; + } } export interface DeleteActivationRequest { @@ -3320,29 +3769,65 @@ export namespace DeleteActivationResult { *

The activation isn't valid. The activation might have been deleted, or the ActivationId and * the ActivationCode don't match.

*/ -export interface InvalidActivation extends __SmithyException, $MetadataBearer { - name: "InvalidActivation"; - $fault: "client"; +export class InvalidActivation extends __BaseException { + readonly name: "InvalidActivation" = "InvalidActivation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidActivation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidActivation.prototype); + this.Message = opts.Message; + } } /** *

The activation ID isn't valid. Verify the you entered the correct ActivationId or * ActivationCode and try again.

*/ -export interface InvalidActivationId extends __SmithyException, $MetadataBearer { - name: "InvalidActivationId"; - $fault: "client"; +export class InvalidActivationId extends __BaseException { + readonly name: "InvalidActivationId" = "InvalidActivationId"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidActivationId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidActivationId.prototype); + this.Message = opts.Message; + } } /** *

The specified association doesn't exist.

*/ -export interface AssociationDoesNotExist extends __SmithyException, $MetadataBearer { - name: "AssociationDoesNotExist"; - $fault: "client"; +export class AssociationDoesNotExist extends __BaseException { + readonly name: "AssociationDoesNotExist" = "AssociationDoesNotExist"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociationDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociationDoesNotExist.prototype); + this.Message = opts.Message; + } } export interface DeleteAssociationRequest { @@ -3396,9 +3881,20 @@ export namespace DeleteAssociationResult { /** *

You must disassociate a document from all managed nodes before you can delete it.

*/ -export interface AssociatedInstances extends __SmithyException, $MetadataBearer { - name: "AssociatedInstances"; - $fault: "client"; +export class AssociatedInstances extends __BaseException { + readonly name: "AssociatedInstances" = "AssociatedInstances"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociatedInstances", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociatedInstances.prototype); + } } export interface DeleteDocumentRequest { @@ -3452,10 +3948,22 @@ export namespace DeleteDocumentResult { *

You attempted to delete a document while it is still shared. You must stop sharing the * document before you can delete it.

*/ -export interface InvalidDocumentOperation extends __SmithyException, $MetadataBearer { - name: "InvalidDocumentOperation"; - $fault: "client"; +export class InvalidDocumentOperation extends __BaseException { + readonly name: "InvalidDocumentOperation" = "InvalidDocumentOperation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDocumentOperation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDocumentOperation.prototype); + this.Message = opts.Message; + } } export enum InventorySchemaDeleteOption { @@ -3596,37 +4104,85 @@ export namespace DeleteInventoryResult { *

One or more of the parameters specified for the delete operation isn't valid. Verify all * parameters and try again.

*/ -export interface InvalidDeleteInventoryParametersException extends __SmithyException, $MetadataBearer { - name: "InvalidDeleteInventoryParametersException"; - $fault: "client"; +export class InvalidDeleteInventoryParametersException extends __BaseException { + readonly name: "InvalidDeleteInventoryParametersException" = "InvalidDeleteInventoryParametersException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeleteInventoryParametersException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeleteInventoryParametersException.prototype); + this.Message = opts.Message; + } } /** *

The request isn't valid.

*/ -export interface InvalidInventoryRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidInventoryRequestException"; - $fault: "client"; +export class InvalidInventoryRequestException extends __BaseException { + readonly name: "InvalidInventoryRequestException" = "InvalidInventoryRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInventoryRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInventoryRequestException.prototype); + this.Message = opts.Message; + } } /** *

The delete inventory option specified isn't valid. Verify the option and try again.

*/ -export interface InvalidOptionException extends __SmithyException, $MetadataBearer { - name: "InvalidOptionException"; - $fault: "client"; +export class InvalidOptionException extends __BaseException { + readonly name: "InvalidOptionException" = "InvalidOptionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOptionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOptionException.prototype); + this.Message = opts.Message; + } } /** *

The parameter type name isn't valid.

*/ -export interface InvalidTypeNameException extends __SmithyException, $MetadataBearer { - name: "InvalidTypeNameException"; - $fault: "client"; +export class InvalidTypeNameException extends __BaseException { + readonly name: "InvalidTypeNameException" = "InvalidTypeNameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidTypeNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidTypeNameException.prototype); + this.Message = opts.Message; + } } export interface DeleteMaintenanceWindowRequest { @@ -3691,10 +4247,20 @@ export namespace DeleteOpsMetadataResult { /** *

The OpsMetadata object doesn't exist.

*/ -export interface OpsMetadataNotFoundException extends __SmithyException, $MetadataBearer { - name: "OpsMetadataNotFoundException"; - $fault: "client"; - message?: string; +export class OpsMetadataNotFoundException extends __BaseException { + readonly name: "OpsMetadataNotFoundException" = "OpsMetadataNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsMetadataNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsMetadataNotFoundException.prototype); + } } export interface DeleteParameterRequest { @@ -3727,10 +4293,20 @@ export namespace DeleteParameterResult { /** *

The parameter couldn't be found. Verify the name and try again.

*/ -export interface ParameterNotFound extends __SmithyException, $MetadataBearer { - name: "ParameterNotFound"; - $fault: "client"; - message?: string; +export class ParameterNotFound extends __BaseException { + readonly name: "ParameterNotFound" = "ParameterNotFound"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterNotFound.prototype); + } } export interface DeleteParametersRequest { @@ -3807,10 +4383,22 @@ export namespace DeletePatchBaselineResult { *

Error returned if an attempt is made to delete a patch baseline that is registered for a * patch group.

*/ -export interface ResourceInUseException extends __SmithyException, $MetadataBearer { - name: "ResourceInUseException"; - $fault: "client"; +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + } } export interface DeleteResourceDataSyncRequest { @@ -3848,12 +4436,26 @@ export namespace DeleteResourceDataSyncResult { /** *

The specified sync name wasn't found.

*/ -export interface ResourceDataSyncNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceDataSyncNotFoundException"; - $fault: "client"; +export class ResourceDataSyncNotFoundException extends __BaseException { + readonly name: "ResourceDataSyncNotFoundException" = "ResourceDataSyncNotFoundException"; + readonly $fault: "client" = "client"; SyncName?: string; SyncType?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDataSyncNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDataSyncNotFoundException.prototype); + this.SyncName = opts.SyncName; + this.SyncType = opts.SyncType; + this.Message = opts.Message; + } } export interface DeregisterManagedInstanceRequest { @@ -3979,10 +4581,22 @@ export namespace DeregisterTargetFromMaintenanceWindowResult { *

You specified the Safe option for the DeregisterTargetFromMaintenanceWindow * operation, but the target is still referenced in a task.

*/ -export interface TargetInUseException extends __SmithyException, $MetadataBearer { - name: "TargetInUseException"; - $fault: "client"; +export class TargetInUseException extends __BaseException { + readonly name: "TargetInUseException" = "TargetInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetInUseException.prototype); + this.Message = opts.Message; + } } export interface DeregisterTaskFromMaintenanceWindowRequest { @@ -4109,19 +4723,43 @@ export namespace DescribeActivationsResult { /** *

The filter name isn't valid. Verify the you entered the correct name and try again.

*/ -export interface InvalidFilter extends __SmithyException, $MetadataBearer { - name: "InvalidFilter"; - $fault: "client"; +export class InvalidFilter extends __BaseException { + readonly name: "InvalidFilter" = "InvalidFilter"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilter", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilter.prototype); + this.Message = opts.Message; + } } /** *

The specified token isn't valid.

*/ -export interface InvalidNextToken extends __SmithyException, $MetadataBearer { - name: "InvalidNextToken"; - $fault: "client"; +export class InvalidNextToken extends __BaseException { + readonly name: "InvalidNextToken" = "InvalidNextToken"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextToken", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextToken.prototype); + this.Message = opts.Message; + } } export interface DescribeAssociationRequest { @@ -4182,10 +4820,22 @@ export namespace DescribeAssociationResult { * an association according to the association ID. Or, use the $LATEST parameter to * view the latest version of the association.

*/ -export interface InvalidAssociationVersion extends __SmithyException, $MetadataBearer { - name: "InvalidAssociationVersion"; - $fault: "client"; +export class InvalidAssociationVersion extends __BaseException { + readonly name: "InvalidAssociationVersion" = "InvalidAssociationVersion"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAssociationVersion", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAssociationVersion.prototype); + this.Message = opts.Message; + } } export enum AssociationExecutionFilterKey { @@ -4343,10 +4993,22 @@ export namespace DescribeAssociationExecutionsResult { /** *

The specified execution ID doesn't exist. Verify the ID number and try again.

*/ -export interface AssociationExecutionDoesNotExist extends __SmithyException, $MetadataBearer { - name: "AssociationExecutionDoesNotExist"; - $fault: "client"; +export class AssociationExecutionDoesNotExist extends __BaseException { + readonly name: "AssociationExecutionDoesNotExist" = "AssociationExecutionDoesNotExist"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociationExecutionDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociationExecutionDoesNotExist.prototype); + this.Message = opts.Message; + } } export enum AssociationExecutionTargetsFilterKey { @@ -4909,28 +5571,63 @@ export namespace DescribeAutomationExecutionsResult { /** *

The specified key isn't valid.

*/ -export interface InvalidFilterKey extends __SmithyException, $MetadataBearer { - name: "InvalidFilterKey"; - $fault: "client"; +export class InvalidFilterKey extends __BaseException { + readonly name: "InvalidFilterKey" = "InvalidFilterKey"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilterKey", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilterKey.prototype); + } } /** *

The filter value isn't valid. Verify the value and try again.

*/ -export interface InvalidFilterValue extends __SmithyException, $MetadataBearer { - name: "InvalidFilterValue"; - $fault: "client"; +export class InvalidFilterValue extends __BaseException { + readonly name: "InvalidFilterValue" = "InvalidFilterValue"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilterValue", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilterValue.prototype); + this.Message = opts.Message; + } } /** *

There is no automation execution information for the requested automation execution * ID.

*/ -export interface AutomationExecutionNotFoundException extends __SmithyException, $MetadataBearer { - name: "AutomationExecutionNotFoundException"; - $fault: "client"; +export class AutomationExecutionNotFoundException extends __BaseException { + readonly name: "AutomationExecutionNotFoundException" = "AutomationExecutionNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationExecutionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationExecutionNotFoundException.prototype); + this.Message = opts.Message; + } } export enum StepExecutionFilterKey { @@ -5738,10 +6435,22 @@ export namespace DescribeDocumentPermissionResponse { *

The permission type isn't supported. Share is the only supported * permission type.

*/ -export interface InvalidPermissionType extends __SmithyException, $MetadataBearer { - name: "InvalidPermissionType"; - $fault: "client"; +export class InvalidPermissionType extends __BaseException { + readonly name: "InvalidPermissionType" = "InvalidPermissionType"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPermissionType", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPermissionType.prototype); + this.Message = opts.Message; + } } export interface DescribeEffectiveInstanceAssociationsRequest { @@ -5949,10 +6658,22 @@ export namespace DescribeEffectivePatchesForPatchBaselineResult { *

The operating systems you specified isn't supported, or the operation isn't supported for * the operating system.

*/ -export interface UnsupportedOperatingSystem extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperatingSystem"; - $fault: "client"; +export class UnsupportedOperatingSystem extends __BaseException { + readonly name: "UnsupportedOperatingSystem" = "UnsupportedOperatingSystem"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperatingSystem", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperatingSystem.prototype); + this.Message = opts.Message; + } } export interface DescribeInstanceAssociationsStatusRequest { @@ -6438,10 +7159,20 @@ export namespace DescribeInstanceInformationResult { /** *

The specified filter value isn't valid.

*/ -export interface InvalidInstanceInformationFilterValue extends __SmithyException, $MetadataBearer { - name: "InvalidInstanceInformationFilterValue"; - $fault: "client"; - message?: string; +export class InvalidInstanceInformationFilterValue extends __BaseException { + readonly name: "InvalidInstanceInformationFilterValue" = "InvalidInstanceInformationFilterValue"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInstanceInformationFilterValue", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInstanceInformationFilterValue.prototype); + } } export interface DescribeInstancePatchesRequest { @@ -7153,10 +7884,22 @@ export namespace DescribeInventoryDeletionsResult { *

The ID specified for the delete operation doesn't exist or isn't valid. Verify the ID and * try again.

*/ -export interface InvalidDeletionIdException extends __SmithyException, $MetadataBearer { - name: "InvalidDeletionIdException"; - $fault: "client"; +export class InvalidDeletionIdException extends __BaseException { + readonly name: "InvalidDeletionIdException" = "InvalidDeletionIdException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDeletionIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDeletionIdException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-ssm/src/models/models_1.ts b/clients/client-ssm/src/models/models_1.ts index 6e25f945e03dc..fd446e6f2f31d 100644 --- a/clients/client-ssm/src/models/models_1.ts +++ b/clients/client-ssm/src/models/models_1.ts @@ -1,5 +1,5 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { AssociationComplianceSeverity, @@ -52,6 +52,7 @@ import { Target, TargetLocation, } from "./models_0"; +import { SSMServiceException as __BaseException } from "./SSMServiceException"; export enum ParameterType { SECURE_STRING = "SecureString", @@ -157,14 +158,20 @@ export namespace DescribeParametersResult { *

The specified filter option isn't valid. Valid options are Equals and BeginsWith. For Path * filter, valid options are Recursive and OneLevel.

*/ -export interface InvalidFilterOption extends __SmithyException, $MetadataBearer { - name: "InvalidFilterOption"; - $fault: "client"; +export class InvalidFilterOption extends __BaseException { + readonly name: "InvalidFilterOption" = "InvalidFilterOption"; + readonly $fault: "client" = "client"; /** - *

The specified filter option isn't valid. Valid options are Equals and BeginsWith. For Path - * filter, valid options are Recursive and OneLevel.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilterOption", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilterOption.prototype); + } } export interface DescribePatchBaselinesRequest { @@ -852,10 +859,22 @@ export namespace DisassociateOpsItemRelatedItemResponse { *

The association wasn't found using the parameters you specified in the call. Verify the * information and try again.

*/ -export interface OpsItemRelatedItemAssociationNotFoundException extends __SmithyException, $MetadataBearer { - name: "OpsItemRelatedItemAssociationNotFoundException"; - $fault: "client"; +export class OpsItemRelatedItemAssociationNotFoundException extends __BaseException { + readonly name: "OpsItemRelatedItemAssociationNotFoundException" = "OpsItemRelatedItemAssociationNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsItemRelatedItemAssociationNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsItemRelatedItemAssociationNotFoundException.prototype); + this.Message = opts.Message; + } } export interface GetAutomationExecutionRequest { @@ -1182,19 +1201,43 @@ export namespace GetCalendarStateResponse { *

The SSM document type isn't valid. Valid document types are described in the * DocumentType property.

*/ -export interface InvalidDocumentType extends __SmithyException, $MetadataBearer { - name: "InvalidDocumentType"; - $fault: "client"; +export class InvalidDocumentType extends __BaseException { + readonly name: "InvalidDocumentType" = "InvalidDocumentType"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidDocumentType", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidDocumentType.prototype); + this.Message = opts.Message; + } } /** *

The calendar entry contained in the specified SSM document isn't supported.

*/ -export interface UnsupportedCalendarException extends __SmithyException, $MetadataBearer { - name: "UnsupportedCalendarException"; - $fault: "client"; +export class UnsupportedCalendarException extends __BaseException { + readonly name: "UnsupportedCalendarException" = "UnsupportedCalendarException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedCalendarException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedCalendarException.prototype); + this.Message = opts.Message; + } } export interface GetCommandInvocationRequest { @@ -1450,18 +1493,40 @@ export namespace GetCommandInvocationResult { /** *

The plugin name isn't valid.

*/ -export interface InvalidPluginName extends __SmithyException, $MetadataBearer { - name: "InvalidPluginName"; - $fault: "client"; +export class InvalidPluginName extends __BaseException { + readonly name: "InvalidPluginName" = "InvalidPluginName"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPluginName", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPluginName.prototype); + } } /** *

The command ID and managed node ID you specified didn't match any invocations. Verify the * command ID and the managed node ID and try again.

*/ -export interface InvocationDoesNotExist extends __SmithyException, $MetadataBearer { - name: "InvocationDoesNotExist"; - $fault: "client"; +export class InvocationDoesNotExist extends __BaseException { + readonly name: "InvocationDoesNotExist" = "InvocationDoesNotExist"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvocationDoesNotExist", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvocationDoesNotExist.prototype); + } } export interface GetConnectionStatusRequest { @@ -1682,10 +1747,22 @@ export namespace GetDeployablePatchSnapshotForInstanceResult { * you must enable advanced instances. For more information, see Enabling * the advanced-instances tier in the Amazon Web Services Systems Manager User Guide.

*/ -export interface UnsupportedFeatureRequiredException extends __SmithyException, $MetadataBearer { - name: "UnsupportedFeatureRequiredException"; - $fault: "client"; +export class UnsupportedFeatureRequiredException extends __BaseException { + readonly name: "UnsupportedFeatureRequiredException" = "UnsupportedFeatureRequiredException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedFeatureRequiredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedFeatureRequiredException.prototype); + this.Message = opts.Message; + } } export interface GetDocumentRequest { @@ -2039,28 +2116,64 @@ export namespace GetInventoryResult { * valid inventory type such as AWS:Application or * AWS:InstanceInformation.

*/ -export interface InvalidAggregatorException extends __SmithyException, $MetadataBearer { - name: "InvalidAggregatorException"; - $fault: "client"; +export class InvalidAggregatorException extends __BaseException { + readonly name: "InvalidAggregatorException" = "InvalidAggregatorException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAggregatorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAggregatorException.prototype); + this.Message = opts.Message; + } } /** *

The specified inventory group isn't valid.

*/ -export interface InvalidInventoryGroupException extends __SmithyException, $MetadataBearer { - name: "InvalidInventoryGroupException"; - $fault: "client"; +export class InvalidInventoryGroupException extends __BaseException { + readonly name: "InvalidInventoryGroupException" = "InvalidInventoryGroupException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInventoryGroupException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInventoryGroupException.prototype); + this.Message = opts.Message; + } } /** *

The specified inventory item result attribute isn't valid.

*/ -export interface InvalidResultAttributeException extends __SmithyException, $MetadataBearer { - name: "InvalidResultAttributeException"; - $fault: "client"; +export class InvalidResultAttributeException extends __BaseException { + readonly name: "InvalidResultAttributeException" = "InvalidResultAttributeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResultAttributeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResultAttributeException.prototype); + this.Message = opts.Message; + } } export interface GetInventorySchemaRequest { @@ -3548,20 +3661,40 @@ export namespace GetParameterResult { /** *

The query key ID isn't valid.

*/ -export interface InvalidKeyId extends __SmithyException, $MetadataBearer { - name: "InvalidKeyId"; - $fault: "client"; - message?: string; +export class InvalidKeyId extends __BaseException { + readonly name: "InvalidKeyId" = "InvalidKeyId"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKeyId", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKeyId.prototype); + } } /** *

The specified parameter version wasn't found. Verify the parameter name and version, and try * again.

*/ -export interface ParameterVersionNotFound extends __SmithyException, $MetadataBearer { - name: "ParameterVersionNotFound"; - $fault: "client"; - message?: string; +export class ParameterVersionNotFound extends __BaseException { + readonly name: "ParameterVersionNotFound" = "ParameterVersionNotFound"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterVersionNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterVersionNotFound.prototype); + } } export interface GetParameterHistoryRequest { @@ -4146,10 +4279,22 @@ export namespace GetServiceSettingResult { *

The specified service setting wasn't found. Either the service name or the setting hasn't * been provisioned by the Amazon Web Services service team.

*/ -export interface ServiceSettingNotFound extends __SmithyException, $MetadataBearer { - name: "ServiceSettingNotFound"; - $fault: "client"; +export class ServiceSettingNotFound extends __BaseException { + readonly name: "ServiceSettingNotFound" = "ServiceSettingNotFound"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceSettingNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceSettingNotFound.prototype); + this.Message = opts.Message; + } } export interface LabelParameterVersionRequest { @@ -4205,10 +4350,20 @@ export namespace LabelParameterVersionResult { /** *

A parameter version can have a maximum of ten labels.

*/ -export interface ParameterVersionLabelLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ParameterVersionLabelLimitExceeded"; - $fault: "client"; - message?: string; +export class ParameterVersionLabelLimitExceeded extends __BaseException { + readonly name: "ParameterVersionLabelLimitExceeded" = "ParameterVersionLabelLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterVersionLabelLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterVersionLabelLimitExceeded.prototype); + } } export enum AssociationFilterKey { @@ -7330,10 +7485,22 @@ export namespace ListTagsForResourceResult { * with a maximum of 20 accounts. You can publicly share up to five documents. If you need to * increase this limit, contact Amazon Web Services Support.

*/ -export interface DocumentPermissionLimit extends __SmithyException, $MetadataBearer { - name: "DocumentPermissionLimit"; - $fault: "client"; +export class DocumentPermissionLimit extends __BaseException { + readonly name: "DocumentPermissionLimit" = "DocumentPermissionLimit"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentPermissionLimit", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentPermissionLimit.prototype); + this.Message = opts.Message; + } } export interface ModifyDocumentPermissionRequest { @@ -7393,30 +7560,68 @@ export namespace ModifyDocumentPermissionResponse { *

You specified too many custom compliance types. You can specify a maximum of 10 different * types.

*/ -export interface ComplianceTypeCountLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ComplianceTypeCountLimitExceededException"; - $fault: "client"; +export class ComplianceTypeCountLimitExceededException extends __BaseException { + readonly name: "ComplianceTypeCountLimitExceededException" = "ComplianceTypeCountLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplianceTypeCountLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplianceTypeCountLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

One or more content items isn't valid.

*/ -export interface InvalidItemContentException extends __SmithyException, $MetadataBearer { - name: "InvalidItemContentException"; - $fault: "client"; +export class InvalidItemContentException extends __BaseException { + readonly name: "InvalidItemContentException" = "InvalidItemContentException"; + readonly $fault: "client" = "client"; TypeName?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidItemContentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidItemContentException.prototype); + this.TypeName = opts.TypeName; + this.Message = opts.Message; + } } /** *

The inventory item size has exceeded the size limit.

*/ -export interface ItemSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ItemSizeLimitExceededException"; - $fault: "client"; +export class ItemSizeLimitExceededException extends __BaseException { + readonly name: "ItemSizeLimitExceededException" = "ItemSizeLimitExceededException"; + readonly $fault: "client" = "client"; TypeName?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ItemSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ItemSizeLimitExceededException.prototype); + this.TypeName = opts.TypeName; + this.Message = opts.Message; + } } /** @@ -7544,40 +7749,89 @@ export namespace PutComplianceItemsResult { /** *

The size of inventory data has exceeded the total size limit for the resource.

*/ -export interface TotalSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TotalSizeLimitExceededException"; - $fault: "client"; +export class TotalSizeLimitExceededException extends __BaseException { + readonly name: "TotalSizeLimitExceededException" = "TotalSizeLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TotalSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TotalSizeLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

You have exceeded the limit for custom schemas. Delete one or more custom schemas and try * again.

*/ -export interface CustomSchemaCountLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CustomSchemaCountLimitExceededException"; - $fault: "client"; +export class CustomSchemaCountLimitExceededException extends __BaseException { + readonly name: "CustomSchemaCountLimitExceededException" = "CustomSchemaCountLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomSchemaCountLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomSchemaCountLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

You specified invalid keys or values in the Context attribute for * InventoryItem. Verify the keys and values, and try again.

*/ -export interface InvalidInventoryItemContextException extends __SmithyException, $MetadataBearer { - name: "InvalidInventoryItemContextException"; - $fault: "client"; +export class InvalidInventoryItemContextException extends __BaseException { + readonly name: "InvalidInventoryItemContextException" = "InvalidInventoryItemContextException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidInventoryItemContextException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidInventoryItemContextException.prototype); + this.Message = opts.Message; + } } /** *

The inventory item has invalid content.

*/ -export interface ItemContentMismatchException extends __SmithyException, $MetadataBearer { - name: "ItemContentMismatchException"; - $fault: "client"; +export class ItemContentMismatchException extends __BaseException { + readonly name: "ItemContentMismatchException" = "ItemContentMismatchException"; + readonly $fault: "client" = "client"; TypeName?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ItemContentMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ItemContentMismatchException.prototype); + this.TypeName = opts.TypeName; + this.Message = opts.Message; + } } /** @@ -7672,10 +7926,22 @@ export namespace PutInventoryResult { /** *

The sub-type count exceeded the limit for the inventory type.

*/ -export interface SubTypeCountLimitExceededException extends __SmithyException, $MetadataBearer { - name: "SubTypeCountLimitExceededException"; - $fault: "client"; +export class SubTypeCountLimitExceededException extends __BaseException { + readonly name: "SubTypeCountLimitExceededException" = "SubTypeCountLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SubTypeCountLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SubTypeCountLimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -7683,35 +7949,66 @@ export interface SubTypeCountLimitExceededException extends __SmithyException, $ * isn't allowed for this inventory type. You can only use the Context attribute with * inventory types like AWS:ComplianceItem.

*/ -export interface UnsupportedInventoryItemContextException extends __SmithyException, $MetadataBearer { - name: "UnsupportedInventoryItemContextException"; - $fault: "client"; +export class UnsupportedInventoryItemContextException extends __BaseException { + readonly name: "UnsupportedInventoryItemContextException" = "UnsupportedInventoryItemContextException"; + readonly $fault: "client" = "client"; TypeName?: string; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedInventoryItemContextException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedInventoryItemContextException.prototype); + this.TypeName = opts.TypeName; + this.Message = opts.Message; + } } /** *

Inventory item type schema version has to match supported versions in the service. Check * output of GetInventorySchema to see the available schema version for each type.

*/ -export interface UnsupportedInventorySchemaVersionException extends __SmithyException, $MetadataBearer { - name: "UnsupportedInventorySchemaVersionException"; - $fault: "client"; +export class UnsupportedInventorySchemaVersionException extends __BaseException { + readonly name: "UnsupportedInventorySchemaVersionException" = "UnsupportedInventorySchemaVersionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedInventorySchemaVersionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedInventorySchemaVersionException.prototype); + this.Message = opts.Message; + } } /** *

A hierarchy can have a maximum of 15 levels. For more information, see Requirements and * constraints for parameter names in the Amazon Web Services Systems Manager User Guide.

*/ -export interface HierarchyLevelLimitExceededException extends __SmithyException, $MetadataBearer { - name: "HierarchyLevelLimitExceededException"; - $fault: "client"; +export class HierarchyLevelLimitExceededException extends __BaseException { + readonly name: "HierarchyLevelLimitExceededException" = "HierarchyLevelLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

A hierarchy can have a maximum of 15 levels. For more information, see Requirements and - * constraints for parameter names in the Amazon Web Services Systems Manager User Guide.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HierarchyLevelLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HierarchyLevelLimitExceededException.prototype); + } } /** @@ -7719,75 +8016,137 @@ export interface HierarchyLevelLimitExceededException extends __SmithyException, * can't change a parameter from a String type to a SecureString type. You * must create a new, unique parameter.

*/ -export interface HierarchyTypeMismatchException extends __SmithyException, $MetadataBearer { - name: "HierarchyTypeMismatchException"; - $fault: "client"; +export class HierarchyTypeMismatchException extends __BaseException { + readonly name: "HierarchyTypeMismatchException" = "HierarchyTypeMismatchException"; + readonly $fault: "client" = "client"; /** - *

Parameter Store doesn't support changing a parameter type in a hierarchy. For example, you - * can't change a parameter from a String type to a SecureString type. You - * must create a new, unique parameter.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "HierarchyTypeMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HierarchyTypeMismatchException.prototype); + } } /** *

There is a conflict in the policies specified for this parameter. You can't, for example, * specify two Expiration policies for a parameter. Review your policies, and try again.

*/ -export interface IncompatiblePolicyException extends __SmithyException, $MetadataBearer { - name: "IncompatiblePolicyException"; - $fault: "client"; - message?: string; +export class IncompatiblePolicyException extends __BaseException { + readonly name: "IncompatiblePolicyException" = "IncompatiblePolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IncompatiblePolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IncompatiblePolicyException.prototype); + } } /** *

The request doesn't meet the regular expression requirement.

*/ -export interface InvalidAllowedPatternException extends __SmithyException, $MetadataBearer { - name: "InvalidAllowedPatternException"; - $fault: "client"; +export class InvalidAllowedPatternException extends __BaseException { + readonly name: "InvalidAllowedPatternException" = "InvalidAllowedPatternException"; + readonly $fault: "client" = "client"; /** - *

The request doesn't meet the regular expression requirement.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAllowedPatternException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAllowedPatternException.prototype); + } } /** *

A policy attribute or its value is invalid.

*/ -export interface InvalidPolicyAttributeException extends __SmithyException, $MetadataBearer { - name: "InvalidPolicyAttributeException"; - $fault: "client"; - message?: string; +export class InvalidPolicyAttributeException extends __BaseException { + readonly name: "InvalidPolicyAttributeException" = "InvalidPolicyAttributeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPolicyAttributeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPolicyAttributeException.prototype); + } } /** *

The policy type isn't supported. Parameter Store supports the following policy types: * Expiration, ExpirationNotification, and NoChangeNotification.

*/ -export interface InvalidPolicyTypeException extends __SmithyException, $MetadataBearer { - name: "InvalidPolicyTypeException"; - $fault: "client"; - message?: string; +export class InvalidPolicyTypeException extends __BaseException { + readonly name: "InvalidPolicyTypeException" = "InvalidPolicyTypeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPolicyTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPolicyTypeException.prototype); + } } /** *

The parameter already exists. You can't create duplicate parameters.

*/ -export interface ParameterAlreadyExists extends __SmithyException, $MetadataBearer { - name: "ParameterAlreadyExists"; - $fault: "client"; - message?: string; +export class ParameterAlreadyExists extends __BaseException { + readonly name: "ParameterAlreadyExists" = "ParameterAlreadyExists"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterAlreadyExists", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterAlreadyExists.prototype); + } } /** *

You have exceeded the number of parameters for this Amazon Web Services account. Delete one or more * parameters and try again.

*/ -export interface ParameterLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ParameterLimitExceeded"; - $fault: "client"; - message?: string; +export class ParameterLimitExceeded extends __BaseException { + readonly name: "ParameterLimitExceeded" = "ParameterLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterLimitExceeded.prototype); + } } /** @@ -7808,32 +8167,59 @@ export interface ParameterLimitExceeded extends __SmithyException, $MetadataBear * oldest version of the parameter to a newer one for use in your operations. For information about * moving parameter labels, see Move a parameter label (console) or Move a parameter label (CLI) in the Amazon Web Services Systems Manager User Guide.

*/ -export interface ParameterMaxVersionLimitExceeded extends __SmithyException, $MetadataBearer { - name: "ParameterMaxVersionLimitExceeded"; - $fault: "client"; - message?: string; +export class ParameterMaxVersionLimitExceeded extends __BaseException { + readonly name: "ParameterMaxVersionLimitExceeded" = "ParameterMaxVersionLimitExceeded"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterMaxVersionLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterMaxVersionLimitExceeded.prototype); + } } /** *

The parameter name isn't valid.

*/ -export interface ParameterPatternMismatchException extends __SmithyException, $MetadataBearer { - name: "ParameterPatternMismatchException"; - $fault: "client"; +export class ParameterPatternMismatchException extends __BaseException { + readonly name: "ParameterPatternMismatchException" = "ParameterPatternMismatchException"; + readonly $fault: "client" = "client"; /** - *

The parameter name isn't valid.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ParameterPatternMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ParameterPatternMismatchException.prototype); + } } /** *

You specified more than the maximum number of allowed policies for the parameter. The * maximum is 10.

*/ -export interface PoliciesLimitExceededException extends __SmithyException, $MetadataBearer { - name: "PoliciesLimitExceededException"; - $fault: "client"; - message?: string; +export class PoliciesLimitExceededException extends __BaseException { + readonly name: "PoliciesLimitExceededException" = "PoliciesLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PoliciesLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PoliciesLimitExceededException.prototype); + } } export interface PutParameterRequest { @@ -8126,10 +8512,20 @@ export namespace PutParameterResult { /** *

The parameter type isn't supported.

*/ -export interface UnsupportedParameterType extends __SmithyException, $MetadataBearer { - name: "UnsupportedParameterType"; - $fault: "client"; - message?: string; +export class UnsupportedParameterType extends __BaseException { + readonly name: "UnsupportedParameterType" = "UnsupportedParameterType"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedParameterType", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedParameterType.prototype); + } } export interface RegisterDefaultPatchBaselineRequest { @@ -8322,10 +8718,22 @@ export namespace RegisterTargetWithMaintenanceWindowResult { *

You attempted to register a LAMBDA or STEP_FUNCTIONS task in a * region where the corresponding service isn't available.

*/ -export interface FeatureNotAvailableException extends __SmithyException, $MetadataBearer { - name: "FeatureNotAvailableException"; - $fault: "client"; +export class FeatureNotAvailableException extends __BaseException { + readonly name: "FeatureNotAvailableException" = "FeatureNotAvailableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FeatureNotAvailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FeatureNotAvailableException.prototype); + this.Message = opts.Message; + } } export interface RegisterTaskWithMaintenanceWindowRequest { @@ -8711,19 +9119,43 @@ export namespace ResumeSessionResponse { *

The specified step name and execution ID don't exist. Verify the information and try * again.

*/ -export interface AutomationStepNotFoundException extends __SmithyException, $MetadataBearer { - name: "AutomationStepNotFoundException"; - $fault: "client"; +export class AutomationStepNotFoundException extends __BaseException { + readonly name: "AutomationStepNotFoundException" = "AutomationStepNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationStepNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationStepNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The signal isn't valid for the current Automation execution.

*/ -export interface InvalidAutomationSignalException extends __SmithyException, $MetadataBearer { - name: "InvalidAutomationSignalException"; - $fault: "client"; +export class InvalidAutomationSignalException extends __BaseException { + readonly name: "InvalidAutomationSignalException" = "InvalidAutomationSignalException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAutomationSignalException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAutomationSignalException.prototype); + this.Message = opts.Message; + } } export enum SignalType { @@ -8792,18 +9224,41 @@ export namespace SendAutomationSignalResult { *

One or more configuration items isn't valid. Verify that a valid Amazon Resource Name (ARN) * was provided for an Amazon Simple Notification Service topic.

*/ -export interface InvalidNotificationConfig extends __SmithyException, $MetadataBearer { - name: "InvalidNotificationConfig"; - $fault: "client"; +export class InvalidNotificationConfig extends __BaseException { + readonly name: "InvalidNotificationConfig" = "InvalidNotificationConfig"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNotificationConfig", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNotificationConfig.prototype); + this.Message = opts.Message; + } } /** *

The S3 bucket doesn't exist.

*/ -export interface InvalidOutputFolder extends __SmithyException, $MetadataBearer { - name: "InvalidOutputFolder"; - $fault: "client"; +export class InvalidOutputFolder extends __BaseException { + readonly name: "InvalidOutputFolder" = "InvalidOutputFolder"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOutputFolder", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOutputFolder.prototype); + } } /** @@ -8811,10 +9266,22 @@ export interface InvalidOutputFolder extends __SmithyException, $MetadataBearer * configuring the IAM role for Run Command notifications, see Configuring Amazon SNS Notifications for Run Command in the * Amazon Web Services Systems Manager User Guide.

*/ -export interface InvalidRole extends __SmithyException, $MetadataBearer { - name: "InvalidRole"; - $fault: "client"; +export class InvalidRole extends __BaseException { + readonly name: "InvalidRole" = "InvalidRole"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRole", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRole.prototype); + this.Message = opts.Message; + } } export interface SendCommandRequest { @@ -8982,10 +9449,22 @@ export namespace SendCommandResult { /** *

The association isn't valid or doesn't exist.

*/ -export interface InvalidAssociation extends __SmithyException, $MetadataBearer { - name: "InvalidAssociation"; - $fault: "client"; +export class InvalidAssociation extends __BaseException { + readonly name: "InvalidAssociation" = "InvalidAssociation"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAssociation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAssociation.prototype); + this.Message = opts.Message; + } } export interface StartAssociationsOnceRequest { @@ -9018,29 +9497,65 @@ export namespace StartAssociationsOnceResult { /** *

An Automation runbook with the specified name couldn't be found.

*/ -export interface AutomationDefinitionNotFoundException extends __SmithyException, $MetadataBearer { - name: "AutomationDefinitionNotFoundException"; - $fault: "client"; +export class AutomationDefinitionNotFoundException extends __BaseException { + readonly name: "AutomationDefinitionNotFoundException" = "AutomationDefinitionNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationDefinitionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationDefinitionNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

An Automation runbook with the specified name and version couldn't be found.

*/ -export interface AutomationDefinitionVersionNotFoundException extends __SmithyException, $MetadataBearer { - name: "AutomationDefinitionVersionNotFoundException"; - $fault: "client"; +export class AutomationDefinitionVersionNotFoundException extends __BaseException { + readonly name: "AutomationDefinitionVersionNotFoundException" = "AutomationDefinitionVersionNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationDefinitionVersionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationDefinitionVersionNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The number of simultaneously running Automation executions exceeded the allowable * limit.

*/ -export interface AutomationExecutionLimitExceededException extends __SmithyException, $MetadataBearer { - name: "AutomationExecutionLimitExceededException"; - $fault: "client"; +export class AutomationExecutionLimitExceededException extends __BaseException { + readonly name: "AutomationExecutionLimitExceededException" = "AutomationExecutionLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationExecutionLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationExecutionLimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -9048,10 +9563,22 @@ export interface AutomationExecutionLimitExceededException extends __SmithyExcep * example, they may not match the set of parameters permitted for the specified Automation * document.

*/ -export interface InvalidAutomationExecutionParametersException extends __SmithyException, $MetadataBearer { - name: "InvalidAutomationExecutionParametersException"; - $fault: "client"; +export class InvalidAutomationExecutionParametersException extends __BaseException { + readonly name: "InvalidAutomationExecutionParametersException" = "InvalidAutomationExecutionParametersException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAutomationExecutionParametersException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAutomationExecutionParametersException.prototype); + this.Message = opts.Message; + } } export interface StartAutomationExecutionRequest { @@ -9187,10 +9714,22 @@ export namespace StartAutomationExecutionResult { *

Indicates that the Change Manager change template used in the change request was rejected or is * still in a pending state.

*/ -export interface AutomationDefinitionNotApprovedException extends __SmithyException, $MetadataBearer { - name: "AutomationDefinitionNotApprovedException"; - $fault: "client"; +export class AutomationDefinitionNotApprovedException extends __BaseException { + readonly name: "AutomationDefinitionNotApprovedException" = "AutomationDefinitionNotApprovedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AutomationDefinitionNotApprovedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AutomationDefinitionNotApprovedException.prototype); + this.Message = opts.Message; + } } export interface StartChangeRequestExecutionRequest { @@ -9393,19 +9932,43 @@ export namespace StartSessionResponse { * attempt to start a session on a managed node that is located in a different account or * Region

*/ -export interface TargetNotConnected extends __SmithyException, $MetadataBearer { - name: "TargetNotConnected"; - $fault: "client"; +export class TargetNotConnected extends __BaseException { + readonly name: "TargetNotConnected" = "TargetNotConnected"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TargetNotConnected", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TargetNotConnected.prototype); + this.Message = opts.Message; + } } /** *

The specified update status operation isn't valid.

*/ -export interface InvalidAutomationStatusUpdateException extends __SmithyException, $MetadataBearer { - name: "InvalidAutomationStatusUpdateException"; - $fault: "client"; +export class InvalidAutomationStatusUpdateException extends __BaseException { + readonly name: "InvalidAutomationStatusUpdateException" = "InvalidAutomationStatusUpdateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAutomationStatusUpdateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAutomationStatusUpdateException.prototype); + this.Message = opts.Message; + } } export enum StopType { @@ -9530,19 +10093,43 @@ export namespace UnlabelParameterVersionResult { *

You have reached the maximum number versions allowed for an association. Each association * has a limit of 1,000 versions.

*/ -export interface AssociationVersionLimitExceeded extends __SmithyException, $MetadataBearer { - name: "AssociationVersionLimitExceeded"; - $fault: "client"; +export class AssociationVersionLimitExceeded extends __BaseException { + readonly name: "AssociationVersionLimitExceeded" = "AssociationVersionLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AssociationVersionLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AssociationVersionLimitExceeded.prototype); + this.Message = opts.Message; + } } /** *

The update isn't valid.

*/ -export interface InvalidUpdate extends __SmithyException, $MetadataBearer { - name: "InvalidUpdate"; - $fault: "client"; +export class InvalidUpdate extends __BaseException { + readonly name: "InvalidUpdate" = "InvalidUpdate"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidUpdate", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidUpdate.prototype); + this.Message = opts.Message; + } } export interface UpdateAssociationRequest { @@ -9726,9 +10313,20 @@ export namespace UpdateAssociationResult { /** *

The updated status is the same as the current status.

*/ -export interface StatusUnchanged extends __SmithyException, $MetadataBearer { - name: "StatusUnchanged"; - $fault: "client"; +export class StatusUnchanged extends __BaseException { + readonly name: "StatusUnchanged" = "StatusUnchanged"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StatusUnchanged", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StatusUnchanged.prototype); + } } export interface UpdateAssociationStatusRequest { @@ -9780,30 +10378,66 @@ export namespace UpdateAssociationStatusResult { *

The document has too many versions. Delete one or more document versions and try * again.

*/ -export interface DocumentVersionLimitExceeded extends __SmithyException, $MetadataBearer { - name: "DocumentVersionLimitExceeded"; - $fault: "client"; +export class DocumentVersionLimitExceeded extends __BaseException { + readonly name: "DocumentVersionLimitExceeded" = "DocumentVersionLimitExceeded"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentVersionLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentVersionLimitExceeded.prototype); + this.Message = opts.Message; + } } /** *

The content of the association document matches another document. Change the content of the * document and try again.

*/ -export interface DuplicateDocumentContent extends __SmithyException, $MetadataBearer { - name: "DuplicateDocumentContent"; - $fault: "client"; +export class DuplicateDocumentContent extends __BaseException { + readonly name: "DuplicateDocumentContent" = "DuplicateDocumentContent"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateDocumentContent", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateDocumentContent.prototype); + this.Message = opts.Message; + } } /** *

The version name has already been used in this document. Specify a different version name, * and then try again.

*/ -export interface DuplicateDocumentVersionName extends __SmithyException, $MetadataBearer { - name: "DuplicateDocumentVersionName"; - $fault: "client"; +export class DuplicateDocumentVersionName extends __BaseException { + readonly name: "DuplicateDocumentVersionName" = "DuplicateDocumentVersionName"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DuplicateDocumentVersionName", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DuplicateDocumentVersionName.prototype); + this.Message = opts.Message; + } } export interface UpdateDocumentRequest { diff --git a/clients/client-ssm/src/models/models_2.ts b/clients/client-ssm/src/models/models_2.ts index 04b294e56be26..6d978490314df 100644 --- a/clients/client-ssm/src/models/models_2.ts +++ b/clients/client-ssm/src/models/models_2.ts @@ -1,5 +1,5 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { LoggingInfo, @@ -27,6 +27,7 @@ import { OpsResultAttribute, ResultAttribute, } from "./models_1"; +import { SSMServiceException as __BaseException } from "./SSMServiceException"; export interface UpdateDocumentMetadataResponse {} @@ -763,10 +764,20 @@ export namespace UpdateOpsItemResponse { *

The OpsMetadata object exceeds the maximum number of OpsMetadata keys that you can assign to * an application in Application Manager.

*/ -export interface OpsMetadataKeyLimitExceededException extends __SmithyException, $MetadataBearer { - name: "OpsMetadataKeyLimitExceededException"; - $fault: "client"; - message?: string; +export class OpsMetadataKeyLimitExceededException extends __BaseException { + readonly name: "OpsMetadataKeyLimitExceededException" = "OpsMetadataKeyLimitExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OpsMetadataKeyLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OpsMetadataKeyLimitExceededException.prototype); + } } export interface UpdateOpsMetadataRequest { @@ -1008,10 +1019,22 @@ export namespace UpdatePatchBaselineResult { *

Another UpdateResourceDataSync request is being processed. Wait a few minutes * and try again.

*/ -export interface ResourceDataSyncConflictException extends __SmithyException, $MetadataBearer { - name: "ResourceDataSyncConflictException"; - $fault: "client"; +export class ResourceDataSyncConflictException extends __BaseException { + readonly name: "ResourceDataSyncConflictException" = "ResourceDataSyncConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceDataSyncConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceDataSyncConflictException.prototype); + this.Message = opts.Message; + } } export interface UpdateResourceDataSyncRequest { diff --git a/clients/client-ssm/src/protocols/Aws_json1_1.ts b/clients/client-ssm/src/protocols/Aws_json1_1.ts index 818c3e0ed9aed..314800f4b1030 100644 --- a/clients/client-ssm/src/protocols/Aws_json1_1.ts +++ b/clients/client-ssm/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -972,6 +971,7 @@ import { UpdateServiceSettingRequest, UpdateServiceSettingResult, } from "../models/models_2"; +import { SSMServiceException as __BaseException } from "../models/SSMServiceException"; export const serializeAws_json1_1AddTagsToResourceCommand = async ( input: AddTagsToResourceCommandInput, @@ -2753,65 +2753,34 @@ const deserializeAws_json1_1AddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "InvalidResourceType": case "com.amazonaws.ssm#InvalidResourceType": - response = { - ...(await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context); case "TooManyTagsError": case "com.amazonaws.ssm#TooManyTagsError": - response = { - ...(await deserializeAws_json1_1TooManyTagsErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsErrorResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateOpsItemRelatedItemCommand = async ( @@ -2839,65 +2808,34 @@ const deserializeAws_json1_1AssociateOpsItemRelatedItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemInvalidParameterException": case "com.amazonaws.ssm#OpsItemInvalidParameterException": - response = { - ...(await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context); case "OpsItemLimitExceededException": case "com.amazonaws.ssm#OpsItemLimitExceededException": - response = { - ...(await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context); case "OpsItemNotFoundException": case "com.amazonaws.ssm#OpsItemNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context); case "OpsItemRelatedItemAlreadyExistsException": case "com.amazonaws.ssm#OpsItemRelatedItemAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1OpsItemRelatedItemAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemRelatedItemAlreadyExistsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelCommandCommand = async ( @@ -2925,57 +2863,31 @@ const deserializeAws_json1_1CancelCommandCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateInstanceId": case "com.amazonaws.ssm#DuplicateInstanceId": - response = { - ...(await deserializeAws_json1_1DuplicateInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateInstanceIdResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidCommandId": case "com.amazonaws.ssm#InvalidCommandId": - response = { - ...(await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelMaintenanceWindowExecutionCommand = async ( @@ -3003,41 +2915,25 @@ const deserializeAws_json1_1CancelMaintenanceWindowExecutionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateActivationCommand = async ( @@ -3065,41 +2961,25 @@ const deserializeAws_json1_1CreateActivationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameters": case "com.amazonaws.ssm#InvalidParameters": - response = { - ...(await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAssociationCommand = async ( @@ -3127,113 +3007,52 @@ const deserializeAws_json1_1CreateAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationAlreadyExists": case "com.amazonaws.ssm#AssociationAlreadyExists": - response = { - ...(await deserializeAws_json1_1AssociationAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationAlreadyExistsResponse(parsedOutput, context); case "AssociationLimitExceeded": case "com.amazonaws.ssm#AssociationLimitExceeded": - response = { - ...(await deserializeAws_json1_1AssociationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationLimitExceededResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidOutputLocation": case "com.amazonaws.ssm#InvalidOutputLocation": - response = { - ...(await deserializeAws_json1_1InvalidOutputLocationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOutputLocationResponse(parsedOutput, context); case "InvalidParameters": case "com.amazonaws.ssm#InvalidParameters": - response = { - ...(await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context); case "InvalidSchedule": case "com.amazonaws.ssm#InvalidSchedule": - response = { - ...(await deserializeAws_json1_1InvalidScheduleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidScheduleResponse(parsedOutput, context); case "InvalidTarget": case "com.amazonaws.ssm#InvalidTarget": - response = { - ...(await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context); case "UnsupportedPlatformType": case "com.amazonaws.ssm#UnsupportedPlatformType": - response = { - ...(await deserializeAws_json1_1UnsupportedPlatformTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedPlatformTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAssociationBatchCommand = async ( @@ -3261,113 +3080,52 @@ const deserializeAws_json1_1CreateAssociationBatchCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationLimitExceeded": case "com.amazonaws.ssm#AssociationLimitExceeded": - response = { - ...(await deserializeAws_json1_1AssociationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationLimitExceededResponse(parsedOutput, context); case "DuplicateInstanceId": case "com.amazonaws.ssm#DuplicateInstanceId": - response = { - ...(await deserializeAws_json1_1DuplicateInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateInstanceIdResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidOutputLocation": case "com.amazonaws.ssm#InvalidOutputLocation": - response = { - ...(await deserializeAws_json1_1InvalidOutputLocationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOutputLocationResponse(parsedOutput, context); case "InvalidParameters": case "com.amazonaws.ssm#InvalidParameters": - response = { - ...(await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context); case "InvalidSchedule": case "com.amazonaws.ssm#InvalidSchedule": - response = { - ...(await deserializeAws_json1_1InvalidScheduleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidScheduleResponse(parsedOutput, context); case "InvalidTarget": case "com.amazonaws.ssm#InvalidTarget": - response = { - ...(await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context); case "UnsupportedPlatformType": case "com.amazonaws.ssm#UnsupportedPlatformType": - response = { - ...(await deserializeAws_json1_1UnsupportedPlatformTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedPlatformTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateDocumentCommand = async ( @@ -3395,73 +3153,37 @@ const deserializeAws_json1_1CreateDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DocumentAlreadyExists": case "com.amazonaws.ssm#DocumentAlreadyExists": - response = { - ...(await deserializeAws_json1_1DocumentAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentAlreadyExistsResponse(parsedOutput, context); case "DocumentLimitExceeded": case "com.amazonaws.ssm#DocumentLimitExceeded": - response = { - ...(await deserializeAws_json1_1DocumentLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentLimitExceededResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocumentContent": case "com.amazonaws.ssm#InvalidDocumentContent": - response = { - ...(await deserializeAws_json1_1InvalidDocumentContentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentContentResponse(parsedOutput, context); case "InvalidDocumentSchemaVersion": case "com.amazonaws.ssm#InvalidDocumentSchemaVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentSchemaVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentSchemaVersionResponse(parsedOutput, context); case "MaxDocumentSizeExceeded": case "com.amazonaws.ssm#MaxDocumentSizeExceeded": - response = { - ...(await deserializeAws_json1_1MaxDocumentSizeExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxDocumentSizeExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMaintenanceWindowCommand = async ( @@ -3489,49 +3211,28 @@ const deserializeAws_json1_1CreateMaintenanceWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatch": case "com.amazonaws.ssm#IdempotentParameterMismatch": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.ssm#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateOpsItemCommand = async ( @@ -3559,57 +3260,31 @@ const deserializeAws_json1_1CreateOpsItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemAlreadyExistsException": case "com.amazonaws.ssm#OpsItemAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1OpsItemAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemAlreadyExistsExceptionResponse(parsedOutput, context); case "OpsItemInvalidParameterException": case "com.amazonaws.ssm#OpsItemInvalidParameterException": - response = { - ...(await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context); case "OpsItemLimitExceededException": case "com.amazonaws.ssm#OpsItemLimitExceededException": - response = { - ...(await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateOpsMetadataCommand = async ( @@ -3637,65 +3312,34 @@ const deserializeAws_json1_1CreateOpsMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsMetadataAlreadyExistsException": case "com.amazonaws.ssm#OpsMetadataAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1OpsMetadataAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataAlreadyExistsExceptionResponse(parsedOutput, context); case "OpsMetadataInvalidArgumentException": case "com.amazonaws.ssm#OpsMetadataInvalidArgumentException": - response = { - ...(await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context); case "OpsMetadataLimitExceededException": case "com.amazonaws.ssm#OpsMetadataLimitExceededException": - response = { - ...(await deserializeAws_json1_1OpsMetadataLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataLimitExceededExceptionResponse(parsedOutput, context); case "OpsMetadataTooManyUpdatesException": case "com.amazonaws.ssm#OpsMetadataTooManyUpdatesException": - response = { - ...(await deserializeAws_json1_1OpsMetadataTooManyUpdatesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataTooManyUpdatesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePatchBaselineCommand = async ( @@ -3723,49 +3367,28 @@ const deserializeAws_json1_1CreatePatchBaselineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "IdempotentParameterMismatch": case "com.amazonaws.ssm#IdempotentParameterMismatch": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.ssm#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResourceDataSyncCommand = async ( @@ -3793,57 +3416,31 @@ const deserializeAws_json1_1CreateResourceDataSyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceDataSyncAlreadyExistsException": case "com.amazonaws.ssm#ResourceDataSyncAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceDataSyncCountExceededException": case "com.amazonaws.ssm#ResourceDataSyncCountExceededException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncCountExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncCountExceededExceptionResponse(parsedOutput, context); case "ResourceDataSyncInvalidConfigurationException": case "com.amazonaws.ssm#ResourceDataSyncInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteActivationCommand = async ( @@ -3871,57 +3468,31 @@ const deserializeAws_json1_1DeleteActivationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidActivation": case "com.amazonaws.ssm#InvalidActivation": - response = { - ...(await deserializeAws_json1_1InvalidActivationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidActivationResponse(parsedOutput, context); case "InvalidActivationId": case "com.amazonaws.ssm#InvalidActivationId": - response = { - ...(await deserializeAws_json1_1InvalidActivationIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidActivationIdResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAssociationCommand = async ( @@ -3949,65 +3520,34 @@ const deserializeAws_json1_1DeleteAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteDocumentCommand = async ( @@ -4035,57 +3575,31 @@ const deserializeAws_json1_1DeleteDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociatedInstances": case "com.amazonaws.ssm#AssociatedInstances": - response = { - ...(await deserializeAws_json1_1AssociatedInstancesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociatedInstancesResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentOperation": case "com.amazonaws.ssm#InvalidDocumentOperation": - response = { - ...(await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInventoryCommand = async ( @@ -4113,65 +3627,34 @@ const deserializeAws_json1_1DeleteInventoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDeleteInventoryParametersException": case "com.amazonaws.ssm#InvalidDeleteInventoryParametersException": - response = { - ...(await deserializeAws_json1_1InvalidDeleteInventoryParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeleteInventoryParametersExceptionResponse(parsedOutput, context); case "InvalidInventoryRequestException": case "com.amazonaws.ssm#InvalidInventoryRequestException": - response = { - ...(await deserializeAws_json1_1InvalidInventoryRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInventoryRequestExceptionResponse(parsedOutput, context); case "InvalidOptionException": case "com.amazonaws.ssm#InvalidOptionException": - response = { - ...(await deserializeAws_json1_1InvalidOptionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOptionExceptionResponse(parsedOutput, context); case "InvalidTypeNameException": case "com.amazonaws.ssm#InvalidTypeNameException": - response = { - ...(await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMaintenanceWindowCommand = async ( @@ -4199,33 +3682,22 @@ const deserializeAws_json1_1DeleteMaintenanceWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOpsMetadataCommand = async ( @@ -4253,49 +3725,28 @@ const deserializeAws_json1_1DeleteOpsMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsMetadataInvalidArgumentException": case "com.amazonaws.ssm#OpsMetadataInvalidArgumentException": - response = { - ...(await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context); case "OpsMetadataNotFoundException": case "com.amazonaws.ssm#OpsMetadataNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteParameterCommand = async ( @@ -4323,41 +3774,25 @@ const deserializeAws_json1_1DeleteParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ParameterNotFound": case "com.amazonaws.ssm#ParameterNotFound": - response = { - ...(await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteParametersCommand = async ( @@ -4385,33 +3820,22 @@ const deserializeAws_json1_1DeleteParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePatchBaselineCommand = async ( @@ -4439,41 +3863,25 @@ const deserializeAws_json1_1DeletePatchBaselineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceInUseException": case "com.amazonaws.ssm#ResourceInUseException": - response = { - ...(await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourceDataSyncCommand = async ( @@ -4501,49 +3909,28 @@ const deserializeAws_json1_1DeleteResourceDataSyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceDataSyncInvalidConfigurationException": case "com.amazonaws.ssm#ResourceDataSyncInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context); case "ResourceDataSyncNotFoundException": case "com.amazonaws.ssm#ResourceDataSyncNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterManagedInstanceCommand = async ( @@ -4571,41 +3958,25 @@ const deserializeAws_json1_1DeregisterManagedInstanceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterPatchBaselineForPatchGroupCommand = async ( @@ -4633,41 +4004,25 @@ const deserializeAws_json1_1DeregisterPatchBaselineForPatchGroupCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterTargetFromMaintenanceWindowCommand = async ( @@ -4695,49 +4050,28 @@ const deserializeAws_json1_1DeregisterTargetFromMaintenanceWindowCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "TargetInUseException": case "com.amazonaws.ssm#TargetInUseException": - response = { - ...(await deserializeAws_json1_1TargetInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetInUseExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterTaskFromMaintenanceWindowCommand = async ( @@ -4765,41 +4099,25 @@ const deserializeAws_json1_1DeregisterTaskFromMaintenanceWindowCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeActivationsCommand = async ( @@ -4827,49 +4145,28 @@ const deserializeAws_json1_1DescribeActivationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAssociationCommand = async ( @@ -4897,65 +4194,34 @@ const deserializeAws_json1_1DescribeAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAssociationVersion": case "com.amazonaws.ssm#InvalidAssociationVersion": - response = { - ...(await deserializeAws_json1_1InvalidAssociationVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAssociationVersionResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAssociationExecutionsCommand = async ( @@ -4983,49 +4249,28 @@ const deserializeAws_json1_1DescribeAssociationExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAssociationExecutionTargetsCommand = async ( @@ -5053,57 +4298,31 @@ const deserializeAws_json1_1DescribeAssociationExecutionTargetsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "AssociationExecutionDoesNotExist": case "com.amazonaws.ssm#AssociationExecutionDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationExecutionDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationExecutionDoesNotExistResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAutomationExecutionsCommand = async ( @@ -5131,57 +4350,31 @@ const deserializeAws_json1_1DescribeAutomationExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidFilterValue": case "com.amazonaws.ssm#InvalidFilterValue": - response = { - ...(await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAutomationStepExecutionsCommand = async ( @@ -5209,65 +4402,34 @@ const deserializeAws_json1_1DescribeAutomationStepExecutionsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AutomationExecutionNotFoundException": case "com.amazonaws.ssm#AutomationExecutionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidFilterValue": case "com.amazonaws.ssm#InvalidFilterValue": - response = { - ...(await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAvailablePatchesCommand = async ( @@ -5295,33 +4457,22 @@ const deserializeAws_json1_1DescribeAvailablePatchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDocumentCommand = async ( @@ -5349,49 +4500,28 @@ const deserializeAws_json1_1DescribeDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeDocumentPermissionCommand = async ( @@ -5419,65 +4549,34 @@ const deserializeAws_json1_1DescribeDocumentPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentOperation": case "com.amazonaws.ssm#InvalidDocumentOperation": - response = { - ...(await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "InvalidPermissionType": case "com.amazonaws.ssm#InvalidPermissionType": - response = { - ...(await deserializeAws_json1_1InvalidPermissionTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPermissionTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEffectiveInstanceAssociationsCommand = async ( @@ -5505,49 +4604,28 @@ const deserializeAws_json1_1DescribeEffectiveInstanceAssociationsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEffectivePatchesForPatchBaselineCommand = async ( @@ -5575,57 +4653,31 @@ const deserializeAws_json1_1DescribeEffectivePatchesForPatchBaselineCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "UnsupportedOperatingSystem": case "com.amazonaws.ssm#UnsupportedOperatingSystem": - response = { - ...(await deserializeAws_json1_1UnsupportedOperatingSystemResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperatingSystemResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstanceAssociationsStatusCommand = async ( @@ -5653,49 +4705,28 @@ const deserializeAws_json1_1DescribeInstanceAssociationsStatusCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstanceInformationCommand = async ( @@ -5723,65 +4754,34 @@ const deserializeAws_json1_1DescribeInstanceInformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidInstanceInformationFilterValue": case "com.amazonaws.ssm#InvalidInstanceInformationFilterValue": - response = { - ...(await deserializeAws_json1_1InvalidInstanceInformationFilterValueResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceInformationFilterValueResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstancePatchesCommand = async ( @@ -5809,57 +4809,31 @@ const deserializeAws_json1_1DescribeInstancePatchesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstancePatchStatesCommand = async ( @@ -5887,41 +4861,25 @@ const deserializeAws_json1_1DescribeInstancePatchStatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstancePatchStatesForPatchGroupCommand = async ( @@ -5949,49 +4907,28 @@ const deserializeAws_json1_1DescribeInstancePatchStatesForPatchGroupCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInventoryDeletionsCommand = async ( @@ -6019,49 +4956,28 @@ const deserializeAws_json1_1DescribeInventoryDeletionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDeletionIdException": case "com.amazonaws.ssm#InvalidDeletionIdException": - response = { - ...(await deserializeAws_json1_1InvalidDeletionIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDeletionIdExceptionResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowExecutionsCommand = async ( @@ -6089,33 +5005,22 @@ const deserializeAws_json1_1DescribeMaintenanceWindowExecutionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowExecutionTaskInvocationsCommand = async ( @@ -6143,41 +5048,25 @@ const deserializeAws_json1_1DescribeMaintenanceWindowExecutionTaskInvocationsCom ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowExecutionTasksCommand = async ( @@ -6205,41 +5094,25 @@ const deserializeAws_json1_1DescribeMaintenanceWindowExecutionTasksCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowsCommand = async ( @@ -6267,33 +5140,22 @@ const deserializeAws_json1_1DescribeMaintenanceWindowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowScheduleCommand = async ( @@ -6321,41 +5183,25 @@ const deserializeAws_json1_1DescribeMaintenanceWindowScheduleCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowsForTargetCommand = async ( @@ -6383,33 +5229,22 @@ const deserializeAws_json1_1DescribeMaintenanceWindowsForTargetCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowTargetsCommand = async ( @@ -6437,41 +5272,25 @@ const deserializeAws_json1_1DescribeMaintenanceWindowTargetsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceWindowTasksCommand = async ( @@ -6499,41 +5318,25 @@ const deserializeAws_json1_1DescribeMaintenanceWindowTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOpsItemsCommand = async ( @@ -6561,33 +5364,22 @@ const deserializeAws_json1_1DescribeOpsItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeParametersCommand = async ( @@ -6615,65 +5407,34 @@ const deserializeAws_json1_1DescribeParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidFilterOption": case "com.amazonaws.ssm#InvalidFilterOption": - response = { - ...(await deserializeAws_json1_1InvalidFilterOptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterOptionResponse(parsedOutput, context); case "InvalidFilterValue": case "com.amazonaws.ssm#InvalidFilterValue": - response = { - ...(await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePatchBaselinesCommand = async ( @@ -6701,33 +5462,22 @@ const deserializeAws_json1_1DescribePatchBaselinesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePatchGroupsCommand = async ( @@ -6755,33 +5505,22 @@ const deserializeAws_json1_1DescribePatchGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePatchGroupStateCommand = async ( @@ -6809,41 +5548,25 @@ const deserializeAws_json1_1DescribePatchGroupStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePatchPropertiesCommand = async ( @@ -6871,33 +5594,22 @@ const deserializeAws_json1_1DescribePatchPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSessionsCommand = async ( @@ -6925,49 +5637,28 @@ const deserializeAws_json1_1DescribeSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateOpsItemRelatedItemCommand = async ( @@ -6995,57 +5686,31 @@ const deserializeAws_json1_1DisassociateOpsItemRelatedItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemInvalidParameterException": case "com.amazonaws.ssm#OpsItemInvalidParameterException": - response = { - ...(await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context); case "OpsItemNotFoundException": case "com.amazonaws.ssm#OpsItemNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context); case "OpsItemRelatedItemAssociationNotFoundException": case "com.amazonaws.ssm#OpsItemRelatedItemAssociationNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsItemRelatedItemAssociationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemRelatedItemAssociationNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAutomationExecutionCommand = async ( @@ -7073,41 +5738,25 @@ const deserializeAws_json1_1GetAutomationExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AutomationExecutionNotFoundException": case "com.amazonaws.ssm#AutomationExecutionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCalendarStateCommand = async ( @@ -7135,57 +5784,31 @@ const deserializeAws_json1_1GetCalendarStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentType": case "com.amazonaws.ssm#InvalidDocumentType": - response = { - ...(await deserializeAws_json1_1InvalidDocumentTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentTypeResponse(parsedOutput, context); case "UnsupportedCalendarException": case "com.amazonaws.ssm#UnsupportedCalendarException": - response = { - ...(await deserializeAws_json1_1UnsupportedCalendarExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedCalendarExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCommandInvocationCommand = async ( @@ -7213,65 +5836,34 @@ const deserializeAws_json1_1GetCommandInvocationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidCommandId": case "com.amazonaws.ssm#InvalidCommandId": - response = { - ...(await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidPluginName": case "com.amazonaws.ssm#InvalidPluginName": - response = { - ...(await deserializeAws_json1_1InvalidPluginNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPluginNameResponse(parsedOutput, context); case "InvocationDoesNotExist": case "com.amazonaws.ssm#InvocationDoesNotExist": - response = { - ...(await deserializeAws_json1_1InvocationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvocationDoesNotExistResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetConnectionStatusCommand = async ( @@ -7299,33 +5891,22 @@ const deserializeAws_json1_1GetConnectionStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDefaultPatchBaselineCommand = async ( @@ -7353,33 +5934,22 @@ const deserializeAws_json1_1GetDefaultPatchBaselineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDeployablePatchSnapshotForInstanceCommand = async ( @@ -7407,49 +5977,28 @@ const deserializeAws_json1_1GetDeployablePatchSnapshotForInstanceCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "UnsupportedFeatureRequiredException": case "com.amazonaws.ssm#UnsupportedFeatureRequiredException": - response = { - ...(await deserializeAws_json1_1UnsupportedFeatureRequiredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedFeatureRequiredExceptionResponse(parsedOutput, context); case "UnsupportedOperatingSystem": case "com.amazonaws.ssm#UnsupportedOperatingSystem": - response = { - ...(await deserializeAws_json1_1UnsupportedOperatingSystemResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperatingSystemResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDocumentCommand = async ( @@ -7477,49 +6026,28 @@ const deserializeAws_json1_1GetDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInventoryCommand = async ( @@ -7547,81 +6075,40 @@ const deserializeAws_json1_1GetInventoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAggregatorException": case "com.amazonaws.ssm#InvalidAggregatorException": - response = { - ...(await deserializeAws_json1_1InvalidAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAggregatorExceptionResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidInventoryGroupException": case "com.amazonaws.ssm#InvalidInventoryGroupException": - response = { - ...(await deserializeAws_json1_1InvalidInventoryGroupExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInventoryGroupExceptionResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "InvalidResultAttributeException": case "com.amazonaws.ssm#InvalidResultAttributeException": - response = { - ...(await deserializeAws_json1_1InvalidResultAttributeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResultAttributeExceptionResponse(parsedOutput, context); case "InvalidTypeNameException": case "com.amazonaws.ssm#InvalidTypeNameException": - response = { - ...(await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInventorySchemaCommand = async ( @@ -7649,49 +6136,28 @@ const deserializeAws_json1_1GetInventorySchemaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "InvalidTypeNameException": case "com.amazonaws.ssm#InvalidTypeNameException": - response = { - ...(await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMaintenanceWindowCommand = async ( @@ -7719,41 +6185,25 @@ const deserializeAws_json1_1GetMaintenanceWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMaintenanceWindowExecutionCommand = async ( @@ -7781,41 +6231,25 @@ const deserializeAws_json1_1GetMaintenanceWindowExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMaintenanceWindowExecutionTaskCommand = async ( @@ -7843,41 +6277,25 @@ const deserializeAws_json1_1GetMaintenanceWindowExecutionTaskCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMaintenanceWindowExecutionTaskInvocationCommand = async ( @@ -7905,41 +6323,25 @@ const deserializeAws_json1_1GetMaintenanceWindowExecutionTaskInvocationCommandEr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMaintenanceWindowTaskCommand = async ( @@ -7967,41 +6369,25 @@ const deserializeAws_json1_1GetMaintenanceWindowTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOpsItemCommand = async ( @@ -8029,41 +6415,25 @@ const deserializeAws_json1_1GetOpsItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemNotFoundException": case "com.amazonaws.ssm#OpsItemNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOpsMetadataCommand = async ( @@ -8091,49 +6461,28 @@ const deserializeAws_json1_1GetOpsMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsMetadataInvalidArgumentException": case "com.amazonaws.ssm#OpsMetadataInvalidArgumentException": - response = { - ...(await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context); case "OpsMetadataNotFoundException": case "com.amazonaws.ssm#OpsMetadataNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetOpsSummaryCommand = async ( @@ -8161,73 +6510,37 @@ const deserializeAws_json1_1GetOpsSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAggregatorException": case "com.amazonaws.ssm#InvalidAggregatorException": - response = { - ...(await deserializeAws_json1_1InvalidAggregatorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAggregatorExceptionResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "InvalidTypeNameException": case "com.amazonaws.ssm#InvalidTypeNameException": - response = { - ...(await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context); case "ResourceDataSyncNotFoundException": case "com.amazonaws.ssm#ResourceDataSyncNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetParameterCommand = async ( @@ -8255,57 +6568,31 @@ const deserializeAws_json1_1GetParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidKeyId": case "com.amazonaws.ssm#InvalidKeyId": - response = { - ...(await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context); case "ParameterNotFound": case "com.amazonaws.ssm#ParameterNotFound": - response = { - ...(await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context); case "ParameterVersionNotFound": case "com.amazonaws.ssm#ParameterVersionNotFound": - response = { - ...(await deserializeAws_json1_1ParameterVersionNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterVersionNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetParameterHistoryCommand = async ( @@ -8333,57 +6620,31 @@ const deserializeAws_json1_1GetParameterHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidKeyId": case "com.amazonaws.ssm#InvalidKeyId": - response = { - ...(await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "ParameterNotFound": case "com.amazonaws.ssm#ParameterNotFound": - response = { - ...(await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetParametersCommand = async ( @@ -8411,41 +6672,25 @@ const deserializeAws_json1_1GetParametersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidKeyId": case "com.amazonaws.ssm#InvalidKeyId": - response = { - ...(await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetParametersByPathCommand = async ( @@ -8473,73 +6718,37 @@ const deserializeAws_json1_1GetParametersByPathCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidFilterOption": case "com.amazonaws.ssm#InvalidFilterOption": - response = { - ...(await deserializeAws_json1_1InvalidFilterOptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterOptionResponse(parsedOutput, context); case "InvalidFilterValue": case "com.amazonaws.ssm#InvalidFilterValue": - response = { - ...(await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterValueResponse(parsedOutput, context); case "InvalidKeyId": case "com.amazonaws.ssm#InvalidKeyId": - response = { - ...(await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPatchBaselineCommand = async ( @@ -8567,49 +6776,28 @@ const deserializeAws_json1_1GetPatchBaselineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPatchBaselineForPatchGroupCommand = async ( @@ -8637,33 +6825,22 @@ const deserializeAws_json1_1GetPatchBaselineForPatchGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetServiceSettingCommand = async ( @@ -8691,41 +6868,25 @@ const deserializeAws_json1_1GetServiceSettingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceSettingNotFound": case "com.amazonaws.ssm#ServiceSettingNotFound": - response = { - ...(await deserializeAws_json1_1ServiceSettingNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceSettingNotFoundResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1LabelParameterVersionCommand = async ( @@ -8753,65 +6914,34 @@ const deserializeAws_json1_1LabelParameterVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ParameterNotFound": case "com.amazonaws.ssm#ParameterNotFound": - response = { - ...(await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context); case "ParameterVersionLabelLimitExceeded": case "com.amazonaws.ssm#ParameterVersionLabelLimitExceeded": - response = { - ...(await deserializeAws_json1_1ParameterVersionLabelLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterVersionLabelLimitExceededResponse(parsedOutput, context); case "ParameterVersionNotFound": case "com.amazonaws.ssm#ParameterVersionNotFound": - response = { - ...(await deserializeAws_json1_1ParameterVersionNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterVersionNotFoundResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociationsCommand = async ( @@ -8839,41 +6969,25 @@ const deserializeAws_json1_1ListAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAssociationVersionsCommand = async ( @@ -8901,49 +7015,28 @@ const deserializeAws_json1_1ListAssociationVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCommandInvocationsCommand = async ( @@ -8971,65 +7064,34 @@ const deserializeAws_json1_1ListCommandInvocationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidCommandId": case "com.amazonaws.ssm#InvalidCommandId": - response = { - ...(await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCommandsCommand = async ( @@ -9057,65 +7119,34 @@ const deserializeAws_json1_1ListCommandsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidCommandId": case "com.amazonaws.ssm#InvalidCommandId": - response = { - ...(await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCommandIdResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListComplianceItemsCommand = async ( @@ -9143,65 +7174,34 @@ const deserializeAws_json1_1ListComplianceItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "InvalidResourceType": case "com.amazonaws.ssm#InvalidResourceType": - response = { - ...(await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListComplianceSummariesCommand = async ( @@ -9229,49 +7229,28 @@ const deserializeAws_json1_1ListComplianceSummariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDocumentMetadataHistoryCommand = async ( @@ -9299,57 +7278,31 @@ const deserializeAws_json1_1ListDocumentMetadataHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDocumentsCommand = async ( @@ -9377,49 +7330,28 @@ const deserializeAws_json1_1ListDocumentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilterKey": case "com.amazonaws.ssm#InvalidFilterKey": - response = { - ...(await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterKeyResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListDocumentVersionsCommand = async ( @@ -9447,49 +7379,28 @@ const deserializeAws_json1_1ListDocumentVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInventoryEntriesCommand = async ( @@ -9517,65 +7428,34 @@ const deserializeAws_json1_1ListInventoryEntriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "InvalidTypeNameException": case "com.amazonaws.ssm#InvalidTypeNameException": - response = { - ...(await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOpsItemEventsCommand = async ( @@ -9603,57 +7483,31 @@ const deserializeAws_json1_1ListOpsItemEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemInvalidParameterException": case "com.amazonaws.ssm#OpsItemInvalidParameterException": - response = { - ...(await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context); case "OpsItemLimitExceededException": case "com.amazonaws.ssm#OpsItemLimitExceededException": - response = { - ...(await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context); case "OpsItemNotFoundException": case "com.amazonaws.ssm#OpsItemNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOpsItemRelatedItemsCommand = async ( @@ -9681,41 +7535,25 @@ const deserializeAws_json1_1ListOpsItemRelatedItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemInvalidParameterException": case "com.amazonaws.ssm#OpsItemInvalidParameterException": - response = { - ...(await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOpsMetadataCommand = async ( @@ -9743,41 +7581,25 @@ const deserializeAws_json1_1ListOpsMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsMetadataInvalidArgumentException": case "com.amazonaws.ssm#OpsMetadataInvalidArgumentException": - response = { - ...(await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourceComplianceSummariesCommand = async ( @@ -9805,49 +7627,28 @@ const deserializeAws_json1_1ListResourceComplianceSummariesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidFilter": case "com.amazonaws.ssm#InvalidFilter": - response = { - ...(await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourceDataSyncCommand = async ( @@ -9875,49 +7676,28 @@ const deserializeAws_json1_1ListResourceDataSyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidNextToken": case "com.amazonaws.ssm#InvalidNextToken": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenResponse(parsedOutput, context); case "ResourceDataSyncInvalidConfigurationException": case "com.amazonaws.ssm#ResourceDataSyncInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -9945,49 +7725,28 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "InvalidResourceType": case "com.amazonaws.ssm#InvalidResourceType": - response = { - ...(await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyDocumentPermissionCommand = async ( @@ -10015,65 +7774,34 @@ const deserializeAws_json1_1ModifyDocumentPermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DocumentLimitExceeded": case "com.amazonaws.ssm#DocumentLimitExceeded": - response = { - ...(await deserializeAws_json1_1DocumentLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentLimitExceededResponse(parsedOutput, context); case "DocumentPermissionLimit": case "com.amazonaws.ssm#DocumentPermissionLimit": - response = { - ...(await deserializeAws_json1_1DocumentPermissionLimitResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentPermissionLimitResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidPermissionType": case "com.amazonaws.ssm#InvalidPermissionType": - response = { - ...(await deserializeAws_json1_1InvalidPermissionTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPermissionTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutComplianceItemsCommand = async ( @@ -10101,81 +7829,40 @@ const deserializeAws_json1_1PutComplianceItemsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplianceTypeCountLimitExceededException": case "com.amazonaws.ssm#ComplianceTypeCountLimitExceededException": - response = { - ...(await deserializeAws_json1_1ComplianceTypeCountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ComplianceTypeCountLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidItemContentException": case "com.amazonaws.ssm#InvalidItemContentException": - response = { - ...(await deserializeAws_json1_1InvalidItemContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidItemContentExceptionResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "InvalidResourceType": case "com.amazonaws.ssm#InvalidResourceType": - response = { - ...(await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context); case "ItemSizeLimitExceededException": case "com.amazonaws.ssm#ItemSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1ItemSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ItemSizeLimitExceededExceptionResponse(parsedOutput, context); case "TotalSizeLimitExceededException": case "com.amazonaws.ssm#TotalSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TotalSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TotalSizeLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutInventoryCommand = async ( @@ -10203,121 +7890,55 @@ const deserializeAws_json1_1PutInventoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomSchemaCountLimitExceededException": case "com.amazonaws.ssm#CustomSchemaCountLimitExceededException": - response = { - ...(await deserializeAws_json1_1CustomSchemaCountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CustomSchemaCountLimitExceededExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidInventoryItemContextException": case "com.amazonaws.ssm#InvalidInventoryItemContextException": - response = { - ...(await deserializeAws_json1_1InvalidInventoryItemContextExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInventoryItemContextExceptionResponse(parsedOutput, context); case "InvalidItemContentException": case "com.amazonaws.ssm#InvalidItemContentException": - response = { - ...(await deserializeAws_json1_1InvalidItemContentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidItemContentExceptionResponse(parsedOutput, context); case "InvalidTypeNameException": case "com.amazonaws.ssm#InvalidTypeNameException": - response = { - ...(await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTypeNameExceptionResponse(parsedOutput, context); case "ItemContentMismatchException": case "com.amazonaws.ssm#ItemContentMismatchException": - response = { - ...(await deserializeAws_json1_1ItemContentMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ItemContentMismatchExceptionResponse(parsedOutput, context); case "ItemSizeLimitExceededException": case "com.amazonaws.ssm#ItemSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1ItemSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ItemSizeLimitExceededExceptionResponse(parsedOutput, context); case "SubTypeCountLimitExceededException": case "com.amazonaws.ssm#SubTypeCountLimitExceededException": - response = { - ...(await deserializeAws_json1_1SubTypeCountLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1SubTypeCountLimitExceededExceptionResponse(parsedOutput, context); case "TotalSizeLimitExceededException": case "com.amazonaws.ssm#TotalSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TotalSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TotalSizeLimitExceededExceptionResponse(parsedOutput, context); case "UnsupportedInventoryItemContextException": case "com.amazonaws.ssm#UnsupportedInventoryItemContextException": - response = { - ...(await deserializeAws_json1_1UnsupportedInventoryItemContextExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedInventoryItemContextExceptionResponse(parsedOutput, context); case "UnsupportedInventorySchemaVersionException": case "com.amazonaws.ssm#UnsupportedInventorySchemaVersionException": - response = { - ...(await deserializeAws_json1_1UnsupportedInventorySchemaVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedInventorySchemaVersionExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutParameterCommand = async ( @@ -10345,145 +7966,64 @@ const deserializeAws_json1_1PutParameterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "HierarchyLevelLimitExceededException": case "com.amazonaws.ssm#HierarchyLevelLimitExceededException": - response = { - ...(await deserializeAws_json1_1HierarchyLevelLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HierarchyLevelLimitExceededExceptionResponse(parsedOutput, context); case "HierarchyTypeMismatchException": case "com.amazonaws.ssm#HierarchyTypeMismatchException": - response = { - ...(await deserializeAws_json1_1HierarchyTypeMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HierarchyTypeMismatchExceptionResponse(parsedOutput, context); case "IncompatiblePolicyException": case "com.amazonaws.ssm#IncompatiblePolicyException": - response = { - ...(await deserializeAws_json1_1IncompatiblePolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IncompatiblePolicyExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAllowedPatternException": case "com.amazonaws.ssm#InvalidAllowedPatternException": - response = { - ...(await deserializeAws_json1_1InvalidAllowedPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAllowedPatternExceptionResponse(parsedOutput, context); case "InvalidKeyId": case "com.amazonaws.ssm#InvalidKeyId": - response = { - ...(await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKeyIdResponse(parsedOutput, context); case "InvalidPolicyAttributeException": case "com.amazonaws.ssm#InvalidPolicyAttributeException": - response = { - ...(await deserializeAws_json1_1InvalidPolicyAttributeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyAttributeExceptionResponse(parsedOutput, context); case "InvalidPolicyTypeException": case "com.amazonaws.ssm#InvalidPolicyTypeException": - response = { - ...(await deserializeAws_json1_1InvalidPolicyTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPolicyTypeExceptionResponse(parsedOutput, context); case "ParameterAlreadyExists": case "com.amazonaws.ssm#ParameterAlreadyExists": - response = { - ...(await deserializeAws_json1_1ParameterAlreadyExistsResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterAlreadyExistsResponse(parsedOutput, context); case "ParameterLimitExceeded": case "com.amazonaws.ssm#ParameterLimitExceeded": - response = { - ...(await deserializeAws_json1_1ParameterLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterLimitExceededResponse(parsedOutput, context); case "ParameterMaxVersionLimitExceeded": case "com.amazonaws.ssm#ParameterMaxVersionLimitExceeded": - response = { - ...(await deserializeAws_json1_1ParameterMaxVersionLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterMaxVersionLimitExceededResponse(parsedOutput, context); case "ParameterPatternMismatchException": case "com.amazonaws.ssm#ParameterPatternMismatchException": - response = { - ...(await deserializeAws_json1_1ParameterPatternMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterPatternMismatchExceptionResponse(parsedOutput, context); case "PoliciesLimitExceededException": case "com.amazonaws.ssm#PoliciesLimitExceededException": - response = { - ...(await deserializeAws_json1_1PoliciesLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1PoliciesLimitExceededExceptionResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); case "UnsupportedParameterType": case "com.amazonaws.ssm#UnsupportedParameterType": - response = { - ...(await deserializeAws_json1_1UnsupportedParameterTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedParameterTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterDefaultPatchBaselineCommand = async ( @@ -10511,49 +8051,28 @@ const deserializeAws_json1_1RegisterDefaultPatchBaselineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterPatchBaselineForPatchGroupCommand = async ( @@ -10581,65 +8100,34 @@ const deserializeAws_json1_1RegisterPatchBaselineForPatchGroupCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AlreadyExistsException": case "com.amazonaws.ssm#AlreadyExistsException": - response = { - ...(await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AlreadyExistsExceptionResponse(parsedOutput, context); case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.ssm#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterTargetWithMaintenanceWindowCommand = async ( @@ -10667,57 +8155,31 @@ const deserializeAws_json1_1RegisterTargetWithMaintenanceWindowCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatch": case "com.amazonaws.ssm#IdempotentParameterMismatch": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.ssm#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterTaskWithMaintenanceWindowCommand = async ( @@ -10745,65 +8207,34 @@ const deserializeAws_json1_1RegisterTaskWithMaintenanceWindowCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "FeatureNotAvailableException": case "com.amazonaws.ssm#FeatureNotAvailableException": - response = { - ...(await deserializeAws_json1_1FeatureNotAvailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FeatureNotAvailableExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatch": case "com.amazonaws.ssm#IdempotentParameterMismatch": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.ssm#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromResourceCommand = async ( @@ -10831,57 +8262,31 @@ const deserializeAws_json1_1RemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidResourceId": case "com.amazonaws.ssm#InvalidResourceId": - response = { - ...(await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceIdResponse(parsedOutput, context); case "InvalidResourceType": case "com.amazonaws.ssm#InvalidResourceType": - response = { - ...(await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceTypeResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetServiceSettingCommand = async ( @@ -10909,49 +8314,28 @@ const deserializeAws_json1_1ResetServiceSettingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceSettingNotFound": case "com.amazonaws.ssm#ServiceSettingNotFound": - response = { - ...(await deserializeAws_json1_1ServiceSettingNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceSettingNotFoundResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResumeSessionCommand = async ( @@ -10979,41 +8363,25 @@ const deserializeAws_json1_1ResumeSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendAutomationSignalCommand = async ( @@ -11041,57 +8409,31 @@ const deserializeAws_json1_1SendAutomationSignalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AutomationExecutionNotFoundException": case "com.amazonaws.ssm#AutomationExecutionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context); case "AutomationStepNotFoundException": case "com.amazonaws.ssm#AutomationStepNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationStepNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationStepNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAutomationSignalException": case "com.amazonaws.ssm#InvalidAutomationSignalException": - response = { - ...(await deserializeAws_json1_1InvalidAutomationSignalExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutomationSignalExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendCommandCommand = async ( @@ -11119,113 +8461,52 @@ const deserializeAws_json1_1SendCommandCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DuplicateInstanceId": case "com.amazonaws.ssm#DuplicateInstanceId": - response = { - ...(await deserializeAws_json1_1DuplicateInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateInstanceIdResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "InvalidNotificationConfig": case "com.amazonaws.ssm#InvalidNotificationConfig": - response = { - ...(await deserializeAws_json1_1InvalidNotificationConfigResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNotificationConfigResponse(parsedOutput, context); case "InvalidOutputFolder": case "com.amazonaws.ssm#InvalidOutputFolder": - response = { - ...(await deserializeAws_json1_1InvalidOutputFolderResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOutputFolderResponse(parsedOutput, context); case "InvalidParameters": case "com.amazonaws.ssm#InvalidParameters": - response = { - ...(await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context); case "InvalidRole": case "com.amazonaws.ssm#InvalidRole": - response = { - ...(await deserializeAws_json1_1InvalidRoleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRoleResponse(parsedOutput, context); case "MaxDocumentSizeExceeded": case "com.amazonaws.ssm#MaxDocumentSizeExceeded": - response = { - ...(await deserializeAws_json1_1MaxDocumentSizeExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxDocumentSizeExceededResponse(parsedOutput, context); case "UnsupportedPlatformType": case "com.amazonaws.ssm#UnsupportedPlatformType": - response = { - ...(await deserializeAws_json1_1UnsupportedPlatformTypeResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedPlatformTypeResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartAssociationsOnceCommand = async ( @@ -11253,41 +8534,25 @@ const deserializeAws_json1_1StartAssociationsOnceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "InvalidAssociation": case "com.amazonaws.ssm#InvalidAssociation": - response = { - ...(await deserializeAws_json1_1InvalidAssociationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAssociationResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartAutomationExecutionCommand = async ( @@ -11315,81 +8580,40 @@ const deserializeAws_json1_1StartAutomationExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AutomationDefinitionNotFoundException": case "com.amazonaws.ssm#AutomationDefinitionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationDefinitionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationDefinitionNotFoundExceptionResponse(parsedOutput, context); case "AutomationDefinitionVersionNotFoundException": case "com.amazonaws.ssm#AutomationDefinitionVersionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationDefinitionVersionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationDefinitionVersionNotFoundExceptionResponse(parsedOutput, context); case "AutomationExecutionLimitExceededException": case "com.amazonaws.ssm#AutomationExecutionLimitExceededException": - response = { - ...(await deserializeAws_json1_1AutomationExecutionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationExecutionLimitExceededExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatch": case "com.amazonaws.ssm#IdempotentParameterMismatch": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAutomationExecutionParametersException": case "com.amazonaws.ssm#InvalidAutomationExecutionParametersException": - response = { - ...(await deserializeAws_json1_1InvalidAutomationExecutionParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutomationExecutionParametersExceptionResponse(parsedOutput, context); case "InvalidTarget": case "com.amazonaws.ssm#InvalidTarget": - response = { - ...(await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartChangeRequestExecutionCommand = async ( @@ -11417,81 +8641,40 @@ const deserializeAws_json1_1StartChangeRequestExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AutomationDefinitionNotApprovedException": case "com.amazonaws.ssm#AutomationDefinitionNotApprovedException": - response = { - ...(await deserializeAws_json1_1AutomationDefinitionNotApprovedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationDefinitionNotApprovedExceptionResponse(parsedOutput, context); case "AutomationDefinitionNotFoundException": case "com.amazonaws.ssm#AutomationDefinitionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationDefinitionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationDefinitionNotFoundExceptionResponse(parsedOutput, context); case "AutomationDefinitionVersionNotFoundException": case "com.amazonaws.ssm#AutomationDefinitionVersionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationDefinitionVersionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationDefinitionVersionNotFoundExceptionResponse(parsedOutput, context); case "AutomationExecutionLimitExceededException": case "com.amazonaws.ssm#AutomationExecutionLimitExceededException": - response = { - ...(await deserializeAws_json1_1AutomationExecutionLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationExecutionLimitExceededExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatch": case "com.amazonaws.ssm#IdempotentParameterMismatch": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAutomationExecutionParametersException": case "com.amazonaws.ssm#InvalidAutomationExecutionParametersException": - response = { - ...(await deserializeAws_json1_1InvalidAutomationExecutionParametersExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutomationExecutionParametersExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartSessionCommand = async ( @@ -11519,49 +8702,28 @@ const deserializeAws_json1_1StartSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "TargetNotConnected": case "com.amazonaws.ssm#TargetNotConnected": - response = { - ...(await deserializeAws_json1_1TargetNotConnectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TargetNotConnectedResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopAutomationExecutionCommand = async ( @@ -11589,49 +8751,28 @@ const deserializeAws_json1_1StopAutomationExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AutomationExecutionNotFoundException": case "com.amazonaws.ssm#AutomationExecutionNotFoundException": - response = { - ...(await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAutomationStatusUpdateException": case "com.amazonaws.ssm#InvalidAutomationStatusUpdateException": - response = { - ...(await deserializeAws_json1_1InvalidAutomationStatusUpdateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAutomationStatusUpdateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TerminateSessionCommand = async ( @@ -11659,41 +8800,25 @@ const deserializeAws_json1_1TerminateSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UnlabelParameterVersionCommand = async ( @@ -11721,57 +8846,31 @@ const deserializeAws_json1_1UnlabelParameterVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ParameterNotFound": case "com.amazonaws.ssm#ParameterNotFound": - response = { - ...(await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterNotFoundResponse(parsedOutput, context); case "ParameterVersionNotFound": case "com.amazonaws.ssm#ParameterVersionNotFound": - response = { - ...(await deserializeAws_json1_1ParameterVersionNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ParameterVersionNotFoundResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAssociationCommand = async ( @@ -11799,121 +8898,55 @@ const deserializeAws_json1_1UpdateAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "AssociationVersionLimitExceeded": case "com.amazonaws.ssm#AssociationVersionLimitExceeded": - response = { - ...(await deserializeAws_json1_1AssociationVersionLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationVersionLimitExceededResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidAssociationVersion": case "com.amazonaws.ssm#InvalidAssociationVersion": - response = { - ...(await deserializeAws_json1_1InvalidAssociationVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidAssociationVersionResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); case "InvalidOutputLocation": case "com.amazonaws.ssm#InvalidOutputLocation": - response = { - ...(await deserializeAws_json1_1InvalidOutputLocationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidOutputLocationResponse(parsedOutput, context); case "InvalidParameters": case "com.amazonaws.ssm#InvalidParameters": - response = { - ...(await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParametersResponse(parsedOutput, context); case "InvalidSchedule": case "com.amazonaws.ssm#InvalidSchedule": - response = { - ...(await deserializeAws_json1_1InvalidScheduleResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidScheduleResponse(parsedOutput, context); case "InvalidTarget": case "com.amazonaws.ssm#InvalidTarget": - response = { - ...(await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidTargetResponse(parsedOutput, context); case "InvalidUpdate": case "com.amazonaws.ssm#InvalidUpdate": - response = { - ...(await deserializeAws_json1_1InvalidUpdateResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidUpdateResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAssociationStatusCommand = async ( @@ -11941,73 +8974,37 @@ const deserializeAws_json1_1UpdateAssociationStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AssociationDoesNotExist": case "com.amazonaws.ssm#AssociationDoesNotExist": - response = { - ...(await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AssociationDoesNotExistResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); case "StatusUnchanged": case "com.amazonaws.ssm#StatusUnchanged": - response = { - ...(await deserializeAws_json1_1StatusUnchangedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1StatusUnchangedResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDocumentCommand = async ( @@ -12035,105 +9032,49 @@ const deserializeAws_json1_1UpdateDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DocumentVersionLimitExceeded": case "com.amazonaws.ssm#DocumentVersionLimitExceeded": - response = { - ...(await deserializeAws_json1_1DocumentVersionLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentVersionLimitExceededResponse(parsedOutput, context); case "DuplicateDocumentContent": case "com.amazonaws.ssm#DuplicateDocumentContent": - response = { - ...(await deserializeAws_json1_1DuplicateDocumentContentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateDocumentContentResponse(parsedOutput, context); case "DuplicateDocumentVersionName": case "com.amazonaws.ssm#DuplicateDocumentVersionName": - response = { - ...(await deserializeAws_json1_1DuplicateDocumentVersionNameResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DuplicateDocumentVersionNameResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentContent": case "com.amazonaws.ssm#InvalidDocumentContent": - response = { - ...(await deserializeAws_json1_1InvalidDocumentContentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentContentResponse(parsedOutput, context); case "InvalidDocumentOperation": case "com.amazonaws.ssm#InvalidDocumentOperation": - response = { - ...(await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context); case "InvalidDocumentSchemaVersion": case "com.amazonaws.ssm#InvalidDocumentSchemaVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentSchemaVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentSchemaVersionResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); case "MaxDocumentSizeExceeded": case "com.amazonaws.ssm#MaxDocumentSizeExceeded": - response = { - ...(await deserializeAws_json1_1MaxDocumentSizeExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MaxDocumentSizeExceededResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDocumentDefaultVersionCommand = async ( @@ -12161,57 +9102,31 @@ const deserializeAws_json1_1UpdateDocumentDefaultVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentSchemaVersion": case "com.amazonaws.ssm#InvalidDocumentSchemaVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentSchemaVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentSchemaVersionResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDocumentMetadataCommand = async ( @@ -12239,57 +9154,31 @@ const deserializeAws_json1_1UpdateDocumentMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidDocument": case "com.amazonaws.ssm#InvalidDocument": - response = { - ...(await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentResponse(parsedOutput, context); case "InvalidDocumentOperation": case "com.amazonaws.ssm#InvalidDocumentOperation": - response = { - ...(await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentOperationResponse(parsedOutput, context); case "InvalidDocumentVersion": case "com.amazonaws.ssm#InvalidDocumentVersion": - response = { - ...(await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidDocumentVersionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMaintenanceWindowCommand = async ( @@ -12317,41 +9206,25 @@ const deserializeAws_json1_1UpdateMaintenanceWindowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMaintenanceWindowTargetCommand = async ( @@ -12379,41 +9252,25 @@ const deserializeAws_json1_1UpdateMaintenanceWindowTargetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMaintenanceWindowTaskCommand = async ( @@ -12441,41 +9298,25 @@ const deserializeAws_json1_1UpdateMaintenanceWindowTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateManagedInstanceRoleCommand = async ( @@ -12503,41 +9344,25 @@ const deserializeAws_json1_1UpdateManagedInstanceRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidInstanceId": case "com.amazonaws.ssm#InvalidInstanceId": - response = { - ...(await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidInstanceIdResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateOpsItemCommand = async ( @@ -12565,65 +9390,34 @@ const deserializeAws_json1_1UpdateOpsItemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsItemAlreadyExistsException": case "com.amazonaws.ssm#OpsItemAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1OpsItemAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemAlreadyExistsExceptionResponse(parsedOutput, context); case "OpsItemInvalidParameterException": case "com.amazonaws.ssm#OpsItemInvalidParameterException": - response = { - ...(await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse(parsedOutput, context); case "OpsItemLimitExceededException": case "com.amazonaws.ssm#OpsItemLimitExceededException": - response = { - ...(await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemLimitExceededExceptionResponse(parsedOutput, context); case "OpsItemNotFoundException": case "com.amazonaws.ssm#OpsItemNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsItemNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateOpsMetadataCommand = async ( @@ -12651,65 +9445,34 @@ const deserializeAws_json1_1UpdateOpsMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "OpsMetadataInvalidArgumentException": case "com.amazonaws.ssm#OpsMetadataInvalidArgumentException": - response = { - ...(await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse(parsedOutput, context); case "OpsMetadataKeyLimitExceededException": case "com.amazonaws.ssm#OpsMetadataKeyLimitExceededException": - response = { - ...(await deserializeAws_json1_1OpsMetadataKeyLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataKeyLimitExceededExceptionResponse(parsedOutput, context); case "OpsMetadataNotFoundException": case "com.amazonaws.ssm#OpsMetadataNotFoundException": - response = { - ...(await deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse(parsedOutput, context); case "OpsMetadataTooManyUpdatesException": case "com.amazonaws.ssm#OpsMetadataTooManyUpdatesException": - response = { - ...(await deserializeAws_json1_1OpsMetadataTooManyUpdatesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OpsMetadataTooManyUpdatesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePatchBaselineCommand = async ( @@ -12737,41 +9500,25 @@ const deserializeAws_json1_1UpdatePatchBaselineCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DoesNotExistException": case "com.amazonaws.ssm#DoesNotExistException": - response = { - ...(await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DoesNotExistExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResourceDataSyncCommand = async ( @@ -12799,57 +9546,31 @@ const deserializeAws_json1_1UpdateResourceDataSyncCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ResourceDataSyncConflictException": case "com.amazonaws.ssm#ResourceDataSyncConflictException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncConflictExceptionResponse(parsedOutput, context); case "ResourceDataSyncInvalidConfigurationException": case "com.amazonaws.ssm#ResourceDataSyncInvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse(parsedOutput, context); case "ResourceDataSyncNotFoundException": case "com.amazonaws.ssm#ResourceDataSyncNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServiceSettingCommand = async ( @@ -12877,49 +9598,28 @@ const deserializeAws_json1_1UpdateServiceSettingCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.ssm#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "ServiceSettingNotFound": case "com.amazonaws.ssm#ServiceSettingNotFound": - response = { - ...(await deserializeAws_json1_1ServiceSettingNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceSettingNotFoundResponse(parsedOutput, context); case "TooManyUpdates": case "com.amazonaws.ssm#TooManyUpdates": - response = { - ...(await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyUpdatesResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( @@ -12928,13 +9628,11 @@ const deserializeAws_json1_1AlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AlreadyExistsException(body, context); - const contents: AlreadyExistsException = { - name: "AlreadyExistsException", - $fault: "client", + const exception = new AlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociatedInstancesResponse = async ( @@ -12943,13 +9641,11 @@ const deserializeAws_json1_1AssociatedInstancesResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociatedInstances(body, context); - const contents: AssociatedInstances = { - name: "AssociatedInstances", - $fault: "client", + const exception = new AssociatedInstances({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociationAlreadyExistsResponse = async ( @@ -12958,13 +9654,11 @@ const deserializeAws_json1_1AssociationAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociationAlreadyExists(body, context); - const contents: AssociationAlreadyExists = { - name: "AssociationAlreadyExists", - $fault: "client", + const exception = new AssociationAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociationDoesNotExistResponse = async ( @@ -12973,13 +9667,11 @@ const deserializeAws_json1_1AssociationDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociationDoesNotExist(body, context); - const contents: AssociationDoesNotExist = { - name: "AssociationDoesNotExist", - $fault: "client", + const exception = new AssociationDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociationExecutionDoesNotExistResponse = async ( @@ -12988,13 +9680,11 @@ const deserializeAws_json1_1AssociationExecutionDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociationExecutionDoesNotExist(body, context); - const contents: AssociationExecutionDoesNotExist = { - name: "AssociationExecutionDoesNotExist", - $fault: "client", + const exception = new AssociationExecutionDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociationLimitExceededResponse = async ( @@ -13003,13 +9693,11 @@ const deserializeAws_json1_1AssociationLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociationLimitExceeded(body, context); - const contents: AssociationLimitExceeded = { - name: "AssociationLimitExceeded", - $fault: "client", + const exception = new AssociationLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AssociationVersionLimitExceededResponse = async ( @@ -13018,13 +9706,11 @@ const deserializeAws_json1_1AssociationVersionLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AssociationVersionLimitExceeded(body, context); - const contents: AssociationVersionLimitExceeded = { - name: "AssociationVersionLimitExceeded", - $fault: "client", + const exception = new AssociationVersionLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AutomationDefinitionNotApprovedExceptionResponse = async ( @@ -13033,13 +9719,11 @@ const deserializeAws_json1_1AutomationDefinitionNotApprovedExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AutomationDefinitionNotApprovedException(body, context); - const contents: AutomationDefinitionNotApprovedException = { - name: "AutomationDefinitionNotApprovedException", - $fault: "client", + const exception = new AutomationDefinitionNotApprovedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AutomationDefinitionNotFoundExceptionResponse = async ( @@ -13048,13 +9732,11 @@ const deserializeAws_json1_1AutomationDefinitionNotFoundExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AutomationDefinitionNotFoundException(body, context); - const contents: AutomationDefinitionNotFoundException = { - name: "AutomationDefinitionNotFoundException", - $fault: "client", + const exception = new AutomationDefinitionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AutomationDefinitionVersionNotFoundExceptionResponse = async ( @@ -13063,13 +9745,11 @@ const deserializeAws_json1_1AutomationDefinitionVersionNotFoundExceptionResponse ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AutomationDefinitionVersionNotFoundException(body, context); - const contents: AutomationDefinitionVersionNotFoundException = { - name: "AutomationDefinitionVersionNotFoundException", - $fault: "client", + const exception = new AutomationDefinitionVersionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AutomationExecutionLimitExceededExceptionResponse = async ( @@ -13078,13 +9758,11 @@ const deserializeAws_json1_1AutomationExecutionLimitExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AutomationExecutionLimitExceededException(body, context); - const contents: AutomationExecutionLimitExceededException = { - name: "AutomationExecutionLimitExceededException", - $fault: "client", + const exception = new AutomationExecutionLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse = async ( @@ -13093,13 +9771,11 @@ const deserializeAws_json1_1AutomationExecutionNotFoundExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AutomationExecutionNotFoundException(body, context); - const contents: AutomationExecutionNotFoundException = { - name: "AutomationExecutionNotFoundException", - $fault: "client", + const exception = new AutomationExecutionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AutomationStepNotFoundExceptionResponse = async ( @@ -13108,13 +9784,11 @@ const deserializeAws_json1_1AutomationStepNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AutomationStepNotFoundException(body, context); - const contents: AutomationStepNotFoundException = { - name: "AutomationStepNotFoundException", - $fault: "client", + const exception = new AutomationStepNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ComplianceTypeCountLimitExceededExceptionResponse = async ( @@ -13123,13 +9797,11 @@ const deserializeAws_json1_1ComplianceTypeCountLimitExceededExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ComplianceTypeCountLimitExceededException(body, context); - const contents: ComplianceTypeCountLimitExceededException = { - name: "ComplianceTypeCountLimitExceededException", - $fault: "client", + const exception = new ComplianceTypeCountLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CustomSchemaCountLimitExceededExceptionResponse = async ( @@ -13138,13 +9810,11 @@ const deserializeAws_json1_1CustomSchemaCountLimitExceededExceptionResponse = as ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CustomSchemaCountLimitExceededException(body, context); - const contents: CustomSchemaCountLimitExceededException = { - name: "CustomSchemaCountLimitExceededException", - $fault: "client", + const exception = new CustomSchemaCountLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DocumentAlreadyExistsResponse = async ( @@ -13153,13 +9823,11 @@ const deserializeAws_json1_1DocumentAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DocumentAlreadyExists(body, context); - const contents: DocumentAlreadyExists = { - name: "DocumentAlreadyExists", - $fault: "client", + const exception = new DocumentAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DocumentLimitExceededResponse = async ( @@ -13168,13 +9836,11 @@ const deserializeAws_json1_1DocumentLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DocumentLimitExceeded(body, context); - const contents: DocumentLimitExceeded = { - name: "DocumentLimitExceeded", - $fault: "client", + const exception = new DocumentLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DocumentPermissionLimitResponse = async ( @@ -13183,13 +9849,11 @@ const deserializeAws_json1_1DocumentPermissionLimitResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DocumentPermissionLimit(body, context); - const contents: DocumentPermissionLimit = { - name: "DocumentPermissionLimit", - $fault: "client", + const exception = new DocumentPermissionLimit({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DocumentVersionLimitExceededResponse = async ( @@ -13198,13 +9862,11 @@ const deserializeAws_json1_1DocumentVersionLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DocumentVersionLimitExceeded(body, context); - const contents: DocumentVersionLimitExceeded = { - name: "DocumentVersionLimitExceeded", - $fault: "client", + const exception = new DocumentVersionLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DoesNotExistExceptionResponse = async ( @@ -13213,13 +9875,11 @@ const deserializeAws_json1_1DoesNotExistExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DoesNotExistException(body, context); - const contents: DoesNotExistException = { - name: "DoesNotExistException", - $fault: "client", + const exception = new DoesNotExistException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateDocumentContentResponse = async ( @@ -13228,13 +9888,11 @@ const deserializeAws_json1_1DuplicateDocumentContentResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateDocumentContent(body, context); - const contents: DuplicateDocumentContent = { - name: "DuplicateDocumentContent", - $fault: "client", + const exception = new DuplicateDocumentContent({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateDocumentVersionNameResponse = async ( @@ -13243,13 +9901,11 @@ const deserializeAws_json1_1DuplicateDocumentVersionNameResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateDocumentVersionName(body, context); - const contents: DuplicateDocumentVersionName = { - name: "DuplicateDocumentVersionName", - $fault: "client", + const exception = new DuplicateDocumentVersionName({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DuplicateInstanceIdResponse = async ( @@ -13258,13 +9914,11 @@ const deserializeAws_json1_1DuplicateInstanceIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DuplicateInstanceId(body, context); - const contents: DuplicateInstanceId = { - name: "DuplicateInstanceId", - $fault: "client", + const exception = new DuplicateInstanceId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FeatureNotAvailableExceptionResponse = async ( @@ -13273,13 +9927,11 @@ const deserializeAws_json1_1FeatureNotAvailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FeatureNotAvailableException(body, context); - const contents: FeatureNotAvailableException = { - name: "FeatureNotAvailableException", - $fault: "client", + const exception = new FeatureNotAvailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HierarchyLevelLimitExceededExceptionResponse = async ( @@ -13288,13 +9940,11 @@ const deserializeAws_json1_1HierarchyLevelLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HierarchyLevelLimitExceededException(body, context); - const contents: HierarchyLevelLimitExceededException = { - name: "HierarchyLevelLimitExceededException", - $fault: "client", + const exception = new HierarchyLevelLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HierarchyTypeMismatchExceptionResponse = async ( @@ -13303,13 +9953,11 @@ const deserializeAws_json1_1HierarchyTypeMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HierarchyTypeMismatchException(body, context); - const contents: HierarchyTypeMismatchException = { - name: "HierarchyTypeMismatchException", - $fault: "client", + const exception = new HierarchyTypeMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotentParameterMismatchResponse = async ( @@ -13318,13 +9966,11 @@ const deserializeAws_json1_1IdempotentParameterMismatchResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotentParameterMismatch(body, context); - const contents: IdempotentParameterMismatch = { - name: "IdempotentParameterMismatch", - $fault: "client", + const exception = new IdempotentParameterMismatch({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IncompatiblePolicyExceptionResponse = async ( @@ -13333,13 +9979,11 @@ const deserializeAws_json1_1IncompatiblePolicyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IncompatiblePolicyException(body, context); - const contents: IncompatiblePolicyException = { - name: "IncompatiblePolicyException", - $fault: "client", + const exception = new IncompatiblePolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -13348,13 +9992,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidActivationResponse = async ( @@ -13363,13 +10005,11 @@ const deserializeAws_json1_1InvalidActivationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidActivation(body, context); - const contents: InvalidActivation = { - name: "InvalidActivation", - $fault: "client", + const exception = new InvalidActivation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidActivationIdResponse = async ( @@ -13378,13 +10018,11 @@ const deserializeAws_json1_1InvalidActivationIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidActivationId(body, context); - const contents: InvalidActivationId = { - name: "InvalidActivationId", - $fault: "client", + const exception = new InvalidActivationId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAggregatorExceptionResponse = async ( @@ -13393,13 +10031,11 @@ const deserializeAws_json1_1InvalidAggregatorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAggregatorException(body, context); - const contents: InvalidAggregatorException = { - name: "InvalidAggregatorException", - $fault: "client", + const exception = new InvalidAggregatorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAllowedPatternExceptionResponse = async ( @@ -13408,13 +10044,11 @@ const deserializeAws_json1_1InvalidAllowedPatternExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAllowedPatternException(body, context); - const contents: InvalidAllowedPatternException = { - name: "InvalidAllowedPatternException", - $fault: "client", + const exception = new InvalidAllowedPatternException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAssociationResponse = async ( @@ -13423,13 +10057,11 @@ const deserializeAws_json1_1InvalidAssociationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAssociation(body, context); - const contents: InvalidAssociation = { - name: "InvalidAssociation", - $fault: "client", + const exception = new InvalidAssociation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAssociationVersionResponse = async ( @@ -13438,13 +10070,11 @@ const deserializeAws_json1_1InvalidAssociationVersionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAssociationVersion(body, context); - const contents: InvalidAssociationVersion = { - name: "InvalidAssociationVersion", - $fault: "client", + const exception = new InvalidAssociationVersion({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAutomationExecutionParametersExceptionResponse = async ( @@ -13453,13 +10083,11 @@ const deserializeAws_json1_1InvalidAutomationExecutionParametersExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAutomationExecutionParametersException(body, context); - const contents: InvalidAutomationExecutionParametersException = { - name: "InvalidAutomationExecutionParametersException", - $fault: "client", + const exception = new InvalidAutomationExecutionParametersException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAutomationSignalExceptionResponse = async ( @@ -13468,13 +10096,11 @@ const deserializeAws_json1_1InvalidAutomationSignalExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAutomationSignalException(body, context); - const contents: InvalidAutomationSignalException = { - name: "InvalidAutomationSignalException", - $fault: "client", + const exception = new InvalidAutomationSignalException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidAutomationStatusUpdateExceptionResponse = async ( @@ -13483,13 +10109,11 @@ const deserializeAws_json1_1InvalidAutomationStatusUpdateExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidAutomationStatusUpdateException(body, context); - const contents: InvalidAutomationStatusUpdateException = { - name: "InvalidAutomationStatusUpdateException", - $fault: "client", + const exception = new InvalidAutomationStatusUpdateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCommandIdResponse = async ( @@ -13498,13 +10122,11 @@ const deserializeAws_json1_1InvalidCommandIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCommandId(body, context); - const contents: InvalidCommandId = { - name: "InvalidCommandId", - $fault: "client", + const exception = new InvalidCommandId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeleteInventoryParametersExceptionResponse = async ( @@ -13513,13 +10135,11 @@ const deserializeAws_json1_1InvalidDeleteInventoryParametersExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeleteInventoryParametersException(body, context); - const contents: InvalidDeleteInventoryParametersException = { - name: "InvalidDeleteInventoryParametersException", - $fault: "client", + const exception = new InvalidDeleteInventoryParametersException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDeletionIdExceptionResponse = async ( @@ -13528,13 +10148,11 @@ const deserializeAws_json1_1InvalidDeletionIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDeletionIdException(body, context); - const contents: InvalidDeletionIdException = { - name: "InvalidDeletionIdException", - $fault: "client", + const exception = new InvalidDeletionIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDocumentResponse = async ( @@ -13543,13 +10161,11 @@ const deserializeAws_json1_1InvalidDocumentResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDocument(body, context); - const contents: InvalidDocument = { - name: "InvalidDocument", - $fault: "client", + const exception = new InvalidDocument({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDocumentContentResponse = async ( @@ -13558,13 +10174,11 @@ const deserializeAws_json1_1InvalidDocumentContentResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDocumentContent(body, context); - const contents: InvalidDocumentContent = { - name: "InvalidDocumentContent", - $fault: "client", + const exception = new InvalidDocumentContent({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDocumentOperationResponse = async ( @@ -13573,13 +10187,11 @@ const deserializeAws_json1_1InvalidDocumentOperationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDocumentOperation(body, context); - const contents: InvalidDocumentOperation = { - name: "InvalidDocumentOperation", - $fault: "client", + const exception = new InvalidDocumentOperation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDocumentSchemaVersionResponse = async ( @@ -13588,13 +10200,11 @@ const deserializeAws_json1_1InvalidDocumentSchemaVersionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDocumentSchemaVersion(body, context); - const contents: InvalidDocumentSchemaVersion = { - name: "InvalidDocumentSchemaVersion", - $fault: "client", + const exception = new InvalidDocumentSchemaVersion({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDocumentTypeResponse = async ( @@ -13603,13 +10213,11 @@ const deserializeAws_json1_1InvalidDocumentTypeResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDocumentType(body, context); - const contents: InvalidDocumentType = { - name: "InvalidDocumentType", - $fault: "client", + const exception = new InvalidDocumentType({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidDocumentVersionResponse = async ( @@ -13618,13 +10226,11 @@ const deserializeAws_json1_1InvalidDocumentVersionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidDocumentVersion(body, context); - const contents: InvalidDocumentVersion = { - name: "InvalidDocumentVersion", - $fault: "client", + const exception = new InvalidDocumentVersion({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilterResponse = async ( @@ -13633,13 +10239,11 @@ const deserializeAws_json1_1InvalidFilterResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilter(body, context); - const contents: InvalidFilter = { - name: "InvalidFilter", - $fault: "client", + const exception = new InvalidFilter({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilterKeyResponse = async ( @@ -13648,13 +10252,11 @@ const deserializeAws_json1_1InvalidFilterKeyResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilterKey(body, context); - const contents: InvalidFilterKey = { - name: "InvalidFilterKey", - $fault: "client", + const exception = new InvalidFilterKey({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilterOptionResponse = async ( @@ -13663,13 +10265,11 @@ const deserializeAws_json1_1InvalidFilterOptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilterOption(body, context); - const contents: InvalidFilterOption = { - name: "InvalidFilterOption", - $fault: "client", + const exception = new InvalidFilterOption({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilterValueResponse = async ( @@ -13678,13 +10278,11 @@ const deserializeAws_json1_1InvalidFilterValueResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilterValue(body, context); - const contents: InvalidFilterValue = { - name: "InvalidFilterValue", - $fault: "client", + const exception = new InvalidFilterValue({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInstanceIdResponse = async ( @@ -13693,13 +10291,11 @@ const deserializeAws_json1_1InvalidInstanceIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInstanceId(body, context); - const contents: InvalidInstanceId = { - name: "InvalidInstanceId", - $fault: "client", + const exception = new InvalidInstanceId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInstanceInformationFilterValueResponse = async ( @@ -13708,13 +10304,11 @@ const deserializeAws_json1_1InvalidInstanceInformationFilterValueResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInstanceInformationFilterValue(body, context); - const contents: InvalidInstanceInformationFilterValue = { - name: "InvalidInstanceInformationFilterValue", - $fault: "client", + const exception = new InvalidInstanceInformationFilterValue({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInventoryGroupExceptionResponse = async ( @@ -13723,13 +10317,11 @@ const deserializeAws_json1_1InvalidInventoryGroupExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInventoryGroupException(body, context); - const contents: InvalidInventoryGroupException = { - name: "InvalidInventoryGroupException", - $fault: "client", + const exception = new InvalidInventoryGroupException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInventoryItemContextExceptionResponse = async ( @@ -13738,13 +10330,11 @@ const deserializeAws_json1_1InvalidInventoryItemContextExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInventoryItemContextException(body, context); - const contents: InvalidInventoryItemContextException = { - name: "InvalidInventoryItemContextException", - $fault: "client", + const exception = new InvalidInventoryItemContextException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidInventoryRequestExceptionResponse = async ( @@ -13753,13 +10343,11 @@ const deserializeAws_json1_1InvalidInventoryRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidInventoryRequestException(body, context); - const contents: InvalidInventoryRequestException = { - name: "InvalidInventoryRequestException", - $fault: "client", + const exception = new InvalidInventoryRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidItemContentExceptionResponse = async ( @@ -13768,13 +10356,11 @@ const deserializeAws_json1_1InvalidItemContentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidItemContentException(body, context); - const contents: InvalidItemContentException = { - name: "InvalidItemContentException", - $fault: "client", + const exception = new InvalidItemContentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKeyIdResponse = async ( @@ -13783,13 +10369,11 @@ const deserializeAws_json1_1InvalidKeyIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKeyId(body, context); - const contents: InvalidKeyId = { - name: "InvalidKeyId", - $fault: "client", + const exception = new InvalidKeyId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenResponse = async ( @@ -13798,13 +10382,11 @@ const deserializeAws_json1_1InvalidNextTokenResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextToken(body, context); - const contents: InvalidNextToken = { - name: "InvalidNextToken", - $fault: "client", + const exception = new InvalidNextToken({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNotificationConfigResponse = async ( @@ -13813,13 +10395,11 @@ const deserializeAws_json1_1InvalidNotificationConfigResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNotificationConfig(body, context); - const contents: InvalidNotificationConfig = { - name: "InvalidNotificationConfig", - $fault: "client", + const exception = new InvalidNotificationConfig({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOptionExceptionResponse = async ( @@ -13828,13 +10408,11 @@ const deserializeAws_json1_1InvalidOptionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOptionException(body, context); - const contents: InvalidOptionException = { - name: "InvalidOptionException", - $fault: "client", + const exception = new InvalidOptionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOutputFolderResponse = async ( @@ -13843,13 +10421,11 @@ const deserializeAws_json1_1InvalidOutputFolderResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOutputFolder(body, context); - const contents: InvalidOutputFolder = { - name: "InvalidOutputFolder", - $fault: "client", + const exception = new InvalidOutputFolder({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidOutputLocationResponse = async ( @@ -13858,13 +10434,11 @@ const deserializeAws_json1_1InvalidOutputLocationResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidOutputLocation(body, context); - const contents: InvalidOutputLocation = { - name: "InvalidOutputLocation", - $fault: "client", + const exception = new InvalidOutputLocation({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParametersResponse = async ( @@ -13873,13 +10447,11 @@ const deserializeAws_json1_1InvalidParametersResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameters(body, context); - const contents: InvalidParameters = { - name: "InvalidParameters", - $fault: "client", + const exception = new InvalidParameters({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPermissionTypeResponse = async ( @@ -13888,13 +10460,11 @@ const deserializeAws_json1_1InvalidPermissionTypeResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPermissionType(body, context); - const contents: InvalidPermissionType = { - name: "InvalidPermissionType", - $fault: "client", + const exception = new InvalidPermissionType({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPluginNameResponse = async ( @@ -13903,13 +10473,11 @@ const deserializeAws_json1_1InvalidPluginNameResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPluginName(body, context); - const contents: InvalidPluginName = { - name: "InvalidPluginName", - $fault: "client", + const exception = new InvalidPluginName({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPolicyAttributeExceptionResponse = async ( @@ -13918,13 +10486,11 @@ const deserializeAws_json1_1InvalidPolicyAttributeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPolicyAttributeException(body, context); - const contents: InvalidPolicyAttributeException = { - name: "InvalidPolicyAttributeException", - $fault: "client", + const exception = new InvalidPolicyAttributeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPolicyTypeExceptionResponse = async ( @@ -13933,13 +10499,11 @@ const deserializeAws_json1_1InvalidPolicyTypeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPolicyTypeException(body, context); - const contents: InvalidPolicyTypeException = { - name: "InvalidPolicyTypeException", - $fault: "client", + const exception = new InvalidPolicyTypeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceIdResponse = async ( @@ -13948,13 +10512,11 @@ const deserializeAws_json1_1InvalidResourceIdResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceId(body, context); - const contents: InvalidResourceId = { - name: "InvalidResourceId", - $fault: "client", + const exception = new InvalidResourceId({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceTypeResponse = async ( @@ -13963,13 +10525,11 @@ const deserializeAws_json1_1InvalidResourceTypeResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceType(body, context); - const contents: InvalidResourceType = { - name: "InvalidResourceType", - $fault: "client", + const exception = new InvalidResourceType({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResultAttributeExceptionResponse = async ( @@ -13978,13 +10538,11 @@ const deserializeAws_json1_1InvalidResultAttributeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResultAttributeException(body, context); - const contents: InvalidResultAttributeException = { - name: "InvalidResultAttributeException", - $fault: "client", + const exception = new InvalidResultAttributeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRoleResponse = async ( @@ -13993,13 +10551,11 @@ const deserializeAws_json1_1InvalidRoleResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRole(body, context); - const contents: InvalidRole = { - name: "InvalidRole", - $fault: "client", + const exception = new InvalidRole({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidScheduleResponse = async ( @@ -14008,13 +10564,11 @@ const deserializeAws_json1_1InvalidScheduleResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidSchedule(body, context); - const contents: InvalidSchedule = { - name: "InvalidSchedule", - $fault: "client", + const exception = new InvalidSchedule({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTargetResponse = async ( @@ -14023,13 +10577,11 @@ const deserializeAws_json1_1InvalidTargetResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTarget(body, context); - const contents: InvalidTarget = { - name: "InvalidTarget", - $fault: "client", + const exception = new InvalidTarget({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidTypeNameExceptionResponse = async ( @@ -14038,13 +10590,11 @@ const deserializeAws_json1_1InvalidTypeNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidTypeNameException(body, context); - const contents: InvalidTypeNameException = { - name: "InvalidTypeNameException", - $fault: "client", + const exception = new InvalidTypeNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidUpdateResponse = async ( @@ -14053,13 +10603,11 @@ const deserializeAws_json1_1InvalidUpdateResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidUpdate(body, context); - const contents: InvalidUpdate = { - name: "InvalidUpdate", - $fault: "client", + const exception = new InvalidUpdate({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvocationDoesNotExistResponse = async ( @@ -14068,13 +10616,11 @@ const deserializeAws_json1_1InvocationDoesNotExistResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvocationDoesNotExist(body, context); - const contents: InvocationDoesNotExist = { - name: "InvocationDoesNotExist", - $fault: "client", + const exception = new InvocationDoesNotExist({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ItemContentMismatchExceptionResponse = async ( @@ -14083,13 +10629,11 @@ const deserializeAws_json1_1ItemContentMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ItemContentMismatchException(body, context); - const contents: ItemContentMismatchException = { - name: "ItemContentMismatchException", - $fault: "client", + const exception = new ItemContentMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ItemSizeLimitExceededExceptionResponse = async ( @@ -14098,13 +10642,11 @@ const deserializeAws_json1_1ItemSizeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ItemSizeLimitExceededException(body, context); - const contents: ItemSizeLimitExceededException = { - name: "ItemSizeLimitExceededException", - $fault: "client", + const exception = new ItemSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MaxDocumentSizeExceededResponse = async ( @@ -14113,13 +10655,11 @@ const deserializeAws_json1_1MaxDocumentSizeExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MaxDocumentSizeExceeded(body, context); - const contents: MaxDocumentSizeExceeded = { - name: "MaxDocumentSizeExceeded", - $fault: "client", + const exception = new MaxDocumentSizeExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsItemAlreadyExistsExceptionResponse = async ( @@ -14128,13 +10668,11 @@ const deserializeAws_json1_1OpsItemAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsItemAlreadyExistsException(body, context); - const contents: OpsItemAlreadyExistsException = { - name: "OpsItemAlreadyExistsException", - $fault: "client", + const exception = new OpsItemAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse = async ( @@ -14143,13 +10681,11 @@ const deserializeAws_json1_1OpsItemInvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsItemInvalidParameterException(body, context); - const contents: OpsItemInvalidParameterException = { - name: "OpsItemInvalidParameterException", - $fault: "client", + const exception = new OpsItemInvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsItemLimitExceededExceptionResponse = async ( @@ -14158,13 +10694,11 @@ const deserializeAws_json1_1OpsItemLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsItemLimitExceededException(body, context); - const contents: OpsItemLimitExceededException = { - name: "OpsItemLimitExceededException", - $fault: "client", + const exception = new OpsItemLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsItemNotFoundExceptionResponse = async ( @@ -14173,13 +10707,11 @@ const deserializeAws_json1_1OpsItemNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsItemNotFoundException(body, context); - const contents: OpsItemNotFoundException = { - name: "OpsItemNotFoundException", - $fault: "client", + const exception = new OpsItemNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsItemRelatedItemAlreadyExistsExceptionResponse = async ( @@ -14188,13 +10720,11 @@ const deserializeAws_json1_1OpsItemRelatedItemAlreadyExistsExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsItemRelatedItemAlreadyExistsException(body, context); - const contents: OpsItemRelatedItemAlreadyExistsException = { - name: "OpsItemRelatedItemAlreadyExistsException", - $fault: "client", + const exception = new OpsItemRelatedItemAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsItemRelatedItemAssociationNotFoundExceptionResponse = async ( @@ -14203,13 +10733,11 @@ const deserializeAws_json1_1OpsItemRelatedItemAssociationNotFoundExceptionRespon ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsItemRelatedItemAssociationNotFoundException(body, context); - const contents: OpsItemRelatedItemAssociationNotFoundException = { - name: "OpsItemRelatedItemAssociationNotFoundException", - $fault: "client", + const exception = new OpsItemRelatedItemAssociationNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsMetadataAlreadyExistsExceptionResponse = async ( @@ -14218,13 +10746,11 @@ const deserializeAws_json1_1OpsMetadataAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsMetadataAlreadyExistsException(body, context); - const contents: OpsMetadataAlreadyExistsException = { - name: "OpsMetadataAlreadyExistsException", - $fault: "client", + const exception = new OpsMetadataAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse = async ( @@ -14233,13 +10759,11 @@ const deserializeAws_json1_1OpsMetadataInvalidArgumentExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsMetadataInvalidArgumentException(body, context); - const contents: OpsMetadataInvalidArgumentException = { - name: "OpsMetadataInvalidArgumentException", - $fault: "client", + const exception = new OpsMetadataInvalidArgumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsMetadataKeyLimitExceededExceptionResponse = async ( @@ -14248,13 +10772,11 @@ const deserializeAws_json1_1OpsMetadataKeyLimitExceededExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsMetadataKeyLimitExceededException(body, context); - const contents: OpsMetadataKeyLimitExceededException = { - name: "OpsMetadataKeyLimitExceededException", - $fault: "client", + const exception = new OpsMetadataKeyLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsMetadataLimitExceededExceptionResponse = async ( @@ -14263,13 +10785,11 @@ const deserializeAws_json1_1OpsMetadataLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsMetadataLimitExceededException(body, context); - const contents: OpsMetadataLimitExceededException = { - name: "OpsMetadataLimitExceededException", - $fault: "client", + const exception = new OpsMetadataLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse = async ( @@ -14278,13 +10798,11 @@ const deserializeAws_json1_1OpsMetadataNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsMetadataNotFoundException(body, context); - const contents: OpsMetadataNotFoundException = { - name: "OpsMetadataNotFoundException", - $fault: "client", + const exception = new OpsMetadataNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OpsMetadataTooManyUpdatesExceptionResponse = async ( @@ -14293,13 +10811,11 @@ const deserializeAws_json1_1OpsMetadataTooManyUpdatesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OpsMetadataTooManyUpdatesException(body, context); - const contents: OpsMetadataTooManyUpdatesException = { - name: "OpsMetadataTooManyUpdatesException", - $fault: "client", + const exception = new OpsMetadataTooManyUpdatesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterAlreadyExistsResponse = async ( @@ -14308,13 +10824,11 @@ const deserializeAws_json1_1ParameterAlreadyExistsResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterAlreadyExists(body, context); - const contents: ParameterAlreadyExists = { - name: "ParameterAlreadyExists", - $fault: "client", + const exception = new ParameterAlreadyExists({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterLimitExceededResponse = async ( @@ -14323,13 +10837,11 @@ const deserializeAws_json1_1ParameterLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterLimitExceeded(body, context); - const contents: ParameterLimitExceeded = { - name: "ParameterLimitExceeded", - $fault: "client", + const exception = new ParameterLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterMaxVersionLimitExceededResponse = async ( @@ -14338,13 +10850,11 @@ const deserializeAws_json1_1ParameterMaxVersionLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterMaxVersionLimitExceeded(body, context); - const contents: ParameterMaxVersionLimitExceeded = { - name: "ParameterMaxVersionLimitExceeded", - $fault: "client", + const exception = new ParameterMaxVersionLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterNotFoundResponse = async ( @@ -14353,13 +10863,11 @@ const deserializeAws_json1_1ParameterNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterNotFound(body, context); - const contents: ParameterNotFound = { - name: "ParameterNotFound", - $fault: "client", + const exception = new ParameterNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterPatternMismatchExceptionResponse = async ( @@ -14368,13 +10876,11 @@ const deserializeAws_json1_1ParameterPatternMismatchExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterPatternMismatchException(body, context); - const contents: ParameterPatternMismatchException = { - name: "ParameterPatternMismatchException", - $fault: "client", + const exception = new ParameterPatternMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterVersionLabelLimitExceededResponse = async ( @@ -14383,13 +10889,11 @@ const deserializeAws_json1_1ParameterVersionLabelLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterVersionLabelLimitExceeded(body, context); - const contents: ParameterVersionLabelLimitExceeded = { - name: "ParameterVersionLabelLimitExceeded", - $fault: "client", + const exception = new ParameterVersionLabelLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ParameterVersionNotFoundResponse = async ( @@ -14398,13 +10902,11 @@ const deserializeAws_json1_1ParameterVersionNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ParameterVersionNotFound(body, context); - const contents: ParameterVersionNotFound = { - name: "ParameterVersionNotFound", - $fault: "client", + const exception = new ParameterVersionNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1PoliciesLimitExceededExceptionResponse = async ( @@ -14413,13 +10915,11 @@ const deserializeAws_json1_1PoliciesLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1PoliciesLimitExceededException(body, context); - const contents: PoliciesLimitExceededException = { - name: "PoliciesLimitExceededException", - $fault: "client", + const exception = new PoliciesLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceDataSyncAlreadyExistsExceptionResponse = async ( @@ -14428,13 +10928,11 @@ const deserializeAws_json1_1ResourceDataSyncAlreadyExistsExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceDataSyncAlreadyExistsException(body, context); - const contents: ResourceDataSyncAlreadyExistsException = { - name: "ResourceDataSyncAlreadyExistsException", - $fault: "client", + const exception = new ResourceDataSyncAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceDataSyncConflictExceptionResponse = async ( @@ -14443,13 +10941,11 @@ const deserializeAws_json1_1ResourceDataSyncConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceDataSyncConflictException(body, context); - const contents: ResourceDataSyncConflictException = { - name: "ResourceDataSyncConflictException", - $fault: "client", + const exception = new ResourceDataSyncConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceDataSyncCountExceededExceptionResponse = async ( @@ -14458,13 +10954,11 @@ const deserializeAws_json1_1ResourceDataSyncCountExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceDataSyncCountExceededException(body, context); - const contents: ResourceDataSyncCountExceededException = { - name: "ResourceDataSyncCountExceededException", - $fault: "client", + const exception = new ResourceDataSyncCountExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionResponse = async ( @@ -14473,13 +10967,11 @@ const deserializeAws_json1_1ResourceDataSyncInvalidConfigurationExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceDataSyncInvalidConfigurationException(body, context); - const contents: ResourceDataSyncInvalidConfigurationException = { - name: "ResourceDataSyncInvalidConfigurationException", - $fault: "client", + const exception = new ResourceDataSyncInvalidConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse = async ( @@ -14488,13 +10980,11 @@ const deserializeAws_json1_1ResourceDataSyncNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceDataSyncNotFoundException(body, context); - const contents: ResourceDataSyncNotFoundException = { - name: "ResourceDataSyncNotFoundException", - $fault: "client", + const exception = new ResourceDataSyncNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( @@ -14503,13 +10993,11 @@ const deserializeAws_json1_1ResourceInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceInUseException(body, context); - const contents: ResourceInUseException = { - name: "ResourceInUseException", - $fault: "client", + const exception = new ResourceInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( @@ -14518,13 +11006,11 @@ const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLimitExceededException(body, context); - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", + const exception = new ResourceLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceSettingNotFoundResponse = async ( @@ -14533,13 +11019,11 @@ const deserializeAws_json1_1ServiceSettingNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceSettingNotFound(body, context); - const contents: ServiceSettingNotFound = { - name: "ServiceSettingNotFound", - $fault: "client", + const exception = new ServiceSettingNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1StatusUnchangedResponse = async ( @@ -14548,13 +11032,11 @@ const deserializeAws_json1_1StatusUnchangedResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1StatusUnchanged(body, context); - const contents: StatusUnchanged = { - name: "StatusUnchanged", - $fault: "client", + const exception = new StatusUnchanged({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1SubTypeCountLimitExceededExceptionResponse = async ( @@ -14563,13 +11045,11 @@ const deserializeAws_json1_1SubTypeCountLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1SubTypeCountLimitExceededException(body, context); - const contents: SubTypeCountLimitExceededException = { - name: "SubTypeCountLimitExceededException", - $fault: "client", + const exception = new SubTypeCountLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetInUseExceptionResponse = async ( @@ -14578,13 +11058,11 @@ const deserializeAws_json1_1TargetInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetInUseException(body, context); - const contents: TargetInUseException = { - name: "TargetInUseException", - $fault: "client", + const exception = new TargetInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TargetNotConnectedResponse = async ( @@ -14593,13 +11071,11 @@ const deserializeAws_json1_1TargetNotConnectedResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TargetNotConnected(body, context); - const contents: TargetNotConnected = { - name: "TargetNotConnected", - $fault: "client", + const exception = new TargetNotConnected({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsErrorResponse = async ( @@ -14608,13 +11084,11 @@ const deserializeAws_json1_1TooManyTagsErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsError(body, context); - const contents: TooManyTagsError = { - name: "TooManyTagsError", - $fault: "client", + const exception = new TooManyTagsError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyUpdatesResponse = async ( @@ -14623,13 +11097,11 @@ const deserializeAws_json1_1TooManyUpdatesResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyUpdates(body, context); - const contents: TooManyUpdates = { - name: "TooManyUpdates", - $fault: "client", + const exception = new TooManyUpdates({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TotalSizeLimitExceededExceptionResponse = async ( @@ -14638,13 +11110,11 @@ const deserializeAws_json1_1TotalSizeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TotalSizeLimitExceededException(body, context); - const contents: TotalSizeLimitExceededException = { - name: "TotalSizeLimitExceededException", - $fault: "client", + const exception = new TotalSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedCalendarExceptionResponse = async ( @@ -14653,13 +11123,11 @@ const deserializeAws_json1_1UnsupportedCalendarExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedCalendarException(body, context); - const contents: UnsupportedCalendarException = { - name: "UnsupportedCalendarException", - $fault: "client", + const exception = new UnsupportedCalendarException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedFeatureRequiredExceptionResponse = async ( @@ -14668,13 +11136,11 @@ const deserializeAws_json1_1UnsupportedFeatureRequiredExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedFeatureRequiredException(body, context); - const contents: UnsupportedFeatureRequiredException = { - name: "UnsupportedFeatureRequiredException", - $fault: "client", + const exception = new UnsupportedFeatureRequiredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedInventoryItemContextExceptionResponse = async ( @@ -14683,13 +11149,11 @@ const deserializeAws_json1_1UnsupportedInventoryItemContextExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedInventoryItemContextException(body, context); - const contents: UnsupportedInventoryItemContextException = { - name: "UnsupportedInventoryItemContextException", - $fault: "client", + const exception = new UnsupportedInventoryItemContextException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedInventorySchemaVersionExceptionResponse = async ( @@ -14698,13 +11162,11 @@ const deserializeAws_json1_1UnsupportedInventorySchemaVersionExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedInventorySchemaVersionException(body, context); - const contents: UnsupportedInventorySchemaVersionException = { - name: "UnsupportedInventorySchemaVersionException", - $fault: "client", + const exception = new UnsupportedInventorySchemaVersionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperatingSystemResponse = async ( @@ -14713,13 +11175,11 @@ const deserializeAws_json1_1UnsupportedOperatingSystemResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperatingSystem(body, context); - const contents: UnsupportedOperatingSystem = { - name: "UnsupportedOperatingSystem", - $fault: "client", + const exception = new UnsupportedOperatingSystem({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedParameterTypeResponse = async ( @@ -14728,13 +11188,11 @@ const deserializeAws_json1_1UnsupportedParameterTypeResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedParameterType(body, context); - const contents: UnsupportedParameterType = { - name: "UnsupportedParameterType", - $fault: "client", + const exception = new UnsupportedParameterType({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedPlatformTypeResponse = async ( @@ -14743,13 +11201,11 @@ const deserializeAws_json1_1UnsupportedPlatformTypeResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedPlatformType(body, context); - const contents: UnsupportedPlatformType = { - name: "UnsupportedPlatformType", - $fault: "client", + const exception = new UnsupportedPlatformType({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccountIdList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-sso-admin/src/index.ts b/clients/client-sso-admin/src/index.ts index 9208824fdf578..63e97215709a8 100644 --- a/clients/client-sso-admin/src/index.ts +++ b/clients/client-sso-admin/src/index.ts @@ -3,3 +3,4 @@ export * from "./SSOAdminClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SSOAdminServiceException } from "./models/SSOAdminServiceException"; diff --git a/clients/client-sso-admin/src/models/SSOAdminServiceException.ts b/clients/client-sso-admin/src/models/SSOAdminServiceException.ts new file mode 100644 index 0000000000000..bc22d3e4756f8 --- /dev/null +++ b/clients/client-sso-admin/src/models/SSOAdminServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SSOAdmin service. + */ +export class SSOAdminServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSOAdminServiceException.prototype); + } +} diff --git a/clients/client-sso-admin/src/models/models_0.ts b/clients/client-sso-admin/src/models/models_0.ts index 2253110a3fdbd..56c2ea8b243c4 100644 --- a/clients/client-sso-admin/src/models/models_0.ts +++ b/clients/client-sso-admin/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SSOAdminServiceException as __BaseException } from "./SSOAdminServiceException"; /** *

The value used for mapping a specified attribute to an identity source.

@@ -53,10 +55,22 @@ export namespace AccessControlAttribute { /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum PrincipalType { @@ -277,58 +291,130 @@ export namespace AttachManagedPolicyToPermissionSetResponse { * request. A retry (with appropriate backoff logic) is the recommended response to this * exception.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** *

The request processing has failed because of an unknown error, exception, or failure with * an internal server.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that a requested resource is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that the principal has crossed the permitted number of resources that can be * created.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

Indicates that the principal has crossed the throttling limits of the API * operations.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The request failed because it contains a syntax error.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface CreateAccountAssignmentRequest { diff --git a/clients/client-sso-admin/src/protocols/Aws_json1_1.ts b/clients/client-sso-admin/src/protocols/Aws_json1_1.ts index a3b6c39db43cf..3aa6288f1275f 100644 --- a/clients/client-sso-admin/src/protocols/Aws_json1_1.ts +++ b/clients/client-sso-admin/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -210,6 +209,7 @@ import { UpdatePermissionSetResponse, ValidationException, } from "../models/models_0"; +import { SSOAdminServiceException as __BaseException } from "../models/SSOAdminServiceException"; export const serializeAws_json1_1AttachManagedPolicyToPermissionSetCommand = async ( input: AttachManagedPolicyToPermissionSetCommandInput, @@ -639,81 +639,40 @@ const deserializeAws_json1_1AttachManagedPolicyToPermissionSetCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssoadmin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAccountAssignmentCommand = async ( @@ -741,81 +700,40 @@ const deserializeAws_json1_1CreateAccountAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssoadmin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateInstanceAccessControlAttributeConfigurationCommand = async ( @@ -843,73 +761,37 @@ const deserializeAws_json1_1CreateInstanceAccessControlAttributeConfigurationCom ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreatePermissionSetCommand = async ( @@ -937,81 +819,40 @@ const deserializeAws_json1_1CreatePermissionSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssoadmin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAccountAssignmentCommand = async ( @@ -1039,73 +880,37 @@ const deserializeAws_json1_1DeleteAccountAssignmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInlinePolicyFromPermissionSetCommand = async ( @@ -1133,73 +938,37 @@ const deserializeAws_json1_1DeleteInlinePolicyFromPermissionSetCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteInstanceAccessControlAttributeConfigurationCommand = async ( @@ -1227,73 +996,37 @@ const deserializeAws_json1_1DeleteInstanceAccessControlAttributeConfigurationCom ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePermissionSetCommand = async ( @@ -1321,73 +1054,37 @@ const deserializeAws_json1_1DeletePermissionSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountAssignmentCreationStatusCommand = async ( @@ -1415,65 +1112,34 @@ const deserializeAws_json1_1DescribeAccountAssignmentCreationStatusCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountAssignmentDeletionStatusCommand = async ( @@ -1501,65 +1167,34 @@ const deserializeAws_json1_1DescribeAccountAssignmentDeletionStatusCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInstanceAccessControlAttributeConfigurationCommand = async ( @@ -1587,65 +1222,34 @@ const deserializeAws_json1_1DescribeInstanceAccessControlAttributeConfigurationC ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePermissionSetCommand = async ( @@ -1673,65 +1277,34 @@ const deserializeAws_json1_1DescribePermissionSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribePermissionSetProvisioningStatusCommand = async ( @@ -1759,65 +1332,34 @@ const deserializeAws_json1_1DescribePermissionSetProvisioningStatusCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachManagedPolicyFromPermissionSetCommand = async ( @@ -1845,73 +1387,37 @@ const deserializeAws_json1_1DetachManagedPolicyFromPermissionSetCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetInlinePolicyForPermissionSetCommand = async ( @@ -1939,65 +1445,34 @@ const deserializeAws_json1_1GetInlinePolicyForPermissionSetCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountAssignmentCreationStatusCommand = async ( @@ -2025,65 +1500,34 @@ const deserializeAws_json1_1ListAccountAssignmentCreationStatusCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountAssignmentDeletionStatusCommand = async ( @@ -2111,65 +1555,34 @@ const deserializeAws_json1_1ListAccountAssignmentDeletionStatusCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountAssignmentsCommand = async ( @@ -2197,65 +1610,34 @@ const deserializeAws_json1_1ListAccountAssignmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccountsForProvisionedPermissionSetCommand = async ( @@ -2283,65 +1665,34 @@ const deserializeAws_json1_1ListAccountsForProvisionedPermissionSetCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListInstancesCommand = async ( @@ -2369,57 +1720,31 @@ const deserializeAws_json1_1ListInstancesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListManagedPoliciesInPermissionSetCommand = async ( @@ -2447,65 +1772,34 @@ const deserializeAws_json1_1ListManagedPoliciesInPermissionSetCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPermissionSetProvisioningStatusCommand = async ( @@ -2533,65 +1827,34 @@ const deserializeAws_json1_1ListPermissionSetProvisioningStatusCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPermissionSetsCommand = async ( @@ -2619,65 +1882,34 @@ const deserializeAws_json1_1ListPermissionSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListPermissionSetsProvisionedToAccountCommand = async ( @@ -2705,65 +1937,34 @@ const deserializeAws_json1_1ListPermissionSetsProvisionedToAccountCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2791,65 +1992,34 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ProvisionPermissionSetCommand = async ( @@ -2877,73 +2047,37 @@ const deserializeAws_json1_1ProvisionPermissionSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutInlinePolicyToPermissionSetCommand = async ( @@ -2971,81 +2105,40 @@ const deserializeAws_json1_1PutInlinePolicyToPermissionSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssoadmin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3073,81 +2166,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.ssoadmin#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3175,73 +2227,37 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateInstanceAccessControlAttributeConfigurationCommand = async ( @@ -3269,73 +2285,37 @@ const deserializeAws_json1_1UpdateInstanceAccessControlAttributeConfigurationCom ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePermissionSetCommand = async ( @@ -3363,73 +2343,37 @@ const deserializeAws_json1_1UpdatePermissionSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssoadmin#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.ssoadmin#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssoadmin#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.ssoadmin#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.ssoadmin#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.ssoadmin#ValidationException": - response = { - ...(await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -3438,13 +2382,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -3453,13 +2395,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -3468,13 +2408,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3483,13 +2421,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( @@ -3498,13 +2434,11 @@ const deserializeAws_json1_1ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -3513,13 +2447,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ValidationExceptionResponse = async ( @@ -3528,13 +2460,11 @@ const deserializeAws_json1_1ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AccessControlAttribute = (input: AccessControlAttribute, context: __SerdeContext): any => { diff --git a/clients/client-sso-oidc/src/index.ts b/clients/client-sso-oidc/src/index.ts index 7d3633a95ba3a..c7576660128e2 100644 --- a/clients/client-sso-oidc/src/index.ts +++ b/clients/client-sso-oidc/src/index.ts @@ -2,3 +2,4 @@ export * from "./SSOOIDC"; export * from "./SSOOIDCClient"; export * from "./commands"; export * from "./models"; +export { SSOOIDCServiceException } from "./models/SSOOIDCServiceException"; diff --git a/clients/client-sso-oidc/src/models/SSOOIDCServiceException.ts b/clients/client-sso-oidc/src/models/SSOOIDCServiceException.ts new file mode 100644 index 0000000000000..6898b0a584c29 --- /dev/null +++ b/clients/client-sso-oidc/src/models/SSOOIDCServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SSOOIDC service. + */ +export class SSOOIDCServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSOOIDCServiceException.prototype); + } +} diff --git a/clients/client-sso-oidc/src/models/models_0.ts b/clients/client-sso-oidc/src/models/models_0.ts index 936cb90d90b4a..33ffb5c83881b 100644 --- a/clients/client-sso-oidc/src/models/models_0.ts +++ b/clients/client-sso-oidc/src/models/models_0.ts @@ -1,23 +1,52 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SSOOIDCServiceException as __BaseException } from "./SSOOIDCServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that a request to authorize a client with an access user session token is pending.

*/ -export interface AuthorizationPendingException extends __SmithyException, $MetadataBearer { - name: "AuthorizationPendingException"; - $fault: "client"; +export class AuthorizationPendingException extends __BaseException { + readonly name: "AuthorizationPendingException" = "AuthorizationPendingException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AuthorizationPendingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AuthorizationPendingException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } export interface CreateTokenRequest { @@ -116,21 +145,47 @@ export namespace CreateTokenResponse { /** *

Indicates that the token issued by the service is expired and is no longer valid.

*/ -export interface ExpiredTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredTokenException"; - $fault: "client"; +export class ExpiredTokenException extends __BaseException { + readonly name: "ExpiredTokenException" = "ExpiredTokenException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredTokenException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that an error from the service occurred while trying to process a request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** @@ -138,83 +193,187 @@ export interface InternalServerException extends __SmithyException, $MetadataBea * invalid. For example, this can occur when a client sends an incorrect clientId or * an expired clientSecret.

*/ -export interface InvalidClientException extends __SmithyException, $MetadataBearer { - name: "InvalidClientException"; - $fault: "client"; +export class InvalidClientException extends __BaseException { + readonly name: "InvalidClientException" = "InvalidClientException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that a request contains an invalid grant. This can occur if a client makes a CreateToken request with an invalid grant type.

*/ -export interface InvalidGrantException extends __SmithyException, $MetadataBearer { - name: "InvalidGrantException"; - $fault: "client"; +export class InvalidGrantException extends __BaseException { + readonly name: "InvalidGrantException" = "InvalidGrantException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGrantException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGrantException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that something is wrong with the input to the request. For example, a required * parameter might be missing or out of range.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that the scope provided in the request is invalid.

*/ -export interface InvalidScopeException extends __SmithyException, $MetadataBearer { - name: "InvalidScopeException"; - $fault: "client"; +export class InvalidScopeException extends __BaseException { + readonly name: "InvalidScopeException" = "InvalidScopeException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidScopeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidScopeException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that the client is making the request too frequently and is more than the service can handle.

*/ -export interface SlowDownException extends __SmithyException, $MetadataBearer { - name: "SlowDownException"; - $fault: "client"; +export class SlowDownException extends __BaseException { + readonly name: "SlowDownException" = "SlowDownException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "SlowDownException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, SlowDownException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that the client is not currently authorized to make the request. This can happen * when a clientId is not issued for a public client.

*/ -export interface UnauthorizedClientException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedClientException"; - $fault: "client"; +export class UnauthorizedClientException extends __BaseException { + readonly name: "UnauthorizedClientException" = "UnauthorizedClientException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedClientException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedClientException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that the grant type in the request is not supported by the service.

*/ -export interface UnsupportedGrantTypeException extends __SmithyException, $MetadataBearer { - name: "UnsupportedGrantTypeException"; - $fault: "client"; +export class UnsupportedGrantTypeException extends __BaseException { + readonly name: "UnsupportedGrantTypeException" = "UnsupportedGrantTypeException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedGrantTypeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedGrantTypeException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } /** *

Indicates that the client information sent in the request during registration is invalid.

*/ -export interface InvalidClientMetadataException extends __SmithyException, $MetadataBearer { - name: "InvalidClientMetadataException"; - $fault: "client"; +export class InvalidClientMetadataException extends __BaseException { + readonly name: "InvalidClientMetadataException" = "InvalidClientMetadataException"; + readonly $fault: "client" = "client"; error?: string; error_description?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidClientMetadataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidClientMetadataException.prototype); + this.error = opts.error; + this.error_description = opts.error_description; + } } export interface RegisterClientRequest { diff --git a/clients/client-sso-oidc/src/protocols/Aws_restJson1.ts b/clients/client-sso-oidc/src/protocols/Aws_restJson1.ts index b6a7bd88828a5..0bed966e3cbd0 100644 --- a/clients/client-sso-oidc/src/protocols/Aws_restJson1.ts +++ b/clients/client-sso-oidc/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateTokenCommandInput, CreateTokenCommandOutput } from "../commands/CreateTokenCommand"; @@ -34,6 +33,7 @@ import { UnauthorizedClientException, UnsupportedGrantTypeException, } from "../models/models_0"; +import { SSOOIDCServiceException as __BaseException } from "../models/SSOOIDCServiceException"; export const serializeAws_restJson1CreateTokenCommand = async ( input: CreateTokenCommandInput, @@ -162,113 +162,52 @@ const deserializeAws_restJson1CreateTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.ssooidc#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "AuthorizationPendingException": case "com.amazonaws.ssooidc#AuthorizationPendingException": - response = { - ...(await deserializeAws_restJson1AuthorizationPendingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AuthorizationPendingExceptionResponse(parsedOutput, context); case "ExpiredTokenException": case "com.amazonaws.ssooidc#ExpiredTokenException": - response = { - ...(await deserializeAws_restJson1ExpiredTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ExpiredTokenExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.ssooidc#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidClientException": case "com.amazonaws.ssooidc#InvalidClientException": - response = { - ...(await deserializeAws_restJson1InvalidClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientExceptionResponse(parsedOutput, context); case "InvalidGrantException": case "com.amazonaws.ssooidc#InvalidGrantException": - response = { - ...(await deserializeAws_restJson1InvalidGrantExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidGrantExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ssooidc#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidScopeException": case "com.amazonaws.ssooidc#InvalidScopeException": - response = { - ...(await deserializeAws_restJson1InvalidScopeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidScopeExceptionResponse(parsedOutput, context); case "SlowDownException": case "com.amazonaws.ssooidc#SlowDownException": - response = { - ...(await deserializeAws_restJson1SlowDownExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SlowDownExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.ssooidc#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); case "UnsupportedGrantTypeException": case "com.amazonaws.ssooidc#UnsupportedGrantTypeException": - response = { - ...(await deserializeAws_restJson1UnsupportedGrantTypeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnsupportedGrantTypeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RegisterClientCommand = async ( @@ -317,57 +256,31 @@ const deserializeAws_restJson1RegisterClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.ssooidc#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidClientMetadataException": case "com.amazonaws.ssooidc#InvalidClientMetadataException": - response = { - ...(await deserializeAws_restJson1InvalidClientMetadataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientMetadataExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ssooidc#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "InvalidScopeException": case "com.amazonaws.ssooidc#InvalidScopeException": - response = { - ...(await deserializeAws_restJson1InvalidScopeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidScopeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartDeviceAuthorizationCommand = async ( @@ -416,78 +329,41 @@ const deserializeAws_restJson1StartDeviceAuthorizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.ssooidc#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "InvalidClientException": case "com.amazonaws.ssooidc#InvalidClientException": - response = { - ...(await deserializeAws_restJson1InvalidClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidClientExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.ssooidc#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "SlowDownException": case "com.amazonaws.ssooidc#SlowDownException": - response = { - ...(await deserializeAws_restJson1SlowDownExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1SlowDownExceptionResponse(parsedOutput, context); case "UnauthorizedClientException": case "com.amazonaws.ssooidc#UnauthorizedClientException": - response = { - ...(await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedClientExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -495,20 +371,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AuthorizationPendingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AuthorizationPendingException = { - name: "AuthorizationPendingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -516,20 +390,18 @@ const deserializeAws_restJson1AuthorizationPendingExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new AuthorizationPendingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ExpiredTokenExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ExpiredTokenException = { - name: "ExpiredTokenException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -537,20 +409,18 @@ const deserializeAws_restJson1ExpiredTokenExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new ExpiredTokenException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -558,20 +428,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidClientException = { - name: "InvalidClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -579,20 +447,18 @@ const deserializeAws_restJson1InvalidClientExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new InvalidClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidClientMetadataExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidClientMetadataException = { - name: "InvalidClientMetadataException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -600,20 +466,18 @@ const deserializeAws_restJson1InvalidClientMetadataExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new InvalidClientMetadataException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidGrantExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidGrantException = { - name: "InvalidGrantException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -621,20 +485,18 @@ const deserializeAws_restJson1InvalidGrantExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new InvalidGrantException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -642,20 +504,18 @@ const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidScopeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidScopeException = { - name: "InvalidScopeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -663,20 +523,18 @@ const deserializeAws_restJson1InvalidScopeExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new InvalidScopeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1SlowDownExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: SlowDownException = { - name: "SlowDownException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -684,20 +542,18 @@ const deserializeAws_restJson1SlowDownExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new SlowDownException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedClientException = { - name: "UnauthorizedClientException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -705,20 +561,18 @@ const deserializeAws_restJson1UnauthorizedClientExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new UnauthorizedClientException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnsupportedGrantTypeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnsupportedGrantTypeException = { - name: "UnsupportedGrantTypeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - error: undefined, - error_description: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.error !== undefined && data.error !== null) { contents.error = __expectString(data.error); @@ -726,7 +580,11 @@ const deserializeAws_restJson1UnsupportedGrantTypeExceptionResponse = async ( if (data.error_description !== undefined && data.error_description !== null) { contents.error_description = __expectString(data.error_description); } - return contents; + const exception = new UnsupportedGrantTypeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1Scopes = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-sso/src/index.ts b/clients/client-sso/src/index.ts index 945f96afd4912..26389df9112f6 100644 --- a/clients/client-sso/src/index.ts +++ b/clients/client-sso/src/index.ts @@ -3,3 +3,4 @@ export * from "./SSOClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SSOServiceException } from "./models/SSOServiceException"; diff --git a/clients/client-sso/src/models/SSOServiceException.ts b/clients/client-sso/src/models/SSOServiceException.ts new file mode 100644 index 0000000000000..c7f7e42ee5029 --- /dev/null +++ b/clients/client-sso/src/models/SSOServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SSO service. + */ +export class SSOServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SSOServiceException.prototype); + } +} diff --git a/clients/client-sso/src/models/models_0.ts b/clients/client-sso/src/models/models_0.ts index d348f9b112c96..47bd44294f48d 100644 --- a/clients/client-sso/src/models/models_0.ts +++ b/clients/client-sso/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SSOServiceException as __BaseException } from "./SSOServiceException"; /** *

Provides information about your AWS account.

@@ -119,37 +121,77 @@ export namespace GetRoleCredentialsResponse { *

Indicates that a problem occurred with the input to the request. For example, a required * parameter might be missing or out of range.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; - message?: string; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + } } /** *

The specified resource doesn't exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** *

Indicates that the request is being made too frequently and is more than what the server can handle.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; - message?: string; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + } } /** *

Indicates that the request is not authorized. This can happen due to an invalid access token in the request.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; - message?: string; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + } } export interface ListAccountRolesRequest { diff --git a/clients/client-sso/src/protocols/Aws_restJson1.ts b/clients/client-sso/src/protocols/Aws_restJson1.ts index e0ef893338d8e..10ec82ad876a3 100644 --- a/clients/client-sso/src/protocols/Aws_restJson1.ts +++ b/clients/client-sso/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -8,10 +9,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { GetRoleCredentialsCommandInput, GetRoleCredentialsCommandOutput } from "../commands/GetRoleCredentialsCommand"; @@ -27,6 +26,7 @@ import { TooManyRequestsException, UnauthorizedException, } from "../models/models_0"; +import { SSOServiceException as __BaseException } from "../models/SSOServiceException"; export const serializeAws_restJson1GetRoleCredentialsCommand = async ( input: GetRoleCredentialsCommandInput, @@ -155,57 +155,31 @@ const deserializeAws_restJson1GetRoleCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.sso#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sso#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sso#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.sso#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccountRolesCommand = async ( @@ -238,57 +212,31 @@ const deserializeAws_restJson1ListAccountRolesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.sso#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sso#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sso#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.sso#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAccountsCommand = async ( @@ -321,57 +269,31 @@ const deserializeAws_restJson1ListAccountsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.sso#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.sso#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sso#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.sso#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1LogoutCommand = async ( @@ -396,117 +318,92 @@ const deserializeAws_restJson1LogoutCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.sso#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.sso#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.sso#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1AccountInfo = (output: any, context: __SerdeContext): AccountInfo => { diff --git a/clients/client-storage-gateway/src/index.ts b/clients/client-storage-gateway/src/index.ts index 23041eeb69e78..6689a9f1c09c4 100644 --- a/clients/client-storage-gateway/src/index.ts +++ b/clients/client-storage-gateway/src/index.ts @@ -3,3 +3,4 @@ export * from "./StorageGatewayClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { StorageGatewayServiceException } from "./models/StorageGatewayServiceException"; diff --git a/clients/client-storage-gateway/src/models/StorageGatewayServiceException.ts b/clients/client-storage-gateway/src/models/StorageGatewayServiceException.ts new file mode 100644 index 0000000000000..65ad13d31b385 --- /dev/null +++ b/clients/client-storage-gateway/src/models/StorageGatewayServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from StorageGateway service. + */ +export class StorageGatewayServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, StorageGatewayServiceException.prototype); + } +} diff --git a/clients/client-storage-gateway/src/models/models_0.ts b/clients/client-storage-gateway/src/models/models_0.ts index 9f5bbc0f71a0d..0174d2e9f27af 100644 --- a/clients/client-storage-gateway/src/models/models_0.ts +++ b/clients/client-storage-gateway/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { StorageGatewayServiceException as __BaseException } from "./StorageGatewayServiceException"; /** *

A key-value pair that helps you manage, filter, and search for your resource. Allowed @@ -290,38 +292,54 @@ export namespace StorageGatewayError { *

An internal server error has occurred during the request. For more information, see the * error and message fields.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; - /** - *

A human-readable message describing the error that occurred.

- */ - message?: string; - +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; /** *

A StorageGatewayError that provides more information about the cause * of the error.

*/ error?: StorageGatewayError; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.error = opts.error; + } } /** *

An exception occurred because an invalid gateway request was issued to the service. For * more information, see the error and message fields.

*/ -export interface InvalidGatewayRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidGatewayRequestException"; - $fault: "client"; - /** - *

A human-readable message describing the error that occurred.

- */ - message?: string; - +export class InvalidGatewayRequestException extends __BaseException { + readonly name: "InvalidGatewayRequestException" = "InvalidGatewayRequestException"; + readonly $fault: "client" = "client"; /** *

A StorageGatewayError that provides more detail about the cause of the * error.

*/ error?: StorageGatewayError; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGatewayRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGatewayRequestException.prototype); + this.error = opts.error; + } } export type ActiveDirectoryStatus = @@ -2049,19 +2067,27 @@ export namespace CreateSnapshotOutput { *

An internal server error has occurred because the service is unavailable. For more * information, see the error and message fields.

*/ -export interface ServiceUnavailableError extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableError"; - $fault: "server"; - /** - *

A human-readable message describing the error that occurred.

- */ - message?: string; - +export class ServiceUnavailableError extends __BaseException { + readonly name: "ServiceUnavailableError" = "ServiceUnavailableError"; + readonly $fault: "server" = "server"; /** *

A StorageGatewayError that provides more information about the cause * of the error.

*/ error?: StorageGatewayError; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableError.prototype); + this.error = opts.error; + } } export interface CreateSnapshotFromVolumeRecoveryPointInput { diff --git a/clients/client-storage-gateway/src/protocols/Aws_json1_1.ts b/clients/client-storage-gateway/src/protocols/Aws_json1_1.ts index d58b06cfcf76e..5553b552dff99 100644 --- a/clients/client-storage-gateway/src/protocols/Aws_json1_1.ts +++ b/clients/client-storage-gateway/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { ActivateGatewayCommandInput, ActivateGatewayCommandOutput } from "../commands/ActivateGatewayCommand"; @@ -478,6 +477,7 @@ import { VolumeRecoveryPointInfo, VTLDevice, } from "../models/models_0"; +import { StorageGatewayServiceException as __BaseException } from "../models/StorageGatewayServiceException"; export const serializeAws_json1_1ActivateGatewayCommand = async ( input: ActivateGatewayCommandInput, @@ -1674,41 +1674,25 @@ const deserializeAws_json1_1ActivateGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddCacheCommand = async ( @@ -1736,41 +1720,25 @@ const deserializeAws_json1_1AddCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddTagsToResourceCommand = async ( @@ -1798,41 +1766,25 @@ const deserializeAws_json1_1AddTagsToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddUploadBufferCommand = async ( @@ -1860,41 +1812,25 @@ const deserializeAws_json1_1AddUploadBufferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddWorkingStorageCommand = async ( @@ -1922,41 +1858,25 @@ const deserializeAws_json1_1AddWorkingStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssignTapePoolCommand = async ( @@ -1984,41 +1904,25 @@ const deserializeAws_json1_1AssignTapePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateFileSystemCommand = async ( @@ -2046,41 +1950,25 @@ const deserializeAws_json1_1AssociateFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AttachVolumeCommand = async ( @@ -2108,41 +1996,25 @@ const deserializeAws_json1_1AttachVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelArchivalCommand = async ( @@ -2170,41 +2042,25 @@ const deserializeAws_json1_1CancelArchivalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelRetrievalCommand = async ( @@ -2232,41 +2088,25 @@ const deserializeAws_json1_1CancelRetrievalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCachediSCSIVolumeCommand = async ( @@ -2294,41 +2134,25 @@ const deserializeAws_json1_1CreateCachediSCSIVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateNFSFileShareCommand = async ( @@ -2356,41 +2180,25 @@ const deserializeAws_json1_1CreateNFSFileShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSMBFileShareCommand = async ( @@ -2418,41 +2226,25 @@ const deserializeAws_json1_1CreateSMBFileShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSnapshotCommand = async ( @@ -2480,49 +2272,28 @@ const deserializeAws_json1_1CreateSnapshotCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.storagegateway#ServiceUnavailableError": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSnapshotFromVolumeRecoveryPointCommand = async ( @@ -2550,49 +2321,28 @@ const deserializeAws_json1_1CreateSnapshotFromVolumeRecoveryPointCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableError": case "com.amazonaws.storagegateway#ServiceUnavailableError": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateStorediSCSIVolumeCommand = async ( @@ -2620,41 +2370,25 @@ const deserializeAws_json1_1CreateStorediSCSIVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTapePoolCommand = async ( @@ -2682,41 +2416,25 @@ const deserializeAws_json1_1CreateTapePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTapesCommand = async ( @@ -2744,41 +2462,25 @@ const deserializeAws_json1_1CreateTapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTapeWithBarcodeCommand = async ( @@ -2806,41 +2508,25 @@ const deserializeAws_json1_1CreateTapeWithBarcodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAutomaticTapeCreationPolicyCommand = async ( @@ -2868,41 +2554,25 @@ const deserializeAws_json1_1DeleteAutomaticTapeCreationPolicyCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteBandwidthRateLimitCommand = async ( @@ -2930,41 +2600,25 @@ const deserializeAws_json1_1DeleteBandwidthRateLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteChapCredentialsCommand = async ( @@ -2992,41 +2646,25 @@ const deserializeAws_json1_1DeleteChapCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFileShareCommand = async ( @@ -3054,41 +2692,25 @@ const deserializeAws_json1_1DeleteFileShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGatewayCommand = async ( @@ -3116,41 +2738,25 @@ const deserializeAws_json1_1DeleteGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSnapshotScheduleCommand = async ( @@ -3178,41 +2784,25 @@ const deserializeAws_json1_1DeleteSnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTapeCommand = async ( @@ -3240,41 +2830,25 @@ const deserializeAws_json1_1DeleteTapeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTapeArchiveCommand = async ( @@ -3302,41 +2876,25 @@ const deserializeAws_json1_1DeleteTapeArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTapePoolCommand = async ( @@ -3364,41 +2922,25 @@ const deserializeAws_json1_1DeleteTapePoolCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVolumeCommand = async ( @@ -3426,41 +2968,25 @@ const deserializeAws_json1_1DeleteVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAvailabilityMonitorTestCommand = async ( @@ -3488,41 +3014,25 @@ const deserializeAws_json1_1DescribeAvailabilityMonitorTestCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBandwidthRateLimitCommand = async ( @@ -3550,41 +3060,25 @@ const deserializeAws_json1_1DescribeBandwidthRateLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeBandwidthRateLimitScheduleCommand = async ( @@ -3612,41 +3106,25 @@ const deserializeAws_json1_1DescribeBandwidthRateLimitScheduleCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCacheCommand = async ( @@ -3674,41 +3152,25 @@ const deserializeAws_json1_1DescribeCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCachediSCSIVolumesCommand = async ( @@ -3736,41 +3198,25 @@ const deserializeAws_json1_1DescribeCachediSCSIVolumesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeChapCredentialsCommand = async ( @@ -3798,41 +3244,25 @@ const deserializeAws_json1_1DescribeChapCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeFileSystemAssociationsCommand = async ( @@ -3860,41 +3290,25 @@ const deserializeAws_json1_1DescribeFileSystemAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGatewayInformationCommand = async ( @@ -3922,41 +3336,25 @@ const deserializeAws_json1_1DescribeGatewayInformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMaintenanceStartTimeCommand = async ( @@ -3984,41 +3382,25 @@ const deserializeAws_json1_1DescribeMaintenanceStartTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeNFSFileSharesCommand = async ( @@ -4046,41 +3428,25 @@ const deserializeAws_json1_1DescribeNFSFileSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSMBFileSharesCommand = async ( @@ -4108,41 +3474,25 @@ const deserializeAws_json1_1DescribeSMBFileSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSMBSettingsCommand = async ( @@ -4170,41 +3520,25 @@ const deserializeAws_json1_1DescribeSMBSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSnapshotScheduleCommand = async ( @@ -4232,41 +3566,25 @@ const deserializeAws_json1_1DescribeSnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeStorediSCSIVolumesCommand = async ( @@ -4294,41 +3612,25 @@ const deserializeAws_json1_1DescribeStorediSCSIVolumesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTapeArchivesCommand = async ( @@ -4356,41 +3658,25 @@ const deserializeAws_json1_1DescribeTapeArchivesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTapeRecoveryPointsCommand = async ( @@ -4418,41 +3704,25 @@ const deserializeAws_json1_1DescribeTapeRecoveryPointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTapesCommand = async ( @@ -4480,41 +3750,25 @@ const deserializeAws_json1_1DescribeTapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUploadBufferCommand = async ( @@ -4542,41 +3796,25 @@ const deserializeAws_json1_1DescribeUploadBufferCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeVTLDevicesCommand = async ( @@ -4604,41 +3842,25 @@ const deserializeAws_json1_1DescribeVTLDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkingStorageCommand = async ( @@ -4666,41 +3888,25 @@ const deserializeAws_json1_1DescribeWorkingStorageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetachVolumeCommand = async ( @@ -4728,41 +3934,25 @@ const deserializeAws_json1_1DetachVolumeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisableGatewayCommand = async ( @@ -4790,41 +3980,25 @@ const deserializeAws_json1_1DisableGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateFileSystemCommand = async ( @@ -4852,41 +4026,25 @@ const deserializeAws_json1_1DisassociateFileSystemCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1JoinDomainCommand = async ( @@ -4914,41 +4072,25 @@ const deserializeAws_json1_1JoinDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAutomaticTapeCreationPoliciesCommand = async ( @@ -4976,41 +4118,25 @@ const deserializeAws_json1_1ListAutomaticTapeCreationPoliciesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFileSharesCommand = async ( @@ -5038,41 +4164,25 @@ const deserializeAws_json1_1ListFileSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListFileSystemAssociationsCommand = async ( @@ -5100,41 +4210,25 @@ const deserializeAws_json1_1ListFileSystemAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGatewaysCommand = async ( @@ -5162,41 +4256,25 @@ const deserializeAws_json1_1ListGatewaysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLocalDisksCommand = async ( @@ -5224,41 +4302,25 @@ const deserializeAws_json1_1ListLocalDisksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5286,41 +4348,25 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTapePoolsCommand = async ( @@ -5348,41 +4394,25 @@ const deserializeAws_json1_1ListTapePoolsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTapesCommand = async ( @@ -5410,41 +4440,25 @@ const deserializeAws_json1_1ListTapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVolumeInitiatorsCommand = async ( @@ -5472,41 +4486,25 @@ const deserializeAws_json1_1ListVolumeInitiatorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVolumeRecoveryPointsCommand = async ( @@ -5534,41 +4532,25 @@ const deserializeAws_json1_1ListVolumeRecoveryPointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVolumesCommand = async ( @@ -5596,41 +4578,25 @@ const deserializeAws_json1_1ListVolumesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1NotifyWhenUploadedCommand = async ( @@ -5658,41 +4624,25 @@ const deserializeAws_json1_1NotifyWhenUploadedCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RefreshCacheCommand = async ( @@ -5720,41 +4670,25 @@ const deserializeAws_json1_1RefreshCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RemoveTagsFromResourceCommand = async ( @@ -5782,41 +4716,25 @@ const deserializeAws_json1_1RemoveTagsFromResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetCacheCommand = async ( @@ -5844,41 +4762,25 @@ const deserializeAws_json1_1ResetCacheCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetrieveTapeArchiveCommand = async ( @@ -5906,41 +4808,25 @@ const deserializeAws_json1_1RetrieveTapeArchiveCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RetrieveTapeRecoveryPointCommand = async ( @@ -5968,41 +4854,25 @@ const deserializeAws_json1_1RetrieveTapeRecoveryPointCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetLocalConsolePasswordCommand = async ( @@ -6030,41 +4900,25 @@ const deserializeAws_json1_1SetLocalConsolePasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SetSMBGuestPasswordCommand = async ( @@ -6092,41 +4946,25 @@ const deserializeAws_json1_1SetSMBGuestPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ShutdownGatewayCommand = async ( @@ -6154,41 +4992,25 @@ const deserializeAws_json1_1ShutdownGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartAvailabilityMonitorTestCommand = async ( @@ -6216,41 +5038,25 @@ const deserializeAws_json1_1StartAvailabilityMonitorTestCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartGatewayCommand = async ( @@ -6278,41 +5084,25 @@ const deserializeAws_json1_1StartGatewayCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAutomaticTapeCreationPolicyCommand = async ( @@ -6340,41 +5130,25 @@ const deserializeAws_json1_1UpdateAutomaticTapeCreationPolicyCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBandwidthRateLimitCommand = async ( @@ -6402,41 +5176,25 @@ const deserializeAws_json1_1UpdateBandwidthRateLimitCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateBandwidthRateLimitScheduleCommand = async ( @@ -6464,41 +5222,25 @@ const deserializeAws_json1_1UpdateBandwidthRateLimitScheduleCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateChapCredentialsCommand = async ( @@ -6526,41 +5268,25 @@ const deserializeAws_json1_1UpdateChapCredentialsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateFileSystemAssociationCommand = async ( @@ -6588,41 +5314,25 @@ const deserializeAws_json1_1UpdateFileSystemAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGatewayInformationCommand = async ( @@ -6650,41 +5360,25 @@ const deserializeAws_json1_1UpdateGatewayInformationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGatewaySoftwareNowCommand = async ( @@ -6712,41 +5406,25 @@ const deserializeAws_json1_1UpdateGatewaySoftwareNowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMaintenanceStartTimeCommand = async ( @@ -6774,41 +5452,25 @@ const deserializeAws_json1_1UpdateMaintenanceStartTimeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateNFSFileShareCommand = async ( @@ -6836,41 +5498,25 @@ const deserializeAws_json1_1UpdateNFSFileShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSMBFileShareCommand = async ( @@ -6898,41 +5544,25 @@ const deserializeAws_json1_1UpdateSMBFileShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSMBFileShareVisibilityCommand = async ( @@ -6960,41 +5590,25 @@ const deserializeAws_json1_1UpdateSMBFileShareVisibilityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSMBLocalGroupsCommand = async ( @@ -7022,41 +5636,25 @@ const deserializeAws_json1_1UpdateSMBLocalGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSMBSecurityStrategyCommand = async ( @@ -7084,41 +5682,25 @@ const deserializeAws_json1_1UpdateSMBSecurityStrategyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSnapshotScheduleCommand = async ( @@ -7146,41 +5728,25 @@ const deserializeAws_json1_1UpdateSnapshotScheduleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVTLDeviceTypeCommand = async ( @@ -7208,41 +5774,25 @@ const deserializeAws_json1_1UpdateVTLDeviceTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.storagegateway#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidGatewayRequestException": case "com.amazonaws.storagegateway#InvalidGatewayRequestException": - response = { - ...(await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGatewayRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -7251,13 +5801,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGatewayRequestExceptionResponse = async ( @@ -7266,13 +5814,11 @@ const deserializeAws_json1_1InvalidGatewayRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGatewayRequestException(body, context); - const contents: InvalidGatewayRequestException = { - name: "InvalidGatewayRequestException", - $fault: "client", + const exception = new InvalidGatewayRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableErrorResponse = async ( @@ -7281,13 +5827,11 @@ const deserializeAws_json1_1ServiceUnavailableErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableError(body, context); - const contents: ServiceUnavailableError = { - name: "ServiceUnavailableError", - $fault: "server", + const exception = new ServiceUnavailableError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActivateGatewayInput = (input: ActivateGatewayInput, context: __SerdeContext): any => { diff --git a/clients/client-sts/src/index.ts b/clients/client-sts/src/index.ts index 18be6f8c18492..441fe775a2a75 100644 --- a/clients/client-sts/src/index.ts +++ b/clients/client-sts/src/index.ts @@ -3,3 +3,4 @@ export * from "./STSClient"; export * from "./commands"; export * from "./defaultRoleAssumers"; export * from "./models"; +export { STSServiceException } from "./models/STSServiceException"; diff --git a/clients/client-sts/src/models/STSServiceException.ts b/clients/client-sts/src/models/STSServiceException.ts new file mode 100644 index 0000000000000..cc11260028f28 --- /dev/null +++ b/clients/client-sts/src/models/STSServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from STS service. + */ +export class STSServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, STSServiceException.prototype); + } +} diff --git a/clients/client-sts/src/models/models_0.ts b/clients/client-sts/src/models/models_0.ts index 3271b04891803..1d7865af33899 100644 --- a/clients/client-sts/src/models/models_0.ts +++ b/clients/client-sts/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { STSServiceException as __BaseException } from "./STSServiceException"; /** *

The identifiers for the temporary security credentials that the operation @@ -399,20 +402,40 @@ export namespace AssumeRoleResponse { *

The web identity token that was passed is expired or is not valid. Get a new identity * token from the identity provider and then retry the request.

*/ -export interface ExpiredTokenException extends __SmithyException, $MetadataBearer { - name: "ExpiredTokenException"; - $fault: "client"; - message?: string; +export class ExpiredTokenException extends __BaseException { + readonly name: "ExpiredTokenException" = "ExpiredTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ExpiredTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ExpiredTokenException.prototype); + } } /** *

The request was rejected because the policy document was malformed. The error message * describes the specific error.

*/ -export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer { - name: "MalformedPolicyDocumentException"; - $fault: "client"; - message?: string; +export class MalformedPolicyDocumentException extends __BaseException { + readonly name: "MalformedPolicyDocumentException" = "MalformedPolicyDocumentException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MalformedPolicyDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype); + } } /** @@ -426,10 +449,20 @@ export interface MalformedPolicyDocumentException extends __SmithyException, $Me * session tag limits. For more information, see IAM and STS Entity * Character Limits in the IAM User Guide.

*/ -export interface PackedPolicyTooLargeException extends __SmithyException, $MetadataBearer { - name: "PackedPolicyTooLargeException"; - $fault: "client"; - message?: string; +export class PackedPolicyTooLargeException extends __BaseException { + readonly name: "PackedPolicyTooLargeException" = "PackedPolicyTooLargeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PackedPolicyTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PackedPolicyTooLargeException.prototype); + } } /** @@ -439,10 +472,20 @@ export interface PackedPolicyTooLargeException extends __SmithyException, $Metad * Deactivating Amazon Web Services STS in an Amazon Web Services Region in the IAM User * Guide.

*/ -export interface RegionDisabledException extends __SmithyException, $MetadataBearer { - name: "RegionDisabledException"; - $fault: "client"; - message?: string; +export class RegionDisabledException extends __BaseException { + readonly name: "RegionDisabledException" = "RegionDisabledException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RegionDisabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RegionDisabledException.prototype); + } } export interface AssumeRoleWithSAMLRequest { @@ -669,20 +712,40 @@ export namespace AssumeRoleWithSAMLResponse { *

If this error is returned for the AssumeRoleWithWebIdentity operation, it * can also mean that the claim has expired or has been explicitly revoked.

*/ -export interface IDPRejectedClaimException extends __SmithyException, $MetadataBearer { - name: "IDPRejectedClaimException"; - $fault: "client"; - message?: string; +export class IDPRejectedClaimException extends __BaseException { + readonly name: "IDPRejectedClaimException" = "IDPRejectedClaimException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IDPRejectedClaimException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IDPRejectedClaimException.prototype); + } } /** *

The web identity token that was passed could not be validated by Amazon Web Services. Get a new * identity token from the identity provider and then retry the request.

*/ -export interface InvalidIdentityTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidIdentityTokenException"; - $fault: "client"; - message?: string; +export class InvalidIdentityTokenException extends __BaseException { + readonly name: "InvalidIdentityTokenException" = "InvalidIdentityTokenException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidIdentityTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidIdentityTokenException.prototype); + } } export interface AssumeRoleWithWebIdentityRequest { @@ -903,10 +966,20 @@ export namespace AssumeRoleWithWebIdentityResponse { * times so that you don't exceed the request rate. If the error persists, the * identity provider might be down or not responding.

*/ -export interface IDPCommunicationErrorException extends __SmithyException, $MetadataBearer { - name: "IDPCommunicationErrorException"; - $fault: "client"; - message?: string; +export class IDPCommunicationErrorException extends __BaseException { + readonly name: "IDPCommunicationErrorException" = "IDPCommunicationErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IDPCommunicationErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IDPCommunicationErrorException.prototype); + } } export interface DecodeAuthorizationMessageRequest { @@ -950,10 +1023,20 @@ export namespace DecodeAuthorizationMessageResponse { * was invalid. This can happen if the token contains invalid characters, such as * linebreaks.

*/ -export interface InvalidAuthorizationMessageException extends __SmithyException, $MetadataBearer { - name: "InvalidAuthorizationMessageException"; - $fault: "client"; - message?: string; +export class InvalidAuthorizationMessageException extends __BaseException { + readonly name: "InvalidAuthorizationMessageException" = "InvalidAuthorizationMessageException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidAuthorizationMessageException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidAuthorizationMessageException.prototype); + } } export interface GetAccessKeyInfoRequest { diff --git a/clients/client-sts/src/protocols/Aws_query.ts b/clients/client-sts/src/protocols/Aws_query.ts index b5513dac52d65..faecc75ca7127 100644 --- a/clients/client-sts/src/protocols/Aws_query.ts +++ b/clients/client-sts/src/protocols/Aws_query.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -63,6 +62,7 @@ import { RegionDisabledException, Tag, } from "../models/models_0"; +import { STSServiceException as __BaseException } from "../models/STSServiceException"; export const serializeAws_queryAssumeRoleCommand = async ( input: AssumeRoleCommandInput, @@ -217,57 +217,31 @@ const deserializeAws_queryAssumeRoleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredTokenException": case "com.amazonaws.sts#ExpiredTokenException": - response = { - ...(await deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.sts#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PackedPolicyTooLargeException": case "com.amazonaws.sts#PackedPolicyTooLargeException": - response = { - ...(await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context); case "RegionDisabledException": case "com.amazonaws.sts#RegionDisabledException": - response = { - ...(await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAssumeRoleWithSAMLCommand = async ( @@ -295,73 +269,37 @@ const deserializeAws_queryAssumeRoleWithSAMLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredTokenException": case "com.amazonaws.sts#ExpiredTokenException": - response = { - ...(await deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context); case "IDPRejectedClaimException": case "com.amazonaws.sts#IDPRejectedClaimException": - response = { - ...(await deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context); case "InvalidIdentityTokenException": case "com.amazonaws.sts#InvalidIdentityTokenException": - response = { - ...(await deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.sts#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PackedPolicyTooLargeException": case "com.amazonaws.sts#PackedPolicyTooLargeException": - response = { - ...(await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context); case "RegionDisabledException": case "com.amazonaws.sts#RegionDisabledException": - response = { - ...(await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryAssumeRoleWithWebIdentityCommand = async ( @@ -389,81 +327,40 @@ const deserializeAws_queryAssumeRoleWithWebIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ExpiredTokenException": case "com.amazonaws.sts#ExpiredTokenException": - response = { - ...(await deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context); case "IDPCommunicationErrorException": case "com.amazonaws.sts#IDPCommunicationErrorException": - response = { - ...(await deserializeAws_queryIDPCommunicationErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIDPCommunicationErrorExceptionResponse(parsedOutput, context); case "IDPRejectedClaimException": case "com.amazonaws.sts#IDPRejectedClaimException": - response = { - ...(await deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context); case "InvalidIdentityTokenException": case "com.amazonaws.sts#InvalidIdentityTokenException": - response = { - ...(await deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context); case "MalformedPolicyDocumentException": case "com.amazonaws.sts#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PackedPolicyTooLargeException": case "com.amazonaws.sts#PackedPolicyTooLargeException": - response = { - ...(await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context); case "RegionDisabledException": case "com.amazonaws.sts#RegionDisabledException": - response = { - ...(await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryDecodeAuthorizationMessageCommand = async ( @@ -491,33 +388,22 @@ const deserializeAws_queryDecodeAuthorizationMessageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidAuthorizationMessageException": case "com.amazonaws.sts#InvalidAuthorizationMessageException": - response = { - ...(await deserializeAws_queryInvalidAuthorizationMessageExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidAuthorizationMessageExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetAccessKeyInfoCommand = async ( @@ -545,25 +431,19 @@ const deserializeAws_queryGetAccessKeyInfoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetCallerIdentityCommand = async ( @@ -591,25 +471,19 @@ const deserializeAws_queryGetCallerIdentityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetFederationTokenCommand = async ( @@ -637,49 +511,28 @@ const deserializeAws_queryGetFederationTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "MalformedPolicyDocumentException": case "com.amazonaws.sts#MalformedPolicyDocumentException": - response = { - ...(await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context); case "PackedPolicyTooLargeException": case "com.amazonaws.sts#PackedPolicyTooLargeException": - response = { - ...(await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context); case "RegionDisabledException": case "com.amazonaws.sts#RegionDisabledException": - response = { - ...(await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGetSessionTokenCommand = async ( @@ -707,33 +560,22 @@ const deserializeAws_queryGetSessionTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "RegionDisabledException": case "com.amazonaws.sts#RegionDisabledException": - response = { - ...(await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryExpiredTokenExceptionResponse = async ( @@ -742,13 +584,11 @@ const deserializeAws_queryExpiredTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryExpiredTokenException(body.Error, context); - const contents: ExpiredTokenException = { - name: "ExpiredTokenException", - $fault: "client", + const exception = new ExpiredTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryIDPCommunicationErrorExceptionResponse = async ( @@ -757,13 +597,11 @@ const deserializeAws_queryIDPCommunicationErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryIDPCommunicationErrorException(body.Error, context); - const contents: IDPCommunicationErrorException = { - name: "IDPCommunicationErrorException", - $fault: "client", + const exception = new IDPCommunicationErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryIDPRejectedClaimExceptionResponse = async ( @@ -772,13 +610,11 @@ const deserializeAws_queryIDPRejectedClaimExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryIDPRejectedClaimException(body.Error, context); - const contents: IDPRejectedClaimException = { - name: "IDPRejectedClaimException", - $fault: "client", + const exception = new IDPRejectedClaimException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidAuthorizationMessageExceptionResponse = async ( @@ -787,13 +623,11 @@ const deserializeAws_queryInvalidAuthorizationMessageExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidAuthorizationMessageException(body.Error, context); - const contents: InvalidAuthorizationMessageException = { - name: "InvalidAuthorizationMessageException", - $fault: "client", + const exception = new InvalidAuthorizationMessageException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidIdentityTokenExceptionResponse = async ( @@ -802,13 +636,11 @@ const deserializeAws_queryInvalidIdentityTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidIdentityTokenException(body.Error, context); - const contents: InvalidIdentityTokenException = { - name: "InvalidIdentityTokenException", - $fault: "client", + const exception = new InvalidIdentityTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryMalformedPolicyDocumentExceptionResponse = async ( @@ -817,13 +649,11 @@ const deserializeAws_queryMalformedPolicyDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryMalformedPolicyDocumentException(body.Error, context); - const contents: MalformedPolicyDocumentException = { - name: "MalformedPolicyDocumentException", - $fault: "client", + const exception = new MalformedPolicyDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryPackedPolicyTooLargeExceptionResponse = async ( @@ -832,13 +662,11 @@ const deserializeAws_queryPackedPolicyTooLargeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryPackedPolicyTooLargeException(body.Error, context); - const contents: PackedPolicyTooLargeException = { - name: "PackedPolicyTooLargeException", - $fault: "client", + const exception = new PackedPolicyTooLargeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryRegionDisabledExceptionResponse = async ( @@ -847,13 +675,11 @@ const deserializeAws_queryRegionDisabledExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryRegionDisabledException(body.Error, context); - const contents: RegionDisabledException = { - name: "RegionDisabledException", - $fault: "client", + const exception = new RegionDisabledException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryAssumeRoleRequest = (input: AssumeRoleRequest, context: __SerdeContext): any => { diff --git a/clients/client-support/src/index.ts b/clients/client-support/src/index.ts index 546379f7e87b5..32aca0e8f143a 100644 --- a/clients/client-support/src/index.ts +++ b/clients/client-support/src/index.ts @@ -3,3 +3,4 @@ export * from "./SupportClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SupportServiceException } from "./models/SupportServiceException"; diff --git a/clients/client-support/src/models/SupportServiceException.ts b/clients/client-support/src/models/SupportServiceException.ts new file mode 100644 index 0000000000000..6a4d99ecc66dc --- /dev/null +++ b/clients/client-support/src/models/SupportServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Support service. + */ +export class SupportServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SupportServiceException.prototype); + } +} diff --git a/clients/client-support/src/models/models_0.ts b/clients/client-support/src/models/models_0.ts index 8c34877d520b3..2ade22780197f 100644 --- a/clients/client-support/src/models/models_0.ts +++ b/clients/client-support/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SupportServiceException as __BaseException } from "./SupportServiceException"; /** *

An attachment to a case communication. The attachment consists of the file name and @@ -86,66 +89,98 @@ export namespace AddAttachmentsToSetResponse { *

The limit for the number of attachment sets created in a short period of time has been * exceeded.

*/ -export interface AttachmentLimitExceeded extends __SmithyException, $MetadataBearer { - name: "AttachmentLimitExceeded"; - $fault: "client"; +export class AttachmentLimitExceeded extends __BaseException { + readonly name: "AttachmentLimitExceeded" = "AttachmentLimitExceeded"; + readonly $fault: "client" = "client"; /** - *

The limit for the number of attachment sets created in a short period of time has been - * exceeded.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AttachmentLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AttachmentLimitExceeded.prototype); + } } /** *

The expiration time of the attachment set has passed. The set expires 1 hour after it * is created.

*/ -export interface AttachmentSetExpired extends __SmithyException, $MetadataBearer { - name: "AttachmentSetExpired"; - $fault: "client"; +export class AttachmentSetExpired extends __BaseException { + readonly name: "AttachmentSetExpired" = "AttachmentSetExpired"; + readonly $fault: "client" = "client"; /** - *

The expiration time of the attachment set has passed. The set expires one hour after - * it is created.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AttachmentSetExpired", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AttachmentSetExpired.prototype); + } } /** *

An attachment set with the specified ID could not be found.

*/ -export interface AttachmentSetIdNotFound extends __SmithyException, $MetadataBearer { - name: "AttachmentSetIdNotFound"; - $fault: "client"; +export class AttachmentSetIdNotFound extends __BaseException { + readonly name: "AttachmentSetIdNotFound" = "AttachmentSetIdNotFound"; + readonly $fault: "client" = "client"; /** - *

An attachment set with the specified ID could not be found.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AttachmentSetIdNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AttachmentSetIdNotFound.prototype); + } } /** *

A limit for the size of an attachment set has been exceeded. The limits are three * attachments and 5 MB per attachment.

*/ -export interface AttachmentSetSizeLimitExceeded extends __SmithyException, $MetadataBearer { - name: "AttachmentSetSizeLimitExceeded"; - $fault: "client"; +export class AttachmentSetSizeLimitExceeded extends __BaseException { + readonly name: "AttachmentSetSizeLimitExceeded" = "AttachmentSetSizeLimitExceeded"; + readonly $fault: "client" = "client"; /** - *

A limit for the size of an attachment set has been exceeded. The limits are three - * attachments and 5 MB per attachment.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AttachmentSetSizeLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AttachmentSetSizeLimitExceeded.prototype); + } } /** *

An internal server error occurred.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; /** - *

An internal server error occurred.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + } } export interface AddCommunicationToCaseRequest { @@ -207,13 +242,20 @@ export namespace AddCommunicationToCaseResponse { /** *

The requested caseId couldn't be located.

*/ -export interface CaseIdNotFound extends __SmithyException, $MetadataBearer { - name: "CaseIdNotFound"; - $fault: "client"; +export class CaseIdNotFound extends __BaseException { + readonly name: "CaseIdNotFound" = "CaseIdNotFound"; + readonly $fault: "client" = "client"; /** - *

The requested CaseId could not be located.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CaseIdNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CaseIdNotFound.prototype); + } } /** @@ -244,26 +286,39 @@ export namespace AttachmentDetails { /** *

An attachment with the specified ID could not be found.

*/ -export interface AttachmentIdNotFound extends __SmithyException, $MetadataBearer { - name: "AttachmentIdNotFound"; - $fault: "client"; +export class AttachmentIdNotFound extends __BaseException { + readonly name: "AttachmentIdNotFound" = "AttachmentIdNotFound"; + readonly $fault: "client" = "client"; /** - *

An attachment with the specified ID could not be found.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "AttachmentIdNotFound", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AttachmentIdNotFound.prototype); + } } /** *

The case creation limit for the account has been exceeded.

*/ -export interface CaseCreationLimitExceeded extends __SmithyException, $MetadataBearer { - name: "CaseCreationLimitExceeded"; - $fault: "client"; +export class CaseCreationLimitExceeded extends __BaseException { + readonly name: "CaseCreationLimitExceeded" = "CaseCreationLimitExceeded"; + readonly $fault: "client" = "client"; /** - *

An error message that indicates that you have exceeded the number of cases you can - * have open.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "CaseCreationLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CaseCreationLimitExceeded.prototype); + } } export interface CreateCaseRequest { @@ -367,14 +422,20 @@ export namespace CreateCaseResponse { *

The limit for the number of DescribeAttachment requests in a short * period of time has been exceeded.

*/ -export interface DescribeAttachmentLimitExceeded extends __SmithyException, $MetadataBearer { - name: "DescribeAttachmentLimitExceeded"; - $fault: "client"; +export class DescribeAttachmentLimitExceeded extends __BaseException { + readonly name: "DescribeAttachmentLimitExceeded" = "DescribeAttachmentLimitExceeded"; + readonly $fault: "client" = "client"; /** - *

The limit for the number of DescribeAttachment requests in a short - * period of time has been exceeded.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DescribeAttachmentLimitExceeded", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DescribeAttachmentLimitExceeded.prototype); + } } export interface DescribeAttachmentRequest { diff --git a/clients/client-support/src/protocols/Aws_json1_1.ts b/clients/client-support/src/protocols/Aws_json1_1.ts index fbf392efdf01a..7c30b2f2ecc48 100644 --- a/clients/client-support/src/protocols/Aws_json1_1.ts +++ b/clients/client-support/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectString as __expectString, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -110,6 +109,7 @@ import { TrustedAdvisorResourceDetail, TrustedAdvisorResourcesSummary, } from "../models/models_0"; +import { SupportServiceException as __BaseException } from "../models/SupportServiceException"; export const serializeAws_json1_1AddAttachmentsToSetCommand = async ( input: AddAttachmentsToSetCommandInput, @@ -318,65 +318,34 @@ const deserializeAws_json1_1AddAttachmentsToSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AttachmentLimitExceeded": case "com.amazonaws.support#AttachmentLimitExceeded": - response = { - ...(await deserializeAws_json1_1AttachmentLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentLimitExceededResponse(parsedOutput, context); case "AttachmentSetExpired": case "com.amazonaws.support#AttachmentSetExpired": - response = { - ...(await deserializeAws_json1_1AttachmentSetExpiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetExpiredResponse(parsedOutput, context); case "AttachmentSetIdNotFound": case "com.amazonaws.support#AttachmentSetIdNotFound": - response = { - ...(await deserializeAws_json1_1AttachmentSetIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetIdNotFoundResponse(parsedOutput, context); case "AttachmentSetSizeLimitExceeded": case "com.amazonaws.support#AttachmentSetSizeLimitExceeded": - response = { - ...(await deserializeAws_json1_1AttachmentSetSizeLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetSizeLimitExceededResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AddCommunicationToCaseCommand = async ( @@ -404,57 +373,31 @@ const deserializeAws_json1_1AddCommunicationToCaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AttachmentSetExpired": case "com.amazonaws.support#AttachmentSetExpired": - response = { - ...(await deserializeAws_json1_1AttachmentSetExpiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetExpiredResponse(parsedOutput, context); case "AttachmentSetIdNotFound": case "com.amazonaws.support#AttachmentSetIdNotFound": - response = { - ...(await deserializeAws_json1_1AttachmentSetIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetIdNotFoundResponse(parsedOutput, context); case "CaseIdNotFound": case "com.amazonaws.support#CaseIdNotFound": - response = { - ...(await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateCaseCommand = async ( @@ -482,57 +425,31 @@ const deserializeAws_json1_1CreateCaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AttachmentSetExpired": case "com.amazonaws.support#AttachmentSetExpired": - response = { - ...(await deserializeAws_json1_1AttachmentSetExpiredResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetExpiredResponse(parsedOutput, context); case "AttachmentSetIdNotFound": case "com.amazonaws.support#AttachmentSetIdNotFound": - response = { - ...(await deserializeAws_json1_1AttachmentSetIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentSetIdNotFoundResponse(parsedOutput, context); case "CaseCreationLimitExceeded": case "com.amazonaws.support#CaseCreationLimitExceeded": - response = { - ...(await deserializeAws_json1_1CaseCreationLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CaseCreationLimitExceededResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAttachmentCommand = async ( @@ -560,49 +477,28 @@ const deserializeAws_json1_1DescribeAttachmentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AttachmentIdNotFound": case "com.amazonaws.support#AttachmentIdNotFound": - response = { - ...(await deserializeAws_json1_1AttachmentIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AttachmentIdNotFoundResponse(parsedOutput, context); case "DescribeAttachmentLimitExceeded": case "com.amazonaws.support#DescribeAttachmentLimitExceeded": - response = { - ...(await deserializeAws_json1_1DescribeAttachmentLimitExceededResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DescribeAttachmentLimitExceededResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCasesCommand = async ( @@ -630,41 +526,25 @@ const deserializeAws_json1_1DescribeCasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CaseIdNotFound": case "com.amazonaws.support#CaseIdNotFound": - response = { - ...(await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeCommunicationsCommand = async ( @@ -692,41 +572,25 @@ const deserializeAws_json1_1DescribeCommunicationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CaseIdNotFound": case "com.amazonaws.support#CaseIdNotFound": - response = { - ...(await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServicesCommand = async ( @@ -754,33 +618,22 @@ const deserializeAws_json1_1DescribeServicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSeverityLevelsCommand = async ( @@ -808,33 +661,22 @@ const deserializeAws_json1_1DescribeSeverityLevelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrustedAdvisorCheckRefreshStatusesCommand = async ( @@ -862,33 +704,22 @@ const deserializeAws_json1_1DescribeTrustedAdvisorCheckRefreshStatusesCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrustedAdvisorCheckResultCommand = async ( @@ -916,33 +747,22 @@ const deserializeAws_json1_1DescribeTrustedAdvisorCheckResultCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrustedAdvisorChecksCommand = async ( @@ -970,33 +790,22 @@ const deserializeAws_json1_1DescribeTrustedAdvisorChecksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTrustedAdvisorCheckSummariesCommand = async ( @@ -1024,33 +833,22 @@ const deserializeAws_json1_1DescribeTrustedAdvisorCheckSummariesCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RefreshTrustedAdvisorCheckCommand = async ( @@ -1078,33 +876,22 @@ const deserializeAws_json1_1RefreshTrustedAdvisorCheckCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResolveCaseCommand = async ( @@ -1132,41 +919,25 @@ const deserializeAws_json1_1ResolveCaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CaseIdNotFound": case "com.amazonaws.support#CaseIdNotFound": - response = { - ...(await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1CaseIdNotFoundResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.support#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AttachmentIdNotFoundResponse = async ( @@ -1175,13 +946,11 @@ const deserializeAws_json1_1AttachmentIdNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AttachmentIdNotFound(body, context); - const contents: AttachmentIdNotFound = { - name: "AttachmentIdNotFound", - $fault: "client", + const exception = new AttachmentIdNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AttachmentLimitExceededResponse = async ( @@ -1190,13 +959,11 @@ const deserializeAws_json1_1AttachmentLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AttachmentLimitExceeded(body, context); - const contents: AttachmentLimitExceeded = { - name: "AttachmentLimitExceeded", - $fault: "client", + const exception = new AttachmentLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AttachmentSetExpiredResponse = async ( @@ -1205,13 +972,11 @@ const deserializeAws_json1_1AttachmentSetExpiredResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AttachmentSetExpired(body, context); - const contents: AttachmentSetExpired = { - name: "AttachmentSetExpired", - $fault: "client", + const exception = new AttachmentSetExpired({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AttachmentSetIdNotFoundResponse = async ( @@ -1220,13 +985,11 @@ const deserializeAws_json1_1AttachmentSetIdNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AttachmentSetIdNotFound(body, context); - const contents: AttachmentSetIdNotFound = { - name: "AttachmentSetIdNotFound", - $fault: "client", + const exception = new AttachmentSetIdNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1AttachmentSetSizeLimitExceededResponse = async ( @@ -1235,13 +998,11 @@ const deserializeAws_json1_1AttachmentSetSizeLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AttachmentSetSizeLimitExceeded(body, context); - const contents: AttachmentSetSizeLimitExceeded = { - name: "AttachmentSetSizeLimitExceeded", - $fault: "client", + const exception = new AttachmentSetSizeLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CaseCreationLimitExceededResponse = async ( @@ -1250,13 +1011,11 @@ const deserializeAws_json1_1CaseCreationLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CaseCreationLimitExceeded(body, context); - const contents: CaseCreationLimitExceeded = { - name: "CaseCreationLimitExceeded", - $fault: "client", + const exception = new CaseCreationLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1CaseIdNotFoundResponse = async ( @@ -1265,13 +1024,11 @@ const deserializeAws_json1_1CaseIdNotFoundResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1CaseIdNotFound(body, context); - const contents: CaseIdNotFound = { - name: "CaseIdNotFound", - $fault: "client", + const exception = new CaseIdNotFound({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DescribeAttachmentLimitExceededResponse = async ( @@ -1280,13 +1037,11 @@ const deserializeAws_json1_1DescribeAttachmentLimitExceededResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DescribeAttachmentLimitExceeded(body, context); - const contents: DescribeAttachmentLimitExceeded = { - name: "DescribeAttachmentLimitExceeded", - $fault: "client", + const exception = new DescribeAttachmentLimitExceeded({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -1295,13 +1050,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddAttachmentsToSetRequest = ( diff --git a/clients/client-swf/src/index.ts b/clients/client-swf/src/index.ts index 8cd38cf963194..f9f7b0488c762 100644 --- a/clients/client-swf/src/index.ts +++ b/clients/client-swf/src/index.ts @@ -3,3 +3,4 @@ export * from "./SWFClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SWFServiceException } from "./models/SWFServiceException"; diff --git a/clients/client-swf/src/models/SWFServiceException.ts b/clients/client-swf/src/models/SWFServiceException.ts new file mode 100644 index 0000000000000..fa948682d1690 --- /dev/null +++ b/clients/client-swf/src/models/SWFServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from SWF service. + */ +export class SWFServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SWFServiceException.prototype); + } +} diff --git a/clients/client-swf/src/models/models_0.ts b/clients/client-swf/src/models/models_0.ts index 4c261a0ce97bd..9b156ac3b88ad 100644 --- a/clients/client-swf/src/models/models_0.ts +++ b/clients/client-swf/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SWFServiceException as __BaseException } from "./SWFServiceException"; /** *

Represents an activity type.

@@ -1480,25 +1483,39 @@ export namespace CountClosedWorkflowExecutionsInput { /** *

Returned when the caller doesn't have sufficient permissions to invoke the action.

*/ -export interface OperationNotPermittedFault extends __SmithyException, $MetadataBearer { - name: "OperationNotPermittedFault"; - $fault: "client"; +export class OperationNotPermittedFault extends __BaseException { + readonly name: "OperationNotPermittedFault" = "OperationNotPermittedFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotPermittedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotPermittedFault.prototype); + } } /** *

Returned when the named resource cannot be found with in the scope of this operation (region or domain). This could happen if the named resource was never created or is no longer available for this operation.

*/ -export interface UnknownResourceFault extends __SmithyException, $MetadataBearer { - name: "UnknownResourceFault"; - $fault: "client"; +export class UnknownResourceFault extends __BaseException { + readonly name: "UnknownResourceFault" = "UnknownResourceFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnknownResourceFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnknownResourceFault.prototype); + } } /** @@ -4937,10 +4954,20 @@ export namespace DecisionTask { * type, this error is displayed.

* */ -export interface DefaultUndefinedFault extends __SmithyException, $MetadataBearer { - name: "DefaultUndefinedFault"; - $fault: "client"; - message?: string; +export class DefaultUndefinedFault extends __BaseException { + readonly name: "DefaultUndefinedFault" = "DefaultUndefinedFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DefaultUndefinedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DefaultUndefinedFault.prototype); + } } export interface DeprecateActivityTypeInput { @@ -4967,13 +4994,20 @@ export namespace DeprecateActivityTypeInput { /** *

Returned when the specified activity or workflow type was already deprecated.

*/ -export interface TypeDeprecatedFault extends __SmithyException, $MetadataBearer { - name: "TypeDeprecatedFault"; - $fault: "client"; +export class TypeDeprecatedFault extends __BaseException { + readonly name: "TypeDeprecatedFault" = "TypeDeprecatedFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TypeDeprecatedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TypeDeprecatedFault.prototype); + } } export interface DeprecateDomainInput { @@ -4995,13 +5029,20 @@ export namespace DeprecateDomainInput { /** *

Returned when the specified domain has been deprecated.

*/ -export interface DomainDeprecatedFault extends __SmithyException, $MetadataBearer { - name: "DomainDeprecatedFault"; - $fault: "client"; +export class DomainDeprecatedFault extends __BaseException { + readonly name: "DomainDeprecatedFault" = "DomainDeprecatedFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainDeprecatedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainDeprecatedFault.prototype); + } } export interface DeprecateWorkflowTypeInput { @@ -5607,13 +5648,20 @@ export namespace WorkflowTypeDetail { /** *

Returned if the domain already exists. You may get this fault if you are registering a domain that is either already registered or deprecated, or if you undeprecate a domain that is currently registered.

*/ -export interface DomainAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "DomainAlreadyExistsFault"; - $fault: "client"; +export class DomainAlreadyExistsFault extends __BaseException { + readonly name: "DomainAlreadyExistsFault" = "DomainAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "DomainAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DomainAlreadyExistsFault.prototype); + } } /** @@ -5719,13 +5767,20 @@ export namespace History { /** *

Returned by any operation if a system imposed limitation has been reached. To address this fault you should either clean up unused resources or increase the limit by contacting AWS.

*/ -export interface LimitExceededFault extends __SmithyException, $MetadataBearer { - name: "LimitExceededFault"; - $fault: "client"; +export class LimitExceededFault extends __BaseException { + readonly name: "LimitExceededFault" = "LimitExceededFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededFault.prototype); + } } export interface ListActivityTypesInput { @@ -6411,13 +6466,20 @@ export namespace RegisterActivityTypeInput { /** *

Returned if the type already exists in the specified domain. You may get this fault if you are registering a type that is either already registered or deprecated, or if you undeprecate a type that is currently registered.

*/ -export interface TypeAlreadyExistsFault extends __SmithyException, $MetadataBearer { - name: "TypeAlreadyExistsFault"; - $fault: "client"; +export class TypeAlreadyExistsFault extends __BaseException { + readonly name: "TypeAlreadyExistsFault" = "TypeAlreadyExistsFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "TypeAlreadyExistsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TypeAlreadyExistsFault.prototype); + } } export interface RegisterDomainInput { @@ -6469,10 +6531,20 @@ export namespace RegisterDomainInput { /** *

You've exceeded the number of tags allowed for a domain.

*/ -export interface TooManyTagsFault extends __SmithyException, $MetadataBearer { - name: "TooManyTagsFault"; - $fault: "client"; - message?: string; +export class TooManyTagsFault extends __BaseException { + readonly name: "TooManyTagsFault" = "TooManyTagsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsFault.prototype); + } } export interface RegisterWorkflowTypeInput { @@ -6965,13 +7037,20 @@ export namespace StartWorkflowExecutionInput { *

Returned by StartWorkflowExecution when an open execution with the same workflowId is already running in * the specified domain.

*/ -export interface WorkflowExecutionAlreadyStartedFault extends __SmithyException, $MetadataBearer { - name: "WorkflowExecutionAlreadyStartedFault"; - $fault: "client"; +export class WorkflowExecutionAlreadyStartedFault extends __BaseException { + readonly name: "WorkflowExecutionAlreadyStartedFault" = "WorkflowExecutionAlreadyStartedFault"; + readonly $fault: "client" = "client"; /** - *

A description that may help with diagnosing the cause of the fault.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "WorkflowExecutionAlreadyStartedFault", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WorkflowExecutionAlreadyStartedFault.prototype); + } } export interface TagResourceInput { diff --git a/clients/client-swf/src/protocols/Aws_json1_0.ts b/clients/client-swf/src/protocols/Aws_json1_0.ts index 64e0dc91a3fda..4047c539d1cf0 100644 --- a/clients/client-swf/src/protocols/Aws_json1_0.ts +++ b/clients/client-swf/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -291,6 +290,7 @@ import { WorkflowTypeInfo, WorkflowTypeInfos, } from "../models/models_0"; +import { SWFServiceException as __BaseException } from "../models/SWFServiceException"; export const serializeAws_json1_0CountClosedWorkflowExecutionsCommand = async ( input: CountClosedWorkflowExecutionsCommandInput, @@ -798,41 +798,25 @@ const deserializeAws_json1_0CountClosedWorkflowExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CountOpenWorkflowExecutionsCommand = async ( @@ -860,41 +844,25 @@ const deserializeAws_json1_0CountOpenWorkflowExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CountPendingActivityTasksCommand = async ( @@ -922,41 +890,25 @@ const deserializeAws_json1_0CountPendingActivityTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CountPendingDecisionTasksCommand = async ( @@ -984,41 +936,25 @@ const deserializeAws_json1_0CountPendingDecisionTasksCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeprecateActivityTypeCommand = async ( @@ -1043,49 +979,28 @@ const deserializeAws_json1_0DeprecateActivityTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeDeprecatedFault": case "com.amazonaws.swf#TypeDeprecatedFault": - response = { - ...(await deserializeAws_json1_0TypeDeprecatedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeDeprecatedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeprecateDomainCommand = async ( @@ -1110,49 +1025,28 @@ const deserializeAws_json1_0DeprecateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DomainDeprecatedFault": case "com.amazonaws.swf#DomainDeprecatedFault": - response = { - ...(await deserializeAws_json1_0DomainDeprecatedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0DomainDeprecatedFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeprecateWorkflowTypeCommand = async ( @@ -1177,49 +1071,28 @@ const deserializeAws_json1_0DeprecateWorkflowTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeDeprecatedFault": case "com.amazonaws.swf#TypeDeprecatedFault": - response = { - ...(await deserializeAws_json1_0TypeDeprecatedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeDeprecatedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeActivityTypeCommand = async ( @@ -1247,41 +1120,25 @@ const deserializeAws_json1_0DescribeActivityTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeDomainCommand = async ( @@ -1309,41 +1166,25 @@ const deserializeAws_json1_0DescribeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeWorkflowExecutionCommand = async ( @@ -1371,41 +1212,25 @@ const deserializeAws_json1_0DescribeWorkflowExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeWorkflowTypeCommand = async ( @@ -1433,41 +1258,25 @@ const deserializeAws_json1_0DescribeWorkflowTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GetWorkflowExecutionHistoryCommand = async ( @@ -1495,41 +1304,25 @@ const deserializeAws_json1_0GetWorkflowExecutionHistoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListActivityTypesCommand = async ( @@ -1557,41 +1350,25 @@ const deserializeAws_json1_0ListActivityTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListClosedWorkflowExecutionsCommand = async ( @@ -1619,41 +1396,25 @@ const deserializeAws_json1_0ListClosedWorkflowExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListDomainsCommand = async ( @@ -1681,33 +1442,22 @@ const deserializeAws_json1_0ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListOpenWorkflowExecutionsCommand = async ( @@ -1735,41 +1485,25 @@ const deserializeAws_json1_0ListOpenWorkflowExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -1797,49 +1531,28 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListWorkflowTypesCommand = async ( @@ -1867,41 +1580,25 @@ const deserializeAws_json1_0ListWorkflowTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PollForActivityTaskCommand = async ( @@ -1929,49 +1626,28 @@ const deserializeAws_json1_0PollForActivityTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PollForDecisionTaskCommand = async ( @@ -1999,49 +1675,28 @@ const deserializeAws_json1_0PollForDecisionTaskCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RecordActivityTaskHeartbeatCommand = async ( @@ -2069,41 +1724,25 @@ const deserializeAws_json1_0RecordActivityTaskHeartbeatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RegisterActivityTypeCommand = async ( @@ -2128,57 +1767,31 @@ const deserializeAws_json1_0RegisterActivityTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeAlreadyExistsFault": case "com.amazonaws.swf#TypeAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RegisterDomainCommand = async ( @@ -2203,57 +1816,31 @@ const deserializeAws_json1_0RegisterDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DomainAlreadyExistsFault": case "com.amazonaws.swf#DomainAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_0DomainAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0DomainAlreadyExistsFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TooManyTagsFault": case "com.amazonaws.swf#TooManyTagsFault": - response = { - ...(await deserializeAws_json1_0TooManyTagsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TooManyTagsFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RegisterWorkflowTypeCommand = async ( @@ -2278,57 +1865,31 @@ const deserializeAws_json1_0RegisterWorkflowTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeAlreadyExistsFault": case "com.amazonaws.swf#TypeAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RequestCancelWorkflowExecutionCommand = async ( @@ -2353,41 +1914,25 @@ const deserializeAws_json1_0RequestCancelWorkflowExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RespondActivityTaskCanceledCommand = async ( @@ -2412,41 +1957,25 @@ const deserializeAws_json1_0RespondActivityTaskCanceledCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RespondActivityTaskCompletedCommand = async ( @@ -2471,41 +2000,25 @@ const deserializeAws_json1_0RespondActivityTaskCompletedCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RespondActivityTaskFailedCommand = async ( @@ -2530,41 +2043,25 @@ const deserializeAws_json1_0RespondActivityTaskFailedCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0RespondDecisionTaskCompletedCommand = async ( @@ -2589,41 +2086,25 @@ const deserializeAws_json1_0RespondDecisionTaskCompletedCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0SignalWorkflowExecutionCommand = async ( @@ -2648,41 +2129,25 @@ const deserializeAws_json1_0SignalWorkflowExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartWorkflowExecutionCommand = async ( @@ -2710,73 +2175,37 @@ const deserializeAws_json1_0StartWorkflowExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DefaultUndefinedFault": case "com.amazonaws.swf#DefaultUndefinedFault": - response = { - ...(await deserializeAws_json1_0DefaultUndefinedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0DefaultUndefinedFaultResponse(parsedOutput, context); case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeDeprecatedFault": case "com.amazonaws.swf#TypeDeprecatedFault": - response = { - ...(await deserializeAws_json1_0TypeDeprecatedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeDeprecatedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); case "WorkflowExecutionAlreadyStartedFault": case "com.amazonaws.swf#WorkflowExecutionAlreadyStartedFault": - response = { - ...(await deserializeAws_json1_0WorkflowExecutionAlreadyStartedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0WorkflowExecutionAlreadyStartedFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -2801,57 +2230,31 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TooManyTagsFault": case "com.amazonaws.swf#TooManyTagsFault": - response = { - ...(await deserializeAws_json1_0TooManyTagsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TooManyTagsFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TerminateWorkflowExecutionCommand = async ( @@ -2876,41 +2279,25 @@ const deserializeAws_json1_0TerminateWorkflowExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UndeprecateActivityTypeCommand = async ( @@ -2935,49 +2322,28 @@ const deserializeAws_json1_0UndeprecateActivityTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeAlreadyExistsFault": case "com.amazonaws.swf#TypeAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UndeprecateDomainCommand = async ( @@ -3002,49 +2368,28 @@ const deserializeAws_json1_0UndeprecateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DomainAlreadyExistsFault": case "com.amazonaws.swf#DomainAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_0DomainAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0DomainAlreadyExistsFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UndeprecateWorkflowTypeCommand = async ( @@ -3069,49 +2414,28 @@ const deserializeAws_json1_0UndeprecateWorkflowTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "TypeAlreadyExistsFault": case "com.amazonaws.swf#TypeAlreadyExistsFault": - response = { - ...(await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0TypeAlreadyExistsFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -3136,49 +2460,28 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "LimitExceededFault": case "com.amazonaws.swf#LimitExceededFault": - response = { - ...(await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0LimitExceededFaultResponse(parsedOutput, context); case "OperationNotPermittedFault": case "com.amazonaws.swf#OperationNotPermittedFault": - response = { - ...(await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0OperationNotPermittedFaultResponse(parsedOutput, context); case "UnknownResourceFault": case "com.amazonaws.swf#UnknownResourceFault": - response = { - ...(await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0UnknownResourceFaultResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0DefaultUndefinedFaultResponse = async ( @@ -3187,13 +2490,11 @@ const deserializeAws_json1_0DefaultUndefinedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0DefaultUndefinedFault(body, context); - const contents: DefaultUndefinedFault = { - name: "DefaultUndefinedFault", - $fault: "client", + const exception = new DefaultUndefinedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0DomainAlreadyExistsFaultResponse = async ( @@ -3202,13 +2503,11 @@ const deserializeAws_json1_0DomainAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0DomainAlreadyExistsFault(body, context); - const contents: DomainAlreadyExistsFault = { - name: "DomainAlreadyExistsFault", - $fault: "client", + const exception = new DomainAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0DomainDeprecatedFaultResponse = async ( @@ -3217,13 +2516,11 @@ const deserializeAws_json1_0DomainDeprecatedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0DomainDeprecatedFault(body, context); - const contents: DomainDeprecatedFault = { - name: "DomainDeprecatedFault", - $fault: "client", + const exception = new DomainDeprecatedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0LimitExceededFaultResponse = async ( @@ -3232,13 +2529,11 @@ const deserializeAws_json1_0LimitExceededFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0LimitExceededFault(body, context); - const contents: LimitExceededFault = { - name: "LimitExceededFault", - $fault: "client", + const exception = new LimitExceededFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0OperationNotPermittedFaultResponse = async ( @@ -3247,13 +2542,11 @@ const deserializeAws_json1_0OperationNotPermittedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0OperationNotPermittedFault(body, context); - const contents: OperationNotPermittedFault = { - name: "OperationNotPermittedFault", - $fault: "client", + const exception = new OperationNotPermittedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TooManyTagsFaultResponse = async ( @@ -3262,13 +2555,11 @@ const deserializeAws_json1_0TooManyTagsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TooManyTagsFault(body, context); - const contents: TooManyTagsFault = { - name: "TooManyTagsFault", - $fault: "client", + const exception = new TooManyTagsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TypeAlreadyExistsFaultResponse = async ( @@ -3277,13 +2568,11 @@ const deserializeAws_json1_0TypeAlreadyExistsFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TypeAlreadyExistsFault(body, context); - const contents: TypeAlreadyExistsFault = { - name: "TypeAlreadyExistsFault", - $fault: "client", + const exception = new TypeAlreadyExistsFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0TypeDeprecatedFaultResponse = async ( @@ -3292,13 +2581,11 @@ const deserializeAws_json1_0TypeDeprecatedFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0TypeDeprecatedFault(body, context); - const contents: TypeDeprecatedFault = { - name: "TypeDeprecatedFault", - $fault: "client", + const exception = new TypeDeprecatedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0UnknownResourceFaultResponse = async ( @@ -3307,13 +2594,11 @@ const deserializeAws_json1_0UnknownResourceFaultResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0UnknownResourceFault(body, context); - const contents: UnknownResourceFault = { - name: "UnknownResourceFault", - $fault: "client", + const exception = new UnknownResourceFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0WorkflowExecutionAlreadyStartedFaultResponse = async ( @@ -3322,13 +2607,11 @@ const deserializeAws_json1_0WorkflowExecutionAlreadyStartedFaultResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0WorkflowExecutionAlreadyStartedFault(body, context); - const contents: WorkflowExecutionAlreadyStartedFault = { - name: "WorkflowExecutionAlreadyStartedFault", - $fault: "client", + const exception = new WorkflowExecutionAlreadyStartedFault({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0ActivityType = (input: ActivityType, context: __SerdeContext): any => { diff --git a/clients/client-synthetics/src/index.ts b/clients/client-synthetics/src/index.ts index 22919e70ea9ba..e2c3168008248 100644 --- a/clients/client-synthetics/src/index.ts +++ b/clients/client-synthetics/src/index.ts @@ -3,3 +3,4 @@ export * from "./SyntheticsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { SyntheticsServiceException } from "./models/SyntheticsServiceException"; diff --git a/clients/client-synthetics/src/models/SyntheticsServiceException.ts b/clients/client-synthetics/src/models/SyntheticsServiceException.ts new file mode 100644 index 0000000000000..79803babea183 --- /dev/null +++ b/clients/client-synthetics/src/models/SyntheticsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Synthetics service. + */ +export class SyntheticsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, SyntheticsServiceException.prototype); + } +} diff --git a/clients/client-synthetics/src/models/models_0.ts b/clients/client-synthetics/src/models/models_0.ts index 60e3c1fa6836e..d13c721ad9f99 100644 --- a/clients/client-synthetics/src/models/models_0.ts +++ b/clients/client-synthetics/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { SyntheticsServiceException as __BaseException } from "./SyntheticsServiceException"; export enum EncryptionMode { SSE_KMS = "SSE_KMS", @@ -726,10 +729,22 @@ export namespace CanaryScheduleInput { /** *

A conflicting operation is already in progress.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -914,19 +929,43 @@ export namespace CreateCanaryResponse { /** *

An unknown internal error occurred.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

A parameter could not be validated.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DeleteCanaryRequest { @@ -959,10 +998,22 @@ export namespace DeleteCanaryResponse { /** *

One of the specified resources was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeCanariesRequest { diff --git a/clients/client-synthetics/src/protocols/Aws_restJson1.ts b/clients/client-synthetics/src/protocols/Aws_restJson1.ts index 94843c6eaf0f5..a05981c34b9e7 100644 --- a/clients/client-synthetics/src/protocols/Aws_restJson1.ts +++ b/clients/client-synthetics/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateCanaryCommandInput, CreateCanaryCommandOutput } from "../commands/CreateCanaryCommand"; @@ -68,6 +67,7 @@ import { VpcConfigInput, VpcConfigOutput, } from "../models/models_0"; +import { SyntheticsServiceException as __BaseException } from "../models/SyntheticsServiceException"; export const serializeAws_restJson1CreateCanaryCommand = async ( input: CreateCanaryCommandInput, @@ -522,41 +522,25 @@ const deserializeAws_restJson1CreateCanaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCanaryCommand = async ( @@ -581,57 +565,31 @@ const deserializeAws_restJson1DeleteCanaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.synthetics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCanariesCommand = async ( @@ -664,41 +622,25 @@ const deserializeAws_restJson1DescribeCanariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCanariesLastRunCommand = async ( @@ -731,41 +673,25 @@ const deserializeAws_restJson1DescribeCanariesLastRunCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRuntimeVersionsCommand = async ( @@ -798,41 +724,25 @@ const deserializeAws_restJson1DescribeRuntimeVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCanaryCommand = async ( @@ -861,41 +771,25 @@ const deserializeAws_restJson1GetCanaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCanaryRunsCommand = async ( @@ -928,49 +822,28 @@ const deserializeAws_restJson1GetCanaryRunsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -999,49 +872,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartCanaryCommand = async ( @@ -1066,57 +918,31 @@ const deserializeAws_restJson1StartCanaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.synthetics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StopCanaryCommand = async ( @@ -1141,57 +967,31 @@ const deserializeAws_restJson1StopCanaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.synthetics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -1216,49 +1016,28 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -1283,49 +1062,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCanaryCommand = async ( @@ -1350,125 +1108,95 @@ const deserializeAws_restJson1UpdateCanaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.synthetics#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.synthetics#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.synthetics#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.synthetics#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ArtifactConfigInput = (input: ArtifactConfigInput, context: __SerdeContext): any => { diff --git a/clients/client-textract/src/index.ts b/clients/client-textract/src/index.ts index 90c363f9e8476..62f398b784e0c 100644 --- a/clients/client-textract/src/index.ts +++ b/clients/client-textract/src/index.ts @@ -2,3 +2,4 @@ export * from "./Textract"; export * from "./TextractClient"; export * from "./commands"; export * from "./models"; +export { TextractServiceException } from "./models/TextractServiceException"; diff --git a/clients/client-textract/src/models/TextractServiceException.ts b/clients/client-textract/src/models/TextractServiceException.ts new file mode 100644 index 0000000000000..1241902d773d2 --- /dev/null +++ b/clients/client-textract/src/models/TextractServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Textract service. + */ +export class TextractServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TextractServiceException.prototype); + } +} diff --git a/clients/client-textract/src/models/models_0.ts b/clients/client-textract/src/models/models_0.ts index 58fe2c47c52d6..281acf47c762f 100644 --- a/clients/client-textract/src/models/models_0.ts +++ b/clients/client-textract/src/models/models_0.ts @@ -1,15 +1,33 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TextractServiceException as __BaseException } from "./TextractServiceException"; /** *

You aren't authorized to perform the action. Use the Amazon Resource Name (ARN) * of an authorized user or IAM role to perform the operation.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** @@ -647,11 +665,24 @@ export namespace AnalyzeDocumentResponse { *

Amazon Textract isn't able to read the document. For more information on the document * limits in Amazon Textract, see limits.

*/ -export interface BadDocumentException extends __SmithyException, $MetadataBearer { - name: "BadDocumentException"; - $fault: "client"; +export class BadDocumentException extends __BaseException { + readonly name: "BadDocumentException" = "BadDocumentException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadDocumentException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** @@ -659,19 +690,32 @@ export interface BadDocumentException extends __SmithyException, $MetadataBearer * synchronous operations 10 MB. The maximum document size for asynchronous operations is 500 * MB for PDF files.

*/ -export interface DocumentTooLargeException extends __SmithyException, $MetadataBearer { - name: "DocumentTooLargeException"; - $fault: "client"; +export class DocumentTooLargeException extends __BaseException { + readonly name: "DocumentTooLargeException" = "DocumentTooLargeException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentTooLargeException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Indicates you have exceeded the maximum number of active human in the loop workflows available

*/ -export interface HumanLoopQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "HumanLoopQuotaExceededException"; - $fault: "client"; +export class HumanLoopQuotaExceededException extends __BaseException { + readonly name: "HumanLoopQuotaExceededException" = "HumanLoopQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

The resource type.

*/ @@ -689,16 +733,45 @@ export interface HumanLoopQuotaExceededException extends __SmithyException, $Met Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "HumanLoopQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, HumanLoopQuotaExceededException.prototype); + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Amazon Textract experienced a service issue. Try your call again.

*/ -export interface InternalServerError extends __SmithyException, $MetadataBearer { - name: "InternalServerError"; - $fault: "server"; +export class InternalServerError extends __BaseException { + readonly name: "InternalServerError" = "InternalServerError"; + readonly $fault: "server" = "server"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerError.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** @@ -708,11 +781,24 @@ export interface InternalServerError extends __SmithyException, $MetadataBearer * request parameter. * Validate your parameter before calling the API operation again.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** @@ -721,43 +807,95 @@ export interface InvalidParameterException extends __SmithyException, $MetadataB * For troubleshooting information, see Troubleshooting Amazon S3 *

*/ -export interface InvalidS3ObjectException extends __SmithyException, $MetadataBearer { - name: "InvalidS3ObjectException"; - $fault: "client"; +export class InvalidS3ObjectException extends __BaseException { + readonly name: "InvalidS3ObjectException" = "InvalidS3ObjectException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidS3ObjectException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidS3ObjectException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The number of requests exceeded your throughput limit. If you want to increase this limit, * contact Amazon Textract.

*/ -export interface ProvisionedThroughputExceededException extends __SmithyException, $MetadataBearer { - name: "ProvisionedThroughputExceededException"; - $fault: "client"; +export class ProvisionedThroughputExceededException extends __BaseException { + readonly name: "ProvisionedThroughputExceededException" = "ProvisionedThroughputExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProvisionedThroughputExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProvisionedThroughputExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Amazon Textract is temporarily unable to process the request. Try your call again.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "server"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "server" = "server"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The format of the input document isn't supported. Documents for synchronous operations can be in * PNG or JPEG format only. Documents for asynchronous operations can be in PDF format.

*/ -export interface UnsupportedDocumentException extends __SmithyException, $MetadataBearer { - name: "UnsupportedDocumentException"; - $fault: "client"; +export class UnsupportedDocumentException extends __BaseException { + readonly name: "UnsupportedDocumentException" = "UnsupportedDocumentException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedDocumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedDocumentException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } export interface AnalyzeExpenseRequest { @@ -1311,22 +1449,48 @@ export namespace GetDocumentAnalysisResponse { *

An invalid job identifier was passed to GetDocumentAnalysis or to * GetDocumentAnalysis.

*/ -export interface InvalidJobIdException extends __SmithyException, $MetadataBearer { - name: "InvalidJobIdException"; - $fault: "client"; +export class InvalidJobIdException extends __BaseException { + readonly name: "InvalidJobIdException" = "InvalidJobIdException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidJobIdException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidJobIdException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

Indicates you do not have decrypt permissions with the KMS key entered, or the KMS key * was entered incorrectly.

*/ -export interface InvalidKMSKeyException extends __SmithyException, $MetadataBearer { - name: "InvalidKMSKeyException"; - $fault: "client"; +export class InvalidKMSKeyException extends __BaseException { + readonly name: "InvalidKMSKeyException" = "InvalidKMSKeyException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidKMSKeyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidKMSKeyException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } export interface GetDocumentTextDetectionRequest { @@ -1492,11 +1656,24 @@ export namespace GetExpenseAnalysisResponse { * least one of the other input parameters is different from the previous call to the * operation.

*/ -export interface IdempotentParameterMismatchException extends __SmithyException, $MetadataBearer { - name: "IdempotentParameterMismatchException"; - $fault: "client"; +export class IdempotentParameterMismatchException extends __BaseException { + readonly name: "IdempotentParameterMismatchException" = "IdempotentParameterMismatchException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IdempotentParameterMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** @@ -1506,11 +1683,24 @@ export interface IdempotentParameterMismatchException extends __SmithyException, * exception (HTTP status code: 400) until the number of concurrently running jobs is below * the Amazon Textract service limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** diff --git a/clients/client-textract/src/protocols/Aws_json1_1.ts b/clients/client-textract/src/protocols/Aws_json1_1.ts index 5b6d6788148e3..9b705ee2cabf6 100644 --- a/clients/client-textract/src/protocols/Aws_json1_1.ts +++ b/clients/client-textract/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectString as __expectString, LazyJsonString as __LazyJsonString, @@ -8,10 +9,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AnalyzeDocumentCommandInput, AnalyzeDocumentCommandOutput } from "../commands/AnalyzeDocumentCommand"; @@ -103,6 +102,7 @@ import { UnsupportedDocumentException, Warning, } from "../models/models_0"; +import { TextractServiceException as __BaseException } from "../models/TextractServiceException"; export const serializeAws_json1_1AnalyzeDocumentCommand = async ( input: AnalyzeDocumentCommandInput, @@ -259,105 +259,49 @@ const deserializeAws_json1_1AnalyzeDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "HumanLoopQuotaExceededException": case "com.amazonaws.textract#HumanLoopQuotaExceededException": - response = { - ...(await deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AnalyzeExpenseCommand = async ( @@ -385,97 +329,46 @@ const deserializeAws_json1_1AnalyzeExpenseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AnalyzeIDCommand = async ( @@ -503,97 +396,46 @@ const deserializeAws_json1_1AnalyzeIDCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DetectDocumentTextCommand = async ( @@ -621,97 +463,46 @@ const deserializeAws_json1_1DetectDocumentTextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDocumentAnalysisCommand = async ( @@ -739,89 +530,43 @@ const deserializeAws_json1_1GetDocumentAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidJobIdException": case "com.amazonaws.textract#InvalidJobIdException": - response = { - ...(await deserializeAws_json1_1InvalidJobIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobIdExceptionResponse(parsedOutput, context); case "InvalidKMSKeyException": case "com.amazonaws.textract#InvalidKMSKeyException": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDocumentTextDetectionCommand = async ( @@ -849,89 +594,43 @@ const deserializeAws_json1_1GetDocumentTextDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidJobIdException": case "com.amazonaws.textract#InvalidJobIdException": - response = { - ...(await deserializeAws_json1_1InvalidJobIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobIdExceptionResponse(parsedOutput, context); case "InvalidKMSKeyException": case "com.amazonaws.textract#InvalidKMSKeyException": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetExpenseAnalysisCommand = async ( @@ -959,89 +658,43 @@ const deserializeAws_json1_1GetExpenseAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidJobIdException": case "com.amazonaws.textract#InvalidJobIdException": - response = { - ...(await deserializeAws_json1_1InvalidJobIdExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidJobIdExceptionResponse(parsedOutput, context); case "InvalidKMSKeyException": case "com.amazonaws.textract#InvalidKMSKeyException": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDocumentAnalysisCommand = async ( @@ -1069,121 +722,55 @@ const deserializeAws_json1_1StartDocumentAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.textract#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidKMSKeyException": case "com.amazonaws.textract#InvalidKMSKeyException": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.textract#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartDocumentTextDetectionCommand = async ( @@ -1211,121 +798,55 @@ const deserializeAws_json1_1StartDocumentTextDetectionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.textract#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidKMSKeyException": case "com.amazonaws.textract#InvalidKMSKeyException": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.textract#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartExpenseAnalysisCommand = async ( @@ -1353,121 +874,55 @@ const deserializeAws_json1_1StartExpenseAnalysisCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.textract#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "BadDocumentException": case "com.amazonaws.textract#BadDocumentException": - response = { - ...(await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadDocumentExceptionResponse(parsedOutput, context); case "DocumentTooLargeException": case "com.amazonaws.textract#DocumentTooLargeException": - response = { - ...(await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DocumentTooLargeExceptionResponse(parsedOutput, context); case "IdempotentParameterMismatchException": case "com.amazonaws.textract#IdempotentParameterMismatchException": - response = { - ...(await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse(parsedOutput, context); case "InternalServerError": case "com.amazonaws.textract#InternalServerError": - response = { - ...(await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerErrorResponse(parsedOutput, context); case "InvalidKMSKeyException": case "com.amazonaws.textract#InvalidKMSKeyException": - response = { - ...(await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidKMSKeyExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.textract#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidS3ObjectException": case "com.amazonaws.textract#InvalidS3ObjectException": - response = { - ...(await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidS3ObjectExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.textract#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ProvisionedThroughputExceededException": case "com.amazonaws.textract#ProvisionedThroughputExceededException": - response = { - ...(await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.textract#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); case "UnsupportedDocumentException": case "com.amazonaws.textract#UnsupportedDocumentException": - response = { - ...(await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedDocumentExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -1476,13 +931,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1BadDocumentExceptionResponse = async ( @@ -1491,13 +944,11 @@ const deserializeAws_json1_1BadDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BadDocumentException(body, context); - const contents: BadDocumentException = { - name: "BadDocumentException", - $fault: "client", + const exception = new BadDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DocumentTooLargeExceptionResponse = async ( @@ -1506,13 +957,11 @@ const deserializeAws_json1_1DocumentTooLargeExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DocumentTooLargeException(body, context); - const contents: DocumentTooLargeException = { - name: "DocumentTooLargeException", - $fault: "client", + const exception = new DocumentTooLargeException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse = async ( @@ -1521,13 +970,11 @@ const deserializeAws_json1_1HumanLoopQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1HumanLoopQuotaExceededException(body, context); - const contents: HumanLoopQuotaExceededException = { - name: "HumanLoopQuotaExceededException", - $fault: "client", + const exception = new HumanLoopQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ( @@ -1536,13 +983,11 @@ const deserializeAws_json1_1IdempotentParameterMismatchExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1IdempotentParameterMismatchException(body, context); - const contents: IdempotentParameterMismatchException = { - name: "IdempotentParameterMismatchException", - $fault: "client", + const exception = new IdempotentParameterMismatchException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerErrorResponse = async ( @@ -1551,13 +996,11 @@ const deserializeAws_json1_1InternalServerErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerError(body, context); - const contents: InternalServerError = { - name: "InternalServerError", - $fault: "server", + const exception = new InternalServerError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidJobIdExceptionResponse = async ( @@ -1566,13 +1009,11 @@ const deserializeAws_json1_1InvalidJobIdExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidJobIdException(body, context); - const contents: InvalidJobIdException = { - name: "InvalidJobIdException", - $fault: "client", + const exception = new InvalidJobIdException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidKMSKeyExceptionResponse = async ( @@ -1581,13 +1022,11 @@ const deserializeAws_json1_1InvalidKMSKeyExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidKMSKeyException(body, context); - const contents: InvalidKMSKeyException = { - name: "InvalidKMSKeyException", - $fault: "client", + const exception = new InvalidKMSKeyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -1596,13 +1035,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidS3ObjectExceptionResponse = async ( @@ -1611,13 +1048,11 @@ const deserializeAws_json1_1InvalidS3ObjectExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidS3ObjectException(body, context); - const contents: InvalidS3ObjectException = { - name: "InvalidS3ObjectException", - $fault: "client", + const exception = new InvalidS3ObjectException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1626,13 +1061,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse = async ( @@ -1641,13 +1074,11 @@ const deserializeAws_json1_1ProvisionedThroughputExceededExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ProvisionedThroughputExceededException(body, context); - const contents: ProvisionedThroughputExceededException = { - name: "ProvisionedThroughputExceededException", - $fault: "client", + const exception = new ProvisionedThroughputExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -1656,13 +1087,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "server", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedDocumentExceptionResponse = async ( @@ -1671,13 +1100,11 @@ const deserializeAws_json1_1UnsupportedDocumentExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedDocumentException(body, context); - const contents: UnsupportedDocumentException = { - name: "UnsupportedDocumentException", - $fault: "client", + const exception = new UnsupportedDocumentException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AnalyzeDocumentRequest = (input: AnalyzeDocumentRequest, context: __SerdeContext): any => { diff --git a/clients/client-timestream-query/src/index.ts b/clients/client-timestream-query/src/index.ts index d6eca7cc25745..9d15928462318 100644 --- a/clients/client-timestream-query/src/index.ts +++ b/clients/client-timestream-query/src/index.ts @@ -3,3 +3,4 @@ export * from "./TimestreamQueryClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { TimestreamQueryServiceException } from "./models/TimestreamQueryServiceException"; diff --git a/clients/client-timestream-query/src/models/TimestreamQueryServiceException.ts b/clients/client-timestream-query/src/models/TimestreamQueryServiceException.ts new file mode 100644 index 0000000000000..31e493a21d0ee --- /dev/null +++ b/clients/client-timestream-query/src/models/TimestreamQueryServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from TimestreamQuery service. + */ +export class TimestreamQueryServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TimestreamQueryServiceException.prototype); + } +} diff --git a/clients/client-timestream-query/src/models/models_0.ts b/clients/client-timestream-query/src/models/models_0.ts index 145531c9449c9..6e75af068b006 100644 --- a/clients/client-timestream-query/src/models/models_0.ts +++ b/clients/client-timestream-query/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TimestreamQueryServiceException as __BaseException } from "./TimestreamQueryServiceException"; /** *

You are not authorized to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export interface CancelQueryRequest { @@ -49,37 +63,85 @@ export namespace CancelQueryResponse { * Timestream was unable to fully process this request because of an internal * server error.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The requested endpoint was not valid.

*/ -export interface InvalidEndpointException extends __SmithyException, $MetadataBearer { - name: "InvalidEndpointException"; - $fault: "client"; +export class InvalidEndpointException extends __BaseException { + readonly name: "InvalidEndpointException" = "InvalidEndpointException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndpointException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndpointException.prototype); + this.Message = opts.Message; + } } /** *

The request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

Invalid or malformed request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum ScalarType { @@ -99,10 +161,22 @@ export enum ScalarType { /** *

Unable to poll results for a cancelled query.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export enum S3EncryptionOption { @@ -573,10 +647,22 @@ export namespace CreateScheduledQueryResponse { /** *

You have exceeded the service quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } export interface DeleteScheduledQueryRequest { @@ -598,14 +684,27 @@ export namespace DeleteScheduledQueryRequest { /** *

The requested resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The ARN of the scheduled query.

*/ ScheduledQueryArn?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ScheduledQueryArn = opts.ScheduledQueryArn; + } } export interface DescribeEndpointsRequest {} @@ -1181,10 +1280,22 @@ export namespace PrepareQueryRequest { *

* Timestream was unable to run the query successfully.

*/ -export interface QueryExecutionException extends __SmithyException, $MetadataBearer { - name: "QueryExecutionException"; - $fault: "client"; +export class QueryExecutionException extends __BaseException { + readonly name: "QueryExecutionException" = "QueryExecutionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "QueryExecutionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, QueryExecutionException.prototype); + this.Message = opts.Message; + } } export interface QueryRequest { diff --git a/clients/client-timestream-query/src/protocols/Aws_json1_0.ts b/clients/client-timestream-query/src/protocols/Aws_json1_0.ts index e9a6ba9ea9119..a85118ce10d15 100644 --- a/clients/client-timestream-query/src/protocols/Aws_json1_0.ts +++ b/clients/client-timestream-query/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -115,6 +114,7 @@ import { UpdateScheduledQueryRequest, ValidationException, } from "../models/models_0"; +import { TimestreamQueryServiceException as __BaseException } from "../models/TimestreamQueryServiceException"; export const serializeAws_json1_0CancelQueryCommand = async ( input: CancelQueryCommandInput, @@ -310,65 +310,34 @@ const deserializeAws_json1_0CancelQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateScheduledQueryCommand = async ( @@ -396,81 +365,40 @@ const deserializeAws_json1_0CreateScheduledQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.timestreamquery#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamquery#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteScheduledQueryCommand = async ( @@ -495,73 +423,37 @@ const deserializeAws_json1_0DeleteScheduledQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeEndpointsCommand = async ( @@ -589,49 +481,28 @@ const deserializeAws_json1_0DescribeEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeScheduledQueryCommand = async ( @@ -659,73 +530,37 @@ const deserializeAws_json1_0DescribeScheduledQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ExecuteScheduledQueryCommand = async ( @@ -750,73 +585,37 @@ const deserializeAws_json1_0ExecuteScheduledQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListScheduledQueriesCommand = async ( @@ -844,65 +643,34 @@ const deserializeAws_json1_0ListScheduledQueriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -930,57 +698,31 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0PrepareQueryCommand = async ( @@ -1008,65 +750,34 @@ const deserializeAws_json1_0PrepareQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0QueryCommand = async ( @@ -1094,81 +805,40 @@ const deserializeAws_json1_0QueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.timestreamquery#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "QueryExecutionException": case "com.amazonaws.timestreamquery#QueryExecutionException": - response = { - ...(await deserializeAws_json1_0QueryExecutionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0QueryExecutionExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -1196,65 +866,34 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamquery#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -1282,57 +921,31 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateScheduledQueryCommand = async ( @@ -1357,73 +970,37 @@ const deserializeAws_json1_0UpdateScheduledQueryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamquery#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamquery#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamquery#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamquery#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamquery#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamquery#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -1432,13 +1009,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -1447,13 +1022,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -1462,13 +1035,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidEndpointExceptionResponse = async ( @@ -1477,13 +1048,11 @@ const deserializeAws_json1_0InvalidEndpointExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidEndpointException(body, context); - const contents: InvalidEndpointException = { - name: "InvalidEndpointException", - $fault: "client", + const exception = new InvalidEndpointException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0QueryExecutionExceptionResponse = async ( @@ -1492,13 +1061,11 @@ const deserializeAws_json1_0QueryExecutionExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0QueryExecutionException(body, context); - const contents: QueryExecutionException = { - name: "QueryExecutionException", - $fault: "client", + const exception = new QueryExecutionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -1507,13 +1074,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( @@ -1522,13 +1087,11 @@ const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -1537,13 +1100,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -1552,13 +1113,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CancelQueryRequest = (input: CancelQueryRequest, context: __SerdeContext): any => { diff --git a/clients/client-timestream-write/src/index.ts b/clients/client-timestream-write/src/index.ts index 9b166e243eb19..e87add2949ec7 100644 --- a/clients/client-timestream-write/src/index.ts +++ b/clients/client-timestream-write/src/index.ts @@ -3,3 +3,4 @@ export * from "./TimestreamWriteClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { TimestreamWriteServiceException } from "./models/TimestreamWriteServiceException"; diff --git a/clients/client-timestream-write/src/models/TimestreamWriteServiceException.ts b/clients/client-timestream-write/src/models/TimestreamWriteServiceException.ts new file mode 100644 index 0000000000000..9af2eef470a7d --- /dev/null +++ b/clients/client-timestream-write/src/models/TimestreamWriteServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from TimestreamWrite service. + */ +export class TimestreamWriteServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TimestreamWriteServiceException.prototype); + } +} diff --git a/clients/client-timestream-write/src/models/models_0.ts b/clients/client-timestream-write/src/models/models_0.ts index 3b3cfac4c8438..15ae43f3454a5 100644 --- a/clients/client-timestream-write/src/models/models_0.ts +++ b/clients/client-timestream-write/src/models/models_0.ts @@ -1,21 +1,48 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TimestreamWriteServiceException as __BaseException } from "./TimestreamWriteServiceException"; /** *

You are not authorized to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** *

Timestream was unable to process this request because it contains resource that already exists.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -148,46 +175,106 @@ export namespace CreateDatabaseResponse { /** *

Timestream was unable to fully process this request because of an internal server error.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The requested endpoint was invalid.

*/ -export interface InvalidEndpointException extends __SmithyException, $MetadataBearer { - name: "InvalidEndpointException"; - $fault: "client"; +export class InvalidEndpointException extends __BaseException { + readonly name: "InvalidEndpointException" = "InvalidEndpointException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidEndpointException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidEndpointException.prototype); + this.Message = opts.Message; + } } /** *

Instance quota of resource exceeded for this account.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** *

Too many requests were made by a user exceeding service quotas. The request was throttled.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

Invalid or malformed request.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export enum S3EncryptionOption { @@ -424,10 +511,22 @@ export namespace CreateTableResponse { /** *

The operation tried to access a nonexistent resource. The resource might not be specified correctly, or its status might not be ACTIVE.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteDatabaseRequest { @@ -1040,11 +1139,24 @@ export namespace RejectedRecord { * For more information, see Quotas in the Timestream Developer Guide. *

*/ -export interface RejectedRecordsException extends __SmithyException, $MetadataBearer { - name: "RejectedRecordsException"; - $fault: "client"; +export class RejectedRecordsException extends __BaseException { + readonly name: "RejectedRecordsException" = "RejectedRecordsException"; + readonly $fault: "client" = "client"; Message?: string; RejectedRecords?: RejectedRecord[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RejectedRecordsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RejectedRecordsException.prototype); + this.Message = opts.Message; + this.RejectedRecords = opts.RejectedRecords; + } } export interface TagResourceRequest { diff --git a/clients/client-timestream-write/src/protocols/Aws_json1_0.ts b/clients/client-timestream-write/src/protocols/Aws_json1_0.ts index 7b8a9143a74cc..0291ef1a04a88 100644 --- a/clients/client-timestream-write/src/protocols/Aws_json1_0.ts +++ b/clients/client-timestream-write/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateDatabaseCommandInput, CreateDatabaseCommandOutput } from "../commands/CreateDatabaseCommand"; @@ -87,6 +86,7 @@ import { WriteRecordsRequest, WriteRecordsResponse, } from "../models/models_0"; +import { TimestreamWriteServiceException as __BaseException } from "../models/TimestreamWriteServiceException"; export const serializeAws_json1_0CreateDatabaseCommand = async ( input: CreateDatabaseCommandInput, @@ -308,81 +308,40 @@ const deserializeAws_json1_0CreateDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.timestreamwrite#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamwrite#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0CreateTableCommand = async ( @@ -410,89 +369,43 @@ const deserializeAws_json1_0CreateTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.timestreamwrite#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamwrite#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteDatabaseCommand = async ( @@ -517,73 +430,37 @@ const deserializeAws_json1_0DeleteDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteTableCommand = async ( @@ -608,73 +485,37 @@ const deserializeAws_json1_0DeleteTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeDatabaseCommand = async ( @@ -702,73 +543,37 @@ const deserializeAws_json1_0DescribeDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeEndpointsCommand = async ( @@ -796,49 +601,28 @@ const deserializeAws_json1_0DescribeEndpointsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeTableCommand = async ( @@ -866,73 +650,37 @@ const deserializeAws_json1_0DescribeTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListDatabasesCommand = async ( @@ -960,65 +708,34 @@ const deserializeAws_json1_0ListDatabasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTablesCommand = async ( @@ -1046,73 +763,37 @@ const deserializeAws_json1_0ListTablesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -1140,57 +821,31 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -1218,65 +873,34 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamwrite#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -1304,65 +928,34 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamwrite#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateDatabaseCommand = async ( @@ -1390,81 +983,40 @@ const deserializeAws_json1_0UpdateDatabaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.timestreamwrite#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateTableCommand = async ( @@ -1492,73 +1044,37 @@ const deserializeAws_json1_0UpdateTableCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0WriteRecordsCommand = async ( @@ -1586,81 +1102,40 @@ const deserializeAws_json1_0WriteRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.timestreamwrite#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.timestreamwrite#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "InvalidEndpointException": case "com.amazonaws.timestreamwrite#InvalidEndpointException": - response = { - ...(await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidEndpointExceptionResponse(parsedOutput, context); case "RejectedRecordsException": case "com.amazonaws.timestreamwrite#RejectedRecordsException": - response = { - ...(await deserializeAws_json1_0RejectedRecordsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0RejectedRecordsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.timestreamwrite#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.timestreamwrite#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.timestreamwrite#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -1669,13 +1144,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -1684,13 +1157,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -1699,13 +1170,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidEndpointExceptionResponse = async ( @@ -1714,13 +1183,11 @@ const deserializeAws_json1_0InvalidEndpointExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidEndpointException(body, context); - const contents: InvalidEndpointException = { - name: "InvalidEndpointException", - $fault: "client", + const exception = new InvalidEndpointException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0RejectedRecordsExceptionResponse = async ( @@ -1729,13 +1196,11 @@ const deserializeAws_json1_0RejectedRecordsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0RejectedRecordsException(body, context); - const contents: RejectedRecordsException = { - name: "RejectedRecordsException", - $fault: "client", + const exception = new RejectedRecordsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -1744,13 +1209,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( @@ -1759,13 +1222,11 @@ const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -1774,13 +1235,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -1789,13 +1248,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CreateDatabaseRequest = (input: CreateDatabaseRequest, context: __SerdeContext): any => { diff --git a/clients/client-transcribe-streaming/src/index.ts b/clients/client-transcribe-streaming/src/index.ts index 229a591c2d5cc..7fce07b4af48b 100644 --- a/clients/client-transcribe-streaming/src/index.ts +++ b/clients/client-transcribe-streaming/src/index.ts @@ -2,3 +2,4 @@ export * from "./TranscribeStreaming"; export * from "./TranscribeStreamingClient"; export * from "./commands"; export * from "./models"; +export { TranscribeStreamingServiceException } from "./models/TranscribeStreamingServiceException"; diff --git a/clients/client-transcribe-streaming/src/models/TranscribeStreamingServiceException.ts b/clients/client-transcribe-streaming/src/models/TranscribeStreamingServiceException.ts new file mode 100644 index 0000000000000..074c571365fb4 --- /dev/null +++ b/clients/client-transcribe-streaming/src/models/TranscribeStreamingServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from TranscribeStreaming service. + */ +export class TranscribeStreamingServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TranscribeStreamingServiceException.prototype); + } +} diff --git a/clients/client-transcribe-streaming/src/models/models_0.ts b/clients/client-transcribe-streaming/src/models/models_0.ts index 7a2955a9938e9..7390c62f268a7 100644 --- a/clients/client-transcribe-streaming/src/models/models_0.ts +++ b/clients/client-transcribe-streaming/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TranscribeStreamingServiceException as __BaseException } from "./TranscribeStreamingServiceException"; /** *

The entity identified as personally identifiable information (PII).

@@ -214,20 +217,44 @@ export namespace AudioStream { * MediaEncoding was not set to a valid encoding, or LanguageCode was * not set to a valid code. Check the parameters and try your request again.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } /** *

A new stream started with the same session ID. The current stream has been * terminated.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export enum ContentIdentificationType { @@ -242,10 +269,22 @@ export enum ContentRedactionType { *

A problem occurred while processing the audio. Amazon Transcribe or Amazon Transcribe Medical terminated processing. Try * your request again.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + this.Message = opts.Message; + } } export enum LanguageCode { @@ -297,10 +336,22 @@ export namespace LanguageWithScore { * has finished processing, or break your audio stream into smaller chunks and try your request * again.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export enum MediaEncoding { @@ -540,10 +591,22 @@ export namespace MedicalTranscriptEvent { /** *

Service is currently unavailable. Try your request later.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** diff --git a/clients/client-transcribe-streaming/src/protocols/Aws_restJson1.ts b/clients/client-transcribe-streaming/src/protocols/Aws_restJson1.ts index fb77ae66f7447..59f5da3e4f767 100644 --- a/clients/client-transcribe-streaming/src/protocols/Aws_restJson1.ts +++ b/clients/client-transcribe-streaming/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectString as __expectString, limitedParseDouble as __limitedParseDouble, @@ -10,10 +11,8 @@ import { Endpoint as __Endpoint, EventStreamSerdeContext as __EventStreamSerdeContext, Message as __Message, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -48,6 +47,7 @@ import { TranscriptEvent, TranscriptResultStream, } from "../models/models_0"; +import { TranscribeStreamingServiceException as __BaseException } from "../models/TranscribeStreamingServiceException"; export const serializeAws_restJson1StartMedicalStreamTranscriptionCommand = async ( input: StartMedicalStreamTranscriptionCommandInput, @@ -262,65 +262,34 @@ const deserializeAws_restJson1StartMedicalStreamTranscriptionCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribestreaming#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribestreaming#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribestreaming#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribestreaming#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transcribestreaming#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartStreamTranscriptionCommand = async ( @@ -445,65 +414,34 @@ const deserializeAws_restJson1StartStreamTranscriptionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribestreaming#BadRequestException": - response = { - ...(await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribestreaming#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribestreaming#InternalFailureException": - response = { - ...(await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribestreaming#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transcribestreaming#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const serializeAws_restJson1AudioStream_event = (input: any, context: __SerdeContext): __Message => { @@ -697,85 +635,80 @@ const deserializeAws_restJson1BadRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new BadRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalFailureExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalFailureException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AudioEvent = (input: AudioEvent, context: __SerdeContext): any => { diff --git a/clients/client-transcribe/src/index.ts b/clients/client-transcribe/src/index.ts index 93112d7257cee..b84830feb06af 100644 --- a/clients/client-transcribe/src/index.ts +++ b/clients/client-transcribe/src/index.ts @@ -3,3 +3,4 @@ export * from "./TranscribeClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { TranscribeServiceException } from "./models/TranscribeServiceException"; diff --git a/clients/client-transcribe/src/models/TranscribeServiceException.ts b/clients/client-transcribe/src/models/TranscribeServiceException.ts new file mode 100644 index 0000000000000..fb3eb192f1c2d --- /dev/null +++ b/clients/client-transcribe/src/models/TranscribeServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Transcribe service. + */ +export class TranscribeServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TranscribeServiceException.prototype); + } +} diff --git a/clients/client-transcribe/src/models/models_0.ts b/clients/client-transcribe/src/models/models_0.ts index 472bacbb0ecef..0a56ee0b2e669 100644 --- a/clients/client-transcribe/src/models/models_0.ts +++ b/clients/client-transcribe/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TranscribeServiceException as __BaseException } from "./TranscribeServiceException"; /** *

A time range, set in seconds, between two points in the call.

@@ -67,10 +70,22 @@ export namespace AbsoluteTimeRange { * you're trying to delete doesn't exist or if it is in a non-terminal state (for example, it's * "in progress"). See the exception Message field for more information.

*/ -export interface BadRequestException extends __SmithyException, $MetadataBearer { - name: "BadRequestException"; - $fault: "client"; +export class BadRequestException extends __BaseException { + readonly name: "BadRequestException" = "BadRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "BadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, BadRequestException.prototype); + this.Message = opts.Message; + } } export enum BaseModelName { @@ -1014,10 +1029,22 @@ export enum CLMLanguageCode { /** *

There is already a resource with that name.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export interface CreateCallAnalyticsCategoryRequest { @@ -1066,20 +1093,44 @@ export namespace CreateCallAnalyticsCategoryResponse { /** *

There was an internal error. Check the error message and try your request again.

*/ -export interface InternalFailureException extends __SmithyException, $MetadataBearer { - name: "InternalFailureException"; - $fault: "server"; +export class InternalFailureException extends __BaseException { + readonly name: "InternalFailureException" = "InternalFailureException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalFailureException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalFailureException.prototype); + this.Message = opts.Message; + } } /** *

Either you have sent too many requests or your input file is too long. Wait before you * resend your request, or use a smaller file and resend the request.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -1529,10 +1580,22 @@ export namespace DeleteCallAnalyticsCategoryResponse { /** *

We can't find the requested resource. Check the name and try your request again.

*/ -export interface NotFoundException extends __SmithyException, $MetadataBearer { - name: "NotFoundException"; - $fault: "client"; +export class NotFoundException extends __BaseException { + readonly name: "NotFoundException" = "NotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteCallAnalyticsJobRequest { diff --git a/clients/client-transcribe/src/protocols/Aws_json1_1.ts b/clients/client-transcribe/src/protocols/Aws_json1_1.ts index c0b2e261775fc..3349e1316ac6c 100644 --- a/clients/client-transcribe/src/protocols/Aws_json1_1.ts +++ b/clients/client-transcribe/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -13,10 +14,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -266,6 +265,7 @@ import { VocabularyFilterInfo, VocabularyInfo, } from "../models/models_0"; +import { TranscribeServiceException as __BaseException } from "../models/TranscribeServiceException"; export const serializeAws_json1_1CreateCallAnalyticsCategoryCommand = async ( input: CreateCallAnalyticsCategoryCommandInput, @@ -799,57 +799,31 @@ const deserializeAws_json1_1CreateCallAnalyticsCategoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateLanguageModelCommand = async ( @@ -877,57 +851,31 @@ const deserializeAws_json1_1CreateLanguageModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMedicalVocabularyCommand = async ( @@ -955,57 +903,31 @@ const deserializeAws_json1_1CreateMedicalVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVocabularyCommand = async ( @@ -1033,57 +955,31 @@ const deserializeAws_json1_1CreateVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateVocabularyFilterCommand = async ( @@ -1111,57 +1007,31 @@ const deserializeAws_json1_1CreateVocabularyFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCallAnalyticsCategoryCommand = async ( @@ -1189,57 +1059,31 @@ const deserializeAws_json1_1DeleteCallAnalyticsCategoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteCallAnalyticsJobCommand = async ( @@ -1267,49 +1111,28 @@ const deserializeAws_json1_1DeleteCallAnalyticsJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLanguageModelCommand = async ( @@ -1334,49 +1157,28 @@ const deserializeAws_json1_1DeleteLanguageModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMedicalTranscriptionJobCommand = async ( @@ -1401,49 +1203,28 @@ const deserializeAws_json1_1DeleteMedicalTranscriptionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMedicalVocabularyCommand = async ( @@ -1468,57 +1249,31 @@ const deserializeAws_json1_1DeleteMedicalVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTranscriptionJobCommand = async ( @@ -1543,49 +1298,28 @@ const deserializeAws_json1_1DeleteTranscriptionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVocabularyCommand = async ( @@ -1610,57 +1344,31 @@ const deserializeAws_json1_1DeleteVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteVocabularyFilterCommand = async ( @@ -1685,57 +1393,31 @@ const deserializeAws_json1_1DeleteVocabularyFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeLanguageModelCommand = async ( @@ -1763,57 +1445,31 @@ const deserializeAws_json1_1DescribeLanguageModelCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCallAnalyticsCategoryCommand = async ( @@ -1841,57 +1497,31 @@ const deserializeAws_json1_1GetCallAnalyticsCategoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetCallAnalyticsJobCommand = async ( @@ -1919,57 +1549,31 @@ const deserializeAws_json1_1GetCallAnalyticsJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMedicalTranscriptionJobCommand = async ( @@ -1997,57 +1601,31 @@ const deserializeAws_json1_1GetMedicalTranscriptionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMedicalVocabularyCommand = async ( @@ -2075,57 +1653,31 @@ const deserializeAws_json1_1GetMedicalVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTranscriptionJobCommand = async ( @@ -2153,57 +1705,31 @@ const deserializeAws_json1_1GetTranscriptionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetVocabularyCommand = async ( @@ -2231,57 +1757,31 @@ const deserializeAws_json1_1GetVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetVocabularyFilterCommand = async ( @@ -2309,57 +1809,31 @@ const deserializeAws_json1_1GetVocabularyFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCallAnalyticsCategoriesCommand = async ( @@ -2387,49 +1861,28 @@ const deserializeAws_json1_1ListCallAnalyticsCategoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListCallAnalyticsJobsCommand = async ( @@ -2457,49 +1910,28 @@ const deserializeAws_json1_1ListCallAnalyticsJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLanguageModelsCommand = async ( @@ -2527,49 +1959,28 @@ const deserializeAws_json1_1ListLanguageModelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMedicalTranscriptionJobsCommand = async ( @@ -2597,49 +2008,28 @@ const deserializeAws_json1_1ListMedicalTranscriptionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMedicalVocabulariesCommand = async ( @@ -2667,49 +2057,28 @@ const deserializeAws_json1_1ListMedicalVocabulariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2737,57 +2106,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTranscriptionJobsCommand = async ( @@ -2815,49 +2158,28 @@ const deserializeAws_json1_1ListTranscriptionJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVocabulariesCommand = async ( @@ -2885,49 +2207,28 @@ const deserializeAws_json1_1ListVocabulariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListVocabularyFiltersCommand = async ( @@ -2955,49 +2256,28 @@ const deserializeAws_json1_1ListVocabularyFiltersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartCallAnalyticsJobCommand = async ( @@ -3025,57 +2305,31 @@ const deserializeAws_json1_1StartCallAnalyticsJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMedicalTranscriptionJobCommand = async ( @@ -3103,57 +2357,31 @@ const deserializeAws_json1_1StartMedicalTranscriptionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTranscriptionJobCommand = async ( @@ -3181,57 +2409,31 @@ const deserializeAws_json1_1StartTranscriptionJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -3259,65 +2461,34 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -3345,65 +2516,34 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateCallAnalyticsCategoryCommand = async ( @@ -3431,65 +2571,34 @@ const deserializeAws_json1_1UpdateCallAnalyticsCategoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMedicalVocabularyCommand = async ( @@ -3517,65 +2626,34 @@ const deserializeAws_json1_1UpdateMedicalVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVocabularyCommand = async ( @@ -3603,65 +2681,34 @@ const deserializeAws_json1_1UpdateVocabularyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transcribe#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateVocabularyFilterCommand = async ( @@ -3689,57 +2736,31 @@ const deserializeAws_json1_1UpdateVocabularyFilterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "BadRequestException": case "com.amazonaws.transcribe#BadRequestException": - response = { - ...(await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1BadRequestExceptionResponse(parsedOutput, context); case "InternalFailureException": case "com.amazonaws.transcribe#InternalFailureException": - response = { - ...(await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalFailureExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.transcribe#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NotFoundException": case "com.amazonaws.transcribe#NotFoundException": - response = { - ...(await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1BadRequestExceptionResponse = async ( @@ -3748,13 +2769,11 @@ const deserializeAws_json1_1BadRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1BadRequestException(body, context); - const contents: BadRequestException = { - name: "BadRequestException", - $fault: "client", + const exception = new BadRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -3763,13 +2782,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalFailureExceptionResponse = async ( @@ -3778,13 +2795,11 @@ const deserializeAws_json1_1InternalFailureExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalFailureException(body, context); - const contents: InternalFailureException = { - name: "InternalFailureException", - $fault: "server", + const exception = new InternalFailureException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -3793,13 +2808,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NotFoundExceptionResponse = async ( @@ -3808,13 +2821,11 @@ const deserializeAws_json1_1NotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NotFoundException(body, context); - const contents: NotFoundException = { - name: "NotFoundException", - $fault: "client", + const exception = new NotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AbsoluteTimeRange = (input: AbsoluteTimeRange, context: __SerdeContext): any => { diff --git a/clients/client-transfer/src/index.ts b/clients/client-transfer/src/index.ts index 4001c8743eaa3..4ecf9c95ec366 100644 --- a/clients/client-transfer/src/index.ts +++ b/clients/client-transfer/src/index.ts @@ -3,3 +3,4 @@ export * from "./TransferClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { TransferServiceException } from "./models/TransferServiceException"; diff --git a/clients/client-transfer/src/models/TransferServiceException.ts b/clients/client-transfer/src/models/TransferServiceException.ts new file mode 100644 index 0000000000000..64283872e969b --- /dev/null +++ b/clients/client-transfer/src/models/TransferServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Transfer service. + */ +export class TransferServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TransferServiceException.prototype); + } +} diff --git a/clients/client-transfer/src/models/models_0.ts b/clients/client-transfer/src/models/models_0.ts index f82ed6199fb1e..2304e796be426 100644 --- a/clients/client-transfer/src/models/models_0.ts +++ b/clients/client-transfer/src/models/models_0.ts @@ -1,13 +1,27 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TransferServiceException as __BaseException } from "./TransferServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -15,10 +29,22 @@ export interface AccessDeniedException extends __SmithyException, $MetadataBeare * protocol-enabled server that has VPC as the endpoint type and the server's * VpcEndpointID is not in the available state.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } /** @@ -357,51 +383,115 @@ export namespace CreateAccessResponse { /** *

This exception is thrown when an error occurs in the Amazon Web ServicesTransfer Family service.

*/ -export interface InternalServiceError extends __SmithyException, $MetadataBearer { - name: "InternalServiceError"; - $fault: "server"; +export class InternalServiceError extends __BaseException { + readonly name: "InternalServiceError" = "InternalServiceError"; + readonly $fault: "server" = "server"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServiceError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServiceError.prototype); + this.Message = opts.Message; + } } /** *

This exception is thrown when the client submits a malformed request.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource does not exist.

*/ -export interface ResourceExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceExistsException"; - $fault: "client"; +export class ResourceExistsException extends __BaseException { + readonly name: "ResourceExistsException" = "ResourceExistsException"; + readonly $fault: "client" = "client"; Message: string | undefined; Resource: string | undefined; ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceExistsException.prototype); + this.Message = opts.Message; + this.Resource = opts.Resource; + this.ResourceType = opts.ResourceType; + } } /** *

This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer Family * service.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message: string | undefined; Resource: string | undefined; ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.Resource = opts.Resource; + this.ResourceType = opts.ResourceType; + } } /** *

The request has failed because the Amazon Web ServicesTransfer Family service is not available.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } export enum Domain { @@ -936,10 +1026,22 @@ export namespace CreateServerResponse { * *

HTTP Status Code: 400

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; RetryAfterSeconds?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.RetryAfterSeconds = opts.RetryAfterSeconds; + } } export interface CreateUserRequest { @@ -2555,10 +2657,22 @@ export namespace ImportSshPublicKeyResponse { /** *

The NextToken parameter that was passed is invalid.

*/ -export interface InvalidNextTokenException extends __SmithyException, $MetadataBearer { - name: "InvalidNextTokenException"; - $fault: "client"; +export class InvalidNextTokenException extends __BaseException { + readonly name: "InvalidNextTokenException" = "InvalidNextTokenException"; + readonly $fault: "client" = "client"; Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidNextTokenException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidNextTokenException.prototype); + this.Message = opts.Message; + } } export interface ListAccessesRequest { diff --git a/clients/client-transfer/src/protocols/Aws_json1_1.ts b/clients/client-transfer/src/protocols/Aws_json1_1.ts index eab4ddf6a7206..3da51fb49dd4a 100644 --- a/clients/client-transfer/src/protocols/Aws_json1_1.ts +++ b/clients/client-transfer/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateAccessCommandInput, CreateAccessCommandOutput } from "../commands/CreateAccessCommand"; @@ -168,6 +167,7 @@ import { WorkflowDetails, WorkflowStep, } from "../models/models_0"; +import { TransferServiceException as __BaseException } from "../models/TransferServiceException"; export const serializeAws_json1_1CreateAccessCommand = async ( input: CreateAccessCommandInput, @@ -610,65 +610,34 @@ const deserializeAws_json1_1CreateAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateServerCommand = async ( @@ -696,81 +665,40 @@ const deserializeAws_json1_1CreateServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.transfer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserCommand = async ( @@ -798,65 +726,34 @@ const deserializeAws_json1_1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkflowCommand = async ( @@ -884,73 +781,37 @@ const deserializeAws_json1_1CreateWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.transfer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAccessCommand = async ( @@ -975,57 +836,31 @@ const deserializeAws_json1_1DeleteAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteServerCommand = async ( @@ -1050,65 +885,34 @@ const deserializeAws_json1_1DeleteServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.transfer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSshPublicKeyCommand = async ( @@ -1133,65 +937,34 @@ const deserializeAws_json1_1DeleteSshPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserCommand = async ( @@ -1216,57 +989,31 @@ const deserializeAws_json1_1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkflowCommand = async ( @@ -1291,65 +1038,34 @@ const deserializeAws_json1_1DeleteWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.transfer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccessCommand = async ( @@ -1377,57 +1093,31 @@ const deserializeAws_json1_1DescribeAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeExecutionCommand = async ( @@ -1455,57 +1145,31 @@ const deserializeAws_json1_1DescribeExecutionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeSecurityPolicyCommand = async ( @@ -1533,57 +1197,31 @@ const deserializeAws_json1_1DescribeSecurityPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeServerCommand = async ( @@ -1611,57 +1249,31 @@ const deserializeAws_json1_1DescribeServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserCommand = async ( @@ -1689,57 +1301,31 @@ const deserializeAws_json1_1DescribeUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkflowCommand = async ( @@ -1767,57 +1353,31 @@ const deserializeAws_json1_1DescribeWorkflowCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportSshPublicKeyCommand = async ( @@ -1845,73 +1405,37 @@ const deserializeAws_json1_1ImportSshPublicKeyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccessesCommand = async ( @@ -1939,65 +1463,34 @@ const deserializeAws_json1_1ListAccessesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListExecutionsCommand = async ( @@ -2025,65 +1518,34 @@ const deserializeAws_json1_1ListExecutionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSecurityPoliciesCommand = async ( @@ -2111,57 +1573,31 @@ const deserializeAws_json1_1ListSecurityPoliciesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListServersCommand = async ( @@ -2189,57 +1625,31 @@ const deserializeAws_json1_1ListServersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -2267,57 +1677,31 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUsersCommand = async ( @@ -2345,65 +1729,34 @@ const deserializeAws_json1_1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWorkflowsCommand = async ( @@ -2431,57 +1784,31 @@ const deserializeAws_json1_1ListWorkflowsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidNextTokenException": case "com.amazonaws.transfer#InvalidNextTokenException": - response = { - ...(await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidNextTokenExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SendWorkflowStepStateCommand = async ( @@ -2509,73 +1836,37 @@ const deserializeAws_json1_1SendWorkflowStepStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.transfer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartServerCommand = async ( @@ -2600,65 +1891,34 @@ const deserializeAws_json1_1StartServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopServerCommand = async ( @@ -2683,65 +1943,34 @@ const deserializeAws_json1_1StopServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -2766,57 +1995,31 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TestIdentityProviderCommand = async ( @@ -2844,57 +2047,31 @@ const deserializeAws_json1_1TestIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -2919,57 +2096,31 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateAccessCommand = async ( @@ -2997,65 +2148,34 @@ const deserializeAws_json1_1UpdateAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateServerCommand = async ( @@ -3083,89 +2203,43 @@ const deserializeAws_json1_1UpdateServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.transfer#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.transfer#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceExistsException": case "com.amazonaws.transfer#ResourceExistsException": - response = { - ...(await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateUserCommand = async ( @@ -3193,65 +2267,34 @@ const deserializeAws_json1_1UpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServiceError": case "com.amazonaws.transfer#InternalServiceError": - response = { - ...(await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServiceErrorResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.transfer#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.transfer#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.transfer#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.transfer#ThrottlingException": - response = { - ...(await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ThrottlingExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -3260,13 +2303,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -3275,13 +2316,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServiceErrorResponse = async ( @@ -3290,13 +2329,11 @@ const deserializeAws_json1_1InternalServiceErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServiceError(body, context); - const contents: InternalServiceError = { - name: "InternalServiceError", - $fault: "server", + const exception = new InternalServiceError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( @@ -3305,13 +2342,11 @@ const deserializeAws_json1_1InvalidNextTokenExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidNextTokenException(body, context); - const contents: InvalidNextTokenException = { - name: "InvalidNextTokenException", - $fault: "client", + const exception = new InvalidNextTokenException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -3320,13 +2355,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceExistsExceptionResponse = async ( @@ -3335,13 +2368,11 @@ const deserializeAws_json1_1ResourceExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceExistsException(body, context); - const contents: ResourceExistsException = { - name: "ResourceExistsException", - $fault: "client", + const exception = new ResourceExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -3350,13 +2381,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -3365,13 +2394,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ThrottlingExceptionResponse = async ( @@ -3380,13 +2407,11 @@ const deserializeAws_json1_1ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1AddressAllocationIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-translate/src/index.ts b/clients/client-translate/src/index.ts index 63537b8c955ec..c8cc92e8918b5 100644 --- a/clients/client-translate/src/index.ts +++ b/clients/client-translate/src/index.ts @@ -3,3 +3,4 @@ export * from "./TranslateClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { TranslateServiceException } from "./models/TranslateServiceException"; diff --git a/clients/client-translate/src/models/TranslateServiceException.ts b/clients/client-translate/src/models/TranslateServiceException.ts new file mode 100644 index 0000000000000..bc849bea14267 --- /dev/null +++ b/clients/client-translate/src/models/TranslateServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Translate service. + */ +export class TranslateServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, TranslateServiceException.prototype); + } +} diff --git a/clients/client-translate/src/models/models_0.ts b/clients/client-translate/src/models/models_0.ts index 96850641bca3c..77bfee37506d5 100644 --- a/clients/client-translate/src/models/models_0.ts +++ b/clients/client-translate/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { TranslateServiceException as __BaseException } from "./TranslateServiceException"; /** *

The term being translated by the custom terminology.

@@ -58,10 +60,22 @@ export namespace AppliedTerminology { /** *

There was a conflict processing the request. Try your request again.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + } } export enum EncryptionKeyType { @@ -194,60 +208,132 @@ export namespace CreateParallelDataResponse { /** *

An internal server error occurred. Retry your request.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The value of the parameter is invalid. Review the value of the parameter you are using to * correct it, and then retry your operation.

*/ -export interface InvalidParameterValueException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValueException"; - $fault: "client"; +export class InvalidParameterValueException extends __BaseException { + readonly name: "InvalidParameterValueException" = "InvalidParameterValueException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValueException.prototype); + this.Message = opts.Message; + } } /** *

The request that you made is invalid. Check your request to determine why it's invalid * and then retry the request.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The specified limit has been exceeded. Review your request and retry it with a quantity * below the stated limit.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

You have made too many requests within a short period of time. Wait for a short time and * then try your request again.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** *

Another modification is being made. That modification must complete before you can make * your change.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } export interface DeleteParallelDataRequest { @@ -292,10 +378,22 @@ export namespace DeleteParallelDataResponse { * for and see if a different resource will accomplish your needs before retrying the revised * request.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DeleteTerminologyRequest { @@ -1232,10 +1330,22 @@ export namespace ListTerminologiesResponse { /** *

The filter specified for the operation is invalid. Specify a different filter.

*/ -export interface InvalidFilterException extends __SmithyException, $MetadataBearer { - name: "InvalidFilterException"; - $fault: "client"; +export class InvalidFilterException extends __BaseException { + readonly name: "InvalidFilterException" = "InvalidFilterException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidFilterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidFilterException.prototype); + this.Message = opts.Message; + } } /** @@ -1467,9 +1577,9 @@ export namespace StartTextTranslationJobResponse { *

Amazon Translate does not support translation from the language of the source text into the requested * target language. For more information, see how-to-error-msg.

*/ -export interface UnsupportedLanguagePairException extends __SmithyException, $MetadataBearer { - name: "UnsupportedLanguagePairException"; - $fault: "client"; +export class UnsupportedLanguagePairException extends __BaseException { + readonly name: "UnsupportedLanguagePairException" = "UnsupportedLanguagePairException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The language code for the language of the input text.

@@ -1480,6 +1590,20 @@ export interface UnsupportedLanguagePairException extends __SmithyException, $Me *

The language code for the language of the translated text.

*/ TargetLanguageCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedLanguagePairException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedLanguagePairException.prototype); + this.Message = opts.Message; + this.SourceLanguageCode = opts.SourceLanguageCode; + this.TargetLanguageCode = opts.TargetLanguageCode; + } } export interface StopTextTranslationJobRequest { @@ -1526,34 +1650,71 @@ export namespace StopTextTranslationJobResponse { * exception to call Amazon Translate again. For more information, see the DetectDominantLanguage operation in the Amazon Comprehend Developer * Guide.

*/ -export interface DetectedLanguageLowConfidenceException extends __SmithyException, $MetadataBearer { - name: "DetectedLanguageLowConfidenceException"; - $fault: "client"; +export class DetectedLanguageLowConfidenceException extends __BaseException { + readonly name: "DetectedLanguageLowConfidenceException" = "DetectedLanguageLowConfidenceException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The language code of the auto-detected language from Amazon Comprehend.

*/ DetectedLanguageCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DetectedLanguageLowConfidenceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DetectedLanguageLowConfidenceException.prototype); + this.Message = opts.Message; + this.DetectedLanguageCode = opts.DetectedLanguageCode; + } } /** *

The Amazon Translate service is temporarily unavailable. Please wait a bit and then retry your * request.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The size of the text you submitted exceeds the size limit. Reduce the size of the text or * use a smaller document and then retry your request.

*/ -export interface TextSizeLimitExceededException extends __SmithyException, $MetadataBearer { - name: "TextSizeLimitExceededException"; - $fault: "client"; +export class TextSizeLimitExceededException extends __BaseException { + readonly name: "TextSizeLimitExceededException" = "TextSizeLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TextSizeLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TextSizeLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface TranslateTextRequest { diff --git a/clients/client-translate/src/protocols/Aws_json1_1.ts b/clients/client-translate/src/protocols/Aws_json1_1.ts index f26fb8dd05298..ce355bb30c4dd 100644 --- a/clients/client-translate/src/protocols/Aws_json1_1.ts +++ b/clients/client-translate/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -100,6 +99,7 @@ import { UpdateParallelDataRequest, UpdateParallelDataResponse, } from "../models/models_0"; +import { TranslateServiceException as __BaseException } from "../models/TranslateServiceException"; export const serializeAws_json1_1CreateParallelDataCommand = async ( input: CreateParallelDataCommandInput, @@ -308,73 +308,37 @@ const deserializeAws_json1_1CreateParallelDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.translate#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.translate#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.translate#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteParallelDataCommand = async ( @@ -402,57 +366,31 @@ const deserializeAws_json1_1DeleteParallelDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.translate#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTerminologyCommand = async ( @@ -477,57 +415,31 @@ const deserializeAws_json1_1DeleteTerminologyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTextTranslationJobCommand = async ( @@ -555,49 +467,28 @@ const deserializeAws_json1_1DescribeTextTranslationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetParallelDataCommand = async ( @@ -625,57 +516,31 @@ const deserializeAws_json1_1GetParallelDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetTerminologyCommand = async ( @@ -703,57 +568,31 @@ const deserializeAws_json1_1GetTerminologyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportTerminologyCommand = async ( @@ -781,57 +620,31 @@ const deserializeAws_json1_1ImportTerminologyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.translate#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListParallelDataCommand = async ( @@ -859,49 +672,28 @@ const deserializeAws_json1_1ListParallelDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTerminologiesCommand = async ( @@ -929,49 +721,28 @@ const deserializeAws_json1_1ListTerminologiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTextTranslationJobsCommand = async ( @@ -999,57 +770,31 @@ const deserializeAws_json1_1ListTextTranslationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidFilterException": case "com.amazonaws.translate#InvalidFilterException": - response = { - ...(await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidFilterExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.translate#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartTextTranslationJobCommand = async ( @@ -1077,73 +822,37 @@ const deserializeAws_json1_1StartTextTranslationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.translate#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedLanguagePairException": case "com.amazonaws.translate#UnsupportedLanguagePairException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguagePairExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguagePairExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopTextTranslationJobCommand = async ( @@ -1171,49 +880,28 @@ const deserializeAws_json1_1StopTextTranslationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TranslateTextCommand = async ( @@ -1241,89 +929,43 @@ const deserializeAws_json1_1TranslateTextCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DetectedLanguageLowConfidenceException": case "com.amazonaws.translate#DetectedLanguageLowConfidenceException": - response = { - ...(await deserializeAws_json1_1DetectedLanguageLowConfidenceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DetectedLanguageLowConfidenceExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.translate#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.translate#ServiceUnavailableException": - response = { - ...(await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TextSizeLimitExceededException": case "com.amazonaws.translate#TextSizeLimitExceededException": - response = { - ...(await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TextSizeLimitExceededExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnsupportedLanguagePairException": case "com.amazonaws.translate#UnsupportedLanguagePairException": - response = { - ...(await deserializeAws_json1_1UnsupportedLanguagePairExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedLanguagePairExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateParallelDataCommand = async ( @@ -1351,89 +993,43 @@ const deserializeAws_json1_1UpdateParallelDataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.translate#ConcurrentModificationException": - response = { - ...(await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.translate#ConflictException": - response = { - ...(await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.translate#InternalServerException": - response = { - ...(await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InternalServerExceptionResponse(parsedOutput, context); case "InvalidParameterValueException": case "com.amazonaws.translate#InvalidParameterValueException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValueExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.translate#InvalidRequestException": - response = { - ...(await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidRequestExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.translate#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.translate#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.translate#TooManyRequestsException": - response = { - ...(await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyRequestsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( @@ -1442,13 +1038,11 @@ const deserializeAws_json1_1ConcurrentModificationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConcurrentModificationException(body, context); - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", + const exception = new ConcurrentModificationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ConflictExceptionResponse = async ( @@ -1457,13 +1051,11 @@ const deserializeAws_json1_1ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DetectedLanguageLowConfidenceExceptionResponse = async ( @@ -1472,13 +1064,11 @@ const deserializeAws_json1_1DetectedLanguageLowConfidenceExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DetectedLanguageLowConfidenceException(body, context); - const contents: DetectedLanguageLowConfidenceException = { - name: "DetectedLanguageLowConfidenceException", - $fault: "client", + const exception = new DetectedLanguageLowConfidenceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InternalServerExceptionResponse = async ( @@ -1487,13 +1077,11 @@ const deserializeAws_json1_1InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidFilterExceptionResponse = async ( @@ -1502,13 +1090,11 @@ const deserializeAws_json1_1InvalidFilterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidFilterException(body, context); - const contents: InvalidFilterException = { - name: "InvalidFilterException", - $fault: "client", + const exception = new InvalidFilterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( @@ -1517,13 +1103,11 @@ const deserializeAws_json1_1InvalidParameterValueExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValueException(body, context); - const contents: InvalidParameterValueException = { - name: "InvalidParameterValueException", - $fault: "client", + const exception = new InvalidParameterValueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( @@ -1532,13 +1116,11 @@ const deserializeAws_json1_1InvalidRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidRequestException(body, context); - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", + const exception = new InvalidRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -1547,13 +1129,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -1562,13 +1142,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( @@ -1577,13 +1155,11 @@ const deserializeAws_json1_1ServiceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ServiceUnavailableException(body, context); - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", + const exception = new ServiceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TextSizeLimitExceededExceptionResponse = async ( @@ -1592,13 +1168,11 @@ const deserializeAws_json1_1TextSizeLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TextSizeLimitExceededException(body, context); - const contents: TextSizeLimitExceededException = { - name: "TextSizeLimitExceededException", - $fault: "client", + const exception = new TextSizeLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( @@ -1607,13 +1181,11 @@ const deserializeAws_json1_1TooManyRequestsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyRequestsException(body, context); - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", + const exception = new TooManyRequestsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedLanguagePairExceptionResponse = async ( @@ -1622,13 +1194,11 @@ const deserializeAws_json1_1UnsupportedLanguagePairExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedLanguagePairException(body, context); - const contents: UnsupportedLanguagePairException = { - name: "UnsupportedLanguagePairException", - $fault: "client", + const exception = new UnsupportedLanguagePairException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1CreateParallelDataRequest = ( diff --git a/clients/client-voice-id/src/index.ts b/clients/client-voice-id/src/index.ts index 6aa6c712c14f9..8ee971c723060 100644 --- a/clients/client-voice-id/src/index.ts +++ b/clients/client-voice-id/src/index.ts @@ -3,3 +3,4 @@ export * from "./VoiceIDClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { VoiceIDServiceException } from "./models/VoiceIDServiceException"; diff --git a/clients/client-voice-id/src/models/VoiceIDServiceException.ts b/clients/client-voice-id/src/models/VoiceIDServiceException.ts new file mode 100644 index 0000000000000..380339364a0cd --- /dev/null +++ b/clients/client-voice-id/src/models/VoiceIDServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from VoiceID service. + */ +export class VoiceIDServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, VoiceIDServiceException.prototype); + } +} diff --git a/clients/client-voice-id/src/models/models_0.ts b/clients/client-voice-id/src/models/models_0.ts index cb573568deffb..d250d92b9012d 100644 --- a/clients/client-voice-id/src/models/models_0.ts +++ b/clients/client-voice-id/src/models/models_0.ts @@ -1,14 +1,28 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { VoiceIDServiceException as __BaseException } from "./VoiceIDServiceException"; /** *

You do not have sufficient permissions to perform this action. Check the error message and try * again.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } /** @@ -116,9 +130,9 @@ export enum ConflictType { *

The request failed due to a conflict. Check the ConflictType and error message for * more details.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of conflict which caused a ConflictException. Possible types and the corresponding error messages @@ -151,6 +165,19 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { * */ ConflictType?: ConflictType | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ConflictType = opts.ConflictType; + } } /** @@ -329,10 +356,22 @@ export namespace CreateDomainResponse { /** *

The request failed due to an unknown error on the server side.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } export enum ResourceType { @@ -348,25 +387,50 @@ export enum ResourceType { *

The specified resource cannot be found. Check the ResourceType and error message for * more details.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; /** *

The type of resource which cannot not be found. Possible types are BATCH_JOB, COMPLIANCE_CONSENT, * DOMAIN, FRAUDSTER, SESSION and SPEAKER.

*/ ResourceType?: ResourceType | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + } } /** *

The request exceeded the service quota. Refer to Voice ID Service * Quotas and try your request again.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + } } /** @@ -375,19 +439,43 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad * Amazon Connect Voice ID Service API throttling quotas * and try your request again.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + } } /** *

The request failed one or more validations; check the error message for more details.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + } } export interface DeleteDomainRequest { diff --git a/clients/client-voice-id/src/protocols/Aws_json1_0.ts b/clients/client-voice-id/src/protocols/Aws_json1_0.ts index 70f5499a52405..56f24ea922f09 100644 --- a/clients/client-voice-id/src/protocols/Aws_json1_0.ts +++ b/clients/client-voice-id/src/protocols/Aws_json1_0.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -9,10 +10,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -131,6 +130,7 @@ import { UpdateDomainResponse, ValidationException, } from "../models/models_0"; +import { VoiceIDServiceException as __BaseException } from "../models/VoiceIDServiceException"; export const serializeAws_json1_0CreateDomainCommand = async ( input: CreateDomainCommandInput, @@ -430,81 +430,40 @@ const deserializeAws_json1_0CreateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.voiceid#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteDomainCommand = async ( @@ -529,73 +488,37 @@ const deserializeAws_json1_0DeleteDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteFraudsterCommand = async ( @@ -620,65 +543,34 @@ const deserializeAws_json1_0DeleteFraudsterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DeleteSpeakerCommand = async ( @@ -703,73 +595,37 @@ const deserializeAws_json1_0DeleteSpeakerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeDomainCommand = async ( @@ -797,65 +653,34 @@ const deserializeAws_json1_0DescribeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFraudsterCommand = async ( @@ -883,65 +708,34 @@ const deserializeAws_json1_0DescribeFraudsterCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeFraudsterRegistrationJobCommand = async ( @@ -969,65 +763,34 @@ const deserializeAws_json1_0DescribeFraudsterRegistrationJobCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeSpeakerCommand = async ( @@ -1055,65 +818,34 @@ const deserializeAws_json1_0DescribeSpeakerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0DescribeSpeakerEnrollmentJobCommand = async ( @@ -1141,65 +873,34 @@ const deserializeAws_json1_0DescribeSpeakerEnrollmentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0EvaluateSessionCommand = async ( @@ -1227,65 +928,34 @@ const deserializeAws_json1_0EvaluateSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListDomainsCommand = async ( @@ -1313,57 +983,31 @@ const deserializeAws_json1_0ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListFraudsterRegistrationJobsCommand = async ( @@ -1391,65 +1035,34 @@ const deserializeAws_json1_0ListFraudsterRegistrationJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListSpeakerEnrollmentJobsCommand = async ( @@ -1477,65 +1090,34 @@ const deserializeAws_json1_0ListSpeakerEnrollmentJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListSpeakersCommand = async ( @@ -1563,65 +1145,34 @@ const deserializeAws_json1_0ListSpeakersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0ListTagsForResourceCommand = async ( @@ -1649,65 +1200,34 @@ const deserializeAws_json1_0ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0OptOutSpeakerCommand = async ( @@ -1735,73 +1255,37 @@ const deserializeAws_json1_0OptOutSpeakerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartFraudsterRegistrationJobCommand = async ( @@ -1829,81 +1313,40 @@ const deserializeAws_json1_0StartFraudsterRegistrationJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.voiceid#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0StartSpeakerEnrollmentJobCommand = async ( @@ -1931,81 +1374,40 @@ const deserializeAws_json1_0StartSpeakerEnrollmentJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.voiceid#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0TagResourceCommand = async ( @@ -2033,73 +1435,37 @@ const deserializeAws_json1_0TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UntagResourceCommand = async ( @@ -2127,73 +1493,37 @@ const deserializeAws_json1_0UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0UpdateDomainCommand = async ( @@ -2221,73 +1551,37 @@ const deserializeAws_json1_0UpdateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.voiceid#AccessDeniedException": - response = { - ...(await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.voiceid#ConflictException": - response = { - ...(await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.voiceid#InternalServerException": - response = { - ...(await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.voiceid#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.voiceid#ThrottlingException": - response = { - ...(await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.voiceid#ValidationException": - response = { - ...(await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( @@ -2296,13 +1590,11 @@ const deserializeAws_json1_0AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ConflictExceptionResponse = async ( @@ -2311,13 +1603,11 @@ const deserializeAws_json1_0ConflictExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ConflictException(body, context); - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", + const exception = new ConflictException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InternalServerExceptionResponse = async ( @@ -2326,13 +1616,11 @@ const deserializeAws_json1_0InternalServerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InternalServerException(body, context); - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", + const exception = new InternalServerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( @@ -2341,13 +1629,11 @@ const deserializeAws_json1_0ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( @@ -2356,13 +1642,11 @@ const deserializeAws_json1_0ServiceQuotaExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ServiceQuotaExceededException(body, context); - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", + const exception = new ServiceQuotaExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ThrottlingExceptionResponse = async ( @@ -2371,13 +1655,11 @@ const deserializeAws_json1_0ThrottlingExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ThrottlingException(body, context); - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", + const exception = new ThrottlingException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0ValidationExceptionResponse = async ( @@ -2386,13 +1668,11 @@ const deserializeAws_json1_0ValidationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ValidationException(body, context); - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", + const exception = new ValidationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0CreateDomainRequest = (input: CreateDomainRequest, context: __SerdeContext): any => { diff --git a/clients/client-waf-regional/src/index.ts b/clients/client-waf-regional/src/index.ts index 1c164f5e5808b..16ca02c623907 100644 --- a/clients/client-waf-regional/src/index.ts +++ b/clients/client-waf-regional/src/index.ts @@ -2,3 +2,4 @@ export * from "./WAFRegional"; export * from "./WAFRegionalClient"; export * from "./commands"; export * from "./models"; +export { WAFRegionalServiceException } from "./models/WAFRegionalServiceException"; diff --git a/clients/client-waf-regional/src/models/WAFRegionalServiceException.ts b/clients/client-waf-regional/src/models/WAFRegionalServiceException.ts new file mode 100644 index 0000000000000..17b25085bf1af --- /dev/null +++ b/clients/client-waf-regional/src/models/WAFRegionalServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WAFRegional service. + */ +export class WAFRegionalServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WAFRegionalServiceException.prototype); + } +} diff --git a/clients/client-waf-regional/src/models/models_0.ts b/clients/client-waf-regional/src/models/models_0.ts index 77c6f0b77a6fc..9f42a8165d7fd 100644 --- a/clients/client-waf-regional/src/models/models_0.ts +++ b/clients/client-waf-regional/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WAFRegionalServiceException as __BaseException } from "./WAFRegionalServiceException"; export enum WafActionType { ALLOW = "ALLOW", @@ -295,18 +298,39 @@ export namespace AssociateWebACLResponse { /** *

The operation failed because of a system problem, even though the request was valid. Retry your request.

*/ -export interface WAFInternalErrorException extends __SmithyException, $MetadataBearer { - name: "WAFInternalErrorException"; - $fault: "server"; - message?: string; +export class WAFInternalErrorException extends __BaseException { + readonly name: "WAFInternalErrorException" = "WAFInternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, WAFInternalErrorException.prototype); + } } /** *

The operation failed because you tried to create, update, or delete an object by using an invalid account identifier.

*/ -export interface WAFInvalidAccountException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidAccountException"; - $fault: "client"; +export class WAFInvalidAccountException extends __BaseException { + readonly name: "WAFInvalidAccountException" = "WAFInvalidAccountException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidAccountException.prototype); + } } export enum ParameterExceptionField { @@ -377,31 +401,65 @@ export enum ParameterExceptionReason { * * */ -export interface WAFInvalidParameterException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidParameterException"; - $fault: "client"; +export class WAFInvalidParameterException extends __BaseException { + readonly name: "WAFInvalidParameterException" = "WAFInvalidParameterException"; + readonly $fault: "client" = "client"; field?: ParameterExceptionField | string; parameter?: string; reason?: ParameterExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidParameterException.prototype); + this.field = opts.field; + this.parameter = opts.parameter; + this.reason = opts.reason; + } } /** *

The operation failed because the referenced object doesn't exist.

*/ -export interface WAFNonexistentItemException extends __SmithyException, $MetadataBearer { - name: "WAFNonexistentItemException"; - $fault: "client"; - message?: string; +export class WAFNonexistentItemException extends __BaseException { + readonly name: "WAFNonexistentItemException" = "WAFNonexistentItemException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonexistentItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonexistentItemException.prototype); + } } /** *

The operation failed because the entity * referenced is temporarily unavailable. Retry your request.

*/ -export interface WAFUnavailableEntityException extends __SmithyException, $MetadataBearer { - name: "WAFUnavailableEntityException"; - $fault: "client"; - message?: string; +export class WAFUnavailableEntityException extends __BaseException { + readonly name: "WAFUnavailableEntityException" = "WAFUnavailableEntityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFUnavailableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFUnavailableEntityException.prototype); + } } export interface CreateByteMatchSetRequest { @@ -840,10 +898,20 @@ export namespace CreateByteMatchSetResponse { /** *

The name specified is invalid.

*/ -export interface WAFDisallowedNameException extends __SmithyException, $MetadataBearer { - name: "WAFDisallowedNameException"; - $fault: "client"; - message?: string; +export class WAFDisallowedNameException extends __BaseException { + readonly name: "WAFDisallowedNameException" = "WAFDisallowedNameException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFDisallowedNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFDisallowedNameException.prototype); + } } /** @@ -851,19 +919,39 @@ export interface WAFDisallowedNameException extends __SmithyException, $Metadata * for an AWS account. For more information, see * Limits in the AWS WAF Developer Guide.

*/ -export interface WAFLimitsExceededException extends __SmithyException, $MetadataBearer { - name: "WAFLimitsExceededException"; - $fault: "client"; - message?: string; +export class WAFLimitsExceededException extends __BaseException { + readonly name: "WAFLimitsExceededException" = "WAFLimitsExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFLimitsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFLimitsExceededException.prototype); + } } /** *

The operation failed because you tried to create, update, or delete an object by using a change token that has already been used.

*/ -export interface WAFStaleDataException extends __SmithyException, $MetadataBearer { - name: "WAFStaleDataException"; - $fault: "client"; - message?: string; +export class WAFStaleDataException extends __BaseException { + readonly name: "WAFStaleDataException" = "WAFStaleDataException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFStaleDataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFStaleDataException.prototype); + } } export interface CreateGeoMatchSetRequest { @@ -1644,28 +1732,58 @@ export namespace CreateRateBasedRuleResponse { /** *

*/ -export interface WAFBadRequestException extends __SmithyException, $MetadataBearer { - name: "WAFBadRequestException"; - $fault: "client"; - message?: string; +export class WAFBadRequestException extends __BaseException { + readonly name: "WAFBadRequestException" = "WAFBadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFBadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFBadRequestException.prototype); + } } /** *

*/ -export interface WAFTagOperationException extends __SmithyException, $MetadataBearer { - name: "WAFTagOperationException"; - $fault: "client"; - message?: string; +export class WAFTagOperationException extends __BaseException { + readonly name: "WAFTagOperationException" = "WAFTagOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFTagOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFTagOperationException.prototype); + } } /** *

*/ -export interface WAFTagOperationInternalErrorException extends __SmithyException, $MetadataBearer { - name: "WAFTagOperationInternalErrorException"; - $fault: "server"; - message?: string; +export class WAFTagOperationInternalErrorException extends __BaseException { + readonly name: "WAFTagOperationInternalErrorException" = "WAFTagOperationInternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFTagOperationInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, WAFTagOperationInternalErrorException.prototype); + } } export interface CreateRegexMatchSetRequest { @@ -2931,12 +3049,24 @@ export enum MigrationErrorType { * * */ -export interface WAFEntityMigrationException extends __SmithyException, $MetadataBearer { - name: "WAFEntityMigrationException"; - $fault: "client"; - message?: string; +export class WAFEntityMigrationException extends __BaseException { + readonly name: "WAFEntityMigrationException" = "WAFEntityMigrationException"; + readonly $fault: "client" = "client"; MigrationErrorType?: MigrationErrorType | string; MigrationErrorReason?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFEntityMigrationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFEntityMigrationException.prototype); + this.MigrationErrorType = opts.MigrationErrorType; + this.MigrationErrorReason = opts.MigrationErrorReason; + } } /** @@ -2962,10 +3092,20 @@ export interface WAFEntityMigrationException extends __SmithyException, $Metadat * * */ -export interface WAFInvalidOperationException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidOperationException"; - $fault: "client"; - message?: string; +export class WAFInvalidOperationException extends __BaseException { + readonly name: "WAFInvalidOperationException" = "WAFInvalidOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidOperationException.prototype); + } } /** @@ -3245,10 +3385,20 @@ export namespace DeleteByteMatchSetResponse { * * */ -export interface WAFNonEmptyEntityException extends __SmithyException, $MetadataBearer { - name: "WAFNonEmptyEntityException"; - $fault: "client"; - message?: string; +export class WAFNonEmptyEntityException extends __BaseException { + readonly name: "WAFNonEmptyEntityException" = "WAFNonEmptyEntityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonEmptyEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonEmptyEntityException.prototype); + } } /** @@ -3262,10 +3412,20 @@ export interface WAFNonEmptyEntityException extends __SmithyException, $Metadata * * */ -export interface WAFReferencedItemException extends __SmithyException, $MetadataBearer { - name: "WAFReferencedItemException"; - $fault: "client"; - message?: string; +export class WAFReferencedItemException extends __BaseException { + readonly name: "WAFReferencedItemException" = "WAFReferencedItemException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFReferencedItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFReferencedItemException.prototype); + } } export interface DeleteGeoMatchSetRequest { @@ -6231,10 +6391,20 @@ export namespace PutLoggingConfigurationResponse { /** *

AWS WAF is not able to access the service linked role. This can be caused by a previous PutLoggingConfiguration request, which can lock the service linked role for about 20 seconds. Please try your request again. The service linked role can also be locked by a previous DeleteServiceLinkedRole request, which can lock the role for 15 minutes or more. If you recently made a DeleteServiceLinkedRole, wait at least 15 minutes and try the request again. If you receive this same exception again, you will have to wait additional time until the role is unlocked.

*/ -export interface WAFServiceLinkedRoleErrorException extends __SmithyException, $MetadataBearer { - name: "WAFServiceLinkedRoleErrorException"; - $fault: "client"; - message?: string; +export class WAFServiceLinkedRoleErrorException extends __BaseException { + readonly name: "WAFServiceLinkedRoleErrorException" = "WAFServiceLinkedRoleErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFServiceLinkedRoleErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFServiceLinkedRoleErrorException.prototype); + } } export interface PutPermissionPolicyRequest { @@ -6301,10 +6471,20 @@ export namespace PutPermissionPolicyResponse { * * */ -export interface WAFInvalidPermissionPolicyException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidPermissionPolicyException"; - $fault: "client"; - message?: string; +export class WAFInvalidPermissionPolicyException extends __BaseException { + readonly name: "WAFInvalidPermissionPolicyException" = "WAFInvalidPermissionPolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidPermissionPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidPermissionPolicyException.prototype); + } } export interface TagResourceRequest { @@ -6492,10 +6672,20 @@ export namespace UpdateByteMatchSetResponse { * * */ -export interface WAFNonexistentContainerException extends __SmithyException, $MetadataBearer { - name: "WAFNonexistentContainerException"; - $fault: "client"; - message?: string; +export class WAFNonexistentContainerException extends __BaseException { + readonly name: "WAFNonexistentContainerException" = "WAFNonexistentContainerException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonexistentContainerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonexistentContainerException.prototype); + } } /** @@ -6926,10 +7116,20 @@ export namespace UpdateRegexPatternSetResponse { /** *

The regular expression (regex) you specified in RegexPatternString is invalid.

*/ -export interface WAFInvalidRegexPatternException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidRegexPatternException"; - $fault: "client"; - message?: string; +export class WAFInvalidRegexPatternException extends __BaseException { + readonly name: "WAFInvalidRegexPatternException" = "WAFInvalidRegexPatternException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidRegexPatternException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidRegexPatternException.prototype); + } } export interface UpdateRuleRequest { @@ -7392,10 +7592,20 @@ export namespace UpdateWebACLResponse { /** *

The specified subscription does not exist.

*/ -export interface WAFSubscriptionNotFoundException extends __SmithyException, $MetadataBearer { - name: "WAFSubscriptionNotFoundException"; - $fault: "client"; - message?: string; +export class WAFSubscriptionNotFoundException extends __BaseException { + readonly name: "WAFSubscriptionNotFoundException" = "WAFSubscriptionNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFSubscriptionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFSubscriptionNotFoundException.prototype); + } } /** diff --git a/clients/client-waf-regional/src/protocols/Aws_json1_1.ts b/clients/client-waf-regional/src/protocols/Aws_json1_1.ts index 9eec2382a2407..567aca75010a9 100644 --- a/clients/client-waf-regional/src/protocols/Aws_json1_1.ts +++ b/clients/client-waf-regional/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssociateWebACLCommandInput, AssociateWebACLCommandOutput } from "../commands/AssociateWebACLCommand"; @@ -442,6 +441,7 @@ import { XssMatchSetUpdate, XssMatchTuple, } from "../models/models_0"; +import { WAFRegionalServiceException as __BaseException } from "../models/WAFRegionalServiceException"; export const serializeAws_json1_1AssociateWebACLCommand = async ( input: AssociateWebACLCommandInput, @@ -1521,65 +1521,34 @@ const deserializeAws_json1_1AssociateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafregional#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateByteMatchSetCommand = async ( @@ -1607,73 +1576,37 @@ const deserializeAws_json1_1CreateByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGeoMatchSetCommand = async ( @@ -1701,73 +1634,37 @@ const deserializeAws_json1_1CreateGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateIPSetCommand = async ( @@ -1795,73 +1692,37 @@ const deserializeAws_json1_1CreateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRateBasedRuleCommand = async ( @@ -1889,89 +1750,43 @@ const deserializeAws_json1_1CreateRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRegexMatchSetCommand = async ( @@ -1999,57 +1814,31 @@ const deserializeAws_json1_1CreateRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRegexPatternSetCommand = async ( @@ -2077,57 +1866,31 @@ const deserializeAws_json1_1CreateRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRuleCommand = async ( @@ -2155,89 +1918,43 @@ const deserializeAws_json1_1CreateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRuleGroupCommand = async ( @@ -2265,81 +1982,40 @@ const deserializeAws_json1_1CreateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSizeConstraintSetCommand = async ( @@ -2367,73 +2043,37 @@ const deserializeAws_json1_1CreateSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSqlInjectionMatchSetCommand = async ( @@ -2461,73 +2101,37 @@ const deserializeAws_json1_1CreateSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWebACLCommand = async ( @@ -2555,97 +2159,46 @@ const deserializeAws_json1_1CreateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWebACLMigrationStackCommand = async ( @@ -2673,65 +2226,34 @@ const deserializeAws_json1_1CreateWebACLMigrationStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFEntityMigrationException": case "com.amazonaws.wafregional#WAFEntityMigrationException": - response = { - ...(await deserializeAws_json1_1WAFEntityMigrationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFEntityMigrationExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateXssMatchSetCommand = async ( @@ -2759,73 +2281,37 @@ const deserializeAws_json1_1CreateXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteByteMatchSetCommand = async ( @@ -2853,73 +2339,37 @@ const deserializeAws_json1_1DeleteByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGeoMatchSetCommand = async ( @@ -2947,73 +2397,37 @@ const deserializeAws_json1_1DeleteGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIPSetCommand = async ( @@ -3041,73 +2455,37 @@ const deserializeAws_json1_1DeleteIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLoggingConfigurationCommand = async ( @@ -3135,49 +2513,28 @@ const deserializeAws_json1_1DeleteLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePermissionPolicyCommand = async ( @@ -3205,49 +2562,28 @@ const deserializeAws_json1_1DeletePermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRateBasedRuleCommand = async ( @@ -3275,89 +2611,43 @@ const deserializeAws_json1_1DeleteRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegexMatchSetCommand = async ( @@ -3385,73 +2675,37 @@ const deserializeAws_json1_1DeleteRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegexPatternSetCommand = async ( @@ -3479,73 +2733,37 @@ const deserializeAws_json1_1DeleteRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleCommand = async ( @@ -3573,89 +2791,43 @@ const deserializeAws_json1_1DeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleGroupCommand = async ( @@ -3683,89 +2855,43 @@ const deserializeAws_json1_1DeleteRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSizeConstraintSetCommand = async ( @@ -3793,73 +2919,37 @@ const deserializeAws_json1_1DeleteSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSqlInjectionMatchSetCommand = async ( @@ -3887,73 +2977,37 @@ const deserializeAws_json1_1DeleteSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWebACLCommand = async ( @@ -3981,89 +3035,43 @@ const deserializeAws_json1_1DeleteWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteXssMatchSetCommand = async ( @@ -4091,73 +3099,37 @@ const deserializeAws_json1_1DeleteXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.wafregional#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateWebACLCommand = async ( @@ -4185,57 +3157,31 @@ const deserializeAws_json1_1DisassociateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetByteMatchSetCommand = async ( @@ -4263,49 +3209,28 @@ const deserializeAws_json1_1GetByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetChangeTokenCommand = async ( @@ -4333,33 +3258,22 @@ const deserializeAws_json1_1GetChangeTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetChangeTokenStatusCommand = async ( @@ -4387,41 +3301,25 @@ const deserializeAws_json1_1GetChangeTokenStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGeoMatchSetCommand = async ( @@ -4449,49 +3347,28 @@ const deserializeAws_json1_1GetGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetIPSetCommand = async ( @@ -4519,49 +3396,28 @@ const deserializeAws_json1_1GetIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoggingConfigurationCommand = async ( @@ -4589,41 +3445,25 @@ const deserializeAws_json1_1GetLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPermissionPolicyCommand = async ( @@ -4651,41 +3491,25 @@ const deserializeAws_json1_1GetPermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRateBasedRuleCommand = async ( @@ -4713,49 +3537,28 @@ const deserializeAws_json1_1GetRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRateBasedRuleManagedKeysCommand = async ( @@ -4783,57 +3586,31 @@ const deserializeAws_json1_1GetRateBasedRuleManagedKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegexMatchSetCommand = async ( @@ -4861,49 +3638,28 @@ const deserializeAws_json1_1GetRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegexPatternSetCommand = async ( @@ -4931,49 +3687,28 @@ const deserializeAws_json1_1GetRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRuleCommand = async ( @@ -5001,49 +3736,28 @@ const deserializeAws_json1_1GetRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRuleGroupCommand = async ( @@ -5071,41 +3785,25 @@ const deserializeAws_json1_1GetRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSampledRequestsCommand = async ( @@ -5133,41 +3831,25 @@ const deserializeAws_json1_1GetSampledRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSizeConstraintSetCommand = async ( @@ -5195,49 +3877,28 @@ const deserializeAws_json1_1GetSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSqlInjectionMatchSetCommand = async ( @@ -5265,49 +3926,28 @@ const deserializeAws_json1_1GetSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWebACLCommand = async ( @@ -5335,49 +3975,28 @@ const deserializeAws_json1_1GetWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWebACLForResourceCommand = async ( @@ -5405,65 +4024,34 @@ const deserializeAws_json1_1GetWebACLForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafregional#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetXssMatchSetCommand = async ( @@ -5491,49 +4079,28 @@ const deserializeAws_json1_1GetXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListActivatedRulesInRuleGroupCommand = async ( @@ -5561,49 +4128,28 @@ const deserializeAws_json1_1ListActivatedRulesInRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListByteMatchSetsCommand = async ( @@ -5631,41 +4177,25 @@ const deserializeAws_json1_1ListByteMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGeoMatchSetsCommand = async ( @@ -5693,41 +4223,25 @@ const deserializeAws_json1_1ListGeoMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIPSetsCommand = async ( @@ -5755,41 +4269,25 @@ const deserializeAws_json1_1ListIPSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLoggingConfigurationsCommand = async ( @@ -5817,49 +4315,28 @@ const deserializeAws_json1_1ListLoggingConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRateBasedRulesCommand = async ( @@ -5887,41 +4364,25 @@ const deserializeAws_json1_1ListRateBasedRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRegexMatchSetsCommand = async ( @@ -5949,41 +4410,25 @@ const deserializeAws_json1_1ListRegexMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRegexPatternSetsCommand = async ( @@ -6011,41 +4456,25 @@ const deserializeAws_json1_1ListRegexPatternSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourcesForWebACLCommand = async ( @@ -6073,57 +4502,31 @@ const deserializeAws_json1_1ListResourcesForWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRuleGroupsCommand = async ( @@ -6151,33 +4554,22 @@ const deserializeAws_json1_1ListRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRulesCommand = async ( @@ -6205,41 +4597,25 @@ const deserializeAws_json1_1ListRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSizeConstraintSetsCommand = async ( @@ -6267,41 +4643,25 @@ const deserializeAws_json1_1ListSizeConstraintSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSqlInjectionMatchSetsCommand = async ( @@ -6329,41 +4689,25 @@ const deserializeAws_json1_1ListSqlInjectionMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSubscribedRuleGroupsCommand = async ( @@ -6391,41 +4735,25 @@ const deserializeAws_json1_1ListSubscribedRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -6453,73 +4781,37 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWebACLsCommand = async ( @@ -6547,41 +4839,25 @@ const deserializeAws_json1_1ListWebACLsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListXssMatchSetsCommand = async ( @@ -6609,41 +4885,25 @@ const deserializeAws_json1_1ListXssMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLoggingConfigurationCommand = async ( @@ -6671,57 +4931,31 @@ const deserializeAws_json1_1PutLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFServiceLinkedRoleErrorException": case "com.amazonaws.wafregional#WAFServiceLinkedRoleErrorException": - response = { - ...(await deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPermissionPolicyCommand = async ( @@ -6749,57 +4983,31 @@ const deserializeAws_json1_1PutPermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidPermissionPolicyException": case "com.amazonaws.wafregional#WAFInvalidPermissionPolicyException": - response = { - ...(await deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6827,81 +5035,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6929,73 +5096,37 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.wafregional#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafregional#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafregional#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateByteMatchSetCommand = async ( @@ -7023,89 +5154,43 @@ const deserializeAws_json1_1UpdateByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGeoMatchSetCommand = async ( @@ -7133,97 +5218,46 @@ const deserializeAws_json1_1UpdateGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateIPSetCommand = async ( @@ -7251,97 +5285,46 @@ const deserializeAws_json1_1UpdateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRateBasedRuleCommand = async ( @@ -7369,97 +5352,46 @@ const deserializeAws_json1_1UpdateRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRegexMatchSetCommand = async ( @@ -7487,89 +5419,43 @@ const deserializeAws_json1_1UpdateRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.wafregional#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRegexPatternSetCommand = async ( @@ -7597,89 +5483,43 @@ const deserializeAws_json1_1UpdateRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidRegexPatternException": case "com.amazonaws.wafregional#WAFInvalidRegexPatternException": - response = { - ...(await deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleCommand = async ( @@ -7707,97 +5547,46 @@ const deserializeAws_json1_1UpdateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleGroupCommand = async ( @@ -7825,81 +5614,40 @@ const deserializeAws_json1_1UpdateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSizeConstraintSetCommand = async ( @@ -7927,97 +5675,46 @@ const deserializeAws_json1_1UpdateSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSqlInjectionMatchSetCommand = async ( @@ -8045,89 +5742,43 @@ const deserializeAws_json1_1UpdateSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWebACLCommand = async ( @@ -8155,105 +5806,49 @@ const deserializeAws_json1_1UpdateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.wafregional#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.wafregional#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateXssMatchSetCommand = async ( @@ -8281,89 +5876,43 @@ const deserializeAws_json1_1UpdateXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafregional#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.wafregional#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafregional#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafregional#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafregional#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.wafregional#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafregional#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.wafregional#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1WAFBadRequestExceptionResponse = async ( @@ -8372,13 +5921,11 @@ const deserializeAws_json1_1WAFBadRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFBadRequestException(body, context); - const contents: WAFBadRequestException = { - name: "WAFBadRequestException", - $fault: "client", + const exception = new WAFBadRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFDisallowedNameExceptionResponse = async ( @@ -8387,13 +5934,11 @@ const deserializeAws_json1_1WAFDisallowedNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFDisallowedNameException(body, context); - const contents: WAFDisallowedNameException = { - name: "WAFDisallowedNameException", - $fault: "client", + const exception = new WAFDisallowedNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFEntityMigrationExceptionResponse = async ( @@ -8402,13 +5947,11 @@ const deserializeAws_json1_1WAFEntityMigrationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFEntityMigrationException(body, context); - const contents: WAFEntityMigrationException = { - name: "WAFEntityMigrationException", - $fault: "client", + const exception = new WAFEntityMigrationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInternalErrorExceptionResponse = async ( @@ -8417,13 +5960,11 @@ const deserializeAws_json1_1WAFInternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInternalErrorException(body, context); - const contents: WAFInternalErrorException = { - name: "WAFInternalErrorException", - $fault: "server", + const exception = new WAFInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidAccountExceptionResponse = async ( @@ -8432,13 +5973,11 @@ const deserializeAws_json1_1WAFInvalidAccountExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidAccountException(body, context); - const contents: WAFInvalidAccountException = { - name: "WAFInvalidAccountException", - $fault: "client", + const exception = new WAFInvalidAccountException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidOperationExceptionResponse = async ( @@ -8447,13 +5986,11 @@ const deserializeAws_json1_1WAFInvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidOperationException(body, context); - const contents: WAFInvalidOperationException = { - name: "WAFInvalidOperationException", - $fault: "client", + const exception = new WAFInvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidParameterExceptionResponse = async ( @@ -8462,13 +5999,11 @@ const deserializeAws_json1_1WAFInvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidParameterException(body, context); - const contents: WAFInvalidParameterException = { - name: "WAFInvalidParameterException", - $fault: "client", + const exception = new WAFInvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse = async ( @@ -8477,13 +6012,11 @@ const deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidPermissionPolicyException(body, context); - const contents: WAFInvalidPermissionPolicyException = { - name: "WAFInvalidPermissionPolicyException", - $fault: "client", + const exception = new WAFInvalidPermissionPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse = async ( @@ -8492,13 +6025,11 @@ const deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidRegexPatternException(body, context); - const contents: WAFInvalidRegexPatternException = { - name: "WAFInvalidRegexPatternException", - $fault: "client", + const exception = new WAFInvalidRegexPatternException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFLimitsExceededExceptionResponse = async ( @@ -8507,13 +6038,11 @@ const deserializeAws_json1_1WAFLimitsExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFLimitsExceededException(body, context); - const contents: WAFLimitsExceededException = { - name: "WAFLimitsExceededException", - $fault: "client", + const exception = new WAFLimitsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse = async ( @@ -8522,13 +6051,11 @@ const deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonEmptyEntityException(body, context); - const contents: WAFNonEmptyEntityException = { - name: "WAFNonEmptyEntityException", - $fault: "client", + const exception = new WAFNonEmptyEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonexistentContainerExceptionResponse = async ( @@ -8537,13 +6064,11 @@ const deserializeAws_json1_1WAFNonexistentContainerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonexistentContainerException(body, context); - const contents: WAFNonexistentContainerException = { - name: "WAFNonexistentContainerException", - $fault: "client", + const exception = new WAFNonexistentContainerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonexistentItemExceptionResponse = async ( @@ -8552,13 +6077,11 @@ const deserializeAws_json1_1WAFNonexistentItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonexistentItemException(body, context); - const contents: WAFNonexistentItemException = { - name: "WAFNonexistentItemException", - $fault: "client", + const exception = new WAFNonexistentItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFReferencedItemExceptionResponse = async ( @@ -8567,13 +6090,11 @@ const deserializeAws_json1_1WAFReferencedItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFReferencedItemException(body, context); - const contents: WAFReferencedItemException = { - name: "WAFReferencedItemException", - $fault: "client", + const exception = new WAFReferencedItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse = async ( @@ -8582,13 +6103,11 @@ const deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFServiceLinkedRoleErrorException(body, context); - const contents: WAFServiceLinkedRoleErrorException = { - name: "WAFServiceLinkedRoleErrorException", - $fault: "client", + const exception = new WAFServiceLinkedRoleErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFStaleDataExceptionResponse = async ( @@ -8597,13 +6116,11 @@ const deserializeAws_json1_1WAFStaleDataExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFStaleDataException(body, context); - const contents: WAFStaleDataException = { - name: "WAFStaleDataException", - $fault: "client", + const exception = new WAFStaleDataException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse = async ( @@ -8612,13 +6129,11 @@ const deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFSubscriptionNotFoundException(body, context); - const contents: WAFSubscriptionNotFoundException = { - name: "WAFSubscriptionNotFoundException", - $fault: "client", + const exception = new WAFSubscriptionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFTagOperationExceptionResponse = async ( @@ -8627,13 +6142,11 @@ const deserializeAws_json1_1WAFTagOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFTagOperationException(body, context); - const contents: WAFTagOperationException = { - name: "WAFTagOperationException", - $fault: "client", + const exception = new WAFTagOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse = async ( @@ -8642,13 +6155,11 @@ const deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFTagOperationInternalErrorException(body, context); - const contents: WAFTagOperationInternalErrorException = { - name: "WAFTagOperationInternalErrorException", - $fault: "server", + const exception = new WAFTagOperationInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFUnavailableEntityExceptionResponse = async ( @@ -8657,13 +6168,11 @@ const deserializeAws_json1_1WAFUnavailableEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFUnavailableEntityException(body, context); - const contents: WAFUnavailableEntityException = { - name: "WAFUnavailableEntityException", - $fault: "client", + const exception = new WAFUnavailableEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActivatedRule = (input: ActivatedRule, context: __SerdeContext): any => { diff --git a/clients/client-waf/src/index.ts b/clients/client-waf/src/index.ts index f02d80d7704ca..cd54204693f3e 100644 --- a/clients/client-waf/src/index.ts +++ b/clients/client-waf/src/index.ts @@ -2,3 +2,4 @@ export * from "./WAF"; export * from "./WAFClient"; export * from "./commands"; export * from "./models"; +export { WAFServiceException } from "./models/WAFServiceException"; diff --git a/clients/client-waf/src/models/WAFServiceException.ts b/clients/client-waf/src/models/WAFServiceException.ts new file mode 100644 index 0000000000000..b513b457b62fb --- /dev/null +++ b/clients/client-waf/src/models/WAFServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WAF service. + */ +export class WAFServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WAFServiceException.prototype); + } +} diff --git a/clients/client-waf/src/models/models_0.ts b/clients/client-waf/src/models/models_0.ts index 01a5c73a0db18..0f8ee63d0aaea 100644 --- a/clients/client-waf/src/models/models_0.ts +++ b/clients/client-waf/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WAFServiceException as __BaseException } from "./WAFServiceException"; export enum WafActionType { ALLOW = "ALLOW", @@ -683,27 +686,58 @@ export namespace CreateByteMatchSetResponse { /** *

The name specified is invalid.

*/ -export interface WAFDisallowedNameException extends __SmithyException, $MetadataBearer { - name: "WAFDisallowedNameException"; - $fault: "client"; - message?: string; +export class WAFDisallowedNameException extends __BaseException { + readonly name: "WAFDisallowedNameException" = "WAFDisallowedNameException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFDisallowedNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFDisallowedNameException.prototype); + } } /** *

The operation failed because of a system problem, even though the request was valid. Retry your request.

*/ -export interface WAFInternalErrorException extends __SmithyException, $MetadataBearer { - name: "WAFInternalErrorException"; - $fault: "server"; - message?: string; +export class WAFInternalErrorException extends __BaseException { + readonly name: "WAFInternalErrorException" = "WAFInternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, WAFInternalErrorException.prototype); + } } /** *

The operation failed because you tried to create, update, or delete an object by using an invalid account identifier.

*/ -export interface WAFInvalidAccountException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidAccountException"; - $fault: "client"; +export class WAFInvalidAccountException extends __BaseException { + readonly name: "WAFInvalidAccountException" = "WAFInvalidAccountException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidAccountException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidAccountException.prototype); + } } export enum ParameterExceptionField { @@ -774,12 +808,26 @@ export enum ParameterExceptionReason { * * */ -export interface WAFInvalidParameterException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidParameterException"; - $fault: "client"; +export class WAFInvalidParameterException extends __BaseException { + readonly name: "WAFInvalidParameterException" = "WAFInvalidParameterException"; + readonly $fault: "client" = "client"; field?: ParameterExceptionField | string; parameter?: string; reason?: ParameterExceptionReason | string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidParameterException.prototype); + this.field = opts.field; + this.parameter = opts.parameter; + this.reason = opts.reason; + } } /** @@ -787,19 +835,39 @@ export interface WAFInvalidParameterException extends __SmithyException, $Metada * for an AWS account. For more information, see * Limits in the AWS WAF Developer Guide.

*/ -export interface WAFLimitsExceededException extends __SmithyException, $MetadataBearer { - name: "WAFLimitsExceededException"; - $fault: "client"; - message?: string; +export class WAFLimitsExceededException extends __BaseException { + readonly name: "WAFLimitsExceededException" = "WAFLimitsExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFLimitsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFLimitsExceededException.prototype); + } } /** *

The operation failed because you tried to create, update, or delete an object by using a change token that has already been used.

*/ -export interface WAFStaleDataException extends __SmithyException, $MetadataBearer { - name: "WAFStaleDataException"; - $fault: "client"; - message?: string; +export class WAFStaleDataException extends __BaseException { + readonly name: "WAFStaleDataException" = "WAFStaleDataException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFStaleDataException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFStaleDataException.prototype); + } } export interface CreateGeoMatchSetRequest { @@ -1580,28 +1648,58 @@ export namespace CreateRateBasedRuleResponse { /** *

*/ -export interface WAFBadRequestException extends __SmithyException, $MetadataBearer { - name: "WAFBadRequestException"; - $fault: "client"; - message?: string; +export class WAFBadRequestException extends __BaseException { + readonly name: "WAFBadRequestException" = "WAFBadRequestException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFBadRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFBadRequestException.prototype); + } } /** *

*/ -export interface WAFTagOperationException extends __SmithyException, $MetadataBearer { - name: "WAFTagOperationException"; - $fault: "client"; - message?: string; +export class WAFTagOperationException extends __BaseException { + readonly name: "WAFTagOperationException" = "WAFTagOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFTagOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFTagOperationException.prototype); + } } /** *

*/ -export interface WAFTagOperationInternalErrorException extends __SmithyException, $MetadataBearer { - name: "WAFTagOperationInternalErrorException"; - $fault: "server"; - message?: string; +export class WAFTagOperationInternalErrorException extends __BaseException { + readonly name: "WAFTagOperationInternalErrorException" = "WAFTagOperationInternalErrorException"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFTagOperationInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, WAFTagOperationInternalErrorException.prototype); + } } export interface CreateRegexMatchSetRequest { @@ -2867,12 +2965,24 @@ export enum MigrationErrorType { * * */ -export interface WAFEntityMigrationException extends __SmithyException, $MetadataBearer { - name: "WAFEntityMigrationException"; - $fault: "client"; - message?: string; +export class WAFEntityMigrationException extends __BaseException { + readonly name: "WAFEntityMigrationException" = "WAFEntityMigrationException"; + readonly $fault: "client" = "client"; MigrationErrorType?: MigrationErrorType | string; MigrationErrorReason?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFEntityMigrationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFEntityMigrationException.prototype); + this.MigrationErrorType = opts.MigrationErrorType; + this.MigrationErrorReason = opts.MigrationErrorReason; + } } /** @@ -2898,19 +3008,39 @@ export interface WAFEntityMigrationException extends __SmithyException, $Metadat * * */ -export interface WAFInvalidOperationException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidOperationException"; - $fault: "client"; - message?: string; +export class WAFInvalidOperationException extends __BaseException { + readonly name: "WAFInvalidOperationException" = "WAFInvalidOperationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidOperationException.prototype); + } } /** *

The operation failed because the referenced object doesn't exist.

*/ -export interface WAFNonexistentItemException extends __SmithyException, $MetadataBearer { - name: "WAFNonexistentItemException"; - $fault: "client"; - message?: string; +export class WAFNonexistentItemException extends __BaseException { + readonly name: "WAFNonexistentItemException" = "WAFNonexistentItemException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonexistentItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonexistentItemException.prototype); + } } /** @@ -3190,10 +3320,20 @@ export namespace DeleteByteMatchSetResponse { * * */ -export interface WAFNonEmptyEntityException extends __SmithyException, $MetadataBearer { - name: "WAFNonEmptyEntityException"; - $fault: "client"; - message?: string; +export class WAFNonEmptyEntityException extends __BaseException { + readonly name: "WAFNonEmptyEntityException" = "WAFNonEmptyEntityException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonEmptyEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonEmptyEntityException.prototype); + } } /** @@ -3207,10 +3347,20 @@ export interface WAFNonEmptyEntityException extends __SmithyException, $Metadata * * */ -export interface WAFReferencedItemException extends __SmithyException, $MetadataBearer { - name: "WAFReferencedItemException"; - $fault: "client"; - message?: string; +export class WAFReferencedItemException extends __BaseException { + readonly name: "WAFReferencedItemException" = "WAFReferencedItemException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFReferencedItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFReferencedItemException.prototype); + } } export interface DeleteGeoMatchSetRequest { @@ -6049,10 +6199,20 @@ export namespace PutLoggingConfigurationResponse { /** *

AWS WAF is not able to access the service linked role. This can be caused by a previous PutLoggingConfiguration request, which can lock the service linked role for about 20 seconds. Please try your request again. The service linked role can also be locked by a previous DeleteServiceLinkedRole request, which can lock the role for 15 minutes or more. If you recently made a DeleteServiceLinkedRole, wait at least 15 minutes and try the request again. If you receive this same exception again, you will have to wait additional time until the role is unlocked.

*/ -export interface WAFServiceLinkedRoleErrorException extends __SmithyException, $MetadataBearer { - name: "WAFServiceLinkedRoleErrorException"; - $fault: "client"; - message?: string; +export class WAFServiceLinkedRoleErrorException extends __BaseException { + readonly name: "WAFServiceLinkedRoleErrorException" = "WAFServiceLinkedRoleErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFServiceLinkedRoleErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFServiceLinkedRoleErrorException.prototype); + } } export interface PutPermissionPolicyRequest { @@ -6119,10 +6279,20 @@ export namespace PutPermissionPolicyResponse { * * */ -export interface WAFInvalidPermissionPolicyException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidPermissionPolicyException"; - $fault: "client"; - message?: string; +export class WAFInvalidPermissionPolicyException extends __BaseException { + readonly name: "WAFInvalidPermissionPolicyException" = "WAFInvalidPermissionPolicyException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidPermissionPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidPermissionPolicyException.prototype); + } } export interface TagResourceRequest { @@ -6310,10 +6480,20 @@ export namespace UpdateByteMatchSetResponse { * * */ -export interface WAFNonexistentContainerException extends __SmithyException, $MetadataBearer { - name: "WAFNonexistentContainerException"; - $fault: "client"; - message?: string; +export class WAFNonexistentContainerException extends __BaseException { + readonly name: "WAFNonexistentContainerException" = "WAFNonexistentContainerException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonexistentContainerException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonexistentContainerException.prototype); + } } /** @@ -6744,10 +6924,20 @@ export namespace UpdateRegexPatternSetResponse { /** *

The regular expression (regex) you specified in RegexPatternString is invalid.

*/ -export interface WAFInvalidRegexPatternException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidRegexPatternException"; - $fault: "client"; - message?: string; +export class WAFInvalidRegexPatternException extends __BaseException { + readonly name: "WAFInvalidRegexPatternException" = "WAFInvalidRegexPatternException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidRegexPatternException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidRegexPatternException.prototype); + } } export interface UpdateRuleRequest { @@ -7210,10 +7400,20 @@ export namespace UpdateWebACLResponse { /** *

The specified subscription does not exist.

*/ -export interface WAFSubscriptionNotFoundException extends __SmithyException, $MetadataBearer { - name: "WAFSubscriptionNotFoundException"; - $fault: "client"; - message?: string; +export class WAFSubscriptionNotFoundException extends __BaseException { + readonly name: "WAFSubscriptionNotFoundException" = "WAFSubscriptionNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFSubscriptionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFSubscriptionNotFoundException.prototype); + } } /** diff --git a/clients/client-waf/src/protocols/Aws_json1_1.ts b/clients/client-waf/src/protocols/Aws_json1_1.ts index 7fea22c74635a..5857b9df29b17 100644 --- a/clients/client-waf/src/protocols/Aws_json1_1.ts +++ b/clients/client-waf/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { CreateByteMatchSetCommandInput, CreateByteMatchSetCommandOutput } from "../commands/CreateByteMatchSetCommand"; @@ -423,6 +422,7 @@ import { XssMatchSetUpdate, XssMatchTuple, } from "../models/models_0"; +import { WAFServiceException as __BaseException } from "../models/WAFServiceException"; export const serializeAws_json1_1CreateByteMatchSetCommand = async ( input: CreateByteMatchSetCommandInput, @@ -1450,73 +1450,37 @@ const deserializeAws_json1_1CreateByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGeoMatchSetCommand = async ( @@ -1544,73 +1508,37 @@ const deserializeAws_json1_1CreateGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateIPSetCommand = async ( @@ -1638,73 +1566,37 @@ const deserializeAws_json1_1CreateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRateBasedRuleCommand = async ( @@ -1732,89 +1624,43 @@ const deserializeAws_json1_1CreateRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRegexMatchSetCommand = async ( @@ -1842,57 +1688,31 @@ const deserializeAws_json1_1CreateRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRegexPatternSetCommand = async ( @@ -1920,57 +1740,31 @@ const deserializeAws_json1_1CreateRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRuleCommand = async ( @@ -1998,89 +1792,43 @@ const deserializeAws_json1_1CreateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRuleGroupCommand = async ( @@ -2108,81 +1856,40 @@ const deserializeAws_json1_1CreateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSizeConstraintSetCommand = async ( @@ -2210,73 +1917,37 @@ const deserializeAws_json1_1CreateSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateSqlInjectionMatchSetCommand = async ( @@ -2304,73 +1975,37 @@ const deserializeAws_json1_1CreateSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWebACLCommand = async ( @@ -2398,97 +2033,46 @@ const deserializeAws_json1_1CreateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWebACLMigrationStackCommand = async ( @@ -2516,65 +2100,34 @@ const deserializeAws_json1_1CreateWebACLMigrationStackCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFEntityMigrationException": case "com.amazonaws.waf#WAFEntityMigrationException": - response = { - ...(await deserializeAws_json1_1WAFEntityMigrationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFEntityMigrationExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateXssMatchSetCommand = async ( @@ -2602,73 +2155,37 @@ const deserializeAws_json1_1CreateXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteByteMatchSetCommand = async ( @@ -2696,73 +2213,37 @@ const deserializeAws_json1_1DeleteByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGeoMatchSetCommand = async ( @@ -2790,73 +2271,37 @@ const deserializeAws_json1_1DeleteGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIPSetCommand = async ( @@ -2884,73 +2329,37 @@ const deserializeAws_json1_1DeleteIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLoggingConfigurationCommand = async ( @@ -2978,49 +2387,28 @@ const deserializeAws_json1_1DeleteLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePermissionPolicyCommand = async ( @@ -3048,49 +2436,28 @@ const deserializeAws_json1_1DeletePermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRateBasedRuleCommand = async ( @@ -3118,89 +2485,43 @@ const deserializeAws_json1_1DeleteRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegexMatchSetCommand = async ( @@ -3228,73 +2549,37 @@ const deserializeAws_json1_1DeleteRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegexPatternSetCommand = async ( @@ -3322,73 +2607,37 @@ const deserializeAws_json1_1DeleteRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleCommand = async ( @@ -3416,89 +2665,43 @@ const deserializeAws_json1_1DeleteRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleGroupCommand = async ( @@ -3526,89 +2729,43 @@ const deserializeAws_json1_1DeleteRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSizeConstraintSetCommand = async ( @@ -3636,73 +2793,37 @@ const deserializeAws_json1_1DeleteSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteSqlInjectionMatchSetCommand = async ( @@ -3730,73 +2851,37 @@ const deserializeAws_json1_1DeleteSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWebACLCommand = async ( @@ -3824,89 +2909,43 @@ const deserializeAws_json1_1DeleteWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteXssMatchSetCommand = async ( @@ -3934,73 +2973,37 @@ const deserializeAws_json1_1DeleteXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonEmptyEntityException": case "com.amazonaws.waf#WAFNonEmptyEntityException": - response = { - ...(await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetByteMatchSetCommand = async ( @@ -4028,49 +3031,28 @@ const deserializeAws_json1_1GetByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetChangeTokenCommand = async ( @@ -4098,33 +3080,22 @@ const deserializeAws_json1_1GetChangeTokenCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetChangeTokenStatusCommand = async ( @@ -4152,41 +3123,25 @@ const deserializeAws_json1_1GetChangeTokenStatusCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetGeoMatchSetCommand = async ( @@ -4214,49 +3169,28 @@ const deserializeAws_json1_1GetGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetIPSetCommand = async ( @@ -4284,49 +3218,28 @@ const deserializeAws_json1_1GetIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoggingConfigurationCommand = async ( @@ -4354,41 +3267,25 @@ const deserializeAws_json1_1GetLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPermissionPolicyCommand = async ( @@ -4416,41 +3313,25 @@ const deserializeAws_json1_1GetPermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRateBasedRuleCommand = async ( @@ -4478,49 +3359,28 @@ const deserializeAws_json1_1GetRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRateBasedRuleManagedKeysCommand = async ( @@ -4548,57 +3408,31 @@ const deserializeAws_json1_1GetRateBasedRuleManagedKeysCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegexMatchSetCommand = async ( @@ -4626,49 +3460,28 @@ const deserializeAws_json1_1GetRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegexPatternSetCommand = async ( @@ -4696,49 +3509,28 @@ const deserializeAws_json1_1GetRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRuleCommand = async ( @@ -4766,49 +3558,28 @@ const deserializeAws_json1_1GetRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRuleGroupCommand = async ( @@ -4836,41 +3607,25 @@ const deserializeAws_json1_1GetRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSampledRequestsCommand = async ( @@ -4898,41 +3653,25 @@ const deserializeAws_json1_1GetSampledRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSizeConstraintSetCommand = async ( @@ -4960,49 +3699,28 @@ const deserializeAws_json1_1GetSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSqlInjectionMatchSetCommand = async ( @@ -5030,49 +3748,28 @@ const deserializeAws_json1_1GetSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWebACLCommand = async ( @@ -5100,49 +3797,28 @@ const deserializeAws_json1_1GetWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetXssMatchSetCommand = async ( @@ -5170,49 +3846,28 @@ const deserializeAws_json1_1GetXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListActivatedRulesInRuleGroupCommand = async ( @@ -5240,49 +3895,28 @@ const deserializeAws_json1_1ListActivatedRulesInRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListByteMatchSetsCommand = async ( @@ -5310,41 +3944,25 @@ const deserializeAws_json1_1ListByteMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGeoMatchSetsCommand = async ( @@ -5372,41 +3990,25 @@ const deserializeAws_json1_1ListGeoMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIPSetsCommand = async ( @@ -5434,41 +4036,25 @@ const deserializeAws_json1_1ListIPSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLoggingConfigurationsCommand = async ( @@ -5496,49 +4082,28 @@ const deserializeAws_json1_1ListLoggingConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRateBasedRulesCommand = async ( @@ -5566,41 +4131,25 @@ const deserializeAws_json1_1ListRateBasedRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRegexMatchSetsCommand = async ( @@ -5628,41 +4177,25 @@ const deserializeAws_json1_1ListRegexMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRegexPatternSetsCommand = async ( @@ -5690,41 +4223,25 @@ const deserializeAws_json1_1ListRegexPatternSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRuleGroupsCommand = async ( @@ -5752,33 +4269,22 @@ const deserializeAws_json1_1ListRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRulesCommand = async ( @@ -5806,41 +4312,25 @@ const deserializeAws_json1_1ListRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSizeConstraintSetsCommand = async ( @@ -5868,41 +4358,25 @@ const deserializeAws_json1_1ListSizeConstraintSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSqlInjectionMatchSetsCommand = async ( @@ -5930,41 +4404,25 @@ const deserializeAws_json1_1ListSqlInjectionMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListSubscribedRuleGroupsCommand = async ( @@ -5992,41 +4450,25 @@ const deserializeAws_json1_1ListSubscribedRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -6054,73 +4496,37 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWebACLsCommand = async ( @@ -6148,41 +4554,25 @@ const deserializeAws_json1_1ListWebACLsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListXssMatchSetsCommand = async ( @@ -6210,41 +4600,25 @@ const deserializeAws_json1_1ListXssMatchSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLoggingConfigurationCommand = async ( @@ -6272,57 +4646,31 @@ const deserializeAws_json1_1PutLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFServiceLinkedRoleErrorException": case "com.amazonaws.waf#WAFServiceLinkedRoleErrorException": - response = { - ...(await deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPermissionPolicyCommand = async ( @@ -6350,57 +4698,31 @@ const deserializeAws_json1_1PutPermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidPermissionPolicyException": case "com.amazonaws.waf#WAFInvalidPermissionPolicyException": - response = { - ...(await deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6428,81 +4750,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6530,73 +4811,37 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFBadRequestException": case "com.amazonaws.waf#WAFBadRequestException": - response = { - ...(await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFBadRequestExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.waf#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.waf#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateByteMatchSetCommand = async ( @@ -6624,89 +4869,43 @@ const deserializeAws_json1_1UpdateByteMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateGeoMatchSetCommand = async ( @@ -6734,97 +4933,46 @@ const deserializeAws_json1_1UpdateGeoMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateIPSetCommand = async ( @@ -6852,97 +5000,46 @@ const deserializeAws_json1_1UpdateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRateBasedRuleCommand = async ( @@ -6970,97 +5067,46 @@ const deserializeAws_json1_1UpdateRateBasedRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRegexMatchSetCommand = async ( @@ -7088,89 +5134,43 @@ const deserializeAws_json1_1UpdateRegexMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDisallowedNameException": case "com.amazonaws.waf#WAFDisallowedNameException": - response = { - ...(await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDisallowedNameExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRegexPatternSetCommand = async ( @@ -7198,89 +5198,43 @@ const deserializeAws_json1_1UpdateRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidRegexPatternException": case "com.amazonaws.waf#WAFInvalidRegexPatternException": - response = { - ...(await deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleCommand = async ( @@ -7308,97 +5262,46 @@ const deserializeAws_json1_1UpdateRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleGroupCommand = async ( @@ -7426,81 +5329,40 @@ const deserializeAws_json1_1UpdateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSizeConstraintSetCommand = async ( @@ -7528,97 +5390,46 @@ const deserializeAws_json1_1UpdateSizeConstraintSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateSqlInjectionMatchSetCommand = async ( @@ -7646,89 +5457,43 @@ const deserializeAws_json1_1UpdateSqlInjectionMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWebACLCommand = async ( @@ -7756,105 +5521,49 @@ const deserializeAws_json1_1UpdateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFReferencedItemException": case "com.amazonaws.waf#WAFReferencedItemException": - response = { - ...(await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFReferencedItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.waf#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateXssMatchSetCommand = async ( @@ -7882,89 +5591,43 @@ const deserializeAws_json1_1UpdateXssMatchSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.waf#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidAccountException": case "com.amazonaws.waf#WAFInvalidAccountException": - response = { - ...(await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidAccountExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.waf#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.waf#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.waf#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentContainerException": case "com.amazonaws.waf#WAFNonexistentContainerException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentContainerExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.waf#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFStaleDataException": case "com.amazonaws.waf#WAFStaleDataException": - response = { - ...(await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFStaleDataExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1WAFBadRequestExceptionResponse = async ( @@ -7973,13 +5636,11 @@ const deserializeAws_json1_1WAFBadRequestExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFBadRequestException(body, context); - const contents: WAFBadRequestException = { - name: "WAFBadRequestException", - $fault: "client", + const exception = new WAFBadRequestException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFDisallowedNameExceptionResponse = async ( @@ -7988,13 +5649,11 @@ const deserializeAws_json1_1WAFDisallowedNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFDisallowedNameException(body, context); - const contents: WAFDisallowedNameException = { - name: "WAFDisallowedNameException", - $fault: "client", + const exception = new WAFDisallowedNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFEntityMigrationExceptionResponse = async ( @@ -8003,13 +5662,11 @@ const deserializeAws_json1_1WAFEntityMigrationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFEntityMigrationException(body, context); - const contents: WAFEntityMigrationException = { - name: "WAFEntityMigrationException", - $fault: "client", + const exception = new WAFEntityMigrationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInternalErrorExceptionResponse = async ( @@ -8018,13 +5675,11 @@ const deserializeAws_json1_1WAFInternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInternalErrorException(body, context); - const contents: WAFInternalErrorException = { - name: "WAFInternalErrorException", - $fault: "server", + const exception = new WAFInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidAccountExceptionResponse = async ( @@ -8033,13 +5688,11 @@ const deserializeAws_json1_1WAFInvalidAccountExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidAccountException(body, context); - const contents: WAFInvalidAccountException = { - name: "WAFInvalidAccountException", - $fault: "client", + const exception = new WAFInvalidAccountException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidOperationExceptionResponse = async ( @@ -8048,13 +5701,11 @@ const deserializeAws_json1_1WAFInvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidOperationException(body, context); - const contents: WAFInvalidOperationException = { - name: "WAFInvalidOperationException", - $fault: "client", + const exception = new WAFInvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidParameterExceptionResponse = async ( @@ -8063,13 +5714,11 @@ const deserializeAws_json1_1WAFInvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidParameterException(body, context); - const contents: WAFInvalidParameterException = { - name: "WAFInvalidParameterException", - $fault: "client", + const exception = new WAFInvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse = async ( @@ -8078,13 +5727,11 @@ const deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidPermissionPolicyException(body, context); - const contents: WAFInvalidPermissionPolicyException = { - name: "WAFInvalidPermissionPolicyException", - $fault: "client", + const exception = new WAFInvalidPermissionPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse = async ( @@ -8093,13 +5740,11 @@ const deserializeAws_json1_1WAFInvalidRegexPatternExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidRegexPatternException(body, context); - const contents: WAFInvalidRegexPatternException = { - name: "WAFInvalidRegexPatternException", - $fault: "client", + const exception = new WAFInvalidRegexPatternException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFLimitsExceededExceptionResponse = async ( @@ -8108,13 +5753,11 @@ const deserializeAws_json1_1WAFLimitsExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFLimitsExceededException(body, context); - const contents: WAFLimitsExceededException = { - name: "WAFLimitsExceededException", - $fault: "client", + const exception = new WAFLimitsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse = async ( @@ -8123,13 +5766,11 @@ const deserializeAws_json1_1WAFNonEmptyEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonEmptyEntityException(body, context); - const contents: WAFNonEmptyEntityException = { - name: "WAFNonEmptyEntityException", - $fault: "client", + const exception = new WAFNonEmptyEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonexistentContainerExceptionResponse = async ( @@ -8138,13 +5779,11 @@ const deserializeAws_json1_1WAFNonexistentContainerExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonexistentContainerException(body, context); - const contents: WAFNonexistentContainerException = { - name: "WAFNonexistentContainerException", - $fault: "client", + const exception = new WAFNonexistentContainerException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonexistentItemExceptionResponse = async ( @@ -8153,13 +5792,11 @@ const deserializeAws_json1_1WAFNonexistentItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonexistentItemException(body, context); - const contents: WAFNonexistentItemException = { - name: "WAFNonexistentItemException", - $fault: "client", + const exception = new WAFNonexistentItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFReferencedItemExceptionResponse = async ( @@ -8168,13 +5805,11 @@ const deserializeAws_json1_1WAFReferencedItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFReferencedItemException(body, context); - const contents: WAFReferencedItemException = { - name: "WAFReferencedItemException", - $fault: "client", + const exception = new WAFReferencedItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse = async ( @@ -8183,13 +5818,11 @@ const deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFServiceLinkedRoleErrorException(body, context); - const contents: WAFServiceLinkedRoleErrorException = { - name: "WAFServiceLinkedRoleErrorException", - $fault: "client", + const exception = new WAFServiceLinkedRoleErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFStaleDataExceptionResponse = async ( @@ -8198,13 +5831,11 @@ const deserializeAws_json1_1WAFStaleDataExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFStaleDataException(body, context); - const contents: WAFStaleDataException = { - name: "WAFStaleDataException", - $fault: "client", + const exception = new WAFStaleDataException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse = async ( @@ -8213,13 +5844,11 @@ const deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFSubscriptionNotFoundException(body, context); - const contents: WAFSubscriptionNotFoundException = { - name: "WAFSubscriptionNotFoundException", - $fault: "client", + const exception = new WAFSubscriptionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFTagOperationExceptionResponse = async ( @@ -8228,13 +5857,11 @@ const deserializeAws_json1_1WAFTagOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFTagOperationException(body, context); - const contents: WAFTagOperationException = { - name: "WAFTagOperationException", - $fault: "client", + const exception = new WAFTagOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse = async ( @@ -8243,13 +5870,11 @@ const deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFTagOperationInternalErrorException(body, context); - const contents: WAFTagOperationInternalErrorException = { - name: "WAFTagOperationInternalErrorException", - $fault: "server", + const exception = new WAFTagOperationInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActivatedRule = (input: ActivatedRule, context: __SerdeContext): any => { diff --git a/clients/client-wafv2/src/index.ts b/clients/client-wafv2/src/index.ts index dbb3797f0c6e4..b6730a1e79aea 100644 --- a/clients/client-wafv2/src/index.ts +++ b/clients/client-wafv2/src/index.ts @@ -2,3 +2,4 @@ export * from "./WAFV2"; export * from "./WAFV2Client"; export * from "./commands"; export * from "./models"; +export { WAFV2ServiceException } from "./models/WAFV2ServiceException"; diff --git a/clients/client-wafv2/src/models/WAFV2ServiceException.ts b/clients/client-wafv2/src/models/WAFV2ServiceException.ts new file mode 100644 index 0000000000000..b3f5ceccd844d --- /dev/null +++ b/clients/client-wafv2/src/models/WAFV2ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WAFV2 service. + */ +export class WAFV2ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WAFV2ServiceException.prototype); + } +} diff --git a/clients/client-wafv2/src/models/models_0.ts b/clients/client-wafv2/src/models/models_0.ts index 6a2dd5436958f..e00e22ae18be5 100644 --- a/clients/client-wafv2/src/models/models_0.ts +++ b/clients/client-wafv2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WAFV2ServiceException as __BaseException } from "./WAFV2ServiceException"; export enum ActionValue { ALLOW = "ALLOW", @@ -1573,19 +1576,43 @@ export namespace AssociateWebACLResponse { *

Your request is valid, but WAF couldn’t perform the operation because of a system * problem. Retry your request.

*/ -export interface WAFInternalErrorException extends __SmithyException, $MetadataBearer { - name: "WAFInternalErrorException"; - $fault: "server"; +export class WAFInternalErrorException extends __BaseException { + readonly name: "WAFInternalErrorException" = "WAFInternalErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, WAFInternalErrorException.prototype); + this.Message = opts.Message; + } } /** *

The operation isn't valid.

*/ -export interface WAFInvalidOperationException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidOperationException"; - $fault: "client"; +export class WAFInvalidOperationException extends __BaseException { + readonly name: "WAFInvalidOperationException" = "WAFInvalidOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidOperationException.prototype); + this.Message = opts.Message; + } } export enum ParameterExceptionField { @@ -1668,10 +1695,9 @@ export enum ParameterExceptionField { * * */ -export interface WAFInvalidParameterException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidParameterException"; - $fault: "client"; - message?: string; +export class WAFInvalidParameterException extends __BaseException { + readonly name: "WAFInvalidParameterException" = "WAFInvalidParameterException"; + readonly $fault: "client" = "client"; /** *

The settings where the invalid parameter was found.

*/ @@ -1686,24 +1712,63 @@ export interface WAFInvalidParameterException extends __SmithyException, $Metada *

Additional information about the exception.

*/ Reason?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidParameterException.prototype); + this.Field = opts.Field; + this.Parameter = opts.Parameter; + this.Reason = opts.Reason; + } } /** *

WAF couldn’t perform the operation because your resource doesn’t exist.

*/ -export interface WAFNonexistentItemException extends __SmithyException, $MetadataBearer { - name: "WAFNonexistentItemException"; - $fault: "client"; +export class WAFNonexistentItemException extends __BaseException { + readonly name: "WAFNonexistentItemException" = "WAFNonexistentItemException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFNonexistentItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFNonexistentItemException.prototype); + this.Message = opts.Message; + } } /** *

WAF couldn’t retrieve the resource that you requested. Retry your request.

*/ -export interface WAFUnavailableEntityException extends __SmithyException, $MetadataBearer { - name: "WAFUnavailableEntityException"; - $fault: "client"; +export class WAFUnavailableEntityException extends __BaseException { + readonly name: "WAFUnavailableEntityException" = "WAFUnavailableEntityException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFUnavailableEntityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFUnavailableEntityException.prototype); + this.Message = opts.Message; + } } /** @@ -2048,20 +2113,44 @@ export namespace CheckCapacityResponse { * expired. You can retrieve the available versions for the managed rule group by calling * ListAvailableManagedRuleGroupVersions.

*/ -export interface WAFExpiredManagedRuleGroupVersionException extends __SmithyException, $MetadataBearer { - name: "WAFExpiredManagedRuleGroupVersionException"; - $fault: "client"; +export class WAFExpiredManagedRuleGroupVersionException extends __BaseException { + readonly name: "WAFExpiredManagedRuleGroupVersionException" = "WAFExpiredManagedRuleGroupVersionException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFExpiredManagedRuleGroupVersionException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFExpiredManagedRuleGroupVersionException.prototype); + this.Message = opts.Message; + } } /** *

WAF couldn’t perform the operation because the resource that you requested isn’t * valid. Check the resource, and try again.

*/ -export interface WAFInvalidResourceException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidResourceException"; - $fault: "client"; +export class WAFInvalidResourceException extends __BaseException { + readonly name: "WAFInvalidResourceException" = "WAFInvalidResourceException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidResourceException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidResourceException.prototype); + this.Message = opts.Message; + } } /** @@ -2070,20 +2159,44 @@ export interface WAFInvalidResourceException extends __SmithyException, $Metadat * account. For more information, see WAF quotas in the * WAF Developer Guide.

*/ -export interface WAFLimitsExceededException extends __SmithyException, $MetadataBearer { - name: "WAFLimitsExceededException"; - $fault: "client"; +export class WAFLimitsExceededException extends __BaseException { + readonly name: "WAFLimitsExceededException" = "WAFLimitsExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFLimitsExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFLimitsExceededException.prototype); + this.Message = opts.Message; + } } /** *

You tried to use a managed rule group that's available by subscription, but you aren't * subscribed to it yet.

*/ -export interface WAFSubscriptionNotFoundException extends __SmithyException, $MetadataBearer { - name: "WAFSubscriptionNotFoundException"; - $fault: "client"; +export class WAFSubscriptionNotFoundException extends __BaseException { + readonly name: "WAFSubscriptionNotFoundException" = "WAFSubscriptionNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFSubscriptionNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFSubscriptionNotFoundException.prototype); + this.Message = opts.Message; + } } export enum IPAddressVersion { @@ -2253,10 +2366,22 @@ export namespace CreateIPSetResponse { *

WAF couldn’t perform the operation because the resource that you tried to save is * a duplicate of an existing one.

*/ -export interface WAFDuplicateItemException extends __SmithyException, $MetadataBearer { - name: "WAFDuplicateItemException"; - $fault: "client"; +export class WAFDuplicateItemException extends __BaseException { + readonly name: "WAFDuplicateItemException" = "WAFDuplicateItemException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFDuplicateItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFDuplicateItemException.prototype); + this.Message = opts.Message; + } } /** @@ -2264,29 +2389,65 @@ export interface WAFDuplicateItemException extends __SmithyException, $MetadataB * that has changed since you last retrieved it. Get the resource again, make any changes you * need to make to the new copy, and retry your operation.

*/ -export interface WAFOptimisticLockException extends __SmithyException, $MetadataBearer { - name: "WAFOptimisticLockException"; - $fault: "client"; +export class WAFOptimisticLockException extends __BaseException { + readonly name: "WAFOptimisticLockException" = "WAFOptimisticLockException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFOptimisticLockException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFOptimisticLockException.prototype); + this.Message = opts.Message; + } } /** *

An error occurred during the tagging operation. Retry your request.

*/ -export interface WAFTagOperationException extends __SmithyException, $MetadataBearer { - name: "WAFTagOperationException"; - $fault: "client"; +export class WAFTagOperationException extends __BaseException { + readonly name: "WAFTagOperationException" = "WAFTagOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFTagOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFTagOperationException.prototype); + this.Message = opts.Message; + } } /** *

WAF couldn’t perform your tagging operation because of an internal error. Retry * your request.

*/ -export interface WAFTagOperationInternalErrorException extends __SmithyException, $MetadataBearer { - name: "WAFTagOperationInternalErrorException"; - $fault: "server"; +export class WAFTagOperationInternalErrorException extends __BaseException { + readonly name: "WAFTagOperationInternalErrorException" = "WAFTagOperationInternalErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFTagOperationInternalErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, WAFTagOperationInternalErrorException.prototype); + this.Message = opts.Message; + } } /** @@ -2673,10 +2834,22 @@ export namespace DeleteIPSetResponse { *

WAF couldn’t perform the operation because your resource is being used by another * resource or it’s associated with another resource.

*/ -export interface WAFAssociatedItemException extends __SmithyException, $MetadataBearer { - name: "WAFAssociatedItemException"; - $fault: "client"; +export class WAFAssociatedItemException extends __BaseException { + readonly name: "WAFAssociatedItemException" = "WAFAssociatedItemException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFAssociatedItemException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFAssociatedItemException.prototype); + this.Message = opts.Message; + } } export interface DeleteLoggingConfigurationRequest { @@ -5052,10 +5225,22 @@ export namespace PutLoggingConfigurationResponse { * Logging web ACL traffic information * in the WAF Developer Guide.

*/ -export interface WAFLogDestinationPermissionIssueException extends __SmithyException, $MetadataBearer { - name: "WAFLogDestinationPermissionIssueException"; - $fault: "client"; +export class WAFLogDestinationPermissionIssueException extends __BaseException { + readonly name: "WAFLogDestinationPermissionIssueException" = "WAFLogDestinationPermissionIssueException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFLogDestinationPermissionIssueException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFLogDestinationPermissionIssueException.prototype); + this.Message = opts.Message; + } } /** @@ -5068,10 +5253,20 @@ export interface WAFLogDestinationPermissionIssueException extends __SmithyExcep * again. If you receive this same exception again, you will have to wait additional time * until the role is unlocked.

*/ -export interface WAFServiceLinkedRoleErrorException extends __SmithyException, $MetadataBearer { - name: "WAFServiceLinkedRoleErrorException"; - $fault: "client"; - message?: string; +export class WAFServiceLinkedRoleErrorException extends __BaseException { + readonly name: "WAFServiceLinkedRoleErrorException" = "WAFServiceLinkedRoleErrorException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFServiceLinkedRoleErrorException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFServiceLinkedRoleErrorException.prototype); + } } /** @@ -5254,10 +5449,22 @@ export namespace PutPermissionPolicyResponse { * *

For more information, see IAM Policies.

*/ -export interface WAFInvalidPermissionPolicyException extends __SmithyException, $MetadataBearer { - name: "WAFInvalidPermissionPolicyException"; - $fault: "client"; +export class WAFInvalidPermissionPolicyException extends __BaseException { + readonly name: "WAFInvalidPermissionPolicyException" = "WAFInvalidPermissionPolicyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WAFInvalidPermissionPolicyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WAFInvalidPermissionPolicyException.prototype); + this.Message = opts.Message; + } } export interface TagResourceRequest { diff --git a/clients/client-wafv2/src/protocols/Aws_json1_1.ts b/clients/client-wafv2/src/protocols/Aws_json1_1.ts index 12bc9a10442a9..d5924548e71e7 100644 --- a/clients/client-wafv2/src/protocols/Aws_json1_1.ts +++ b/clients/client-wafv2/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssociateWebACLCommandInput, AssociateWebACLCommandOutput } from "../commands/AssociateWebACLCommand"; @@ -319,6 +318,7 @@ import { WebACLSummary, XssMatchStatement, } from "../models/models_0"; +import { WAFV2ServiceException as __BaseException } from "../models/WAFV2ServiceException"; export const serializeAws_json1_1AssociateWebACLCommand = async ( input: AssociateWebACLCommandInput, @@ -930,65 +930,34 @@ const deserializeAws_json1_1AssociateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CheckCapacityCommand = async ( @@ -1016,89 +985,43 @@ const deserializeAws_json1_1CheckCapacityCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFExpiredManagedRuleGroupVersionException": case "com.amazonaws.wafv2#WAFExpiredManagedRuleGroupVersionException": - response = { - ...(await deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFInvalidResourceException": case "com.amazonaws.wafv2#WAFInvalidResourceException": - response = { - ...(await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.wafv2#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateIPSetCommand = async ( @@ -1126,89 +1049,43 @@ const deserializeAws_json1_1CreateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRegexPatternSetCommand = async ( @@ -1236,89 +1113,43 @@ const deserializeAws_json1_1CreateRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateRuleGroupCommand = async ( @@ -1346,113 +1177,52 @@ const deserializeAws_json1_1CreateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.wafv2#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWebACLCommand = async ( @@ -1480,121 +1250,55 @@ const deserializeAws_json1_1CreateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFInvalidResourceException": case "com.amazonaws.wafv2#WAFInvalidResourceException": - response = { - ...(await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.wafv2#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteFirewallManagerRuleGroupsCommand = async ( @@ -1622,65 +1326,34 @@ const deserializeAws_json1_1DeleteFirewallManagerRuleGroupsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIPSetCommand = async ( @@ -1708,89 +1381,43 @@ const deserializeAws_json1_1DeleteIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFAssociatedItemException": case "com.amazonaws.wafv2#WAFAssociatedItemException": - response = { - ...(await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteLoggingConfigurationCommand = async ( @@ -1818,65 +1445,34 @@ const deserializeAws_json1_1DeleteLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeletePermissionPolicyCommand = async ( @@ -1904,49 +1500,28 @@ const deserializeAws_json1_1DeletePermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRegexPatternSetCommand = async ( @@ -1974,89 +1549,43 @@ const deserializeAws_json1_1DeleteRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFAssociatedItemException": case "com.amazonaws.wafv2#WAFAssociatedItemException": - response = { - ...(await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRuleGroupCommand = async ( @@ -2084,89 +1613,43 @@ const deserializeAws_json1_1DeleteRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFAssociatedItemException": case "com.amazonaws.wafv2#WAFAssociatedItemException": - response = { - ...(await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWebACLCommand = async ( @@ -2194,89 +1677,43 @@ const deserializeAws_json1_1DeleteWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFAssociatedItemException": case "com.amazonaws.wafv2#WAFAssociatedItemException": - response = { - ...(await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFAssociatedItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeManagedRuleGroupCommand = async ( @@ -2304,73 +1741,37 @@ const deserializeAws_json1_1DescribeManagedRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFExpiredManagedRuleGroupVersionException": case "com.amazonaws.wafv2#WAFExpiredManagedRuleGroupVersionException": - response = { - ...(await deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFInvalidResourceException": case "com.amazonaws.wafv2#WAFInvalidResourceException": - response = { - ...(await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateWebACLCommand = async ( @@ -2398,57 +1799,31 @@ const deserializeAws_json1_1DisassociateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetIPSetCommand = async ( @@ -2476,57 +1851,31 @@ const deserializeAws_json1_1GetIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetLoggingConfigurationCommand = async ( @@ -2554,57 +1903,31 @@ const deserializeAws_json1_1GetLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetManagedRuleSetCommand = async ( @@ -2632,57 +1955,31 @@ const deserializeAws_json1_1GetManagedRuleSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetPermissionPolicyCommand = async ( @@ -2710,49 +2007,28 @@ const deserializeAws_json1_1GetPermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRateBasedStatementManagedKeysCommand = async ( @@ -2780,57 +2056,31 @@ const deserializeAws_json1_1GetRateBasedStatementManagedKeysCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRegexPatternSetCommand = async ( @@ -2858,57 +2108,31 @@ const deserializeAws_json1_1GetRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetRuleGroupCommand = async ( @@ -2936,57 +2160,31 @@ const deserializeAws_json1_1GetRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetSampledRequestsCommand = async ( @@ -3014,49 +2212,28 @@ const deserializeAws_json1_1GetSampledRequestsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWebACLCommand = async ( @@ -3084,57 +2261,31 @@ const deserializeAws_json1_1GetWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetWebACLForResourceCommand = async ( @@ -3162,65 +2313,34 @@ const deserializeAws_json1_1GetWebACLForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAvailableManagedRuleGroupsCommand = async ( @@ -3248,49 +2368,28 @@ const deserializeAws_json1_1ListAvailableManagedRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAvailableManagedRuleGroupVersionsCommand = async ( @@ -3318,49 +2417,28 @@ const deserializeAws_json1_1ListAvailableManagedRuleGroupVersionsCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListIPSetsCommand = async ( @@ -3388,49 +2466,28 @@ const deserializeAws_json1_1ListIPSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListLoggingConfigurationsCommand = async ( @@ -3458,49 +2515,28 @@ const deserializeAws_json1_1ListLoggingConfigurationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListManagedRuleSetsCommand = async ( @@ -3528,49 +2564,28 @@ const deserializeAws_json1_1ListManagedRuleSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRegexPatternSetsCommand = async ( @@ -3598,49 +2613,28 @@ const deserializeAws_json1_1ListRegexPatternSetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourcesForWebACLCommand = async ( @@ -3668,57 +2662,31 @@ const deserializeAws_json1_1ListResourcesForWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListRuleGroupsCommand = async ( @@ -3746,49 +2714,28 @@ const deserializeAws_json1_1ListRuleGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -3816,73 +2763,37 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListWebACLsCommand = async ( @@ -3910,49 +2821,28 @@ const deserializeAws_json1_1ListWebACLsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutLoggingConfigurationCommand = async ( @@ -3980,89 +2870,43 @@ const deserializeAws_json1_1PutLoggingConfigurationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFLogDestinationPermissionIssueException": case "com.amazonaws.wafv2#WAFLogDestinationPermissionIssueException": - response = { - ...(await deserializeAws_json1_1WAFLogDestinationPermissionIssueExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLogDestinationPermissionIssueExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFServiceLinkedRoleErrorException": case "com.amazonaws.wafv2#WAFServiceLinkedRoleErrorException": - response = { - ...(await deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutManagedRuleSetVersionsCommand = async ( @@ -4090,65 +2934,34 @@ const deserializeAws_json1_1PutManagedRuleSetVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutPermissionPolicyCommand = async ( @@ -4176,57 +2989,31 @@ const deserializeAws_json1_1PutPermissionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFInvalidPermissionPolicyException": case "com.amazonaws.wafv2#WAFInvalidPermissionPolicyException": - response = { - ...(await deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -4254,81 +3041,40 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -4356,73 +3102,37 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFTagOperationException": case "com.amazonaws.wafv2#WAFTagOperationException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationExceptionResponse(parsedOutput, context); case "WAFTagOperationInternalErrorException": case "com.amazonaws.wafv2#WAFTagOperationInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateIPSetCommand = async ( @@ -4450,81 +3160,40 @@ const deserializeAws_json1_1UpdateIPSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateManagedRuleSetVersionExpiryDateCommand = async ( @@ -4552,65 +3221,34 @@ const deserializeAws_json1_1UpdateManagedRuleSetVersionExpiryDateCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRegexPatternSetCommand = async ( @@ -4638,81 +3276,40 @@ const deserializeAws_json1_1UpdateRegexPatternSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRuleGroupCommand = async ( @@ -4740,97 +3337,46 @@ const deserializeAws_json1_1UpdateRuleGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.wafv2#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWebACLCommand = async ( @@ -4858,113 +3404,52 @@ const deserializeAws_json1_1UpdateWebACLCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "WAFDuplicateItemException": case "com.amazonaws.wafv2#WAFDuplicateItemException": - response = { - ...(await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFDuplicateItemExceptionResponse(parsedOutput, context); case "WAFExpiredManagedRuleGroupVersionException": case "com.amazonaws.wafv2#WAFExpiredManagedRuleGroupVersionException": - response = { - ...(await deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse(parsedOutput, context); case "WAFInternalErrorException": case "com.amazonaws.wafv2#WAFInternalErrorException": - response = { - ...(await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInternalErrorExceptionResponse(parsedOutput, context); case "WAFInvalidOperationException": case "com.amazonaws.wafv2#WAFInvalidOperationException": - response = { - ...(await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidOperationExceptionResponse(parsedOutput, context); case "WAFInvalidParameterException": case "com.amazonaws.wafv2#WAFInvalidParameterException": - response = { - ...(await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidParameterExceptionResponse(parsedOutput, context); case "WAFInvalidResourceException": case "com.amazonaws.wafv2#WAFInvalidResourceException": - response = { - ...(await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFInvalidResourceExceptionResponse(parsedOutput, context); case "WAFLimitsExceededException": case "com.amazonaws.wafv2#WAFLimitsExceededException": - response = { - ...(await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFLimitsExceededExceptionResponse(parsedOutput, context); case "WAFNonexistentItemException": case "com.amazonaws.wafv2#WAFNonexistentItemException": - response = { - ...(await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFNonexistentItemExceptionResponse(parsedOutput, context); case "WAFOptimisticLockException": case "com.amazonaws.wafv2#WAFOptimisticLockException": - response = { - ...(await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFOptimisticLockExceptionResponse(parsedOutput, context); case "WAFSubscriptionNotFoundException": case "com.amazonaws.wafv2#WAFSubscriptionNotFoundException": - response = { - ...(await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse(parsedOutput, context); case "WAFUnavailableEntityException": case "com.amazonaws.wafv2#WAFUnavailableEntityException": - response = { - ...(await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WAFUnavailableEntityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1WAFAssociatedItemExceptionResponse = async ( @@ -4973,13 +3458,11 @@ const deserializeAws_json1_1WAFAssociatedItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFAssociatedItemException(body, context); - const contents: WAFAssociatedItemException = { - name: "WAFAssociatedItemException", - $fault: "client", + const exception = new WAFAssociatedItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFDuplicateItemExceptionResponse = async ( @@ -4988,13 +3471,11 @@ const deserializeAws_json1_1WAFDuplicateItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFDuplicateItemException(body, context); - const contents: WAFDuplicateItemException = { - name: "WAFDuplicateItemException", - $fault: "client", + const exception = new WAFDuplicateItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse = async ( @@ -5003,13 +3484,11 @@ const deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFExpiredManagedRuleGroupVersionException(body, context); - const contents: WAFExpiredManagedRuleGroupVersionException = { - name: "WAFExpiredManagedRuleGroupVersionException", - $fault: "client", + const exception = new WAFExpiredManagedRuleGroupVersionException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInternalErrorExceptionResponse = async ( @@ -5018,13 +3497,11 @@ const deserializeAws_json1_1WAFInternalErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInternalErrorException(body, context); - const contents: WAFInternalErrorException = { - name: "WAFInternalErrorException", - $fault: "server", + const exception = new WAFInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidOperationExceptionResponse = async ( @@ -5033,13 +3510,11 @@ const deserializeAws_json1_1WAFInvalidOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidOperationException(body, context); - const contents: WAFInvalidOperationException = { - name: "WAFInvalidOperationException", - $fault: "client", + const exception = new WAFInvalidOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidParameterExceptionResponse = async ( @@ -5048,13 +3523,11 @@ const deserializeAws_json1_1WAFInvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidParameterException(body, context); - const contents: WAFInvalidParameterException = { - name: "WAFInvalidParameterException", - $fault: "client", + const exception = new WAFInvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse = async ( @@ -5063,13 +3536,11 @@ const deserializeAws_json1_1WAFInvalidPermissionPolicyExceptionResponse = async ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidPermissionPolicyException(body, context); - const contents: WAFInvalidPermissionPolicyException = { - name: "WAFInvalidPermissionPolicyException", - $fault: "client", + const exception = new WAFInvalidPermissionPolicyException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFInvalidResourceExceptionResponse = async ( @@ -5078,13 +3549,11 @@ const deserializeAws_json1_1WAFInvalidResourceExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFInvalidResourceException(body, context); - const contents: WAFInvalidResourceException = { - name: "WAFInvalidResourceException", - $fault: "client", + const exception = new WAFInvalidResourceException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFLimitsExceededExceptionResponse = async ( @@ -5093,13 +3562,11 @@ const deserializeAws_json1_1WAFLimitsExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFLimitsExceededException(body, context); - const contents: WAFLimitsExceededException = { - name: "WAFLimitsExceededException", - $fault: "client", + const exception = new WAFLimitsExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFLogDestinationPermissionIssueExceptionResponse = async ( @@ -5108,13 +3575,11 @@ const deserializeAws_json1_1WAFLogDestinationPermissionIssueExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFLogDestinationPermissionIssueException(body, context); - const contents: WAFLogDestinationPermissionIssueException = { - name: "WAFLogDestinationPermissionIssueException", - $fault: "client", + const exception = new WAFLogDestinationPermissionIssueException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFNonexistentItemExceptionResponse = async ( @@ -5123,13 +3588,11 @@ const deserializeAws_json1_1WAFNonexistentItemExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFNonexistentItemException(body, context); - const contents: WAFNonexistentItemException = { - name: "WAFNonexistentItemException", - $fault: "client", + const exception = new WAFNonexistentItemException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFOptimisticLockExceptionResponse = async ( @@ -5138,13 +3601,11 @@ const deserializeAws_json1_1WAFOptimisticLockExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFOptimisticLockException(body, context); - const contents: WAFOptimisticLockException = { - name: "WAFOptimisticLockException", - $fault: "client", + const exception = new WAFOptimisticLockException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse = async ( @@ -5153,13 +3614,11 @@ const deserializeAws_json1_1WAFServiceLinkedRoleErrorExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFServiceLinkedRoleErrorException(body, context); - const contents: WAFServiceLinkedRoleErrorException = { - name: "WAFServiceLinkedRoleErrorException", - $fault: "client", + const exception = new WAFServiceLinkedRoleErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse = async ( @@ -5168,13 +3627,11 @@ const deserializeAws_json1_1WAFSubscriptionNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFSubscriptionNotFoundException(body, context); - const contents: WAFSubscriptionNotFoundException = { - name: "WAFSubscriptionNotFoundException", - $fault: "client", + const exception = new WAFSubscriptionNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFTagOperationExceptionResponse = async ( @@ -5183,13 +3640,11 @@ const deserializeAws_json1_1WAFTagOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFTagOperationException(body, context); - const contents: WAFTagOperationException = { - name: "WAFTagOperationException", - $fault: "client", + const exception = new WAFTagOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse = async ( @@ -5198,13 +3653,11 @@ const deserializeAws_json1_1WAFTagOperationInternalErrorExceptionResponse = asyn ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFTagOperationInternalErrorException(body, context); - const contents: WAFTagOperationInternalErrorException = { - name: "WAFTagOperationInternalErrorException", - $fault: "server", + const exception = new WAFTagOperationInternalErrorException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WAFUnavailableEntityExceptionResponse = async ( @@ -5213,13 +3666,11 @@ const deserializeAws_json1_1WAFUnavailableEntityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WAFUnavailableEntityException(body, context); - const contents: WAFUnavailableEntityException = { - name: "WAFUnavailableEntityException", - $fault: "client", + const exception = new WAFUnavailableEntityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActionCondition = (input: ActionCondition, context: __SerdeContext): any => { diff --git a/clients/client-wellarchitected/src/index.ts b/clients/client-wellarchitected/src/index.ts index c6a148dca0584..70f7a426ea880 100644 --- a/clients/client-wellarchitected/src/index.ts +++ b/clients/client-wellarchitected/src/index.ts @@ -3,3 +3,4 @@ export * from "./WellArchitectedClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WellArchitectedServiceException } from "./models/WellArchitectedServiceException"; diff --git a/clients/client-wellarchitected/src/models/WellArchitectedServiceException.ts b/clients/client-wellarchitected/src/models/WellArchitectedServiceException.ts new file mode 100644 index 0000000000000..e54ae6b76d777 --- /dev/null +++ b/clients/client-wellarchitected/src/models/WellArchitectedServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WellArchitected service. + */ +export class WellArchitectedServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WellArchitectedServiceException.prototype); + } +} diff --git a/clients/client-wellarchitected/src/models/models_0.ts b/clients/client-wellarchitected/src/models/models_0.ts index 6de353c4a8698..53b7ccb171f2d 100644 --- a/clients/client-wellarchitected/src/models/models_0.ts +++ b/clients/client-wellarchitected/src/models/models_0.ts @@ -1,15 +1,30 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WellArchitectedServiceException as __BaseException } from "./WellArchitectedServiceException"; /** *

User does not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; /** *

Description of the error.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + this.Message = opts.Message; + } } export enum ChoiceReason { @@ -344,9 +359,9 @@ export namespace AssociateLensesInput { /** *

The resource already exists.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

Description of the error.

*/ @@ -361,26 +376,52 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

Type of the resource affected.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

There is a problem with the Well-Architected Tool API service.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

Description of the error.

*/ Message: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Description of the error.

*/ @@ -395,14 +436,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

Type of the resource affected.

*/ ResourceType: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + } } /** *

Request was denied due to request throttling.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

Description of the error.

*/ @@ -417,6 +472,20 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

Service Quotas requirement to identify originating service.

*/ ServiceCode?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.Message = opts.Message; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } /** @@ -453,9 +522,9 @@ export enum ValidationExceptionReason { /** *

The user input is not valid.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

Description of the error.

*/ @@ -470,6 +539,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The fields that caused the error, if applicable.

*/ Fields?: ValidationExceptionField[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.Message = opts.Message; + this.Reason = opts.Reason; + this.Fields = opts.Fields; + } } /** @@ -586,9 +669,9 @@ export namespace CreateLensShareOutput { /** *

The user has reached their resource quota.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

Description of the error.

*/ @@ -613,6 +696,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

Service Quotas requirement to identify originating service.

*/ ServiceCode: string | undefined; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.Message = opts.Message; + this.ResourceId = opts.ResourceId; + this.ResourceType = opts.ResourceType; + this.QuotaCode = opts.QuotaCode; + this.ServiceCode = opts.ServiceCode; + } } export interface CreateLensVersionInput { diff --git a/clients/client-wellarchitected/src/protocols/Aws_restJson1.ts b/clients/client-wellarchitected/src/protocols/Aws_restJson1.ts index 259a3919666a2..52a8db430e324 100644 --- a/clients/client-wellarchitected/src/protocols/Aws_restJson1.ts +++ b/clients/client-wellarchitected/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -124,6 +123,7 @@ import { WorkloadShareSummary, WorkloadSummary, } from "../models/models_0"; +import { WellArchitectedServiceException as __BaseException } from "../models/WellArchitectedServiceException"; export const serializeAws_restJson1AssociateLensesCommand = async ( input: AssociateLensesCommandInput, @@ -1616,73 +1616,37 @@ const deserializeAws_restJson1AssociateLensesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLensShareCommand = async ( @@ -1711,81 +1675,40 @@ const deserializeAws_restJson1CreateLensShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wellarchitected#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLensVersionCommand = async ( @@ -1818,81 +1741,40 @@ const deserializeAws_restJson1CreateLensVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wellarchitected#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateMilestoneCommand = async ( @@ -1925,81 +1807,40 @@ const deserializeAws_restJson1CreateMilestoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wellarchitected#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorkloadCommand = async ( @@ -2032,73 +1873,37 @@ const deserializeAws_restJson1CreateWorkloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wellarchitected#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateWorkloadShareCommand = async ( @@ -2131,81 +1936,40 @@ const deserializeAws_restJson1CreateWorkloadShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wellarchitected#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLensCommand = async ( @@ -2230,73 +1994,37 @@ const deserializeAws_restJson1DeleteLensCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLensShareCommand = async ( @@ -2321,73 +2049,37 @@ const deserializeAws_restJson1DeleteLensShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWorkloadCommand = async ( @@ -2412,73 +2104,37 @@ const deserializeAws_restJson1DeleteWorkloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteWorkloadShareCommand = async ( @@ -2503,73 +2159,37 @@ const deserializeAws_restJson1DeleteWorkloadShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateLensesCommand = async ( @@ -2594,73 +2214,37 @@ const deserializeAws_restJson1DisassociateLensesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ExportLensCommand = async ( @@ -2689,65 +2273,34 @@ const deserializeAws_restJson1ExportLensCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAnswerCommand = async ( @@ -2792,65 +2345,34 @@ const deserializeAws_restJson1GetAnswerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLensCommand = async ( @@ -2879,65 +2401,34 @@ const deserializeAws_restJson1GetLensCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLensReviewCommand = async ( @@ -2974,65 +2465,34 @@ const deserializeAws_restJson1GetLensReviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLensReviewReportCommand = async ( @@ -3069,65 +2529,34 @@ const deserializeAws_restJson1GetLensReviewReportCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetLensVersionDifferenceCommand = async ( @@ -3176,65 +2605,34 @@ const deserializeAws_restJson1GetLensVersionDifferenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetMilestoneCommand = async ( @@ -3267,65 +2665,34 @@ const deserializeAws_restJson1GetMilestoneCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetWorkloadCommand = async ( @@ -3354,65 +2721,34 @@ const deserializeAws_restJson1GetWorkloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ImportLensCommand = async ( @@ -3445,81 +2781,40 @@ const deserializeAws_restJson1ImportLensCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wellarchitected#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAnswersCommand = async ( @@ -3568,65 +2863,34 @@ const deserializeAws_restJson1ListAnswersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLensesCommand = async ( @@ -3659,57 +2923,31 @@ const deserializeAws_restJson1ListLensesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLensReviewImprovementsCommand = async ( @@ -3758,65 +2996,34 @@ const deserializeAws_restJson1ListLensReviewImprovementsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLensReviewsCommand = async ( @@ -3857,65 +3064,34 @@ const deserializeAws_restJson1ListLensReviewsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListLensSharesCommand = async ( @@ -3948,65 +3124,34 @@ const deserializeAws_restJson1ListLensSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListMilestonesCommand = async ( @@ -4043,65 +3188,34 @@ const deserializeAws_restJson1ListMilestonesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNotificationsCommand = async ( @@ -4134,57 +3248,31 @@ const deserializeAws_restJson1ListNotificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListShareInvitationsCommand = async ( @@ -4220,57 +3308,31 @@ const deserializeAws_restJson1ListShareInvitationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -4299,41 +3361,25 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorkloadsCommand = async ( @@ -4366,57 +3412,31 @@ const deserializeAws_restJson1ListWorkloadsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWorkloadSharesCommand = async ( @@ -4456,65 +3476,34 @@ const deserializeAws_restJson1ListWorkloadSharesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4539,41 +3528,25 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -4598,41 +3571,25 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAnswerCommand = async ( @@ -4673,73 +3630,37 @@ const deserializeAws_restJson1UpdateAnswerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateLensReviewCommand = async ( @@ -4772,73 +3693,37 @@ const deserializeAws_restJson1UpdateLensReviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateShareInvitationCommand = async ( @@ -4867,73 +3752,37 @@ const deserializeAws_restJson1UpdateShareInvitationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorkloadCommand = async ( @@ -4962,73 +3811,37 @@ const deserializeAws_restJson1UpdateWorkloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateWorkloadShareCommand = async ( @@ -5061,73 +3874,37 @@ const deserializeAws_restJson1UpdateWorkloadShareCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpgradeLensReviewCommand = async ( @@ -5152,104 +3929,60 @@ const deserializeAws_restJson1UpgradeLensReviewCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wellarchitected#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wellarchitected#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.wellarchitected#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wellarchitected#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.wellarchitected#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wellarchitected#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -5260,38 +3993,34 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceId: undefined, - ResourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -5302,23 +4031,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceType !== undefined && data.ResourceType !== null) { contents.ResourceType = __expectString(data.ResourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - ResourceId: undefined, - ResourceType: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -5335,21 +4059,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - QuotaCode: undefined, - ServiceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -5360,21 +4081,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.ServiceCode !== undefined && data.ServiceCode !== null) { contents.ServiceCode = __expectString(data.ServiceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Fields: undefined, - Message: undefined, - Reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Fields !== undefined && data.Fields !== null) { contents.Fields = deserializeAws_restJson1ValidationExceptionFieldList(data.Fields, context); @@ -5385,7 +4103,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.Reason !== undefined && data.Reason !== null) { contents.Reason = __expectString(data.Reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1ChoiceUpdate = (input: ChoiceUpdate, context: __SerdeContext): any => { diff --git a/clients/client-wisdom/src/index.ts b/clients/client-wisdom/src/index.ts index 53ac24cb116ea..e8ed811fcfb05 100644 --- a/clients/client-wisdom/src/index.ts +++ b/clients/client-wisdom/src/index.ts @@ -3,3 +3,4 @@ export * from "./WisdomClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WisdomServiceException } from "./models/WisdomServiceException"; diff --git a/clients/client-wisdom/src/models/WisdomServiceException.ts b/clients/client-wisdom/src/models/WisdomServiceException.ts new file mode 100644 index 0000000000000..e1bafe42a83ab --- /dev/null +++ b/clients/client-wisdom/src/models/WisdomServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from Wisdom service. + */ +export class WisdomServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WisdomServiceException.prototype); + } +} diff --git a/clients/client-wisdom/src/models/models_0.ts b/clients/client-wisdom/src/models/models_0.ts index 274a8278f44c8..84f010f1c2a7c 100644 --- a/clients/client-wisdom/src/models/models_0.ts +++ b/clients/client-wisdom/src/models/models_0.ts @@ -1,13 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WisdomServiceException as __BaseException } from "./WisdomServiceException"; /** *

You do not have sufficient access to perform this action.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } /** @@ -54,10 +66,20 @@ export namespace AppIntegrationsConfiguration { * CreateAssistant) that accepts name, a conflicting resource (usually with the * same name) is being created or mutated.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + } } /** @@ -284,33 +306,65 @@ export namespace CreateAssistantAssociationResponse { /** *

The specified resource does not exist.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

The specified resource name.

*/ resourceName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceName = opts.resourceName; + } } /** *

You've exceeded your service quota. To perform the requested action, remove some of the * relevant resources, or use service quotas to request a service quota increase.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + } } /** *

The input fails to satisfy the constraints specified by an AWS service.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + } } export interface DeleteAssistantAssociationRequest { @@ -1826,10 +1880,20 @@ export namespace ListContentsResponse { *

The provided revisionId does not match, indicating the content has been * modified since it was last read.

*/ -export interface PreconditionFailedException extends __SmithyException, $MetadataBearer { - name: "PreconditionFailedException"; - $fault: "client"; - message?: string; +export class PreconditionFailedException extends __BaseException { + readonly name: "PreconditionFailedException" = "PreconditionFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PreconditionFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PreconditionFailedException.prototype); + } } export interface UpdateContentRequest { @@ -2556,14 +2620,26 @@ export namespace TagResourceResponse { /** *

Amazon Connect Wisdom throws this exception if you have too many tags in your tag set.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; /** *

The specified resource name.

*/ resourceName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.resourceName = opts.resourceName; + } } export interface UntagResourceRequest { diff --git a/clients/client-wisdom/src/protocols/Aws_restJson1.ts b/clients/client-wisdom/src/protocols/Aws_restJson1.ts index 7c647ecd47535..72590cc28df96 100644 --- a/clients/client-wisdom/src/protocols/Aws_restJson1.ts +++ b/clients/client-wisdom/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -12,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -115,6 +114,7 @@ import { TooManyTagsException, ValidationException, } from "../models/models_0"; +import { WisdomServiceException as __BaseException } from "../models/WisdomServiceException"; export const serializeAws_restJson1CreateAssistantCommand = async ( input: CreateAssistantCommandInput, @@ -1264,57 +1264,31 @@ const deserializeAws_restJson1CreateAssistantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wisdom#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wisdom#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateAssistantAssociationCommand = async ( @@ -1346,65 +1320,34 @@ const deserializeAws_restJson1CreateAssistantAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wisdom#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wisdom#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateContentCommand = async ( @@ -1433,65 +1376,34 @@ const deserializeAws_restJson1CreateContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wisdom#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wisdom#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateKnowledgeBaseCommand = async ( @@ -1520,57 +1432,31 @@ const deserializeAws_restJson1CreateKnowledgeBaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wisdom#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.wisdom#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSessionCommand = async ( @@ -1599,49 +1485,28 @@ const deserializeAws_restJson1CreateSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictException": case "com.amazonaws.wisdom#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssistantCommand = async ( @@ -1666,49 +1531,28 @@ const deserializeAws_restJson1DeleteAssistantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteAssistantAssociationCommand = async ( @@ -1733,49 +1577,28 @@ const deserializeAws_restJson1DeleteAssistantAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteContentCommand = async ( @@ -1800,49 +1623,28 @@ const deserializeAws_restJson1DeleteContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteKnowledgeBaseCommand = async ( @@ -1867,49 +1669,28 @@ const deserializeAws_restJson1DeleteKnowledgeBaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.wisdom#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssistantCommand = async ( @@ -1938,49 +1719,28 @@ const deserializeAws_restJson1GetAssistantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetAssistantAssociationCommand = async ( @@ -2012,49 +1772,28 @@ const deserializeAws_restJson1GetAssistantAssociationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContentCommand = async ( @@ -2083,49 +1822,28 @@ const deserializeAws_restJson1GetContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetContentSummaryCommand = async ( @@ -2154,49 +1872,28 @@ const deserializeAws_restJson1GetContentSummaryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetKnowledgeBaseCommand = async ( @@ -2225,49 +1922,28 @@ const deserializeAws_restJson1GetKnowledgeBaseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetRecommendationsCommand = async ( @@ -2296,49 +1972,28 @@ const deserializeAws_restJson1GetRecommendationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSessionCommand = async ( @@ -2367,49 +2022,28 @@ const deserializeAws_restJson1GetSessionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssistantAssociationsCommand = async ( @@ -2445,49 +2079,28 @@ const deserializeAws_restJson1ListAssistantAssociationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListAssistantsCommand = async ( @@ -2520,41 +2133,25 @@ const deserializeAws_restJson1ListAssistantsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListContentsCommand = async ( @@ -2587,49 +2184,28 @@ const deserializeAws_restJson1ListContentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListKnowledgeBasesCommand = async ( @@ -2662,41 +2238,25 @@ const deserializeAws_restJson1ListKnowledgeBasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2725,33 +2285,22 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1NotifyRecommendationsReceivedCommand = async ( @@ -2784,49 +2333,28 @@ const deserializeAws_restJson1NotifyRecommendationsReceivedCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1QueryAssistantCommand = async ( @@ -2859,49 +2387,28 @@ const deserializeAws_restJson1QueryAssistantCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveKnowledgeBaseTemplateUriCommand = async ( @@ -2926,49 +2433,28 @@ const deserializeAws_restJson1RemoveKnowledgeBaseTemplateUriCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchContentCommand = async ( @@ -3001,49 +2487,28 @@ const deserializeAws_restJson1SearchContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SearchSessionsCommand = async ( @@ -3076,49 +2541,28 @@ const deserializeAws_restJson1SearchSessionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StartContentUploadCommand = async ( @@ -3159,49 +2603,28 @@ const deserializeAws_restJson1StartContentUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3226,41 +2649,25 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.wisdom#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3285,33 +2692,22 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateContentCommand = async ( @@ -3340,57 +2736,31 @@ const deserializeAws_restJson1UpdateContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "PreconditionFailedException": case "com.amazonaws.wisdom#PreconditionFailedException": - response = { - ...(await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PreconditionFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateKnowledgeBaseTemplateUriCommand = async ( @@ -3419,113 +2789,83 @@ const deserializeAws_restJson1UpdateKnowledgeBaseTemplateUriCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.wisdom#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.wisdom#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.wisdom#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1PreconditionFailedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PreconditionFailedException = { - name: "PreconditionFailedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new PreconditionFailedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3533,37 +2873,34 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceName !== undefined && data.resourceName !== null) { contents.resourceName = __expectString(data.resourceName); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -3571,24 +2908,27 @@ const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( if (data.resourceName !== undefined && data.resourceName !== null) { contents.resourceName = __expectString(data.resourceName); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AppIntegrationsConfiguration = ( diff --git a/clients/client-workdocs/src/index.ts b/clients/client-workdocs/src/index.ts index 996f2a89ffdae..f73ab189c7c4d 100644 --- a/clients/client-workdocs/src/index.ts +++ b/clients/client-workdocs/src/index.ts @@ -3,3 +3,4 @@ export * from "./WorkDocsClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WorkDocsServiceException } from "./models/WorkDocsServiceException"; diff --git a/clients/client-workdocs/src/models/WorkDocsServiceException.ts b/clients/client-workdocs/src/models/WorkDocsServiceException.ts new file mode 100644 index 0000000000000..fa1b55dcd7a3c --- /dev/null +++ b/clients/client-workdocs/src/models/WorkDocsServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WorkDocs service. + */ +export class WorkDocsServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WorkDocsServiceException.prototype); + } +} diff --git a/clients/client-workdocs/src/models/models_0.ts b/clients/client-workdocs/src/models/models_0.ts index 721678be9f1ff..8b1353971fe40 100644 --- a/clients/client-workdocs/src/models/models_0.ts +++ b/clients/client-workdocs/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WorkDocsServiceException as __BaseException } from "./WorkDocsServiceException"; export interface AbortDocumentVersionUploadRequest { /** @@ -31,11 +33,24 @@ export namespace AbortDocumentVersionUploadRequest { /** *

The resource does not exist.

*/ -export interface EntityNotExistsException extends __SmithyException, $MetadataBearer { - name: "EntityNotExistsException"; - $fault: "client"; +export class EntityNotExistsException extends __BaseException { + readonly name: "EntityNotExistsException" = "EntityNotExistsException"; + readonly $fault: "client" = "client"; Message?: string; EntityIds?: string[]; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityNotExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityNotExistsException.prototype); + this.Message = opts.Message; + this.EntityIds = opts.EntityIds; + } } /** @@ -43,47 +58,108 @@ export interface EntityNotExistsException extends __SmithyException, $MetadataBe * under the control of the organization is failing, such as a connected Active * Directory.

*/ -export interface FailedDependencyException extends __SmithyException, $MetadataBearer { - name: "FailedDependencyException"; - $fault: "client"; +export class FailedDependencyException extends __BaseException { + readonly name: "FailedDependencyException" = "FailedDependencyException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FailedDependencyException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FailedDependencyException.prototype); + this.Message = opts.Message; + } } /** *

The specified document version is not in the INITIALIZED state.

*/ -export interface ProhibitedStateException extends __SmithyException, $MetadataBearer { - name: "ProhibitedStateException"; - $fault: "client"; +export class ProhibitedStateException extends __BaseException { + readonly name: "ProhibitedStateException" = "ProhibitedStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ProhibitedStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ProhibitedStateException.prototype); + this.Message = opts.Message; + } } /** *

One or more of the dependencies is unavailable.

*/ -export interface ServiceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ServiceUnavailableException"; - $fault: "server"; +export class ServiceUnavailableException extends __BaseException { + readonly name: "ServiceUnavailableException" = "ServiceUnavailableException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceUnavailableException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ServiceUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

The operation is not permitted.

*/ -export interface UnauthorizedOperationException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedOperationException"; - $fault: "client"; +export class UnauthorizedOperationException extends __BaseException { + readonly name: "UnauthorizedOperationException" = "UnauthorizedOperationException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedOperationException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The caller does not have access to perform the action on the resource.

*/ -export interface UnauthorizedResourceAccessException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedResourceAccessException"; - $fault: "client"; +export class UnauthorizedResourceAccessException extends __BaseException { + readonly name: "UnauthorizedResourceAccessException" = "UnauthorizedResourceAccessException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedResourceAccessException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedResourceAccessException.prototype); + this.Message = opts.Message; + } } export interface ActivateUserRequest { @@ -900,19 +976,43 @@ export namespace CreateCommentResponse { *

This exception is thrown when the document is locked for comments and user tries to * create or delete a comment on that document.

*/ -export interface DocumentLockedForCommentsException extends __SmithyException, $MetadataBearer { - name: "DocumentLockedForCommentsException"; - $fault: "client"; +export class DocumentLockedForCommentsException extends __BaseException { + readonly name: "DocumentLockedForCommentsException" = "DocumentLockedForCommentsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DocumentLockedForCommentsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DocumentLockedForCommentsException.prototype); + this.Message = opts.Message; + } } /** *

The requested operation is not allowed on the specified comment object.

*/ -export interface InvalidCommentOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidCommentOperationException"; - $fault: "client"; +export class InvalidCommentOperationException extends __BaseException { + readonly name: "InvalidCommentOperationException" = "InvalidCommentOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCommentOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCommentOperationException.prototype); + this.Message = opts.Message; + } } export interface CreateCustomMetadataRequest { @@ -963,19 +1063,43 @@ export namespace CreateCustomMetadataResponse { *

The limit has been reached on the number of custom properties for the specified * resource.

*/ -export interface CustomMetadataLimitExceededException extends __SmithyException, $MetadataBearer { - name: "CustomMetadataLimitExceededException"; - $fault: "client"; +export class CustomMetadataLimitExceededException extends __BaseException { + readonly name: "CustomMetadataLimitExceededException" = "CustomMetadataLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomMetadataLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomMetadataLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

Another operation is in progress on the resource that conflicts with the current operation.

*/ -export interface ConflictingOperationException extends __SmithyException, $MetadataBearer { - name: "ConflictingOperationException"; - $fault: "client"; +export class ConflictingOperationException extends __BaseException { + readonly name: "ConflictingOperationException" = "ConflictingOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictingOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictingOperationException.prototype); + this.Message = opts.Message; + } } export interface CreateFolderRequest { @@ -1101,19 +1225,43 @@ export namespace CreateFolderResponse { /** *

The resource already exists.

*/ -export interface EntityAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "EntityAlreadyExistsException"; - $fault: "client"; +export class EntityAlreadyExistsException extends __BaseException { + readonly name: "EntityAlreadyExistsException" = "EntityAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The maximum of 100,000 folders under the parent folder has been exceeded.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } export interface CreateLabelsRequest { @@ -1158,10 +1306,22 @@ export namespace CreateLabelsResponse { *

The limit has been reached on the number of labels for the specified * resource.

*/ -export interface TooManyLabelsException extends __SmithyException, $MetadataBearer { - name: "TooManyLabelsException"; - $fault: "client"; +export class TooManyLabelsException extends __BaseException { + readonly name: "TooManyLabelsException" = "TooManyLabelsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyLabelsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyLabelsException.prototype); + this.Message = opts.Message; + } } export enum SubscriptionProtocolType { @@ -1254,10 +1414,22 @@ export namespace CreateNotificationSubscriptionResponse { *

You've reached the limit on the number of subscriptions for the WorkDocs * instance.

*/ -export interface TooManySubscriptionsException extends __SmithyException, $MetadataBearer { - name: "TooManySubscriptionsException"; - $fault: "client"; +export class TooManySubscriptionsException extends __BaseException { + readonly name: "TooManySubscriptionsException" = "TooManySubscriptionsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManySubscriptionsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManySubscriptionsException.prototype); + this.Message = opts.Message; + } } export interface CreateUserRequest { @@ -1441,10 +1613,22 @@ export namespace DeleteCustomMetadataResponse { /** *

The resource hierarchy is changing.

*/ -export interface ConcurrentModificationException extends __SmithyException, $MetadataBearer { - name: "ConcurrentModificationException"; - $fault: "client"; +export class ConcurrentModificationException extends __BaseException { + readonly name: "ConcurrentModificationException" = "ConcurrentModificationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConcurrentModificationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConcurrentModificationException.prototype); + this.Message = opts.Message; + } } export interface DeleteDocumentRequest { @@ -1695,10 +1879,22 @@ export namespace DescribeActivitiesResponse { /** *

The pagination marker or limit fields are not valid.

*/ -export interface InvalidArgumentException extends __SmithyException, $MetadataBearer { - name: "InvalidArgumentException"; - $fault: "client"; +export class InvalidArgumentException extends __BaseException { + readonly name: "InvalidArgumentException" = "InvalidArgumentException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidArgumentException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidArgumentException.prototype); + this.Message = opts.Message; + } } export interface DescribeCommentsRequest { @@ -2471,10 +2667,22 @@ export namespace DescribeUsersResponse { /** *

The response is too large to return. The request must include a filter to reduce the size of the response.

*/ -export interface RequestedEntityTooLargeException extends __SmithyException, $MetadataBearer { - name: "RequestedEntityTooLargeException"; - $fault: "client"; +export class RequestedEntityTooLargeException extends __BaseException { + readonly name: "RequestedEntityTooLargeException" = "RequestedEntityTooLargeException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RequestedEntityTooLargeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RequestedEntityTooLargeException.prototype); + this.Message = opts.Message; + } } export interface GetCurrentUserRequest { @@ -2562,10 +2770,22 @@ export namespace GetDocumentResponse { /** *

The password is invalid.

*/ -export interface InvalidPasswordException extends __SmithyException, $MetadataBearer { - name: "InvalidPasswordException"; - $fault: "client"; +export class InvalidPasswordException extends __BaseException { + readonly name: "InvalidPasswordException" = "InvalidPasswordException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPasswordException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPasswordException.prototype); + this.Message = opts.Message; + } } export interface GetDocumentPathRequest { @@ -2900,10 +3120,22 @@ export namespace GetResourcesResponse { *

This exception is thrown when a valid checkout ID is not presented on document * version upload calls for a document that has been checked out from Web client.

*/ -export interface DraftUploadOutOfSyncException extends __SmithyException, $MetadataBearer { - name: "DraftUploadOutOfSyncException"; - $fault: "client"; +export class DraftUploadOutOfSyncException extends __BaseException { + readonly name: "DraftUploadOutOfSyncException" = "DraftUploadOutOfSyncException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DraftUploadOutOfSyncException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DraftUploadOutOfSyncException.prototype); + this.Message = opts.Message; + } } export interface InitiateDocumentVersionUploadRequest { @@ -3009,28 +3241,64 @@ export namespace InitiateDocumentVersionUploadResponse { /** *

The resource is already checked out.

*/ -export interface ResourceAlreadyCheckedOutException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyCheckedOutException"; - $fault: "client"; +export class ResourceAlreadyCheckedOutException extends __BaseException { + readonly name: "ResourceAlreadyCheckedOutException" = "ResourceAlreadyCheckedOutException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyCheckedOutException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyCheckedOutException.prototype); + this.Message = opts.Message; + } } /** *

The storage limit has been exceeded.

*/ -export interface StorageLimitExceededException extends __SmithyException, $MetadataBearer { - name: "StorageLimitExceededException"; - $fault: "client"; +export class StorageLimitExceededException extends __BaseException { + readonly name: "StorageLimitExceededException" = "StorageLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageLimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The storage limit will be exceeded.

*/ -export interface StorageLimitWillExceedException extends __SmithyException, $MetadataBearer { - name: "StorageLimitWillExceedException"; - $fault: "client"; +export class StorageLimitWillExceedException extends __BaseException { + readonly name: "StorageLimitWillExceedException" = "StorageLimitWillExceedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "StorageLimitWillExceedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, StorageLimitWillExceedException.prototype); + this.Message = opts.Message; + } } export interface RemoveAllResourcePermissionsRequest { @@ -3128,10 +3396,22 @@ export namespace UpdateDocumentRequest { /** *

The operation is invalid.

*/ -export interface InvalidOperationException extends __SmithyException, $MetadataBearer { - name: "InvalidOperationException"; - $fault: "client"; +export class InvalidOperationException extends __BaseException { + readonly name: "InvalidOperationException" = "InvalidOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidOperationException.prototype); + this.Message = opts.Message; + } } export enum DocumentVersionStatus { @@ -3211,20 +3491,45 @@ export namespace UpdateFolderRequest { /** *

The last user in the organization is being deactivated.

*/ -export interface DeactivatingLastSystemUserException extends __SmithyException, $MetadataBearer { - name: "DeactivatingLastSystemUserException"; - $fault: "client"; +export class DeactivatingLastSystemUserException extends __BaseException { + readonly name: "DeactivatingLastSystemUserException" = "DeactivatingLastSystemUserException"; + readonly $fault: "client" = "client"; Message?: string; Code?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DeactivatingLastSystemUserException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DeactivatingLastSystemUserException.prototype); + this.Message = opts.Message; + this.Code = opts.Code; + } } /** *

The user is undergoing transfer of ownership.

*/ -export interface IllegalUserStateException extends __SmithyException, $MetadataBearer { - name: "IllegalUserStateException"; - $fault: "client"; +export class IllegalUserStateException extends __BaseException { + readonly name: "IllegalUserStateException" = "IllegalUserStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "IllegalUserStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, IllegalUserStateException.prototype); + this.Message = opts.Message; + } } export enum BooleanEnumType { diff --git a/clients/client-workdocs/src/protocols/Aws_restJson1.ts b/clients/client-workdocs/src/protocols/Aws_restJson1.ts index a5499e2e2c927..9ac87451e6d93 100644 --- a/clients/client-workdocs/src/protocols/Aws_restJson1.ts +++ b/clients/client-workdocs/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectLong as __expectLong, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -157,6 +156,7 @@ import { UserMetadata, UserStorageMetadata, } from "../models/models_0"; +import { WorkDocsServiceException as __BaseException } from "../models/WorkDocsServiceException"; export const serializeAws_restJson1AbortDocumentVersionUploadCommand = async ( input: AbortDocumentVersionUploadCommandInput, @@ -1675,73 +1675,37 @@ const deserializeAws_restJson1AbortDocumentVersionUploadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ActivateUserCommand = async ( @@ -1770,65 +1734,34 @@ const deserializeAws_restJson1ActivateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AddResourcePermissionsCommand = async ( @@ -1857,57 +1790,31 @@ const deserializeAws_restJson1AddResourcePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCommentCommand = async ( @@ -1936,89 +1843,43 @@ const deserializeAws_restJson1CreateCommentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DocumentLockedForCommentsException": case "com.amazonaws.workdocs#DocumentLockedForCommentsException": - response = { - ...(await deserializeAws_restJson1DocumentLockedForCommentsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DocumentLockedForCommentsExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidCommentOperationException": case "com.amazonaws.workdocs#InvalidCommentOperationException": - response = { - ...(await deserializeAws_restJson1InvalidCommentOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidCommentOperationExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateCustomMetadataCommand = async ( @@ -2043,81 +1904,40 @@ const deserializeAws_restJson1CreateCustomMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "CustomMetadataLimitExceededException": case "com.amazonaws.workdocs#CustomMetadataLimitExceededException": - response = { - ...(await deserializeAws_restJson1CustomMetadataLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1CustomMetadataLimitExceededExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFolderCommand = async ( @@ -2146,97 +1966,46 @@ const deserializeAws_restJson1CreateFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.workdocs#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.workdocs#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workdocs#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateLabelsCommand = async ( @@ -2261,73 +2030,37 @@ const deserializeAws_restJson1CreateLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManyLabelsException": case "com.amazonaws.workdocs#TooManyLabelsException": - response = { - ...(await deserializeAws_restJson1TooManyLabelsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyLabelsExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNotificationSubscriptionCommand = async ( @@ -2356,49 +2089,28 @@ const deserializeAws_restJson1CreateNotificationSubscriptionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "TooManySubscriptionsException": case "com.amazonaws.workdocs#TooManySubscriptionsException": - response = { - ...(await deserializeAws_restJson1TooManySubscriptionsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManySubscriptionsExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUserCommand = async ( @@ -2427,65 +2139,34 @@ const deserializeAws_restJson1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityAlreadyExistsException": case "com.amazonaws.workdocs#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeactivateUserCommand = async ( @@ -2510,65 +2191,34 @@ const deserializeAws_restJson1DeactivateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCommentCommand = async ( @@ -2593,81 +2243,40 @@ const deserializeAws_restJson1DeleteCommentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DocumentLockedForCommentsException": case "com.amazonaws.workdocs#DocumentLockedForCommentsException": - response = { - ...(await deserializeAws_restJson1DocumentLockedForCommentsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DocumentLockedForCommentsExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteCustomMetadataCommand = async ( @@ -2692,73 +2301,37 @@ const deserializeAws_restJson1DeleteCustomMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteDocumentCommand = async ( @@ -2783,89 +2356,43 @@ const deserializeAws_restJson1DeleteDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.workdocs#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConflictingOperationException": case "com.amazonaws.workdocs#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFolderCommand = async ( @@ -2890,89 +2417,43 @@ const deserializeAws_restJson1DeleteFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.workdocs#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConflictingOperationException": case "com.amazonaws.workdocs#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFolderContentsCommand = async ( @@ -2997,81 +2478,40 @@ const deserializeAws_restJson1DeleteFolderContentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConflictingOperationException": case "com.amazonaws.workdocs#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteLabelsCommand = async ( @@ -3096,65 +2536,34 @@ const deserializeAws_restJson1DeleteLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteNotificationSubscriptionCommand = async ( @@ -3179,57 +2588,31 @@ const deserializeAws_restJson1DeleteNotificationSubscriptionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserCommand = async ( @@ -3254,65 +2637,34 @@ const deserializeAws_restJson1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeActivitiesCommand = async ( @@ -3345,65 +2697,34 @@ const deserializeAws_restJson1DescribeActivitiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCommentsCommand = async ( @@ -3436,73 +2757,37 @@ const deserializeAws_restJson1DescribeCommentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDocumentVersionsCommand = async ( @@ -3535,81 +2820,40 @@ const deserializeAws_restJson1DescribeDocumentVersionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFolderContentsCommand = async ( @@ -3646,73 +2890,37 @@ const deserializeAws_restJson1DescribeFolderContentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeGroupsCommand = async ( @@ -3745,57 +2953,31 @@ const deserializeAws_restJson1DescribeGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeNotificationSubscriptionsCommand = async ( @@ -3828,49 +3010,28 @@ const deserializeAws_restJson1DescribeNotificationSubscriptionsCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeResourcePermissionsCommand = async ( @@ -3903,57 +3064,31 @@ const deserializeAws_restJson1DescribeResourcePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeRootFoldersCommand = async ( @@ -3986,65 +3121,34 @@ const deserializeAws_restJson1DescribeRootFoldersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeUsersCommand = async ( @@ -4081,81 +3185,40 @@ const deserializeAws_restJson1DescribeUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "RequestedEntityTooLargeException": case "com.amazonaws.workdocs#RequestedEntityTooLargeException": - response = { - ...(await deserializeAws_restJson1RequestedEntityTooLargeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RequestedEntityTooLargeExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetCurrentUserCommand = async ( @@ -4184,65 +3247,34 @@ const deserializeAws_restJson1GetCurrentUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentCommand = async ( @@ -4275,81 +3307,40 @@ const deserializeAws_restJson1GetDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.workdocs#InvalidPasswordException": - response = { - ...(await deserializeAws_restJson1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPasswordExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentPathCommand = async ( @@ -4378,65 +3369,34 @@ const deserializeAws_restJson1GetDocumentPathCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetDocumentVersionCommand = async ( @@ -4469,81 +3429,40 @@ const deserializeAws_restJson1GetDocumentVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.workdocs#InvalidPasswordException": - response = { - ...(await deserializeAws_restJson1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidPasswordExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFolderCommand = async ( @@ -4576,81 +3495,40 @@ const deserializeAws_restJson1GetFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetFolderPathCommand = async ( @@ -4679,65 +3557,34 @@ const deserializeAws_restJson1GetFolderPathCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetResourcesCommand = async ( @@ -4774,65 +3621,34 @@ const deserializeAws_restJson1GetResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InitiateDocumentVersionUploadCommand = async ( @@ -4865,113 +3681,52 @@ const deserializeAws_restJson1InitiateDocumentVersionUploadCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DraftUploadOutOfSyncException": case "com.amazonaws.workdocs#DraftUploadOutOfSyncException": - response = { - ...(await deserializeAws_restJson1DraftUploadOutOfSyncExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DraftUploadOutOfSyncExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.workdocs#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ResourceAlreadyCheckedOutException": case "com.amazonaws.workdocs#ResourceAlreadyCheckedOutException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyCheckedOutExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyCheckedOutExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "StorageLimitExceededException": case "com.amazonaws.workdocs#StorageLimitExceededException": - response = { - ...(await deserializeAws_restJson1StorageLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StorageLimitExceededExceptionResponse(parsedOutput, context); case "StorageLimitWillExceedException": case "com.amazonaws.workdocs#StorageLimitWillExceedException": - response = { - ...(await deserializeAws_restJson1StorageLimitWillExceedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1StorageLimitWillExceedExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveAllResourcePermissionsCommand = async ( @@ -4996,57 +3751,31 @@ const deserializeAws_restJson1RemoveAllResourcePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RemoveResourcePermissionCommand = async ( @@ -5071,57 +3800,31 @@ const deserializeAws_restJson1RemoveResourcePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDocumentCommand = async ( @@ -5146,105 +3849,49 @@ const deserializeAws_restJson1UpdateDocumentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.workdocs#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConflictingOperationException": case "com.amazonaws.workdocs#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.workdocs#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workdocs#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDocumentVersionCommand = async ( @@ -5269,89 +3916,43 @@ const deserializeAws_restJson1UpdateDocumentVersionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.workdocs#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "InvalidOperationException": case "com.amazonaws.workdocs#InvalidOperationException": - response = { - ...(await deserializeAws_restJson1InvalidOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidOperationExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFolderCommand = async ( @@ -5376,105 +3977,49 @@ const deserializeAws_restJson1UpdateFolderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ConcurrentModificationException": case "com.amazonaws.workdocs#ConcurrentModificationException": - response = { - ...(await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConcurrentModificationExceptionResponse(parsedOutput, context); case "ConflictingOperationException": case "com.amazonaws.workdocs#ConflictingOperationException": - response = { - ...(await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictingOperationExceptionResponse(parsedOutput, context); case "EntityAlreadyExistsException": case "com.amazonaws.workdocs#EntityAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityAlreadyExistsExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workdocs#LimitExceededException": - response = { - ...(await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); case "ProhibitedStateException": case "com.amazonaws.workdocs#ProhibitedStateException": - response = { - ...(await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ProhibitedStateExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserCommand = async ( @@ -5503,153 +4048,98 @@ const deserializeAws_restJson1UpdateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DeactivatingLastSystemUserException": case "com.amazonaws.workdocs#DeactivatingLastSystemUserException": - response = { - ...(await deserializeAws_restJson1DeactivatingLastSystemUserExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1DeactivatingLastSystemUserExceptionResponse(parsedOutput, context); case "EntityNotExistsException": case "com.amazonaws.workdocs#EntityNotExistsException": - response = { - ...(await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1EntityNotExistsExceptionResponse(parsedOutput, context); case "FailedDependencyException": case "com.amazonaws.workdocs#FailedDependencyException": - response = { - ...(await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FailedDependencyExceptionResponse(parsedOutput, context); case "IllegalUserStateException": case "com.amazonaws.workdocs#IllegalUserStateException": - response = { - ...(await deserializeAws_restJson1IllegalUserStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1IllegalUserStateExceptionResponse(parsedOutput, context); case "InvalidArgumentException": case "com.amazonaws.workdocs#InvalidArgumentException": - response = { - ...(await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidArgumentExceptionResponse(parsedOutput, context); case "ServiceUnavailableException": case "com.amazonaws.workdocs#ServiceUnavailableException": - response = { - ...(await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceUnavailableExceptionResponse(parsedOutput, context); case "UnauthorizedOperationException": case "com.amazonaws.workdocs#UnauthorizedOperationException": - response = { - ...(await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedOperationExceptionResponse(parsedOutput, context); case "UnauthorizedResourceAccessException": case "com.amazonaws.workdocs#UnauthorizedResourceAccessException": - response = { - ...(await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ConcurrentModificationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConcurrentModificationException = { - name: "ConcurrentModificationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConcurrentModificationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictingOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictingOperationException = { - name: "ConflictingOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ConflictingOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1CustomMetadataLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: CustomMetadataLimitExceededException = { - name: "CustomMetadataLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new CustomMetadataLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DeactivatingLastSystemUserExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DeactivatingLastSystemUserException = { - name: "DeactivatingLastSystemUserException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -5657,71 +4147,66 @@ const deserializeAws_restJson1DeactivatingLastSystemUserExceptionResponse = asyn if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DeactivatingLastSystemUserException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DocumentLockedForCommentsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DocumentLockedForCommentsException = { - name: "DocumentLockedForCommentsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DocumentLockedForCommentsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1DraftUploadOutOfSyncExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: DraftUploadOutOfSyncException = { - name: "DraftUploadOutOfSyncException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new DraftUploadOutOfSyncException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EntityAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EntityAlreadyExistsException = { - name: "EntityAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new EntityAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1EntityNotExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: EntityNotExistsException = { - name: "EntityNotExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - EntityIds: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.EntityIds !== undefined && data.EntityIds !== null) { contents.EntityIds = deserializeAws_restJson1EntityIdList(data.EntityIds, context); @@ -5729,275 +4214,258 @@ const deserializeAws_restJson1EntityNotExistsExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new EntityNotExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FailedDependencyExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FailedDependencyException = { - name: "FailedDependencyException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new FailedDependencyException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1IllegalUserStateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: IllegalUserStateException = { - name: "IllegalUserStateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new IllegalUserStateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidArgumentExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidArgumentException = { - name: "InvalidArgumentException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidArgumentException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidCommentOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidCommentOperationException = { - name: "InvalidCommentOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidCommentOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidOperationException = { - name: "InvalidOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidPasswordExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidPasswordException = { - name: "InvalidPasswordException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidPasswordException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1LimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new LimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ProhibitedStateExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ProhibitedStateException = { - name: "ProhibitedStateException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ProhibitedStateException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RequestedEntityTooLargeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RequestedEntityTooLargeException = { - name: "RequestedEntityTooLargeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new RequestedEntityTooLargeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyCheckedOutExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyCheckedOutException = { - name: "ResourceAlreadyCheckedOutException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceAlreadyCheckedOutException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceUnavailableExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceUnavailableException = { - name: "ServiceUnavailableException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ServiceUnavailableException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1StorageLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StorageLimitExceededException = { - name: "StorageLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new StorageLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1StorageLimitWillExceedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: StorageLimitWillExceedException = { - name: "StorageLimitWillExceedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new StorageLimitWillExceedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyLabelsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyLabelsException = { - name: "TooManyLabelsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyLabelsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManySubscriptionsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManySubscriptionsException = { - name: "TooManySubscriptionsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManySubscriptionsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedOperationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedOperationException = { - name: "UnauthorizedOperationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Code: undefined, - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Code !== undefined && data.Code !== null) { contents.Code = __expectString(data.Code); @@ -6005,24 +4473,27 @@ const deserializeAws_restJson1UnauthorizedOperationExceptionResponse = async ( if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedOperationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedResourceAccessExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedResourceAccessException = { - name: "UnauthorizedResourceAccessException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedResourceAccessException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CustomMetadataMap = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/clients/client-worklink/src/index.ts b/clients/client-worklink/src/index.ts index 5fa31bec099fe..190575bdfd9a4 100644 --- a/clients/client-worklink/src/index.ts +++ b/clients/client-worklink/src/index.ts @@ -3,3 +3,4 @@ export * from "./WorkLinkClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WorkLinkServiceException } from "./models/WorkLinkServiceException"; diff --git a/clients/client-worklink/src/models/WorkLinkServiceException.ts b/clients/client-worklink/src/models/WorkLinkServiceException.ts new file mode 100644 index 0000000000000..f0786064ada3d --- /dev/null +++ b/clients/client-worklink/src/models/WorkLinkServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WorkLink service. + */ +export class WorkLinkServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WorkLinkServiceException.prototype); + } +} diff --git a/clients/client-worklink/src/models/models_0.ts b/clients/client-worklink/src/models/models_0.ts index d9dd43263b6f5..2c3582250e075 100644 --- a/clients/client-worklink/src/models/models_0.ts +++ b/clients/client-worklink/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WorkLinkServiceException as __BaseException } from "./WorkLinkServiceException"; export interface AssociateDomainRequest { /** @@ -45,55 +48,127 @@ export namespace AssociateDomainResponse { /** *

The service is temporarily unavailable.

*/ -export interface InternalServerErrorException extends __SmithyException, $MetadataBearer { - name: "InternalServerErrorException"; - $fault: "server"; +export class InternalServerErrorException extends __BaseException { + readonly name: "InternalServerErrorException" = "InternalServerErrorException"; + readonly $fault: "server" = "server"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerErrorException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerErrorException.prototype); + this.Message = opts.Message; + } } /** *

The request is not valid.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + this.Message = opts.Message; + } } /** *

The requested resource was not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The number of requests exceeds the limit.

*/ -export interface TooManyRequestsException extends __SmithyException, $MetadataBearer { - name: "TooManyRequestsException"; - $fault: "client"; +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } } /** *

You are not authorized to perform this action.

*/ -export interface UnauthorizedException extends __SmithyException, $MetadataBearer { - name: "UnauthorizedException"; - $fault: "client"; +export class UnauthorizedException extends __BaseException { + readonly name: "UnauthorizedException" = "UnauthorizedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnauthorizedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnauthorizedException.prototype); + this.Message = opts.Message; + } } export enum AuthorizationProviderType { diff --git a/clients/client-worklink/src/protocols/Aws_restJson1.ts b/clients/client-worklink/src/protocols/Aws_restJson1.ts index 8f3d850c349a3..61ae85f63c198 100644 --- a/clients/client-worklink/src/protocols/Aws_restJson1.ts +++ b/clients/client-worklink/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { AssociateDomainCommandInput, AssociateDomainCommandOutput } from "../commands/AssociateDomainCommand"; @@ -122,6 +121,7 @@ import { WebsiteAuthorizationProviderSummary, WebsiteCaSummary, } from "../models/models_0"; +import { WorkLinkServiceException as __BaseException } from "../models/WorkLinkServiceException"; export const serializeAws_restJson1AssociateDomainCommand = async ( input: AssociateDomainCommandInput, @@ -1027,73 +1027,37 @@ const deserializeAws_restJson1AssociateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.worklink#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWebsiteAuthorizationProviderCommand = async ( @@ -1122,73 +1086,37 @@ const deserializeAws_restJson1AssociateWebsiteAuthorizationProviderCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.worklink#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateWebsiteCertificateAuthorityCommand = async ( @@ -1217,73 +1145,37 @@ const deserializeAws_restJson1AssociateWebsiteCertificateAuthorityCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.worklink#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateFleetCommand = async ( @@ -1312,73 +1204,37 @@ const deserializeAws_restJson1CreateFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.worklink#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteFleetCommand = async ( @@ -1403,65 +1259,34 @@ const deserializeAws_restJson1DeleteFleetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeAuditStreamConfigurationCommand = async ( @@ -1490,65 +1315,34 @@ const deserializeAws_restJson1DescribeAuditStreamConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeCompanyNetworkConfigurationCommand = async ( @@ -1585,65 +1379,34 @@ const deserializeAws_restJson1DescribeCompanyNetworkConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDeviceCommand = async ( @@ -1704,65 +1467,34 @@ const deserializeAws_restJson1DescribeDeviceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDevicePolicyConfigurationCommand = async ( @@ -1791,65 +1523,34 @@ const deserializeAws_restJson1DescribeDevicePolicyConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeDomainCommand = async ( @@ -1894,65 +1595,34 @@ const deserializeAws_restJson1DescribeDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeFleetMetadataCommand = async ( @@ -2009,65 +1679,34 @@ const deserializeAws_restJson1DescribeFleetMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeIdentityProviderConfigurationCommand = async ( @@ -2104,65 +1743,34 @@ const deserializeAws_restJson1DescribeIdentityProviderConfigurationCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DescribeWebsiteCertificateAuthorityCommand = async ( @@ -2199,65 +1807,34 @@ const deserializeAws_restJson1DescribeWebsiteCertificateAuthorityCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateDomainCommand = async ( @@ -2282,65 +1859,34 @@ const deserializeAws_restJson1DisassociateDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWebsiteAuthorizationProviderCommand = async ( @@ -2365,73 +1911,37 @@ const deserializeAws_restJson1DisassociateWebsiteAuthorizationProviderCommandErr ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.worklink#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateWebsiteCertificateAuthorityCommand = async ( @@ -2456,65 +1966,34 @@ const deserializeAws_restJson1DisassociateWebsiteCertificateAuthorityCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDevicesCommand = async ( @@ -2547,65 +2026,34 @@ const deserializeAws_restJson1ListDevicesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListDomainsCommand = async ( @@ -2638,65 +2086,34 @@ const deserializeAws_restJson1ListDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListFleetsCommand = async ( @@ -2729,57 +2146,31 @@ const deserializeAws_restJson1ListFleetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2808,33 +2199,22 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWebsiteAuthorizationProvidersCommand = async ( @@ -2870,65 +2250,34 @@ const deserializeAws_restJson1ListWebsiteAuthorizationProvidersCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListWebsiteCertificateAuthoritiesCommand = async ( @@ -2964,57 +2313,31 @@ const deserializeAws_restJson1ListWebsiteCertificateAuthoritiesCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RestoreDomainAccessCommand = async ( @@ -3039,65 +2362,34 @@ const deserializeAws_restJson1RestoreDomainAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RevokeDomainAccessCommand = async ( @@ -3122,65 +2414,34 @@ const deserializeAws_restJson1RevokeDomainAccessCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SignOutUserCommand = async ( @@ -3205,65 +2466,34 @@ const deserializeAws_restJson1SignOutUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -3288,33 +2518,22 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -3339,33 +2558,22 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateAuditStreamConfigurationCommand = async ( @@ -3390,65 +2598,34 @@ const deserializeAws_restJson1UpdateAuditStreamConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateCompanyNetworkConfigurationCommand = async ( @@ -3473,65 +2650,34 @@ const deserializeAws_restJson1UpdateCompanyNetworkConfigurationCommandError = as ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDevicePolicyConfigurationCommand = async ( @@ -3556,65 +2702,34 @@ const deserializeAws_restJson1UpdateDevicePolicyConfigurationCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateDomainMetadataCommand = async ( @@ -3639,65 +2754,34 @@ const deserializeAws_restJson1UpdateDomainMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateFleetMetadataCommand = async ( @@ -3722,65 +2806,34 @@ const deserializeAws_restJson1UpdateFleetMetadataCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIdentityProviderConfigurationCommand = async ( @@ -3805,167 +2858,130 @@ const deserializeAws_restJson1UpdateIdentityProviderConfigurationCommandError = ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InternalServerErrorException": case "com.amazonaws.worklink#InternalServerErrorException": - response = { - ...(await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerErrorExceptionResponse(parsedOutput, context); case "InvalidRequestException": case "com.amazonaws.worklink#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.worklink#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyRequestsException": case "com.amazonaws.worklink#TooManyRequestsException": - response = { - ...(await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context); case "UnauthorizedException": case "com.amazonaws.worklink#UnauthorizedException": - response = { - ...(await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InternalServerErrorExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerErrorException = { - name: "InternalServerErrorException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InternalServerErrorException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceAlreadyExistsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceAlreadyExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyRequestsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyRequestsException = { - name: "TooManyRequestsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1UnauthorizedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: UnauthorizedException = { - name: "UnauthorizedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new UnauthorizedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1SecurityGroupIds = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-workmail/src/index.ts b/clients/client-workmail/src/index.ts index 762adb3b410bc..d91d4605d0380 100644 --- a/clients/client-workmail/src/index.ts +++ b/clients/client-workmail/src/index.ts @@ -3,3 +3,4 @@ export * from "./WorkMailClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WorkMailServiceException } from "./models/WorkMailServiceException"; diff --git a/clients/client-workmail/src/models/WorkMailServiceException.ts b/clients/client-workmail/src/models/WorkMailServiceException.ts new file mode 100644 index 0000000000000..f44029ce90a18 --- /dev/null +++ b/clients/client-workmail/src/models/WorkMailServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WorkMail service. + */ +export class WorkMailServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WorkMailServiceException.prototype); + } +} diff --git a/clients/client-workmail/src/models/models_0.ts b/clients/client-workmail/src/models/models_0.ts index 50dc7edc6fc18..f795505585cc8 100644 --- a/clients/client-workmail/src/models/models_0.ts +++ b/clients/client-workmail/src/models/models_0.ts @@ -1,5 +1,7 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WorkMailServiceException as __BaseException } from "./WorkMailServiceException"; export enum AccessControlRuleEffect { ALLOW = "ALLOW", @@ -120,49 +122,109 @@ export namespace AssociateDelegateToResourceResponse { *

The identifier supplied for the user, group, or resource does not exist in your * organization.

*/ -export interface EntityNotFoundException extends __SmithyException, $MetadataBearer { - name: "EntityNotFoundException"; - $fault: "client"; +export class EntityNotFoundException extends __BaseException { + readonly name: "EntityNotFoundException" = "EntityNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

You are performing an operation on a user, group, or resource that isn't in the * expected state, such as trying to delete an active user.

*/ -export interface EntityStateException extends __SmithyException, $MetadataBearer { - name: "EntityStateException"; - $fault: "client"; +export class EntityStateException extends __BaseException { + readonly name: "EntityStateException" = "EntityStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityStateException.prototype); + this.Message = opts.Message; + } } /** *

One or more of the input parameters don't match the service's restrictions.

*/ -export interface InvalidParameterException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterException"; - $fault: "client"; +export class InvalidParameterException extends __BaseException { + readonly name: "InvalidParameterException" = "InvalidParameterException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.Message = opts.Message; + } } /** *

An operation received a valid organization identifier that either doesn't belong or * exist in the system.

*/ -export interface OrganizationNotFoundException extends __SmithyException, $MetadataBearer { - name: "OrganizationNotFoundException"; - $fault: "client"; +export class OrganizationNotFoundException extends __BaseException { + readonly name: "OrganizationNotFoundException" = "OrganizationNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

The organization must have a valid state to perform certain * operations on the organization or its members.

*/ -export interface OrganizationStateException extends __SmithyException, $MetadataBearer { - name: "OrganizationStateException"; - $fault: "client"; +export class OrganizationStateException extends __BaseException { + readonly name: "OrganizationStateException" = "OrganizationStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OrganizationStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OrganizationStateException.prototype); + this.Message = opts.Message; + } } export interface AssociateMemberToGroupRequest { @@ -205,28 +267,64 @@ export namespace AssociateMemberToGroupResponse { /** *

The directory service doesn't recognize the credentials supplied by WorkMail.

*/ -export interface DirectoryServiceAuthenticationFailedException extends __SmithyException, $MetadataBearer { - name: "DirectoryServiceAuthenticationFailedException"; - $fault: "client"; +export class DirectoryServiceAuthenticationFailedException extends __BaseException { + readonly name: "DirectoryServiceAuthenticationFailedException" = "DirectoryServiceAuthenticationFailedException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryServiceAuthenticationFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryServiceAuthenticationFailedException.prototype); + this.Message = opts.Message; + } } /** *

The directory is unavailable. It might be located in another Region or deleted.

*/ -export interface DirectoryUnavailableException extends __SmithyException, $MetadataBearer { - name: "DirectoryUnavailableException"; - $fault: "client"; +export class DirectoryUnavailableException extends __BaseException { + readonly name: "DirectoryUnavailableException" = "DirectoryUnavailableException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryUnavailableException.prototype); + this.Message = opts.Message; + } } /** *

You can't perform a write operation against a read-only directory.

*/ -export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedOperationException"; - $fault: "client"; +export class UnsupportedOperationException extends __BaseException { + readonly name: "UnsupportedOperationException" = "UnsupportedOperationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedOperationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedOperationException.prototype); + this.Message = opts.Message; + } } /** @@ -338,38 +436,86 @@ export namespace CreateAliasResponse { *

The email address that you're trying to assign is already created for a different * user, group, or resource.

*/ -export interface EmailAddressInUseException extends __SmithyException, $MetadataBearer { - name: "EmailAddressInUseException"; - $fault: "client"; +export class EmailAddressInUseException extends __BaseException { + readonly name: "EmailAddressInUseException" = "EmailAddressInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EmailAddressInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EmailAddressInUseException.prototype); + this.Message = opts.Message; + } } /** *

The request exceeds the limit of the resource.

*/ -export interface LimitExceededException extends __SmithyException, $MetadataBearer { - name: "LimitExceededException"; - $fault: "client"; +export class LimitExceededException extends __BaseException { + readonly name: "LimitExceededException" = "LimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "LimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, LimitExceededException.prototype); + this.Message = opts.Message; + } } /** *

The domain specified is not found in your organization.

*/ -export interface MailDomainNotFoundException extends __SmithyException, $MetadataBearer { - name: "MailDomainNotFoundException"; - $fault: "client"; +export class MailDomainNotFoundException extends __BaseException { + readonly name: "MailDomainNotFoundException" = "MailDomainNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MailDomainNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MailDomainNotFoundException.prototype); + this.Message = opts.Message; + } } /** *

After a domain has been added to the organization, it must be verified. The domain is * not yet verified.

*/ -export interface MailDomainStateException extends __SmithyException, $MetadataBearer { - name: "MailDomainStateException"; - $fault: "client"; +export class MailDomainStateException extends __BaseException { + readonly name: "MailDomainStateException" = "MailDomainStateException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MailDomainStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MailDomainStateException.prototype); + this.Message = opts.Message; + } } export interface CreateGroupRequest { @@ -412,19 +558,43 @@ export namespace CreateGroupResponse { /** *

The user, group, or resource name isn't unique in Amazon WorkMail.

*/ -export interface NameAvailabilityException extends __SmithyException, $MetadataBearer { - name: "NameAvailabilityException"; - $fault: "client"; +export class NameAvailabilityException extends __BaseException { + readonly name: "NameAvailabilityException" = "NameAvailabilityException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "NameAvailabilityException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, NameAvailabilityException.prototype); + this.Message = opts.Message; + } } /** *

This user, group, or resource name is not allowed in Amazon WorkMail.

*/ -export interface ReservedNameException extends __SmithyException, $MetadataBearer { - name: "ReservedNameException"; - $fault: "client"; +export class ReservedNameException extends __BaseException { + readonly name: "ReservedNameException" = "ReservedNameException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ReservedNameException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ReservedNameException.prototype); + this.Message = opts.Message; + } } export enum MobileDeviceAccessRuleEffect { @@ -610,10 +780,22 @@ export namespace CreateOrganizationResponse { /** *

The directory is already in use by another WorkMail organization in the same account and Region.

*/ -export interface DirectoryInUseException extends __SmithyException, $MetadataBearer { - name: "DirectoryInUseException"; - $fault: "client"; +export class DirectoryInUseException extends __BaseException { + readonly name: "DirectoryInUseException" = "DirectoryInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DirectoryInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DirectoryInUseException.prototype); + this.Message = opts.Message; + } } export enum ResourceType { @@ -717,10 +899,22 @@ export namespace CreateUserResponse { *

The supplied password doesn't match the minimum security constraints, such as length * or use of special characters.

*/ -export interface InvalidPasswordException extends __SmithyException, $MetadataBearer { - name: "InvalidPasswordException"; - $fault: "client"; +export class InvalidPasswordException extends __BaseException { + readonly name: "InvalidPasswordException" = "InvalidPasswordException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidPasswordException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidPasswordException.prototype); + this.Message = opts.Message; + } } export enum MemberType { @@ -1217,19 +1411,43 @@ export namespace DeregisterMailDomainResponse { *

You SES configuration has customizations that Amazon WorkMail cannot save. The error message lists the invalid setting. For examples of invalid settings, refer to * CreateReceiptRule.

*/ -export interface InvalidCustomSesConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidCustomSesConfigurationException"; - $fault: "client"; +export class InvalidCustomSesConfigurationException extends __BaseException { + readonly name: "InvalidCustomSesConfigurationException" = "InvalidCustomSesConfigurationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidCustomSesConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidCustomSesConfigurationException.prototype); + this.Message = opts.Message; + } } /** *

The domain you're trying to change is in use by another user or organization in your account. See the error message for details.

*/ -export interface MailDomainInUseException extends __SmithyException, $MetadataBearer { - name: "MailDomainInUseException"; - $fault: "client"; +export class MailDomainInUseException extends __BaseException { + readonly name: "MailDomainInUseException" = "MailDomainInUseException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MailDomainInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MailDomainInUseException.prototype); + this.Message = opts.Message; + } } export interface DescribeEmailMonitoringConfigurationRequest { @@ -1272,10 +1490,22 @@ export namespace DescribeEmailMonitoringConfigurationResponse { /** *

The resource cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + } } export interface DescribeGroupRequest { @@ -1833,10 +2063,22 @@ export enum DnsRecordVerificationStatus { *

The user, group, or resource that you're trying to register is already * registered.

*/ -export interface EntityAlreadyRegisteredException extends __SmithyException, $MetadataBearer { - name: "EntityAlreadyRegisteredException"; - $fault: "client"; +export class EntityAlreadyRegisteredException extends __BaseException { + readonly name: "EntityAlreadyRegisteredException" = "EntityAlreadyRegisteredException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "EntityAlreadyRegisteredException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, EntityAlreadyRegisteredException.prototype); + this.Message = opts.Message; + } } export enum RetentionAction { @@ -2298,10 +2540,22 @@ export namespace Group { * auto-respond to requests or have at least one delegate associated that can do so on its * behalf.

*/ -export interface InvalidConfigurationException extends __SmithyException, $MetadataBearer { - name: "InvalidConfigurationException"; - $fault: "client"; +export class InvalidConfigurationException extends __BaseException { + readonly name: "InvalidConfigurationException" = "InvalidConfigurationException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidConfigurationException.prototype); + this.Message = opts.Message; + } } /** @@ -3967,10 +4221,22 @@ export namespace TagResourceResponse { /** *

The resource can have up to 50 user-applied tags.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + } } export interface UntagResourceRequest { diff --git a/clients/client-workmail/src/protocols/Aws_json1_1.ts b/clients/client-workmail/src/protocols/Aws_json1_1.ts index 0b76dd06f889d..26af61f3a2f3f 100644 --- a/clients/client-workmail/src/protocols/Aws_json1_1.ts +++ b/clients/client-workmail/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -11,10 +12,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -379,6 +378,7 @@ import { UpdateResourceResponse, User, } from "../models/models_0"; +import { WorkMailServiceException as __BaseException } from "../models/WorkMailServiceException"; export const serializeAws_json1_1AssociateDelegateToResourceCommand = async ( input: AssociateDelegateToResourceCommandInput, @@ -1289,65 +1289,34 @@ const deserializeAws_json1_1AssociateDelegateToResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateMemberToGroupCommand = async ( @@ -1375,89 +1344,43 @@ const deserializeAws_json1_1AssociateMemberToGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CancelMailboxExportJobCommand = async ( @@ -1485,57 +1408,31 @@ const deserializeAws_json1_1CancelMailboxExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateAliasCommand = async ( @@ -1563,97 +1460,46 @@ const deserializeAws_json1_1CreateAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EmailAddressInUseException": case "com.amazonaws.workmail#EmailAddressInUseException": - response = { - ...(await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MailDomainNotFoundException": case "com.amazonaws.workmail#MailDomainNotFoundException": - response = { - ...(await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context); case "MailDomainStateException": case "com.amazonaws.workmail#MailDomainStateException": - response = { - ...(await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateGroupCommand = async ( @@ -1681,89 +1527,43 @@ const deserializeAws_json1_1CreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NameAvailabilityException": case "com.amazonaws.workmail#NameAvailabilityException": - response = { - ...(await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ReservedNameException": case "com.amazonaws.workmail#ReservedNameException": - response = { - ...(await deserializeAws_json1_1ReservedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReservedNameExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateMobileDeviceAccessRuleCommand = async ( @@ -1791,57 +1591,31 @@ const deserializeAws_json1_1CreateMobileDeviceAccessRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateOrganizationCommand = async ( @@ -1869,65 +1643,34 @@ const deserializeAws_json1_1CreateOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryInUseException": case "com.amazonaws.workmail#DirectoryInUseException": - response = { - ...(await deserializeAws_json1_1DirectoryInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryInUseExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "NameAvailabilityException": case "com.amazonaws.workmail#NameAvailabilityException": - response = { - ...(await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateResourceCommand = async ( @@ -1955,81 +1698,40 @@ const deserializeAws_json1_1CreateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "NameAvailabilityException": case "com.amazonaws.workmail#NameAvailabilityException": - response = { - ...(await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ReservedNameException": case "com.amazonaws.workmail#ReservedNameException": - response = { - ...(await deserializeAws_json1_1ReservedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReservedNameExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUserCommand = async ( @@ -2057,97 +1759,46 @@ const deserializeAws_json1_1CreateUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.workmail#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "NameAvailabilityException": case "com.amazonaws.workmail#NameAvailabilityException": - response = { - ...(await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ReservedNameException": case "com.amazonaws.workmail#ReservedNameException": - response = { - ...(await deserializeAws_json1_1ReservedNameExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ReservedNameExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAccessControlRuleCommand = async ( @@ -2175,41 +1826,25 @@ const deserializeAws_json1_1DeleteAccessControlRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteAliasCommand = async ( @@ -2237,65 +1872,34 @@ const deserializeAws_json1_1DeleteAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteEmailMonitoringConfigurationCommand = async ( @@ -2323,49 +1927,28 @@ const deserializeAws_json1_1DeleteEmailMonitoringConfigurationCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteGroupCommand = async ( @@ -2393,81 +1976,40 @@ const deserializeAws_json1_1DeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMailboxPermissionsCommand = async ( @@ -2495,65 +2037,34 @@ const deserializeAws_json1_1DeleteMailboxPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMobileDeviceAccessOverrideCommand = async ( @@ -2581,57 +2092,31 @@ const deserializeAws_json1_1DeleteMobileDeviceAccessOverrideCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteMobileDeviceAccessRuleCommand = async ( @@ -2659,49 +2144,28 @@ const deserializeAws_json1_1DeleteMobileDeviceAccessRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteOrganizationCommand = async ( @@ -2729,49 +2193,28 @@ const deserializeAws_json1_1DeleteOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteResourceCommand = async ( @@ -2799,57 +2242,31 @@ const deserializeAws_json1_1DeleteResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteRetentionPolicyCommand = async ( @@ -2877,49 +2294,28 @@ const deserializeAws_json1_1DeleteRetentionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteUserCommand = async ( @@ -2947,81 +2343,40 @@ const deserializeAws_json1_1DeleteUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterFromWorkMailCommand = async ( @@ -3049,65 +2404,34 @@ const deserializeAws_json1_1DeregisterFromWorkMailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterMailDomainCommand = async ( @@ -3135,65 +2459,34 @@ const deserializeAws_json1_1DeregisterMailDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidCustomSesConfigurationException": case "com.amazonaws.workmail#InvalidCustomSesConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidCustomSesConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidCustomSesConfigurationExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MailDomainInUseException": case "com.amazonaws.workmail#MailDomainInUseException": - response = { - ...(await deserializeAws_json1_1MailDomainInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainInUseExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeEmailMonitoringConfigurationCommand = async ( @@ -3221,57 +2514,31 @@ const deserializeAws_json1_1DescribeEmailMonitoringConfigurationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workmail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeGroupCommand = async ( @@ -3299,57 +2566,31 @@ const deserializeAws_json1_1DescribeGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeInboundDmarcSettingsCommand = async ( @@ -3377,41 +2618,25 @@ const deserializeAws_json1_1DescribeInboundDmarcSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeMailboxExportJobCommand = async ( @@ -3439,57 +2664,31 @@ const deserializeAws_json1_1DescribeMailboxExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeOrganizationCommand = async ( @@ -3517,41 +2716,25 @@ const deserializeAws_json1_1DescribeOrganizationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeResourceCommand = async ( @@ -3579,57 +2762,31 @@ const deserializeAws_json1_1DescribeResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeUserCommand = async ( @@ -3657,57 +2814,31 @@ const deserializeAws_json1_1DescribeUserCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateDelegateFromResourceCommand = async ( @@ -3735,65 +2866,34 @@ const deserializeAws_json1_1DisassociateDelegateFromResourceCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateMemberFromGroupCommand = async ( @@ -3821,89 +2921,43 @@ const deserializeAws_json1_1DisassociateMemberFromGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetAccessControlEffectCommand = async ( @@ -3931,57 +2985,31 @@ const deserializeAws_json1_1GetAccessControlEffectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetDefaultRetentionPolicyCommand = async ( @@ -4009,57 +3037,31 @@ const deserializeAws_json1_1GetDefaultRetentionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMailboxDetailsCommand = async ( @@ -4087,49 +3089,28 @@ const deserializeAws_json1_1GetMailboxDetailsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMailDomainCommand = async ( @@ -4157,57 +3138,31 @@ const deserializeAws_json1_1GetMailDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MailDomainNotFoundException": case "com.amazonaws.workmail#MailDomainNotFoundException": - response = { - ...(await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMobileDeviceAccessEffectCommand = async ( @@ -4235,49 +3190,28 @@ const deserializeAws_json1_1GetMobileDeviceAccessEffectCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GetMobileDeviceAccessOverrideCommand = async ( @@ -4305,65 +3239,34 @@ const deserializeAws_json1_1GetMobileDeviceAccessOverrideCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workmail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAccessControlRulesCommand = async ( @@ -4391,41 +3294,25 @@ const deserializeAws_json1_1ListAccessControlRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAliasesCommand = async ( @@ -4453,65 +3340,34 @@ const deserializeAws_json1_1ListAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGroupMembersCommand = async ( @@ -4539,65 +3395,34 @@ const deserializeAws_json1_1ListGroupMembersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListGroupsCommand = async ( @@ -4625,57 +3450,31 @@ const deserializeAws_json1_1ListGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMailboxExportJobsCommand = async ( @@ -4703,49 +3502,28 @@ const deserializeAws_json1_1ListMailboxExportJobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMailboxPermissionsCommand = async ( @@ -4773,57 +3551,31 @@ const deserializeAws_json1_1ListMailboxPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMailDomainsCommand = async ( @@ -4851,49 +3603,28 @@ const deserializeAws_json1_1ListMailDomainsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMobileDeviceAccessOverridesCommand = async ( @@ -4921,57 +3652,31 @@ const deserializeAws_json1_1ListMobileDeviceAccessOverridesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListMobileDeviceAccessRulesCommand = async ( @@ -4999,49 +3704,28 @@ const deserializeAws_json1_1ListMobileDeviceAccessRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListOrganizationsCommand = async ( @@ -5069,33 +3753,22 @@ const deserializeAws_json1_1ListOrganizationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourceDelegatesCommand = async ( @@ -5123,65 +3796,34 @@ const deserializeAws_json1_1ListResourceDelegatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListResourcesCommand = async ( @@ -5209,49 +3851,28 @@ const deserializeAws_json1_1ListResourcesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListTagsForResourceCommand = async ( @@ -5279,33 +3900,22 @@ const deserializeAws_json1_1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.workmail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListUsersCommand = async ( @@ -5333,49 +3943,28 @@ const deserializeAws_json1_1ListUsersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAccessControlRuleCommand = async ( @@ -5403,65 +3992,34 @@ const deserializeAws_json1_1PutAccessControlRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutEmailMonitoringConfigurationCommand = async ( @@ -5489,57 +4047,31 @@ const deserializeAws_json1_1PutEmailMonitoringConfigurationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workmail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutInboundDmarcSettingsCommand = async ( @@ -5567,41 +4099,25 @@ const deserializeAws_json1_1PutInboundDmarcSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutMailboxPermissionsCommand = async ( @@ -5629,65 +4145,34 @@ const deserializeAws_json1_1PutMailboxPermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutMobileDeviceAccessOverrideCommand = async ( @@ -5715,65 +4200,34 @@ const deserializeAws_json1_1PutMobileDeviceAccessOverrideCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutRetentionPolicyCommand = async ( @@ -5801,57 +4255,31 @@ const deserializeAws_json1_1PutRetentionPolicyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterMailDomainCommand = async ( @@ -5879,65 +4307,34 @@ const deserializeAws_json1_1RegisterMailDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "MailDomainInUseException": case "com.amazonaws.workmail#MailDomainInUseException": - response = { - ...(await deserializeAws_json1_1MailDomainInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainInUseExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterToWorkMailCommand = async ( @@ -5965,113 +4362,52 @@ const deserializeAws_json1_1RegisterToWorkMailCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EmailAddressInUseException": case "com.amazonaws.workmail#EmailAddressInUseException": - response = { - ...(await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context); case "EntityAlreadyRegisteredException": case "com.amazonaws.workmail#EntityAlreadyRegisteredException": - response = { - ...(await deserializeAws_json1_1EntityAlreadyRegisteredExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityAlreadyRegisteredExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MailDomainNotFoundException": case "com.amazonaws.workmail#MailDomainNotFoundException": - response = { - ...(await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context); case "MailDomainStateException": case "com.amazonaws.workmail#MailDomainStateException": - response = { - ...(await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ResetPasswordCommand = async ( @@ -6099,97 +4435,46 @@ const deserializeAws_json1_1ResetPasswordCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "InvalidPasswordException": case "com.amazonaws.workmail#InvalidPasswordException": - response = { - ...(await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidPasswordExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartMailboxExportJobCommand = async ( @@ -6217,65 +4502,34 @@ const deserializeAws_json1_1StartMailboxExportJobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "LimitExceededException": case "com.amazonaws.workmail#LimitExceededException": - response = { - ...(await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TagResourceCommand = async ( @@ -6303,49 +4557,28 @@ const deserializeAws_json1_1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workmail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.workmail#TooManyTagsException": - response = { - ...(await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UntagResourceCommand = async ( @@ -6373,33 +4606,22 @@ const deserializeAws_json1_1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.workmail#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateDefaultMailDomainCommand = async ( @@ -6427,65 +4649,34 @@ const deserializeAws_json1_1UpdateDefaultMailDomainCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MailDomainNotFoundException": case "com.amazonaws.workmail#MailDomainNotFoundException": - response = { - ...(await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context); case "MailDomainStateException": case "com.amazonaws.workmail#MailDomainStateException": - response = { - ...(await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMailboxQuotaCommand = async ( @@ -6513,65 +4704,34 @@ const deserializeAws_json1_1UpdateMailboxQuotaCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateMobileDeviceAccessRuleCommand = async ( @@ -6599,57 +4759,31 @@ const deserializeAws_json1_1UpdateMobileDeviceAccessRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdatePrimaryEmailAddressCommand = async ( @@ -6677,113 +4811,52 @@ const deserializeAws_json1_1UpdatePrimaryEmailAddressCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryServiceAuthenticationFailedException": case "com.amazonaws.workmail#DirectoryServiceAuthenticationFailedException": - response = { - ...(await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse(parsedOutput, context); case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EmailAddressInUseException": case "com.amazonaws.workmail#EmailAddressInUseException": - response = { - ...(await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidParameterException": case "com.amazonaws.workmail#InvalidParameterException": - response = { - ...(await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context); case "MailDomainNotFoundException": case "com.amazonaws.workmail#MailDomainNotFoundException": - response = { - ...(await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context); case "MailDomainStateException": case "com.amazonaws.workmail#MailDomainStateException": - response = { - ...(await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); case "UnsupportedOperationException": case "com.amazonaws.workmail#UnsupportedOperationException": - response = { - ...(await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedOperationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateResourceCommand = async ( @@ -6811,105 +4884,49 @@ const deserializeAws_json1_1UpdateResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "DirectoryUnavailableException": case "com.amazonaws.workmail#DirectoryUnavailableException": - response = { - ...(await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1DirectoryUnavailableExceptionResponse(parsedOutput, context); case "EmailAddressInUseException": case "com.amazonaws.workmail#EmailAddressInUseException": - response = { - ...(await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EmailAddressInUseExceptionResponse(parsedOutput, context); case "EntityNotFoundException": case "com.amazonaws.workmail#EntityNotFoundException": - response = { - ...(await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context); case "EntityStateException": case "com.amazonaws.workmail#EntityStateException": - response = { - ...(await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context); case "InvalidConfigurationException": case "com.amazonaws.workmail#InvalidConfigurationException": - response = { - ...(await deserializeAws_json1_1InvalidConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidConfigurationExceptionResponse(parsedOutput, context); case "MailDomainNotFoundException": case "com.amazonaws.workmail#MailDomainNotFoundException": - response = { - ...(await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainNotFoundExceptionResponse(parsedOutput, context); case "MailDomainStateException": case "com.amazonaws.workmail#MailDomainStateException": - response = { - ...(await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1MailDomainStateExceptionResponse(parsedOutput, context); case "NameAvailabilityException": case "com.amazonaws.workmail#NameAvailabilityException": - response = { - ...(await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1NameAvailabilityExceptionResponse(parsedOutput, context); case "OrganizationNotFoundException": case "com.amazonaws.workmail#OrganizationNotFoundException": - response = { - ...(await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context); case "OrganizationStateException": case "com.amazonaws.workmail#OrganizationStateException": - response = { - ...(await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1DirectoryInUseExceptionResponse = async ( @@ -6918,13 +4935,11 @@ const deserializeAws_json1_1DirectoryInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryInUseException(body, context); - const contents: DirectoryInUseException = { - name: "DirectoryInUseException", - $fault: "client", + const exception = new DirectoryInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionResponse = async ( @@ -6933,13 +4948,11 @@ const deserializeAws_json1_1DirectoryServiceAuthenticationFailedExceptionRespons ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryServiceAuthenticationFailedException(body, context); - const contents: DirectoryServiceAuthenticationFailedException = { - name: "DirectoryServiceAuthenticationFailedException", - $fault: "client", + const exception = new DirectoryServiceAuthenticationFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1DirectoryUnavailableExceptionResponse = async ( @@ -6948,13 +4961,11 @@ const deserializeAws_json1_1DirectoryUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1DirectoryUnavailableException(body, context); - const contents: DirectoryUnavailableException = { - name: "DirectoryUnavailableException", - $fault: "client", + const exception = new DirectoryUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EmailAddressInUseExceptionResponse = async ( @@ -6963,13 +4974,11 @@ const deserializeAws_json1_1EmailAddressInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EmailAddressInUseException(body, context); - const contents: EmailAddressInUseException = { - name: "EmailAddressInUseException", - $fault: "client", + const exception = new EmailAddressInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntityAlreadyRegisteredExceptionResponse = async ( @@ -6978,13 +4987,11 @@ const deserializeAws_json1_1EntityAlreadyRegisteredExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntityAlreadyRegisteredException(body, context); - const contents: EntityAlreadyRegisteredException = { - name: "EntityAlreadyRegisteredException", - $fault: "client", + const exception = new EntityAlreadyRegisteredException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntityNotFoundExceptionResponse = async ( @@ -6993,13 +5000,11 @@ const deserializeAws_json1_1EntityNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntityNotFoundException(body, context); - const contents: EntityNotFoundException = { - name: "EntityNotFoundException", - $fault: "client", + const exception = new EntityNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1EntityStateExceptionResponse = async ( @@ -7008,13 +5013,11 @@ const deserializeAws_json1_1EntityStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1EntityStateException(body, context); - const contents: EntityStateException = { - name: "EntityStateException", - $fault: "client", + const exception = new EntityStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidConfigurationExceptionResponse = async ( @@ -7023,13 +5026,11 @@ const deserializeAws_json1_1InvalidConfigurationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidConfigurationException(body, context); - const contents: InvalidConfigurationException = { - name: "InvalidConfigurationException", - $fault: "client", + const exception = new InvalidConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidCustomSesConfigurationExceptionResponse = async ( @@ -7038,13 +5039,11 @@ const deserializeAws_json1_1InvalidCustomSesConfigurationExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidCustomSesConfigurationException(body, context); - const contents: InvalidCustomSesConfigurationException = { - name: "InvalidCustomSesConfigurationException", - $fault: "client", + const exception = new InvalidCustomSesConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( @@ -7053,13 +5052,11 @@ const deserializeAws_json1_1InvalidParameterExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterException(body, context); - const contents: InvalidParameterException = { - name: "InvalidParameterException", - $fault: "client", + const exception = new InvalidParameterException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidPasswordExceptionResponse = async ( @@ -7068,13 +5065,11 @@ const deserializeAws_json1_1InvalidPasswordExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidPasswordException(body, context); - const contents: InvalidPasswordException = { - name: "InvalidPasswordException", - $fault: "client", + const exception = new InvalidPasswordException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1LimitExceededExceptionResponse = async ( @@ -7083,13 +5078,11 @@ const deserializeAws_json1_1LimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1LimitExceededException(body, context); - const contents: LimitExceededException = { - name: "LimitExceededException", - $fault: "client", + const exception = new LimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MailDomainInUseExceptionResponse = async ( @@ -7098,13 +5091,11 @@ const deserializeAws_json1_1MailDomainInUseExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MailDomainInUseException(body, context); - const contents: MailDomainInUseException = { - name: "MailDomainInUseException", - $fault: "client", + const exception = new MailDomainInUseException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MailDomainNotFoundExceptionResponse = async ( @@ -7113,13 +5104,11 @@ const deserializeAws_json1_1MailDomainNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MailDomainNotFoundException(body, context); - const contents: MailDomainNotFoundException = { - name: "MailDomainNotFoundException", - $fault: "client", + const exception = new MailDomainNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1MailDomainStateExceptionResponse = async ( @@ -7128,13 +5117,11 @@ const deserializeAws_json1_1MailDomainStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1MailDomainStateException(body, context); - const contents: MailDomainStateException = { - name: "MailDomainStateException", - $fault: "client", + const exception = new MailDomainStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1NameAvailabilityExceptionResponse = async ( @@ -7143,13 +5130,11 @@ const deserializeAws_json1_1NameAvailabilityExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1NameAvailabilityException(body, context); - const contents: NameAvailabilityException = { - name: "NameAvailabilityException", - $fault: "client", + const exception = new NameAvailabilityException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationNotFoundExceptionResponse = async ( @@ -7158,13 +5143,11 @@ const deserializeAws_json1_1OrganizationNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationNotFoundException(body, context); - const contents: OrganizationNotFoundException = { - name: "OrganizationNotFoundException", - $fault: "client", + const exception = new OrganizationNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OrganizationStateExceptionResponse = async ( @@ -7173,13 +5156,11 @@ const deserializeAws_json1_1OrganizationStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OrganizationStateException(body, context); - const contents: OrganizationStateException = { - name: "OrganizationStateException", - $fault: "client", + const exception = new OrganizationStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ReservedNameExceptionResponse = async ( @@ -7188,13 +5169,11 @@ const deserializeAws_json1_1ReservedNameExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ReservedNameException(body, context); - const contents: ReservedNameException = { - name: "ReservedNameException", - $fault: "client", + const exception = new ReservedNameException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -7203,13 +5182,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( @@ -7218,13 +5195,11 @@ const deserializeAws_json1_1TooManyTagsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1TooManyTagsException(body, context); - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", + const exception = new TooManyTagsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( @@ -7233,13 +5208,11 @@ const deserializeAws_json1_1UnsupportedOperationExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedOperationException(body, context); - const contents: UnsupportedOperationException = { - name: "UnsupportedOperationException", - $fault: "client", + const exception = new UnsupportedOperationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ActionsList = (input: string[], context: __SerdeContext): any => { diff --git a/clients/client-workmailmessageflow/src/index.ts b/clients/client-workmailmessageflow/src/index.ts index 33957b8d78fcf..34f37e4bfc528 100644 --- a/clients/client-workmailmessageflow/src/index.ts +++ b/clients/client-workmailmessageflow/src/index.ts @@ -2,3 +2,4 @@ export * from "./WorkMailMessageFlow"; export * from "./WorkMailMessageFlowClient"; export * from "./commands"; export * from "./models"; +export { WorkMailMessageFlowServiceException } from "./models/WorkMailMessageFlowServiceException"; diff --git a/clients/client-workmailmessageflow/src/models/WorkMailMessageFlowServiceException.ts b/clients/client-workmailmessageflow/src/models/WorkMailMessageFlowServiceException.ts new file mode 100644 index 0000000000000..93e550608a089 --- /dev/null +++ b/clients/client-workmailmessageflow/src/models/WorkMailMessageFlowServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WorkMailMessageFlow service. + */ +export class WorkMailMessageFlowServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WorkMailMessageFlowServiceException.prototype); + } +} diff --git a/clients/client-workmailmessageflow/src/models/models_0.ts b/clients/client-workmailmessageflow/src/models/models_0.ts index a94c64fd1cd51..ac548a079eb13 100644 --- a/clients/client-workmailmessageflow/src/models/models_0.ts +++ b/clients/client-workmailmessageflow/src/models/models_0.ts @@ -1,6 +1,9 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { WorkMailMessageFlowServiceException as __BaseException } from "./WorkMailMessageFlowServiceException"; + export interface GetRawMessageContentRequest { /** *

The identifier of the email message to retrieve.

@@ -36,10 +39,20 @@ export namespace GetRawMessageContentResponse { /** *

The requested email message is not found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + } } /** @@ -61,29 +74,59 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB * * */ -export interface InvalidContentLocation extends __SmithyException, $MetadataBearer { - name: "InvalidContentLocation"; - $fault: "client"; - message?: string; +export class InvalidContentLocation extends __BaseException { + readonly name: "InvalidContentLocation" = "InvalidContentLocation"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidContentLocation", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidContentLocation.prototype); + } } /** *

The requested email is not eligible for update. This is usually the case for a redirected email.

*/ -export interface MessageFrozen extends __SmithyException, $MetadataBearer { - name: "MessageFrozen"; - $fault: "client"; - message?: string; +export class MessageFrozen extends __BaseException { + readonly name: "MessageFrozen" = "MessageFrozen"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MessageFrozen", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MessageFrozen.prototype); + } } /** *

The requested email could not be updated due to an error in the MIME content. Check the error message for more information about * what caused the error.

*/ -export interface MessageRejected extends __SmithyException, $MetadataBearer { - name: "MessageRejected"; - $fault: "client"; - message?: string; +export class MessageRejected extends __BaseException { + readonly name: "MessageRejected" = "MessageRejected"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "MessageRejected", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MessageRejected.prototype); + } } /** diff --git a/clients/client-workmailmessageflow/src/protocols/Aws_restJson1.ts b/clients/client-workmailmessageflow/src/protocols/Aws_restJson1.ts index c902bf54b6290..70c8b11e1f967 100644 --- a/clients/client-workmailmessageflow/src/protocols/Aws_restJson1.ts +++ b/clients/client-workmailmessageflow/src/protocols/Aws_restJson1.ts @@ -1,14 +1,13 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -27,6 +26,7 @@ import { ResourceNotFoundException, S3Reference, } from "../models/models_0"; +import { WorkMailMessageFlowServiceException as __BaseException } from "../models/WorkMailMessageFlowServiceException"; export const serializeAws_restJson1GetRawMessageContentCommand = async ( input: GetRawMessageContentCommandInput, @@ -114,33 +114,22 @@ const deserializeAws_restJson1GetRawMessageContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.workmailmessageflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutRawMessageContentCommand = async ( @@ -165,125 +154,95 @@ const deserializeAws_restJson1PutRawMessageContentCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidContentLocation": case "com.amazonaws.workmailmessageflow#InvalidContentLocation": - response = { - ...(await deserializeAws_restJson1InvalidContentLocationResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidContentLocationResponse(parsedOutput, context); case "MessageFrozen": case "com.amazonaws.workmailmessageflow#MessageFrozen": - response = { - ...(await deserializeAws_restJson1MessageFrozenResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageFrozenResponse(parsedOutput, context); case "MessageRejected": case "com.amazonaws.workmailmessageflow#MessageRejected": - response = { - ...(await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1MessageRejectedResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workmailmessageflow#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InvalidContentLocationResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidContentLocation = { - name: "InvalidContentLocation", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InvalidContentLocation({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MessageFrozenResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MessageFrozen = { - name: "MessageFrozen", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MessageFrozen({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1MessageRejectedResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: MessageRejected = { - name: "MessageRejected", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new MessageRejected({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1RawMessageContent = (input: RawMessageContent, context: __SerdeContext): any => { diff --git a/clients/client-workspaces-web/src/index.ts b/clients/client-workspaces-web/src/index.ts index bd8a3f9dd4607..0b9a7bf00ea90 100644 --- a/clients/client-workspaces-web/src/index.ts +++ b/clients/client-workspaces-web/src/index.ts @@ -3,3 +3,4 @@ export * from "./WorkSpacesWebClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WorkSpacesWebServiceException } from "./models/WorkSpacesWebServiceException"; diff --git a/clients/client-workspaces-web/src/models/WorkSpacesWebServiceException.ts b/clients/client-workspaces-web/src/models/WorkSpacesWebServiceException.ts new file mode 100644 index 0000000000000..5c84ae8f659b1 --- /dev/null +++ b/clients/client-workspaces-web/src/models/WorkSpacesWebServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WorkSpacesWeb service. + */ +export class WorkSpacesWebServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WorkSpacesWebServiceException.prototype); + } +} diff --git a/clients/client-workspaces-web/src/models/models_0.ts b/clients/client-workspaces-web/src/models/models_0.ts index 0beef521ca042..53ad9551ad434 100644 --- a/clients/client-workspaces-web/src/models/models_0.ts +++ b/clients/client-workspaces-web/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WorkSpacesWebServiceException as __BaseException } from "./WorkSpacesWebServiceException"; /** *

Access is denied.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export interface AssociateBrowserSettingsRequest { @@ -54,10 +67,9 @@ export namespace AssociateBrowserSettingsResponse { /** *

There is a conflict.

*/ -export interface ConflictException extends __SmithyException, $MetadataBearer { - name: "ConflictException"; - $fault: "client"; - message?: string; +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; /** *

Identifier of the resource affected.

*/ @@ -67,28 +79,53 @@ export interface ConflictException extends __SmithyException, $MetadataBearer { *

Type of the resource affected.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ConflictException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ConflictException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

There is an internal server error.

*/ -export interface InternalServerException extends __SmithyException, $MetadataBearer { - name: "InternalServerException"; - $fault: "server"; - message?: string; +export class InternalServerException extends __BaseException { + readonly name: "InternalServerException" = "InternalServerException"; + readonly $fault: "server" = "server"; /** *

Advice to clients on when the call can be safely retried.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InternalServerException", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, InternalServerException.prototype); + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** *

The resource cannot be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; - message?: string; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** *

Hypothetical identifier of the resource affected.

*/ @@ -98,15 +135,28 @@ export interface ResourceNotFoundException extends __SmithyException, $MetadataB *

Hypothetical type of the resource affected.

*/ resourceType?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + } } /** *

There is a throttling error.

*/ -export interface ThrottlingException extends __SmithyException, $MetadataBearer { - name: "ThrottlingException"; - $fault: "client"; - message?: string; +export class ThrottlingException extends __BaseException { + readonly name: "ThrottlingException" = "ThrottlingException"; + readonly $fault: "client" = "client"; /** *

The originating service.

*/ @@ -121,6 +171,21 @@ export interface ThrottlingException extends __SmithyException, $MetadataBearer *

Advice to clients on when the call can be safely retried.

*/ retryAfterSeconds?: number; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottlingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottlingException.prototype); + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + this.retryAfterSeconds = opts.retryAfterSeconds; + } } /** @@ -157,10 +222,9 @@ export enum ValidationExceptionReason { /** *

There is a validation error.

*/ -export interface ValidationException extends __SmithyException, $MetadataBearer { - name: "ValidationException"; - $fault: "client"; - message?: string; +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; /** *

Reason the request failed validation

*/ @@ -170,6 +234,20 @@ export interface ValidationException extends __SmithyException, $MetadataBearer *

The field that caused the error.

*/ fieldList?: ValidationExceptionField[]; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ValidationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ValidationException.prototype); + this.reason = opts.reason; + this.fieldList = opts.fieldList; + } } export interface AssociateNetworkSettingsRequest { @@ -382,10 +460,9 @@ export namespace CreateBrowserSettingsResponse { /** *

The service quota has been exceeded.

*/ -export interface ServiceQuotaExceededException extends __SmithyException, $MetadataBearer { - name: "ServiceQuotaExceededException"; - $fault: "client"; - message?: string; +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; /** *

Identifier of the resource affected.

*/ @@ -405,6 +482,22 @@ export interface ServiceQuotaExceededException extends __SmithyException, $Metad *

The originating quota.

*/ quotaCode?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ServiceQuotaExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ServiceQuotaExceededException.prototype); + this.resourceId = opts.resourceId; + this.resourceType = opts.resourceType; + this.serviceCode = opts.serviceCode; + this.quotaCode = opts.quotaCode; + } } export enum IdentityProviderType { @@ -2517,14 +2610,26 @@ export namespace TagResourceResponse { /** *

There are too many tags.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; - message?: string; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; /** *

Name of the resource affected.

*/ resourceName?: string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.resourceName = opts.resourceName; + } } export interface UntagResourceRequest { diff --git a/clients/client-workspaces-web/src/protocols/Aws_restJson1.ts b/clients/client-workspaces-web/src/protocols/Aws_restJson1.ts index 197b860236b41..6aac34f9ee7d0 100644 --- a/clients/client-workspaces-web/src/protocols/Aws_restJson1.ts +++ b/clients/client-workspaces-web/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -10,10 +11,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -162,6 +161,7 @@ import { ValidationException, ValidationExceptionField, } from "../models/models_0"; +import { WorkSpacesWebServiceException as __BaseException } from "../models/WorkSpacesWebServiceException"; export const serializeAws_restJson1AssociateBrowserSettingsCommand = async ( input: AssociateBrowserSettingsCommandInput, @@ -1763,73 +1763,37 @@ const deserializeAws_restJson1AssociateBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateNetworkSettingsCommand = async ( @@ -1862,73 +1826,37 @@ const deserializeAws_restJson1AssociateNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateTrustStoreCommand = async ( @@ -1961,65 +1889,34 @@ const deserializeAws_restJson1AssociateTrustStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1AssociateUserSettingsCommand = async ( @@ -2052,73 +1949,37 @@ const deserializeAws_restJson1AssociateUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateBrowserSettingsCommand = async ( @@ -2147,81 +2008,40 @@ const deserializeAws_restJson1CreateBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.workspacesweb#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateIdentityProviderCommand = async ( @@ -2250,73 +2070,37 @@ const deserializeAws_restJson1CreateIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateNetworkSettingsCommand = async ( @@ -2345,73 +2129,37 @@ const deserializeAws_restJson1CreateNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.workspacesweb#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreatePortalCommand = async ( @@ -2444,81 +2192,40 @@ const deserializeAws_restJson1CreatePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.workspacesweb#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateTrustStoreCommand = async ( @@ -2547,73 +2254,37 @@ const deserializeAws_restJson1CreateTrustStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.workspacesweb#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateUserSettingsCommand = async ( @@ -2642,73 +2313,37 @@ const deserializeAws_restJson1CreateUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.workspacesweb#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteBrowserSettingsCommand = async ( @@ -2733,65 +2368,34 @@ const deserializeAws_restJson1DeleteBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteIdentityProviderCommand = async ( @@ -2816,65 +2420,34 @@ const deserializeAws_restJson1DeleteIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteNetworkSettingsCommand = async ( @@ -2899,65 +2472,34 @@ const deserializeAws_restJson1DeleteNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeletePortalCommand = async ( @@ -2982,65 +2524,34 @@ const deserializeAws_restJson1DeletePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteTrustStoreCommand = async ( @@ -3065,65 +2576,34 @@ const deserializeAws_restJson1DeleteTrustStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteUserSettingsCommand = async ( @@ -3148,65 +2628,34 @@ const deserializeAws_restJson1DeleteUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "ConflictException": case "com.amazonaws.workspacesweb#ConflictException": - response = { - ...(await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateBrowserSettingsCommand = async ( @@ -3231,65 +2680,34 @@ const deserializeAws_restJson1DisassociateBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateNetworkSettingsCommand = async ( @@ -3314,65 +2732,34 @@ const deserializeAws_restJson1DisassociateNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateTrustStoreCommand = async ( @@ -3397,65 +2784,34 @@ const deserializeAws_restJson1DisassociateTrustStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DisassociateUserSettingsCommand = async ( @@ -3480,65 +2836,34 @@ const deserializeAws_restJson1DisassociateUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetBrowserSettingsCommand = async ( @@ -3567,65 +2892,34 @@ const deserializeAws_restJson1GetBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetIdentityProviderCommand = async ( @@ -3654,65 +2948,34 @@ const deserializeAws_restJson1GetIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetNetworkSettingsCommand = async ( @@ -3741,65 +3004,34 @@ const deserializeAws_restJson1GetNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPortalCommand = async ( @@ -3828,65 +3060,34 @@ const deserializeAws_restJson1GetPortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetPortalServiceProviderMetadataCommand = async ( @@ -3919,65 +3120,34 @@ const deserializeAws_restJson1GetPortalServiceProviderMetadataCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTrustStoreCommand = async ( @@ -4006,65 +3176,34 @@ const deserializeAws_restJson1GetTrustStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTrustStoreCertificateCommand = async ( @@ -4097,65 +3236,34 @@ const deserializeAws_restJson1GetTrustStoreCertificateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetUserSettingsCommand = async ( @@ -4184,65 +3292,34 @@ const deserializeAws_restJson1GetUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListBrowserSettingsCommand = async ( @@ -4275,57 +3352,31 @@ const deserializeAws_restJson1ListBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListIdentityProvidersCommand = async ( @@ -4358,57 +3409,31 @@ const deserializeAws_restJson1ListIdentityProvidersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListNetworkSettingsCommand = async ( @@ -4441,57 +3466,31 @@ const deserializeAws_restJson1ListNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListPortalsCommand = async ( @@ -4524,57 +3523,31 @@ const deserializeAws_restJson1ListPortalsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -4603,65 +3576,34 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTrustStoreCertificatesCommand = async ( @@ -4698,65 +3640,34 @@ const deserializeAws_restJson1ListTrustStoreCertificatesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTrustStoresCommand = async ( @@ -4789,57 +3700,31 @@ const deserializeAws_restJson1ListTrustStoresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListUserSettingsCommand = async ( @@ -4872,57 +3757,31 @@ const deserializeAws_restJson1ListUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -4947,73 +3806,37 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.workspacesweb#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -5038,65 +3861,34 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateBrowserSettingsCommand = async ( @@ -5125,65 +3917,34 @@ const deserializeAws_restJson1UpdateBrowserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateIdentityProviderCommand = async ( @@ -5212,65 +3973,34 @@ const deserializeAws_restJson1UpdateIdentityProviderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateNetworkSettingsCommand = async ( @@ -5299,65 +4029,34 @@ const deserializeAws_restJson1UpdateNetworkSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdatePortalCommand = async ( @@ -5386,65 +4085,34 @@ const deserializeAws_restJson1UpdatePortalCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateTrustStoreCommand = async ( @@ -5473,73 +4141,37 @@ const deserializeAws_restJson1UpdateTrustStoreCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ServiceQuotaExceededException": case "com.amazonaws.workspacesweb#ServiceQuotaExceededException": - response = { - ...(await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateUserSettingsCommand = async ( @@ -5568,96 +4200,57 @@ const deserializeAws_restJson1UpdateUserSettingsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspacesweb#AccessDeniedException": - response = { - ...(await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "InternalServerException": case "com.amazonaws.workspacesweb#InternalServerException": - response = { - ...(await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspacesweb#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.workspacesweb#ThrottlingException": - response = { - ...(await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context); case "ValidationException": case "com.amazonaws.workspacesweb#ValidationException": - response = { - ...(await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1AccessDeniedExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new AccessDeniedException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ConflictExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ConflictException = { - name: "ConflictException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5668,20 +4261,18 @@ const deserializeAws_restJson1ConflictExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ConflictException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InternalServerExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InternalServerException = { - name: "InternalServerException", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - retryAfterSeconds: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -5689,21 +4280,18 @@ const deserializeAws_restJson1InternalServerExceptionResponse = async ( if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new InternalServerException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceId: undefined, - resourceType: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5714,23 +4302,18 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.resourceType !== undefined && data.resourceType !== null) { contents.resourceType = __expectString(data.resourceType); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ServiceQuotaExceededException = { - name: "ServiceQuotaExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - resourceId: undefined, - resourceType: undefined, - serviceCode: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5747,22 +4330,18 @@ const deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ServiceQuotaExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottlingExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottlingException = { - name: "ThrottlingException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - quotaCode: undefined, - retryAfterSeconds: undefined, - serviceCode: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["retry-after"] !== undefined) { contents.retryAfterSeconds = __strictParseInt32(parsedOutput.headers["retry-after"]); } @@ -5776,20 +4355,18 @@ const deserializeAws_restJson1ThrottlingExceptionResponse = async ( if (data.serviceCode !== undefined && data.serviceCode !== null) { contents.serviceCode = __expectString(data.serviceCode); } - return contents; + const exception = new ThrottlingException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - resourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); @@ -5797,21 +4374,18 @@ const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( if (data.resourceName !== undefined && data.resourceName !== null) { contents.resourceName = __expectString(data.resourceName); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ValidationExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ValidationException = { - name: "ValidationException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - fieldList: undefined, - message: undefined, - reason: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.fieldList !== undefined && data.fieldList !== null) { contents.fieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context); @@ -5822,7 +4396,11 @@ const deserializeAws_restJson1ValidationExceptionResponse = async ( if (data.reason !== undefined && data.reason !== null) { contents.reason = __expectString(data.reason); } - return contents; + const exception = new ValidationException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1CertificateList = (input: Uint8Array[], context: __SerdeContext): any => { diff --git a/clients/client-workspaces/src/index.ts b/clients/client-workspaces/src/index.ts index 897dc78a13741..b7e99cad2a7f9 100644 --- a/clients/client-workspaces/src/index.ts +++ b/clients/client-workspaces/src/index.ts @@ -3,3 +3,4 @@ export * from "./WorkSpacesClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { WorkSpacesServiceException } from "./models/WorkSpacesServiceException"; diff --git a/clients/client-workspaces/src/models/WorkSpacesServiceException.ts b/clients/client-workspaces/src/models/WorkSpacesServiceException.ts new file mode 100644 index 0000000000000..43073bf7564b1 --- /dev/null +++ b/clients/client-workspaces/src/models/WorkSpacesServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from WorkSpaces service. + */ +export class WorkSpacesServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, WorkSpacesServiceException.prototype); + } +} diff --git a/clients/client-workspaces/src/models/models_0.ts b/clients/client-workspaces/src/models/models_0.ts index f57f245c00d29..8dc36355f1ebd 100644 --- a/clients/client-workspaces/src/models/models_0.ts +++ b/clients/client-workspaces/src/models/models_0.ts @@ -1,12 +1,25 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { WorkSpacesServiceException as __BaseException } from "./WorkSpacesServiceException"; /** *

The user is not authorized to access a resource.

*/ -export interface AccessDeniedException extends __SmithyException, $MetadataBearer { - name: "AccessDeniedException"; - $fault: "client"; - message?: string; +export class AccessDeniedException extends __BaseException { + readonly name: "AccessDeniedException" = "AccessDeniedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "AccessDeniedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, AccessDeniedException.prototype); + } } export enum AccessPropertyValue { @@ -118,57 +131,102 @@ export namespace AssociateConnectionAliasResult { /** *

One or more parameter values are not valid.

*/ -export interface InvalidParameterValuesException extends __SmithyException, $MetadataBearer { - name: "InvalidParameterValuesException"; - $fault: "client"; +export class InvalidParameterValuesException extends __BaseException { + readonly name: "InvalidParameterValuesException" = "InvalidParameterValuesException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidParameterValuesException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidParameterValuesException.prototype); + } } /** *

The state of the resource is not valid for this operation.

*/ -export interface InvalidResourceStateException extends __SmithyException, $MetadataBearer { - name: "InvalidResourceStateException"; - $fault: "client"; - message?: string; +export class InvalidResourceStateException extends __BaseException { + readonly name: "InvalidResourceStateException" = "InvalidResourceStateException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidResourceStateException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidResourceStateException.prototype); + } } /** *

This operation is not supported.

*/ -export interface OperationNotSupportedException extends __SmithyException, $MetadataBearer { - name: "OperationNotSupportedException"; - $fault: "client"; - message?: string; +export class OperationNotSupportedException extends __BaseException { + readonly name: "OperationNotSupportedException" = "OperationNotSupportedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationNotSupportedException.prototype); + } } /** *

The resource is associated with a directory.

*/ -export interface ResourceAssociatedException extends __SmithyException, $MetadataBearer { - name: "ResourceAssociatedException"; - $fault: "client"; - message?: string; +export class ResourceAssociatedException extends __BaseException { + readonly name: "ResourceAssociatedException" = "ResourceAssociatedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAssociatedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAssociatedException.prototype); + } } /** *

The resource could not be found.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; /** - *

The resource could not be found.

+ *

The ID of the resource that could not be found.

*/ - message?: string; + ResourceId?: string; /** - *

The ID of the resource that could not be found.

+ * @internal */ - ResourceId?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.ResourceId = opts.ResourceId; + } } export interface AssociateIpGroupsRequest { @@ -206,13 +264,20 @@ export namespace AssociateIpGroupsResult { /** *

Your resource limits have been exceeded.

*/ -export interface ResourceLimitExceededException extends __SmithyException, $MetadataBearer { - name: "ResourceLimitExceededException"; - $fault: "client"; +export class ResourceLimitExceededException extends __BaseException { + readonly name: "ResourceLimitExceededException" = "ResourceLimitExceededException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ * @internal */ - message?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceLimitExceededException.prototype); + } } export enum AssociationStatus { @@ -692,27 +757,45 @@ export namespace CopyWorkspaceImageResult { /** *

The specified resource already exists.

*/ -export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { - name: "ResourceAlreadyExistsException"; - $fault: "client"; - message?: string; +export class ResourceAlreadyExistsException extends __BaseException { + readonly name: "ResourceAlreadyExistsException" = "ResourceAlreadyExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceAlreadyExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceAlreadyExistsException.prototype); + } } /** *

The specified resource is not available.

*/ -export interface ResourceUnavailableException extends __SmithyException, $MetadataBearer { - name: "ResourceUnavailableException"; - $fault: "client"; +export class ResourceUnavailableException extends __BaseException { + readonly name: "ResourceUnavailableException" = "ResourceUnavailableException"; + readonly $fault: "client" = "client"; /** - *

The exception error message.

+ *

The identifier of the resource that is not available.

*/ - message?: string; + ResourceId?: string; /** - *

The identifier of the resource that is not available.

+ * @internal */ - ResourceId?: string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceUnavailableException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceUnavailableException.prototype); + this.ResourceId = opts.ResourceId; + } } export interface CreateConnectClientAddInRequest { @@ -760,10 +843,20 @@ export namespace CreateConnectClientAddInResult { /** *

The resource could not be created.

*/ -export interface ResourceCreationFailedException extends __SmithyException, $MetadataBearer { - name: "ResourceCreationFailedException"; - $fault: "client"; - message?: string; +export class ResourceCreationFailedException extends __BaseException { + readonly name: "ResourceCreationFailedException" = "ResourceCreationFailedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceCreationFailedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceCreationFailedException.prototype); + } } export interface CreateConnectionAliasRequest { @@ -3040,10 +3133,20 @@ export namespace MigrateWorkspaceResult { /** *

The properties of this WorkSpace are currently being modified. Try again in a moment.

*/ -export interface OperationInProgressException extends __SmithyException, $MetadataBearer { - name: "OperationInProgressException"; - $fault: "client"; - message?: string; +export class OperationInProgressException extends __BaseException { + readonly name: "OperationInProgressException" = "OperationInProgressException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OperationInProgressException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OperationInProgressException.prototype); + } } export interface ModifyAccountRequest { @@ -3325,10 +3428,20 @@ export namespace ModifyWorkspacePropertiesResult { * Required * Configuration and Service Components for WorkSpaces .

*/ -export interface UnsupportedWorkspaceConfigurationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedWorkspaceConfigurationException"; - $fault: "client"; - message?: string; +export class UnsupportedWorkspaceConfigurationException extends __BaseException { + readonly name: "UnsupportedWorkspaceConfigurationException" = "UnsupportedWorkspaceConfigurationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedWorkspaceConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedWorkspaceConfigurationException.prototype); + } } export enum TargetWorkspaceState { @@ -3540,20 +3653,40 @@ export namespace RegisterWorkspaceDirectoryResult { * * Configure a VPC for Amazon WorkSpaces.

*/ -export interface UnsupportedNetworkConfigurationException extends __SmithyException, $MetadataBearer { - name: "UnsupportedNetworkConfigurationException"; - $fault: "client"; - message?: string; +export class UnsupportedNetworkConfigurationException extends __BaseException { + readonly name: "UnsupportedNetworkConfigurationException" = "UnsupportedNetworkConfigurationException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "UnsupportedNetworkConfigurationException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, UnsupportedNetworkConfigurationException.prototype); + } } /** *

The workspaces_DefaultRole role could not be found. If this is the first time you are registering a directory, you * will need to create the workspaces_DefaultRole role before you can register a directory. For more information, see Creating the workspaces_DefaultRole Role.

*/ -export interface WorkspacesDefaultRoleNotFoundException extends __SmithyException, $MetadataBearer { - name: "WorkspacesDefaultRoleNotFoundException"; - $fault: "client"; - message?: string; +export class WorkspacesDefaultRoleNotFoundException extends __BaseException { + readonly name: "WorkspacesDefaultRoleNotFoundException" = "WorkspacesDefaultRoleNotFoundException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WorkspacesDefaultRoleNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WorkspacesDefaultRoleNotFoundException.prototype); + } } export interface RestoreWorkspaceRequest { diff --git a/clients/client-workspaces/src/protocols/Aws_json1_1.ts b/clients/client-workspaces/src/protocols/Aws_json1_1.ts index 9568e8d453df9..e63b96ab73f76 100644 --- a/clients/client-workspaces/src/protocols/Aws_json1_1.ts +++ b/clients/client-workspaces/src/protocols/Aws_json1_1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -10,10 +11,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { @@ -357,6 +356,7 @@ import { WorkspacesDefaultRoleNotFoundException, WorkspacesIpGroup, } from "../models/models_0"; +import { WorkSpacesServiceException as __BaseException } from "../models/WorkSpacesServiceException"; export const serializeAws_json1_1AssociateConnectionAliasCommand = async ( input: AssociateConnectionAliasCommandInput, @@ -1137,73 +1137,37 @@ const deserializeAws_json1_1AssociateConnectionAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAssociatedException": case "com.amazonaws.workspaces#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AssociateIpGroupsCommand = async ( @@ -1231,73 +1195,37 @@ const deserializeAws_json1_1AssociateIpGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1AuthorizeIpRulesCommand = async ( @@ -1325,65 +1253,34 @@ const deserializeAws_json1_1AuthorizeIpRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CopyWorkspaceImageCommand = async ( @@ -1411,81 +1308,40 @@ const deserializeAws_json1_1CopyWorkspaceImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConnectClientAddInCommand = async ( @@ -1513,65 +1369,34 @@ const deserializeAws_json1_1CreateConnectClientAddInCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceCreationFailedException": case "com.amazonaws.workspaces#ResourceCreationFailedException": - response = { - ...(await deserializeAws_json1_1ResourceCreationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceCreationFailedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateConnectionAliasCommand = async ( @@ -1599,73 +1424,37 @@ const deserializeAws_json1_1CreateConnectionAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateIpGroupCommand = async ( @@ -1693,65 +1482,34 @@ const deserializeAws_json1_1CreateIpGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceCreationFailedException": case "com.amazonaws.workspaces#ResourceCreationFailedException": - response = { - ...(await deserializeAws_json1_1ResourceCreationFailedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceCreationFailedExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateTagsCommand = async ( @@ -1779,49 +1537,28 @@ const deserializeAws_json1_1CreateTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateUpdatedWorkspaceImageCommand = async ( @@ -1849,81 +1586,40 @@ const deserializeAws_json1_1CreateUpdatedWorkspaceImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkspaceBundleCommand = async ( @@ -1951,73 +1647,37 @@ const deserializeAws_json1_1CreateWorkspaceBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1CreateWorkspacesCommand = async ( @@ -2045,41 +1705,25 @@ const deserializeAws_json1_1CreateWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectClientAddInCommand = async ( @@ -2107,49 +1751,28 @@ const deserializeAws_json1_1DeleteConnectClientAddInCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteConnectionAliasCommand = async ( @@ -2177,73 +1800,37 @@ const deserializeAws_json1_1DeleteConnectionAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAssociatedException": case "com.amazonaws.workspaces#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteIpGroupCommand = async ( @@ -2271,57 +1858,31 @@ const deserializeAws_json1_1DeleteIpGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceAssociatedException": case "com.amazonaws.workspaces#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteTagsCommand = async ( @@ -2349,41 +1910,25 @@ const deserializeAws_json1_1DeleteTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkspaceBundleCommand = async ( @@ -2411,57 +1956,31 @@ const deserializeAws_json1_1DeleteWorkspaceBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceAssociatedException": case "com.amazonaws.workspaces#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeleteWorkspaceImageCommand = async ( @@ -2489,49 +2008,28 @@ const deserializeAws_json1_1DeleteWorkspaceImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceAssociatedException": case "com.amazonaws.workspaces#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DeregisterWorkspaceDirectoryCommand = async ( @@ -2559,65 +2057,34 @@ const deserializeAws_json1_1DeregisterWorkspaceDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountCommand = async ( @@ -2645,33 +2112,22 @@ const deserializeAws_json1_1DescribeAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeAccountModificationsCommand = async ( @@ -2699,33 +2155,22 @@ const deserializeAws_json1_1DescribeAccountModificationsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeClientPropertiesCommand = async ( @@ -2753,49 +2198,28 @@ const deserializeAws_json1_1DescribeClientPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectClientAddInsCommand = async ( @@ -2823,49 +2247,28 @@ const deserializeAws_json1_1DescribeConnectClientAddInsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionAliasesCommand = async ( @@ -2893,49 +2296,28 @@ const deserializeAws_json1_1DescribeConnectionAliasesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeConnectionAliasPermissionsCommand = async ( @@ -2963,57 +2345,31 @@ const deserializeAws_json1_1DescribeConnectionAliasPermissionsCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeIpGroupsCommand = async ( @@ -3041,41 +2397,25 @@ const deserializeAws_json1_1DescribeIpGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeTagsCommand = async ( @@ -3103,33 +2443,22 @@ const deserializeAws_json1_1DescribeTagsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspaceBundlesCommand = async ( @@ -3157,33 +2486,22 @@ const deserializeAws_json1_1DescribeWorkspaceBundlesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspaceDirectoriesCommand = async ( @@ -3211,33 +2529,22 @@ const deserializeAws_json1_1DescribeWorkspaceDirectoriesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspaceImagePermissionsCommand = async ( @@ -3265,49 +2572,28 @@ const deserializeAws_json1_1DescribeWorkspaceImagePermissionsCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspaceImagesCommand = async ( @@ -3335,33 +2621,22 @@ const deserializeAws_json1_1DescribeWorkspaceImagesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspacesCommand = async ( @@ -3389,41 +2664,25 @@ const deserializeAws_json1_1DescribeWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspacesConnectionStatusCommand = async ( @@ -3451,33 +2710,22 @@ const deserializeAws_json1_1DescribeWorkspacesConnectionStatusCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DescribeWorkspaceSnapshotsCommand = async ( @@ -3505,49 +2753,28 @@ const deserializeAws_json1_1DescribeWorkspaceSnapshotsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateConnectionAliasCommand = async ( @@ -3575,65 +2802,34 @@ const deserializeAws_json1_1DisassociateConnectionAliasCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1DisassociateIpGroupsCommand = async ( @@ -3661,57 +2857,31 @@ const deserializeAws_json1_1DisassociateIpGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ImportWorkspaceImageCommand = async ( @@ -3739,73 +2909,37 @@ const deserializeAws_json1_1ImportWorkspaceImageCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAlreadyExistsException": case "com.amazonaws.workspaces#ResourceAlreadyExistsException": - response = { - ...(await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ListAvailableManagementCidrRangesCommand = async ( @@ -3833,41 +2967,25 @@ const deserializeAws_json1_1ListAvailableManagementCidrRangesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1MigrateWorkspaceCommand = async ( @@ -3895,73 +3013,37 @@ const deserializeAws_json1_1MigrateWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.workspaces#OperationInProgressException": - response = { - ...(await deserializeAws_json1_1OperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationInProgressExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyAccountCommand = async ( @@ -3989,65 +3071,34 @@ const deserializeAws_json1_1ModifyAccountCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyClientPropertiesCommand = async ( @@ -4075,49 +3126,28 @@ const deserializeAws_json1_1ModifyClientPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifySelfservicePermissionsCommand = async ( @@ -4145,49 +3175,28 @@ const deserializeAws_json1_1ModifySelfservicePermissionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyWorkspaceAccessPropertiesCommand = async ( @@ -4215,41 +3224,25 @@ const deserializeAws_json1_1ModifyWorkspaceAccessPropertiesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyWorkspaceCreationPropertiesCommand = async ( @@ -4277,57 +3270,31 @@ const deserializeAws_json1_1ModifyWorkspaceCreationPropertiesCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyWorkspacePropertiesCommand = async ( @@ -4355,81 +3322,40 @@ const deserializeAws_json1_1ModifyWorkspacePropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationInProgressException": case "com.amazonaws.workspaces#OperationInProgressException": - response = { - ...(await deserializeAws_json1_1OperationInProgressExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationInProgressExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); case "UnsupportedWorkspaceConfigurationException": case "com.amazonaws.workspaces#UnsupportedWorkspaceConfigurationException": - response = { - ...(await deserializeAws_json1_1UnsupportedWorkspaceConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedWorkspaceConfigurationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1ModifyWorkspaceStateCommand = async ( @@ -4457,49 +3383,28 @@ const deserializeAws_json1_1ModifyWorkspaceStateCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebootWorkspacesCommand = async ( @@ -4527,25 +3432,19 @@ const deserializeAws_json1_1RebootWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RebuildWorkspacesCommand = async ( @@ -4573,25 +3472,19 @@ const deserializeAws_json1_1RebuildWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RegisterWorkspaceDirectoryCommand = async ( @@ -4619,89 +3512,43 @@ const deserializeAws_json1_1RegisterWorkspaceDirectoryCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "UnsupportedNetworkConfigurationException": case "com.amazonaws.workspaces#UnsupportedNetworkConfigurationException": - response = { - ...(await deserializeAws_json1_1UnsupportedNetworkConfigurationExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1UnsupportedNetworkConfigurationExceptionResponse(parsedOutput, context); case "WorkspacesDefaultRoleNotFoundException": case "com.amazonaws.workspaces#WorkspacesDefaultRoleNotFoundException": - response = { - ...(await deserializeAws_json1_1WorkspacesDefaultRoleNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1WorkspacesDefaultRoleNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RestoreWorkspaceCommand = async ( @@ -4729,49 +3576,28 @@ const deserializeAws_json1_1RestoreWorkspaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1RevokeIpRulesCommand = async ( @@ -4799,57 +3625,31 @@ const deserializeAws_json1_1RevokeIpRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StartWorkspacesCommand = async ( @@ -4877,25 +3677,19 @@ const deserializeAws_json1_1StartWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1StopWorkspacesCommand = async ( @@ -4923,25 +3717,19 @@ const deserializeAws_json1_1StopWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1TerminateWorkspacesCommand = async ( @@ -4969,25 +3757,19 @@ const deserializeAws_json1_1TerminateWorkspacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConnectClientAddInCommand = async ( @@ -5015,49 +3797,28 @@ const deserializeAws_json1_1UpdateConnectClientAddInCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateConnectionAliasPermissionCommand = async ( @@ -5085,81 +3846,40 @@ const deserializeAws_json1_1UpdateConnectionAliasPermissionCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceAssociatedException": case "com.amazonaws.workspaces#ResourceAssociatedException": - response = { - ...(await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceAssociatedExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateRulesOfIpGroupCommand = async ( @@ -5187,65 +3907,34 @@ const deserializeAws_json1_1UpdateRulesOfIpGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "InvalidResourceStateException": case "com.amazonaws.workspaces#InvalidResourceStateException": - response = { - ...(await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidResourceStateExceptionResponse(parsedOutput, context); case "ResourceLimitExceededException": case "com.amazonaws.workspaces#ResourceLimitExceededException": - response = { - ...(await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceLimitExceededExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWorkspaceBundleCommand = async ( @@ -5273,57 +3962,31 @@ const deserializeAws_json1_1UpdateWorkspaceBundleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1UpdateWorkspaceImagePermissionCommand = async ( @@ -5351,65 +4014,34 @@ const deserializeAws_json1_1UpdateWorkspaceImagePermissionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "AccessDeniedException": case "com.amazonaws.workspaces#AccessDeniedException": - response = { - ...(await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context); case "InvalidParameterValuesException": case "com.amazonaws.workspaces#InvalidParameterValuesException": - response = { - ...(await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidParameterValuesExceptionResponse(parsedOutput, context); case "OperationNotSupportedException": case "com.amazonaws.workspaces#OperationNotSupportedException": - response = { - ...(await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1OperationNotSupportedExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.workspaces#ResourceNotFoundException": - response = { - ...(await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ResourceUnavailableException": case "com.amazonaws.workspaces#ResourceUnavailableException": - response = { - ...(await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ResourceUnavailableExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( @@ -5418,13 +4050,11 @@ const deserializeAws_json1_1AccessDeniedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1AccessDeniedException(body, context); - const contents: AccessDeniedException = { - name: "AccessDeniedException", - $fault: "client", + const exception = new AccessDeniedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidParameterValuesExceptionResponse = async ( @@ -5433,13 +4063,11 @@ const deserializeAws_json1_1InvalidParameterValuesExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidParameterValuesException(body, context); - const contents: InvalidParameterValuesException = { - name: "InvalidParameterValuesException", - $fault: "client", + const exception = new InvalidParameterValuesException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidResourceStateExceptionResponse = async ( @@ -5448,13 +4076,11 @@ const deserializeAws_json1_1InvalidResourceStateExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidResourceStateException(body, context); - const contents: InvalidResourceStateException = { - name: "InvalidResourceStateException", - $fault: "client", + const exception = new InvalidResourceStateException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationInProgressExceptionResponse = async ( @@ -5463,13 +4089,11 @@ const deserializeAws_json1_1OperationInProgressExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationInProgressException(body, context); - const contents: OperationInProgressException = { - name: "OperationInProgressException", - $fault: "client", + const exception = new OperationInProgressException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1OperationNotSupportedExceptionResponse = async ( @@ -5478,13 +4102,11 @@ const deserializeAws_json1_1OperationNotSupportedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1OperationNotSupportedException(body, context); - const contents: OperationNotSupportedException = { - name: "OperationNotSupportedException", - $fault: "client", + const exception = new OperationNotSupportedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( @@ -5493,13 +4115,11 @@ const deserializeAws_json1_1ResourceAlreadyExistsExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAlreadyExistsException(body, context); - const contents: ResourceAlreadyExistsException = { - name: "ResourceAlreadyExistsException", - $fault: "client", + const exception = new ResourceAlreadyExistsException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceAssociatedExceptionResponse = async ( @@ -5508,13 +4128,11 @@ const deserializeAws_json1_1ResourceAssociatedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceAssociatedException(body, context); - const contents: ResourceAssociatedException = { - name: "ResourceAssociatedException", - $fault: "client", + const exception = new ResourceAssociatedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceCreationFailedExceptionResponse = async ( @@ -5523,13 +4141,11 @@ const deserializeAws_json1_1ResourceCreationFailedExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceCreationFailedException(body, context); - const contents: ResourceCreationFailedException = { - name: "ResourceCreationFailedException", - $fault: "client", + const exception = new ResourceCreationFailedException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( @@ -5538,13 +4154,11 @@ const deserializeAws_json1_1ResourceLimitExceededExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceLimitExceededException(body, context); - const contents: ResourceLimitExceededException = { - name: "ResourceLimitExceededException", - $fault: "client", + const exception = new ResourceLimitExceededException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( @@ -5553,13 +4167,11 @@ const deserializeAws_json1_1ResourceNotFoundExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceNotFoundException(body, context); - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", + const exception = new ResourceNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( @@ -5568,13 +4180,11 @@ const deserializeAws_json1_1ResourceUnavailableExceptionResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ResourceUnavailableException(body, context); - const contents: ResourceUnavailableException = { - name: "ResourceUnavailableException", - $fault: "client", + const exception = new ResourceUnavailableException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedNetworkConfigurationExceptionResponse = async ( @@ -5583,13 +4193,11 @@ const deserializeAws_json1_1UnsupportedNetworkConfigurationExceptionResponse = a ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedNetworkConfigurationException(body, context); - const contents: UnsupportedNetworkConfigurationException = { - name: "UnsupportedNetworkConfigurationException", - $fault: "client", + const exception = new UnsupportedNetworkConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1UnsupportedWorkspaceConfigurationExceptionResponse = async ( @@ -5598,13 +4206,11 @@ const deserializeAws_json1_1UnsupportedWorkspaceConfigurationExceptionResponse = ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1UnsupportedWorkspaceConfigurationException(body, context); - const contents: UnsupportedWorkspaceConfigurationException = { - name: "UnsupportedWorkspaceConfigurationException", - $fault: "client", + const exception = new UnsupportedWorkspaceConfigurationException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1WorkspacesDefaultRoleNotFoundExceptionResponse = async ( @@ -5613,13 +4219,11 @@ const deserializeAws_json1_1WorkspacesDefaultRoleNotFoundExceptionResponse = asy ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1WorkspacesDefaultRoleNotFoundException(body, context); - const contents: WorkspacesDefaultRoleNotFoundException = { - name: "WorkspacesDefaultRoleNotFoundException", - $fault: "client", + const exception = new WorkspacesDefaultRoleNotFoundException({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1ApplicationList = (input: (Application | string)[], context: __SerdeContext): any => { diff --git a/clients/client-xray/src/index.ts b/clients/client-xray/src/index.ts index dd5748bb08a7f..0195a2d4b321d 100644 --- a/clients/client-xray/src/index.ts +++ b/clients/client-xray/src/index.ts @@ -3,3 +3,4 @@ export * from "./XRayClient"; export * from "./commands"; export * from "./models"; export * from "./pagination"; +export { XRayServiceException } from "./models/XRayServiceException"; diff --git a/clients/client-xray/src/models/XRayServiceException.ts b/clients/client-xray/src/models/XRayServiceException.ts new file mode 100644 index 0000000000000..1b029fa8c09c2 --- /dev/null +++ b/clients/client-xray/src/models/XRayServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from XRay service. + */ +export class XRayServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, XRayServiceException.prototype); + } +} diff --git a/clients/client-xray/src/models/models_0.ts b/clients/client-xray/src/models/models_0.ts index 467344637ed8f..be82b63e6268d 100644 --- a/clients/client-xray/src/models/models_0.ts +++ b/clients/client-xray/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { XRayServiceException as __BaseException } from "./XRayServiceException"; /** *

An alias for an edge.

@@ -314,19 +317,43 @@ export namespace BatchGetTracesResult { /** *

The request is missing required parameters or has invalid parameters.

*/ -export interface InvalidRequestException extends __SmithyException, $MetadataBearer { - name: "InvalidRequestException"; - $fault: "client"; +export class InvalidRequestException extends __BaseException { + readonly name: "InvalidRequestException" = "InvalidRequestException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidRequestException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidRequestException.prototype); + this.Message = opts.Message; + } } /** *

The request exceeds the maximum number of requests per second.

*/ -export interface ThrottledException extends __SmithyException, $MetadataBearer { - name: "ThrottledException"; - $fault: "client"; +export class ThrottledException extends __BaseException { + readonly name: "ThrottledException" = "ThrottledException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ThrottledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ThrottledException.prototype); + this.Message = opts.Message; + } } /** @@ -707,10 +734,22 @@ export namespace CreateSamplingRuleResult { /** *

You have reached the maximum number of sampling rules.

*/ -export interface RuleLimitExceededException extends __SmithyException, $MetadataBearer { - name: "RuleLimitExceededException"; - $fault: "client"; +export class RuleLimitExceededException extends __BaseException { + readonly name: "RuleLimitExceededException" = "RuleLimitExceededException"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "RuleLimitExceededException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, RuleLimitExceededException.prototype); + this.Message = opts.Message; + } } export interface DeleteGroupRequest { @@ -3078,11 +3117,24 @@ export namespace ListTagsForResourceResponse { *

The resource was not found. Verify that the name or Amazon Resource Name (ARN) of the resource is * correct.

*/ -export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { - name: "ResourceNotFoundException"; - $fault: "client"; +export class ResourceNotFoundException extends __BaseException { + readonly name: "ResourceNotFoundException" = "ResourceNotFoundException"; + readonly $fault: "client" = "client"; Message?: string; ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceNotFoundException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export interface PutEncryptionConfigRequest { @@ -3395,11 +3447,24 @@ export namespace TagResourceResponse { /** *

You have exceeded the maximum number of tags you can apply to this resource.

*/ -export interface TooManyTagsException extends __SmithyException, $MetadataBearer { - name: "TooManyTagsException"; - $fault: "client"; +export class TooManyTagsException extends __BaseException { + readonly name: "TooManyTagsException" = "TooManyTagsException"; + readonly $fault: "client" = "client"; Message?: string; ResourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyTagsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyTagsException.prototype); + this.Message = opts.Message; + this.ResourceName = opts.ResourceName; + } } export interface UntagResourceRequest { diff --git a/clients/client-xray/src/protocols/Aws_restJson1.ts b/clients/client-xray/src/protocols/Aws_restJson1.ts index c69269163a3a5..daf62b95ee5e6 100644 --- a/clients/client-xray/src/protocols/Aws_restJson1.ts +++ b/clients/client-xray/src/protocols/Aws_restJson1.ts @@ -1,5 +1,6 @@ import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -14,10 +15,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { BatchGetTracesCommandInput, BatchGetTracesCommandOutput } from "../commands/BatchGetTracesCommand"; @@ -134,6 +133,7 @@ import { UnprocessedTraceSegment, ValueWithServiceIds, } from "../models/models_0"; +import { XRayServiceException as __BaseException } from "../models/XRayServiceException"; export const serializeAws_restJson1BatchGetTracesCommand = async ( input: BatchGetTracesCommandInput, @@ -911,41 +911,25 @@ const deserializeAws_restJson1BatchGetTracesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateGroupCommand = async ( @@ -974,41 +958,25 @@ const deserializeAws_restJson1CreateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1CreateSamplingRuleCommand = async ( @@ -1037,49 +1005,28 @@ const deserializeAws_restJson1CreateSamplingRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "RuleLimitExceededException": case "com.amazonaws.xray#RuleLimitExceededException": - response = { - ...(await deserializeAws_restJson1RuleLimitExceededExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1RuleLimitExceededExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteGroupCommand = async ( @@ -1104,41 +1051,25 @@ const deserializeAws_restJson1DeleteGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DeleteSamplingRuleCommand = async ( @@ -1167,41 +1098,25 @@ const deserializeAws_restJson1DeleteSamplingRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetEncryptionConfigCommand = async ( @@ -1230,41 +1145,25 @@ const deserializeAws_restJson1GetEncryptionConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupCommand = async ( @@ -1293,41 +1192,25 @@ const deserializeAws_restJson1GetGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetGroupsCommand = async ( @@ -1360,41 +1243,25 @@ const deserializeAws_restJson1GetGroupsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightCommand = async ( @@ -1423,41 +1290,25 @@ const deserializeAws_restJson1GetInsightCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightEventsCommand = async ( @@ -1490,41 +1341,25 @@ const deserializeAws_restJson1GetInsightEventsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightImpactGraphCommand = async ( @@ -1577,41 +1412,25 @@ const deserializeAws_restJson1GetInsightImpactGraphCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetInsightSummariesCommand = async ( @@ -1644,41 +1463,25 @@ const deserializeAws_restJson1GetInsightSummariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSamplingRulesCommand = async ( @@ -1711,41 +1514,25 @@ const deserializeAws_restJson1GetSamplingRulesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSamplingStatisticSummariesCommand = async ( @@ -1781,41 +1568,25 @@ const deserializeAws_restJson1GetSamplingStatisticSummariesCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetSamplingTargetsCommand = async ( @@ -1858,41 +1629,25 @@ const deserializeAws_restJson1GetSamplingTargetsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetServiceGraphCommand = async ( @@ -1937,41 +1692,25 @@ const deserializeAws_restJson1GetServiceGraphCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTimeSeriesServiceStatisticsCommand = async ( @@ -2011,41 +1750,25 @@ const deserializeAws_restJson1GetTimeSeriesServiceStatisticsCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTraceGraphCommand = async ( @@ -2078,41 +1801,25 @@ const deserializeAws_restJson1GetTraceGraphCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GetTraceSummariesCommand = async ( @@ -2153,41 +1860,25 @@ const deserializeAws_restJson1GetTraceSummariesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ListTagsForResourceCommand = async ( @@ -2220,49 +1911,28 @@ const deserializeAws_restJson1ListTagsForResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.xray#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutEncryptionConfigCommand = async ( @@ -2291,41 +1961,25 @@ const deserializeAws_restJson1PutEncryptionConfigCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutTelemetryRecordsCommand = async ( @@ -2350,41 +2004,25 @@ const deserializeAws_restJson1PutTelemetryRecordsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PutTraceSegmentsCommand = async ( @@ -2416,41 +2054,25 @@ const deserializeAws_restJson1PutTraceSegmentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TagResourceCommand = async ( @@ -2475,57 +2097,31 @@ const deserializeAws_restJson1TagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.xray#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); case "TooManyTagsException": case "com.amazonaws.xray#TooManyTagsException": - response = { - ...(await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1TooManyTagsExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UntagResourceCommand = async ( @@ -2550,49 +2146,28 @@ const deserializeAws_restJson1UntagResourceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.xray#ResourceNotFoundException": - response = { - ...(await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateGroupCommand = async ( @@ -2621,41 +2196,25 @@ const deserializeAws_restJson1UpdateGroupCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UpdateSamplingRuleCommand = async ( @@ -2684,71 +2243,48 @@ const deserializeAws_restJson1UpdateSamplingRuleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "InvalidRequestException": case "com.amazonaws.xray#InvalidRequestException": - response = { - ...(await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context); case "ThrottledException": case "com.amazonaws.xray#ThrottledException": - response = { - ...(await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ThrottledExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1InvalidRequestExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidRequestException = { - name: "InvalidRequestException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidRequestException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ResourceNotFoundException = { - name: "ResourceNotFoundException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2756,54 +2292,50 @@ const deserializeAws_restJson1ResourceNotFoundExceptionResponse = async ( if (data.ResourceName !== undefined && data.ResourceName !== null) { contents.ResourceName = __expectString(data.ResourceName); } - return contents; + const exception = new ResourceNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1RuleLimitExceededExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: RuleLimitExceededException = { - name: "RuleLimitExceededException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new RuleLimitExceededException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1ThrottledExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ThrottledException = { - name: "ThrottledException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new ThrottledException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: TooManyTagsException = { - name: "TooManyTagsException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - ResourceName: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); @@ -2811,7 +2343,11 @@ const deserializeAws_restJson1TooManyTagsExceptionResponse = async ( if (data.ResourceName !== undefined && data.ResourceName !== null) { contents.ResourceName = __expectString(data.ResourceName); } - return contents; + const exception = new TooManyTagsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1AttributeMap = (input: { [key: string]: string }, context: __SerdeContext): any => { diff --git a/private/aws-echo-service/src/index.ts b/private/aws-echo-service/src/index.ts index 2f1437b1cbb19..e466c0323b863 100644 --- a/private/aws-echo-service/src/index.ts +++ b/private/aws-echo-service/src/index.ts @@ -2,3 +2,4 @@ export * from "./EchoServiceClient"; export * from "./EchoService"; export * from "./commands"; export * from "./models"; +export { EchoServiceServiceException } from "./models/EchoServiceServiceException"; diff --git a/private/aws-echo-service/src/models/EchoServiceServiceException.ts b/private/aws-echo-service/src/models/EchoServiceServiceException.ts new file mode 100644 index 0000000000000..331ac02945e17 --- /dev/null +++ b/private/aws-echo-service/src/models/EchoServiceServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EchoService service. + */ +export class EchoServiceServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EchoServiceServiceException.prototype); + } +} diff --git a/private/aws-echo-service/src/models/models_0.ts b/private/aws-echo-service/src/models/models_0.ts index 49532d40abdc4..df3b367f1c03d 100644 --- a/private/aws-echo-service/src/models/models_0.ts +++ b/private/aws-echo-service/src/models/models_0.ts @@ -1,4 +1,6 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { EchoServiceServiceException as __BaseException } from "./EchoServiceServiceException"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; export interface EchoInput { string?: string; @@ -29,10 +31,20 @@ export namespace EchoOutput { /** * For some reason, this service does not like palindromes! */ -export interface PalindromeException extends __SmithyException, $MetadataBearer { - name: "PalindromeException"; - $fault: "client"; - message?: string; +export class PalindromeException extends __BaseException { + readonly name: "PalindromeException" = "PalindromeException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "PalindromeException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, PalindromeException.prototype); + } } export interface LengthInput { diff --git a/private/aws-echo-service/src/protocols/Aws_restJson1.ts b/private/aws-echo-service/src/protocols/Aws_restJson1.ts index 9e51c017d0ceb..4446f5001316a 100644 --- a/private/aws-echo-service/src/protocols/Aws_restJson1.ts +++ b/private/aws-echo-service/src/protocols/Aws_restJson1.ts @@ -1,8 +1,10 @@ import { EchoCommandInput, EchoCommandOutput } from "../commands/EchoCommand"; import { LengthCommandInput, LengthCommandOutput } from "../commands/LengthCommand"; +import { EchoServiceServiceException as __BaseException } from "../models/EchoServiceServiceException"; import { PalindromeException } from "../models/models_0"; import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, @@ -11,10 +13,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -96,33 +96,22 @@ const deserializeAws_restJson1EchoCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode: string = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PalindromeException": case "aws.test.generic#PalindromeException": - response = { - ...(await deserializeAws_restJson1PalindromeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PalindromeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1LengthCommand = async ( @@ -151,50 +140,38 @@ const deserializeAws_restJson1LengthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode: string = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "PalindromeException": case "aws.test.generic#PalindromeException": - response = { - ...(await deserializeAws_restJson1PalindromeExceptionResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1PalindromeExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1PalindromeExceptionResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: PalindromeException = { - name: "PalindromeException", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.message !== undefined && data.message !== null) { contents.message = __expectString(data.message); } - return contents; + const exception = new PalindromeException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ diff --git a/private/aws-protocoltests-ec2/src/index.ts b/private/aws-protocoltests-ec2/src/index.ts index 3224cf9eac558..32c83f8c60cd0 100644 --- a/private/aws-protocoltests-ec2/src/index.ts +++ b/private/aws-protocoltests-ec2/src/index.ts @@ -2,3 +2,4 @@ export * from "./EC2Protocol"; export * from "./EC2ProtocolClient"; export * from "./commands"; export * from "./models"; +export { EC2ProtocolServiceException } from "./models/EC2ProtocolServiceException"; diff --git a/private/aws-protocoltests-ec2/src/models/EC2ProtocolServiceException.ts b/private/aws-protocoltests-ec2/src/models/EC2ProtocolServiceException.ts new file mode 100644 index 0000000000000..193212dd5b0b9 --- /dev/null +++ b/private/aws-protocoltests-ec2/src/models/EC2ProtocolServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from EC2Protocol service. + */ +export class EC2ProtocolServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, EC2ProtocolServiceException.prototype); + } +} diff --git a/private/aws-protocoltests-ec2/src/models/models_0.ts b/private/aws-protocoltests-ec2/src/models/models_0.ts index 9122c6c72b836..77dbdd06ba10a 100644 --- a/private/aws-protocoltests-ec2/src/models/models_0.ts +++ b/private/aws-protocoltests-ec2/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { EC2ProtocolServiceException as __BaseException } from "./EC2ProtocolServiceException"; export interface EmptyInputAndEmptyOutputInput {} @@ -51,11 +54,24 @@ export namespace ComplexNestedErrorData { /** * This error is thrown when a request is invalid. */ -export interface ComplexError extends __SmithyException, $MetadataBearer { - name: "ComplexError"; - $fault: "client"; +export class ComplexError extends __BaseException { + readonly name: "ComplexError" = "ComplexError"; + readonly $fault: "client" = "client"; TopLevel?: string; Nested?: ComplexNestedErrorData; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplexError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplexError.prototype); + this.TopLevel = opts.TopLevel; + this.Nested = opts.Nested; + } } export interface GreetingWithErrorsOutput { @@ -74,10 +90,22 @@ export namespace GreetingWithErrorsOutput { /** * This error is thrown when an invalid greeting value is provided. */ -export interface InvalidGreeting extends __SmithyException, $MetadataBearer { - name: "InvalidGreeting"; - $fault: "client"; +export class InvalidGreeting extends __BaseException { + readonly name: "InvalidGreeting" = "InvalidGreeting"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGreeting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGreeting.prototype); + this.Message = opts.Message; + } } export interface IgnoresWrappingXmlNameOutput { diff --git a/private/aws-protocoltests-ec2/src/protocols/Aws_ec2.ts b/private/aws-protocoltests-ec2/src/protocols/Aws_ec2.ts index 53711d9be60be..78ee6a76d7357 100644 --- a/private/aws-protocoltests-ec2/src/protocols/Aws_ec2.ts +++ b/private/aws-protocoltests-ec2/src/protocols/Aws_ec2.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -23,10 +24,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -71,6 +70,7 @@ import { XmlEnumsCommandInput, XmlEnumsCommandOutput } from "../commands/XmlEnum import { XmlListsCommandInput, XmlListsCommandOutput } from "../commands/XmlListsCommand"; import { XmlNamespacesCommandInput, XmlNamespacesCommandOutput } from "../commands/XmlNamespacesCommand"; import { XmlTimestampsCommandInput, XmlTimestampsCommandOutput } from "../commands/XmlTimestampsCommand"; +import { EC2ProtocolServiceException as __BaseException } from "../models/EC2ProtocolServiceException"; import { ComplexError, ComplexNestedErrorData, @@ -454,25 +454,19 @@ const deserializeAws_ec2EmptyInputAndEmptyOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EndpointOperationCommand = async ( @@ -497,25 +491,19 @@ const deserializeAws_ec2EndpointOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2EndpointWithHostLabelOperationCommand = async ( @@ -540,25 +528,19 @@ const deserializeAws_ec2EndpointWithHostLabelOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2GreetingWithErrorsCommand = async ( @@ -586,41 +568,25 @@ const deserializeAws_ec2GreetingWithErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplexError": case "aws.protocoltests.ec2#ComplexError": - response = { - ...(await deserializeAws_ec2ComplexErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_ec2ComplexErrorResponse(parsedOutput, context); case "InvalidGreeting": case "aws.protocoltests.ec2#InvalidGreeting": - response = { - ...(await deserializeAws_ec2InvalidGreetingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_ec2InvalidGreetingResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2HostWithPathOperationCommand = async ( @@ -645,25 +611,19 @@ const deserializeAws_ec2HostWithPathOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2IgnoresWrappingXmlNameCommand = async ( @@ -691,25 +651,19 @@ const deserializeAws_ec2IgnoresWrappingXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2NestedStructuresCommand = async ( @@ -734,25 +688,19 @@ const deserializeAws_ec2NestedStructuresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2NoInputAndOutputCommand = async ( @@ -780,25 +728,19 @@ const deserializeAws_ec2NoInputAndOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2QueryIdempotencyTokenAutoFillCommand = async ( @@ -823,25 +765,19 @@ const deserializeAws_ec2QueryIdempotencyTokenAutoFillCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2QueryListsCommand = async ( @@ -866,25 +802,19 @@ const deserializeAws_ec2QueryListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2QueryTimestampsCommand = async ( @@ -909,25 +839,19 @@ const deserializeAws_ec2QueryTimestampsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2RecursiveXmlShapesCommand = async ( @@ -955,25 +879,19 @@ const deserializeAws_ec2RecursiveXmlShapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2SimpleInputParamsCommand = async ( @@ -998,25 +916,19 @@ const deserializeAws_ec2SimpleInputParamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2SimpleScalarXmlPropertiesCommand = async ( @@ -1044,25 +956,19 @@ const deserializeAws_ec2SimpleScalarXmlPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlBlobsCommand = async ( @@ -1090,25 +996,19 @@ const deserializeAws_ec2XmlBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlEmptyBlobsCommand = async ( @@ -1136,25 +1036,19 @@ const deserializeAws_ec2XmlEmptyBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlEmptyListsCommand = async ( @@ -1182,25 +1076,19 @@ const deserializeAws_ec2XmlEmptyListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlEnumsCommand = async ( @@ -1228,25 +1116,19 @@ const deserializeAws_ec2XmlEnumsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlListsCommand = async ( @@ -1274,25 +1156,19 @@ const deserializeAws_ec2XmlListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlNamespacesCommand = async ( @@ -1320,25 +1196,19 @@ const deserializeAws_ec2XmlNamespacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_ec2XmlTimestampsCommand = async ( @@ -1366,25 +1236,19 @@ const deserializeAws_ec2XmlTimestampsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadEc2ErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode; - response = { - ...parsedBody.Errors.Error, - name: `${errorCode}`, - message: parsedBody.Errors.Error.message || parsedBody.Errors.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Errors.Error.code || parsedBody.Errors.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Errors.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_ec2ComplexErrorResponse = async ( @@ -1393,13 +1257,11 @@ const deserializeAws_ec2ComplexErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_ec2ComplexError(body.Errors.Error, context); - const contents: ComplexError = { - name: "ComplexError", - $fault: "client", + const exception = new ComplexError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_ec2InvalidGreetingResponse = async ( @@ -1408,13 +1270,11 @@ const deserializeAws_ec2InvalidGreetingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_ec2InvalidGreeting(body.Errors.Error, context); - const contents: InvalidGreeting = { - name: "InvalidGreeting", - $fault: "client", + const exception = new InvalidGreeting({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_ec2EmptyInputAndEmptyOutputInput = ( diff --git a/private/aws-protocoltests-json-10/src/index.ts b/private/aws-protocoltests-json-10/src/index.ts index 2c7186bc1e30d..c3cf21266d75f 100644 --- a/private/aws-protocoltests-json-10/src/index.ts +++ b/private/aws-protocoltests-json-10/src/index.ts @@ -2,3 +2,4 @@ export * from "./JSONRPC10"; export * from "./JSONRPC10Client"; export * from "./commands"; export * from "./models"; +export { JSONRPC10ServiceException } from "./models/JSONRPC10ServiceException"; diff --git a/private/aws-protocoltests-json-10/src/models/JSONRPC10ServiceException.ts b/private/aws-protocoltests-json-10/src/models/JSONRPC10ServiceException.ts new file mode 100644 index 0000000000000..9691f47d45bb5 --- /dev/null +++ b/private/aws-protocoltests-json-10/src/models/JSONRPC10ServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from JSONRPC10 service. + */ +export class JSONRPC10ServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, JSONRPC10ServiceException.prototype); + } +} diff --git a/private/aws-protocoltests-json-10/src/models/models_0.ts b/private/aws-protocoltests-json-10/src/models/models_0.ts index d098e1a8720da..871191fed6ad0 100644 --- a/private/aws-protocoltests-json-10/src/models/models_0.ts +++ b/private/aws-protocoltests-json-10/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { JSONRPC10ServiceException as __BaseException } from "./JSONRPC10ServiceException"; export interface ComplexNestedErrorData { Foo?: string; @@ -16,11 +19,24 @@ export namespace ComplexNestedErrorData { /** * This error is thrown when a request is invalid. */ -export interface ComplexError extends __SmithyException, $MetadataBearer { - name: "ComplexError"; - $fault: "client"; +export class ComplexError extends __BaseException { + readonly name: "ComplexError" = "ComplexError"; + readonly $fault: "client" = "client"; TopLevel?: string; Nested?: ComplexNestedErrorData; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplexError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplexError.prototype); + this.TopLevel = opts.TopLevel; + this.Nested = opts.Nested; + } } export interface EmptyInputAndEmptyOutputInput {} @@ -62,9 +78,20 @@ export namespace EndpointWithHostLabelOperationInput { * This error has test cases that test some of the dark corners of Amazon service * framework history. It should only be implemented by clients. */ -export interface FooError extends __SmithyException, $MetadataBearer { - name: "FooError"; - $fault: "server"; +export class FooError extends __BaseException { + readonly name: "FooError" = "FooError"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FooError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, FooError.prototype); + } } export interface GreetingWithErrorsInput { @@ -96,10 +123,22 @@ export namespace GreetingWithErrorsOutput { /** * This error is thrown when an invalid greeting value is provided. */ -export interface InvalidGreeting extends __SmithyException, $MetadataBearer { - name: "InvalidGreeting"; - $fault: "client"; +export class InvalidGreeting extends __BaseException { + readonly name: "InvalidGreeting" = "InvalidGreeting"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGreeting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGreeting.prototype); + this.Message = opts.Message; + } } export enum FooEnum { diff --git a/private/aws-protocoltests-json-10/src/protocols/Aws_json1_0.ts b/private/aws-protocoltests-json-10/src/protocols/Aws_json1_0.ts index bc689ad79cb86..e57e40eeae5bb 100644 --- a/private/aws-protocoltests-json-10/src/protocols/Aws_json1_0.ts +++ b/private/aws-protocoltests-json-10/src/protocols/Aws_json1_0.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, @@ -18,10 +19,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -46,6 +45,7 @@ import { SimpleScalarPropertiesCommandInput, SimpleScalarPropertiesCommandOutput, } from "../commands/SimpleScalarPropertiesCommand"; +import { JSONRPC10ServiceException as __BaseException } from "../models/JSONRPC10ServiceException"; import { ComplexError, ComplexNestedErrorData, @@ -221,25 +221,19 @@ const deserializeAws_json1_0EmptyInputAndEmptyOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0EndpointOperationCommand = async ( @@ -264,25 +258,19 @@ const deserializeAws_json1_0EndpointOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0EndpointWithHostLabelOperationCommand = async ( @@ -307,25 +295,19 @@ const deserializeAws_json1_0EndpointWithHostLabelOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0GreetingWithErrorsCommand = async ( @@ -353,49 +335,28 @@ const deserializeAws_json1_0GreetingWithErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplexError": case "aws.protocoltests.json10#ComplexError": - response = { - ...(await deserializeAws_json1_0ComplexErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0ComplexErrorResponse(parsedOutput, context); case "FooError": case "aws.protocoltests.json10#FooError": - response = { - ...(await deserializeAws_json1_0FooErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0FooErrorResponse(parsedOutput, context); case "InvalidGreeting": case "aws.protocoltests.json10#InvalidGreeting": - response = { - ...(await deserializeAws_json1_0InvalidGreetingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_0InvalidGreetingResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0HostWithPathOperationCommand = async ( @@ -420,25 +381,19 @@ const deserializeAws_json1_0HostWithPathOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0JsonUnionsCommand = async ( @@ -466,25 +421,19 @@ const deserializeAws_json1_0JsonUnionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0NoInputAndNoOutputCommand = async ( @@ -509,25 +458,19 @@ const deserializeAws_json1_0NoInputAndNoOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0NoInputAndOutputCommand = async ( @@ -555,25 +498,19 @@ const deserializeAws_json1_0NoInputAndOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_0SimpleScalarPropertiesCommand = async ( @@ -601,25 +538,19 @@ const deserializeAws_json1_0SimpleScalarPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_0ComplexErrorResponse = async ( @@ -628,13 +559,11 @@ const deserializeAws_json1_0ComplexErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0ComplexError(body, context); - const contents: ComplexError = { - name: "ComplexError", - $fault: "client", + const exception = new ComplexError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0FooErrorResponse = async ( @@ -643,13 +572,11 @@ const deserializeAws_json1_0FooErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0FooError(body, context); - const contents: FooError = { - name: "FooError", - $fault: "server", + const exception = new FooError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_0InvalidGreetingResponse = async ( @@ -658,13 +585,11 @@ const deserializeAws_json1_0InvalidGreetingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_0InvalidGreeting(body, context); - const contents: InvalidGreeting = { - name: "InvalidGreeting", - $fault: "client", + const exception = new InvalidGreeting({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_0EmptyInputAndEmptyOutputInput = ( diff --git a/private/aws-protocoltests-json/src/index.ts b/private/aws-protocoltests-json/src/index.ts index e678634775634..e8f4e171efbc4 100644 --- a/private/aws-protocoltests-json/src/index.ts +++ b/private/aws-protocoltests-json/src/index.ts @@ -2,3 +2,4 @@ export * from "./JsonProtocol"; export * from "./JsonProtocolClient"; export * from "./commands"; export * from "./models"; +export { JsonProtocolServiceException } from "./models/JsonProtocolServiceException"; diff --git a/private/aws-protocoltests-json/src/models/JsonProtocolServiceException.ts b/private/aws-protocoltests-json/src/models/JsonProtocolServiceException.ts new file mode 100644 index 0000000000000..9c15aac8fd43b --- /dev/null +++ b/private/aws-protocoltests-json/src/models/JsonProtocolServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from JsonProtocol service. + */ +export class JsonProtocolServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, JsonProtocolServiceException.prototype); + } +} diff --git a/private/aws-protocoltests-json/src/models/models_0.ts b/private/aws-protocoltests-json/src/models/models_0.ts index 67772a09812b1..b351cb10e468d 100644 --- a/private/aws-protocoltests-json/src/models/models_0.ts +++ b/private/aws-protocoltests-json/src/models/models_0.ts @@ -1,9 +1,10 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; import { - DocumentType as __DocumentType, - MetadataBearer as $MetadataBearer, - SmithyException as __SmithyException, -} from "@aws-sdk/types"; + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { DocumentType as __DocumentType, MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { JsonProtocolServiceException as __BaseException } from "./JsonProtocolServiceException"; export interface ComplexNestedErrorData { Foo?: string; @@ -21,11 +22,24 @@ export namespace ComplexNestedErrorData { /** * This error is thrown when a request is invalid. */ -export interface ComplexError extends __SmithyException, $MetadataBearer { - name: "ComplexError"; - $fault: "client"; +export class ComplexError extends __BaseException { + readonly name: "ComplexError" = "ComplexError"; + readonly $fault: "client" = "client"; TopLevel?: string; Nested?: ComplexNestedErrorData; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplexError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplexError.prototype); + this.TopLevel = opts.TopLevel; + this.Nested = opts.Nested; + } } export interface EmptyStruct {} @@ -78,18 +92,40 @@ export namespace StructWithJsonName { }); } -export interface ErrorWithoutMembers extends __SmithyException, $MetadataBearer { - name: "ErrorWithoutMembers"; - $fault: "server"; +export class ErrorWithoutMembers extends __BaseException { + readonly name: "ErrorWithoutMembers" = "ErrorWithoutMembers"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ErrorWithoutMembers", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, ErrorWithoutMembers.prototype); + } } /** * This error has test cases that test some of the dark corners of Amazon service * framework history. It should only be implemented by clients. */ -export interface FooError extends __SmithyException, $MetadataBearer { - name: "FooError"; - $fault: "server"; +export class FooError extends __BaseException { + readonly name: "FooError" = "FooError"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FooError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, FooError.prototype); + } } export interface GreetingWithErrorsOutput { @@ -108,10 +144,22 @@ export namespace GreetingWithErrorsOutput { /** * This error is thrown when an invalid greeting value is provided. */ -export interface InvalidGreeting extends __SmithyException, $MetadataBearer { - name: "InvalidGreeting"; - $fault: "client"; +export class InvalidGreeting extends __BaseException { + readonly name: "InvalidGreeting" = "InvalidGreeting"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGreeting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGreeting.prototype); + this.Message = opts.Message; + } } export enum FooEnum { @@ -469,9 +517,9 @@ export namespace KitchenSink { }); } -export interface ErrorWithMembers extends __SmithyException, $MetadataBearer { - name: "ErrorWithMembers"; - $fault: "client"; +export class ErrorWithMembers extends __BaseException { + readonly name: "ErrorWithMembers" = "ErrorWithMembers"; + readonly $fault: "client" = "client"; Code?: string; ComplexData?: KitchenSink; IntegerField?: number; @@ -482,4 +530,22 @@ export interface ErrorWithMembers extends __SmithyException, $MetadataBearer { * abc */ StringField?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ErrorWithMembers", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ErrorWithMembers.prototype); + this.Code = opts.Code; + this.ComplexData = opts.ComplexData; + this.IntegerField = opts.IntegerField; + this.ListField = opts.ListField; + this.MapField = opts.MapField; + this.Message = opts.Message; + this.StringField = opts.StringField; + } } diff --git a/private/aws-protocoltests-json/src/protocols/Aws_json1_1.ts b/private/aws-protocoltests-json/src/protocols/Aws_json1_1.ts index 1bc20ba607cb5..d43bee4937990 100644 --- a/private/aws-protocoltests-json/src/protocols/Aws_json1_1.ts +++ b/private/aws-protocoltests-json/src/protocols/Aws_json1_1.ts @@ -5,6 +5,7 @@ import { } from "@aws-sdk/protocol-http"; import { dateToUtcString as __dateToUtcString, + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, @@ -24,10 +25,8 @@ import { DocumentType as __DocumentType, Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -61,6 +60,7 @@ import { SimpleScalarPropertiesCommandInput, SimpleScalarPropertiesCommandOutput, } from "../commands/SimpleScalarPropertiesCommand"; +import { JsonProtocolServiceException as __BaseException } from "../models/JsonProtocolServiceException"; import { ComplexError, ComplexNestedErrorData, @@ -278,25 +278,19 @@ const deserializeAws_json1_1EmptyOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EndpointOperationCommand = async ( @@ -321,25 +315,19 @@ const deserializeAws_json1_1EndpointOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1EndpointWithHostLabelOperationCommand = async ( @@ -364,25 +352,19 @@ const deserializeAws_json1_1EndpointWithHostLabelOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1GreetingWithErrorsCommand = async ( @@ -410,49 +392,28 @@ const deserializeAws_json1_1GreetingWithErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplexError": case "aws.protocoltests.json#ComplexError": - response = { - ...(await deserializeAws_json1_1ComplexErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ComplexErrorResponse(parsedOutput, context); case "FooError": case "aws.protocoltests.json#FooError": - response = { - ...(await deserializeAws_json1_1FooErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1FooErrorResponse(parsedOutput, context); case "InvalidGreeting": case "aws.protocoltests.json#InvalidGreeting": - response = { - ...(await deserializeAws_json1_1InvalidGreetingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1InvalidGreetingResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1HostWithPathOperationCommand = async ( @@ -477,25 +438,19 @@ const deserializeAws_json1_1HostWithPathOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1JsonEnumsCommand = async ( @@ -523,25 +478,19 @@ const deserializeAws_json1_1JsonEnumsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1JsonUnionsCommand = async ( @@ -569,25 +518,19 @@ const deserializeAws_json1_1JsonUnionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1KitchenSinkOperationCommand = async ( @@ -615,41 +558,25 @@ const deserializeAws_json1_1KitchenSinkOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ErrorWithMembers": case "aws.protocoltests.json#ErrorWithMembers": - response = { - ...(await deserializeAws_json1_1ErrorWithMembersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ErrorWithMembersResponse(parsedOutput, context); case "ErrorWithoutMembers": case "aws.protocoltests.json#ErrorWithoutMembers": - response = { - ...(await deserializeAws_json1_1ErrorWithoutMembersResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_json1_1ErrorWithoutMembersResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1NullOperationCommand = async ( @@ -677,25 +604,19 @@ const deserializeAws_json1_1NullOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1OperationWithOptionalInputOutputCommand = async ( @@ -723,25 +644,19 @@ const deserializeAws_json1_1OperationWithOptionalInputOutputCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1PutAndGetInlineDocumentsCommand = async ( @@ -769,25 +684,19 @@ const deserializeAws_json1_1PutAndGetInlineDocumentsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_json1_1SimpleScalarPropertiesCommand = async ( @@ -815,25 +724,19 @@ const deserializeAws_json1_1SimpleScalarPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_json1_1ComplexErrorResponse = async ( @@ -842,13 +745,11 @@ const deserializeAws_json1_1ComplexErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ComplexError(body, context); - const contents: ComplexError = { - name: "ComplexError", - $fault: "client", + const exception = new ComplexError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ErrorWithMembersResponse = async ( @@ -857,13 +758,11 @@ const deserializeAws_json1_1ErrorWithMembersResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ErrorWithMembers(body, context); - const contents: ErrorWithMembers = { - name: "ErrorWithMembers", - $fault: "client", + const exception = new ErrorWithMembers({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1ErrorWithoutMembersResponse = async ( @@ -872,13 +771,11 @@ const deserializeAws_json1_1ErrorWithoutMembersResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1ErrorWithoutMembers(body, context); - const contents: ErrorWithoutMembers = { - name: "ErrorWithoutMembers", - $fault: "server", + const exception = new ErrorWithoutMembers({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1FooErrorResponse = async ( @@ -887,13 +784,11 @@ const deserializeAws_json1_1FooErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1FooError(body, context); - const contents: FooError = { - name: "FooError", - $fault: "server", + const exception = new FooError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_json1_1InvalidGreetingResponse = async ( @@ -902,13 +797,11 @@ const deserializeAws_json1_1InvalidGreetingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_json1_1InvalidGreeting(body, context); - const contents: InvalidGreeting = { - name: "InvalidGreeting", - $fault: "client", + const exception = new InvalidGreeting({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_json1_1Document = (input: __DocumentType, context: __SerdeContext): any => { diff --git a/private/aws-protocoltests-query/src/index.ts b/private/aws-protocoltests-query/src/index.ts index ec389347c03bf..0a0623f1c8e82 100644 --- a/private/aws-protocoltests-query/src/index.ts +++ b/private/aws-protocoltests-query/src/index.ts @@ -2,3 +2,4 @@ export * from "./QueryProtocol"; export * from "./QueryProtocolClient"; export * from "./commands"; export * from "./models"; +export { QueryProtocolServiceException } from "./models/QueryProtocolServiceException"; diff --git a/private/aws-protocoltests-query/src/models/QueryProtocolServiceException.ts b/private/aws-protocoltests-query/src/models/QueryProtocolServiceException.ts new file mode 100644 index 0000000000000..7005e9b8e9164 --- /dev/null +++ b/private/aws-protocoltests-query/src/models/QueryProtocolServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from QueryProtocol service. + */ +export class QueryProtocolServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, QueryProtocolServiceException.prototype); + } +} diff --git a/private/aws-protocoltests-query/src/models/models_0.ts b/private/aws-protocoltests-query/src/models/models_0.ts index f0c9dfed85cc3..0c1620f9494e9 100644 --- a/private/aws-protocoltests-query/src/models/models_0.ts +++ b/private/aws-protocoltests-query/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { QueryProtocolServiceException as __BaseException } from "./QueryProtocolServiceException"; export interface EmptyInputAndEmptyOutputInput {} @@ -98,17 +101,42 @@ export namespace ComplexNestedErrorData { /** * This error is thrown when a request is invalid. */ -export interface ComplexError extends __SmithyException, $MetadataBearer { - name: "ComplexError"; - $fault: "client"; +export class ComplexError extends __BaseException { + readonly name: "ComplexError" = "ComplexError"; + readonly $fault: "client" = "client"; TopLevel?: string; Nested?: ComplexNestedErrorData; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplexError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplexError.prototype); + this.TopLevel = opts.TopLevel; + this.Nested = opts.Nested; + } } -export interface CustomCodeError extends __SmithyException, $MetadataBearer { - name: "CustomCodeError"; - $fault: "client"; +export class CustomCodeError extends __BaseException { + readonly name: "CustomCodeError" = "CustomCodeError"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "CustomCodeError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, CustomCodeError.prototype); + this.Message = opts.Message; + } } export interface GreetingWithErrorsOutput { @@ -127,10 +155,22 @@ export namespace GreetingWithErrorsOutput { /** * This error is thrown when an invalid greeting value is provided. */ -export interface InvalidGreeting extends __SmithyException, $MetadataBearer { - name: "InvalidGreeting"; - $fault: "client"; +export class InvalidGreeting extends __BaseException { + readonly name: "InvalidGreeting" = "InvalidGreeting"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGreeting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGreeting.prototype); + this.Message = opts.Message; + } } export interface IgnoresWrappingXmlNameOutput { diff --git a/private/aws-protocoltests-query/src/protocols/Aws_query.ts b/private/aws-protocoltests-query/src/protocols/Aws_query.ts index 3fc11fa50c3fe..6cf8db8ed800f 100644 --- a/private/aws-protocoltests-query/src/protocols/Aws_query.ts +++ b/private/aws-protocoltests-query/src/protocols/Aws_query.ts @@ -4,6 +4,7 @@ import { isValidHostname as __isValidHostname, } from "@aws-sdk/protocol-http"; import { + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, @@ -23,10 +24,8 @@ import { import { Endpoint as __Endpoint, HeaderBag as __HeaderBag, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { decodeHTML } from "entities"; import { parse as xmlParse } from "fast-xml-parser"; @@ -125,6 +124,7 @@ import { XmlNamespacesOutput, XmlTimestampsOutput, } from "../models/models_0"; +import { QueryProtocolServiceException as __BaseException } from "../models/QueryProtocolServiceException"; export const serializeAws_queryEmptyInputAndEmptyOutputCommand = async ( input: EmptyInputAndEmptyOutputCommandInput, @@ -593,25 +593,19 @@ const deserializeAws_queryEmptyInputAndEmptyOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEndpointOperationCommand = async ( @@ -636,25 +630,19 @@ const deserializeAws_queryEndpointOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryEndpointWithHostLabelOperationCommand = async ( @@ -679,25 +667,19 @@ const deserializeAws_queryEndpointWithHostLabelOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFlattenedXmlMapCommand = async ( @@ -725,25 +707,19 @@ const deserializeAws_queryFlattenedXmlMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFlattenedXmlMapWithXmlNameCommand = async ( @@ -771,25 +747,19 @@ const deserializeAws_queryFlattenedXmlMapWithXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryFlattenedXmlMapWithXmlNamespaceCommand = async ( @@ -820,25 +790,19 @@ const deserializeAws_queryFlattenedXmlMapWithXmlNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryGreetingWithErrorsCommand = async ( @@ -866,49 +830,28 @@ const deserializeAws_queryGreetingWithErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplexError": case "aws.protocoltests.query#ComplexError": - response = { - ...(await deserializeAws_queryComplexErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryComplexErrorResponse(parsedOutput, context); case "CustomCodeError": case "aws.protocoltests.query#CustomCodeError": - response = { - ...(await deserializeAws_queryCustomCodeErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryCustomCodeErrorResponse(parsedOutput, context); case "InvalidGreeting": case "aws.protocoltests.query#InvalidGreeting": - response = { - ...(await deserializeAws_queryInvalidGreetingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_queryInvalidGreetingResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryHostWithPathOperationCommand = async ( @@ -933,25 +876,19 @@ const deserializeAws_queryHostWithPathOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryIgnoresWrappingXmlNameCommand = async ( @@ -979,25 +916,19 @@ const deserializeAws_queryIgnoresWrappingXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryNestedStructuresCommand = async ( @@ -1022,25 +953,19 @@ const deserializeAws_queryNestedStructuresCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryNoInputAndNoOutputCommand = async ( @@ -1065,25 +990,19 @@ const deserializeAws_queryNoInputAndNoOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryNoInputAndOutputCommand = async ( @@ -1111,25 +1030,19 @@ const deserializeAws_queryNoInputAndOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryQueryIdempotencyTokenAutoFillCommand = async ( @@ -1154,25 +1067,19 @@ const deserializeAws_queryQueryIdempotencyTokenAutoFillCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryQueryListsCommand = async ( @@ -1197,25 +1104,19 @@ const deserializeAws_queryQueryListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryQueryMapsCommand = async ( @@ -1240,25 +1141,19 @@ const deserializeAws_queryQueryMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryQueryTimestampsCommand = async ( @@ -1283,25 +1178,19 @@ const deserializeAws_queryQueryTimestampsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryRecursiveXmlShapesCommand = async ( @@ -1329,25 +1218,19 @@ const deserializeAws_queryRecursiveXmlShapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySimpleInputParamsCommand = async ( @@ -1372,25 +1255,19 @@ const deserializeAws_querySimpleInputParamsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_querySimpleScalarXmlPropertiesCommand = async ( @@ -1418,25 +1295,19 @@ const deserializeAws_querySimpleScalarXmlPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlBlobsCommand = async ( @@ -1464,25 +1335,19 @@ const deserializeAws_queryXmlBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlEmptyBlobsCommand = async ( @@ -1510,25 +1375,19 @@ const deserializeAws_queryXmlEmptyBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlEmptyListsCommand = async ( @@ -1556,25 +1415,19 @@ const deserializeAws_queryXmlEmptyListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlEmptyMapsCommand = async ( @@ -1602,25 +1455,19 @@ const deserializeAws_queryXmlEmptyMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlEnumsCommand = async ( @@ -1648,25 +1495,19 @@ const deserializeAws_queryXmlEnumsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlListsCommand = async ( @@ -1694,25 +1535,19 @@ const deserializeAws_queryXmlListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlMapsCommand = async ( @@ -1740,25 +1575,19 @@ const deserializeAws_queryXmlMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlMapsXmlNameCommand = async ( @@ -1786,25 +1615,19 @@ const deserializeAws_queryXmlMapsXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlNamespacesCommand = async ( @@ -1832,25 +1655,19 @@ const deserializeAws_queryXmlNamespacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_queryXmlTimestampsCommand = async ( @@ -1878,25 +1695,19 @@ const deserializeAws_queryXmlTimestampsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_queryComplexErrorResponse = async ( @@ -1905,13 +1716,11 @@ const deserializeAws_queryComplexErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryComplexError(body.Error, context); - const contents: ComplexError = { - name: "ComplexError", - $fault: "client", + const exception = new ComplexError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryCustomCodeErrorResponse = async ( @@ -1920,13 +1729,11 @@ const deserializeAws_queryCustomCodeErrorResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryCustomCodeError(body.Error, context); - const contents: CustomCodeError = { - name: "CustomCodeError", - $fault: "client", + const exception = new CustomCodeError({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const deserializeAws_queryInvalidGreetingResponse = async ( @@ -1935,13 +1742,11 @@ const deserializeAws_queryInvalidGreetingResponse = async ( ): Promise => { const body = parsedOutput.body; const deserialized: any = deserializeAws_queryInvalidGreeting(body.Error, context); - const contents: InvalidGreeting = { - name: "InvalidGreeting", - $fault: "client", + const exception = new InvalidGreeting({ $metadata: deserializeMetadata(parsedOutput), ...deserialized, - }; - return contents; + }); + return __decorateServiceException(exception, body); }; const serializeAws_queryComplexMap = (input: { [key: string]: GreetingStruct }, context: __SerdeContext): any => { diff --git a/private/aws-protocoltests-restjson/src/index.ts b/private/aws-protocoltests-restjson/src/index.ts index e397b549b73c8..d4d238ed81be1 100644 --- a/private/aws-protocoltests-restjson/src/index.ts +++ b/private/aws-protocoltests-restjson/src/index.ts @@ -2,3 +2,4 @@ export * from "./RestJsonProtocol"; export * from "./RestJsonProtocolClient"; export * from "./commands"; export * from "./models"; +export { RestJsonProtocolServiceException } from "./models/RestJsonProtocolServiceException"; diff --git a/private/aws-protocoltests-restjson/src/models/RestJsonProtocolServiceException.ts b/private/aws-protocoltests-restjson/src/models/RestJsonProtocolServiceException.ts new file mode 100644 index 0000000000000..6f70ccf95413a --- /dev/null +++ b/private/aws-protocoltests-restjson/src/models/RestJsonProtocolServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RestJsonProtocol service. + */ +export class RestJsonProtocolServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RestJsonProtocolServiceException.prototype); + } +} diff --git a/private/aws-protocoltests-restjson/src/models/models_0.ts b/private/aws-protocoltests-restjson/src/models/models_0.ts index fb9637c29d2b2..ff31e0ce26545 100644 --- a/private/aws-protocoltests-restjson/src/models/models_0.ts +++ b/private/aws-protocoltests-restjson/src/models/models_0.ts @@ -1,11 +1,12 @@ -import { LazyJsonString as __LazyJsonString } from "@aws-sdk/smithy-client"; import { - DocumentType as __DocumentType, - MetadataBearer as $MetadataBearer, - SmithyException as __SmithyException, -} from "@aws-sdk/types"; + ExceptionOptionType as __ExceptionOptionType, + LazyJsonString as __LazyJsonString, +} from "@aws-sdk/smithy-client"; +import { DocumentType as __DocumentType, MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; import { Readable } from "stream"; +import { RestJsonProtocolServiceException as __BaseException } from "./RestJsonProtocolServiceException"; + export enum FooEnum { BAR = "Bar", BAZ = "Baz", @@ -61,12 +62,26 @@ export namespace ComplexNestedErrorData { /** * This error is thrown when a request is invalid. */ -export interface ComplexError extends __SmithyException, $MetadataBearer { - name: "ComplexError"; - $fault: "client"; +export class ComplexError extends __BaseException { + readonly name: "ComplexError" = "ComplexError"; + readonly $fault: "client" = "client"; Header?: string; TopLevel?: string; Nested?: ComplexNestedErrorData; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplexError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplexError.prototype); + this.Header = opts.Header; + this.TopLevel = opts.TopLevel; + this.Nested = opts.Nested; + } } export interface ConstantAndVariableQueryStringInput { @@ -192,9 +207,20 @@ export namespace EnumPayloadInput { * This error has test cases that test some of the dark corners of Amazon service * framework history. It should only be implemented by clients. */ -export interface FooError extends __SmithyException, $MetadataBearer { - name: "FooError"; - $fault: "server"; +export class FooError extends __BaseException { + readonly name: "FooError" = "FooError"; + readonly $fault: "server" = "server"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "FooError", + $fault: "server", + ...opts, + }); + Object.setPrototypeOf(this, FooError.prototype); + } } export interface GreetingWithErrorsOutput { @@ -213,10 +239,22 @@ export namespace GreetingWithErrorsOutput { /** * This error is thrown when an invalid greeting value is provided. */ -export interface InvalidGreeting extends __SmithyException, $MetadataBearer { - name: "InvalidGreeting"; - $fault: "client"; +export class InvalidGreeting extends __BaseException { + readonly name: "InvalidGreeting" = "InvalidGreeting"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGreeting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGreeting.prototype); + this.Message = opts.Message; + } } export interface HttpChecksumRequiredInputOutput { diff --git a/private/aws-protocoltests-restjson/src/protocols/Aws_restJson1.ts b/private/aws-protocoltests-restjson/src/protocols/Aws_restJson1.ts index bbdcb7e9e7dbb..fedcfc9293338 100644 --- a/private/aws-protocoltests-restjson/src/protocols/Aws_restJson1.ts +++ b/private/aws-protocoltests-restjson/src/protocols/Aws_restJson1.ts @@ -5,6 +5,7 @@ import { } from "@aws-sdk/protocol-http"; import { dateToUtcString as __dateToUtcString, + decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectByte as __expectByte, expectInt32 as __expectInt32, @@ -35,10 +36,8 @@ import { import { DocumentType as __DocumentType, Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { v4 as generateIdempotencyToken } from "uuid"; @@ -291,6 +290,7 @@ import { TestConfig, Unit, } from "../models/models_0"; +import { RestJsonProtocolServiceException as __BaseException } from "../models/RestJsonProtocolServiceException"; export const serializeAws_restJson1AllQueryStringTypesCommand = async ( input: AllQueryStringTypesCommandInput, @@ -2914,25 +2914,19 @@ const deserializeAws_restJson1AllQueryStringTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ConstantAndVariableQueryStringCommand = async ( @@ -2957,25 +2951,19 @@ const deserializeAws_restJson1ConstantAndVariableQueryStringCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1ConstantQueryStringCommand = async ( @@ -3000,25 +2988,19 @@ const deserializeAws_restJson1ConstantQueryStringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DocumentTypeCommand = async ( @@ -3051,25 +3033,19 @@ const deserializeAws_restJson1DocumentTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1DocumentTypeAsPayloadCommand = async ( @@ -3097,25 +3073,19 @@ const deserializeAws_restJson1DocumentTypeAsPayloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EmptyInputAndEmptyOutputCommand = async ( @@ -3140,25 +3110,19 @@ const deserializeAws_restJson1EmptyInputAndEmptyOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EndpointOperationCommand = async ( @@ -3183,25 +3147,19 @@ const deserializeAws_restJson1EndpointOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1EndpointWithHostLabelOperationCommand = async ( @@ -3226,25 +3184,19 @@ const deserializeAws_restJson1EndpointWithHostLabelOperationCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1GreetingWithErrorsCommand = async ( @@ -3273,49 +3225,28 @@ const deserializeAws_restJson1GreetingWithErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplexError": case "aws.protocoltests.restjson#ComplexError": - response = { - ...(await deserializeAws_restJson1ComplexErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1ComplexErrorResponse(parsedOutput, context); case "FooError": case "aws.protocoltests.restjson#FooError": - response = { - ...(await deserializeAws_restJson1FooErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1FooErrorResponse(parsedOutput, context); case "InvalidGreeting": case "aws.protocoltests.restjson#InvalidGreeting": - response = { - ...(await deserializeAws_restJson1InvalidGreetingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restJson1InvalidGreetingResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HostWithPathOperationCommand = async ( @@ -3340,25 +3271,19 @@ const deserializeAws_restJson1HostWithPathOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpChecksumRequiredCommand = async ( @@ -3387,25 +3312,19 @@ const deserializeAws_restJson1HttpChecksumRequiredCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpEnumPayloadCommand = async ( @@ -3432,25 +3351,19 @@ const deserializeAws_restJson1HttpEnumPayloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpPayloadTraitsCommand = async ( @@ -3481,25 +3394,19 @@ const deserializeAws_restJson1HttpPayloadTraitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpPayloadTraitsWithMediaTypeCommand = async ( @@ -3530,25 +3437,19 @@ const deserializeAws_restJson1HttpPayloadTraitsWithMediaTypeCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpPayloadWithStructureCommand = async ( @@ -3575,25 +3476,19 @@ const deserializeAws_restJson1HttpPayloadWithStructureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpPrefixHeadersCommand = async ( @@ -3631,25 +3526,19 @@ const deserializeAws_restJson1HttpPrefixHeadersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpPrefixHeadersInResponseCommand = async ( @@ -3683,25 +3572,19 @@ const deserializeAws_restJson1HttpPrefixHeadersInResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpRequestWithFloatLabelsCommand = async ( @@ -3726,25 +3609,19 @@ const deserializeAws_restJson1HttpRequestWithFloatLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpRequestWithGreedyLabelInPathCommand = async ( @@ -3769,25 +3646,19 @@ const deserializeAws_restJson1HttpRequestWithGreedyLabelInPathCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpRequestWithLabelsCommand = async ( @@ -3812,25 +3683,19 @@ const deserializeAws_restJson1HttpRequestWithLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpRequestWithLabelsAndTimestampFormatCommand = async ( @@ -3855,25 +3720,19 @@ const deserializeAws_restJson1HttpRequestWithLabelsAndTimestampFormatCommandErro ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpRequestWithRegexLiteralCommand = async ( @@ -3898,25 +3757,19 @@ const deserializeAws_restJson1HttpRequestWithRegexLiteralCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpResponseCodeCommand = async ( @@ -3945,25 +3798,19 @@ const deserializeAws_restJson1HttpResponseCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1HttpStringPayloadCommand = async ( @@ -3990,25 +3837,19 @@ const deserializeAws_restJson1HttpStringPayloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1IgnoreQueryParamsInResponseCommand = async ( @@ -4037,25 +3878,19 @@ const deserializeAws_restJson1IgnoreQueryParamsInResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1InputAndOutputWithHeadersCommand = async ( @@ -4150,25 +3985,19 @@ const deserializeAws_restJson1InputAndOutputWithHeadersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1JsonBlobsCommand = async ( @@ -4197,25 +4026,19 @@ const deserializeAws_restJson1JsonBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1JsonEnumsCommand = async ( @@ -4264,25 +4087,19 @@ const deserializeAws_restJson1JsonEnumsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1JsonListsCommand = async ( @@ -4343,25 +4160,19 @@ const deserializeAws_restJson1JsonListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1JsonMapsCommand = async ( @@ -4426,25 +4237,19 @@ const deserializeAws_restJson1JsonMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1JsonTimestampsCommand = async ( @@ -4485,25 +4290,19 @@ const deserializeAws_restJson1JsonTimestampsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1JsonUnionsCommand = async ( @@ -4532,25 +4331,19 @@ const deserializeAws_restJson1JsonUnionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedAcceptWithBodyCommand = async ( @@ -4579,25 +4372,19 @@ const deserializeAws_restJson1MalformedAcceptWithBodyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedAcceptWithGenericStringCommand = async ( @@ -4622,25 +4409,19 @@ const deserializeAws_restJson1MalformedAcceptWithGenericStringCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedAcceptWithPayloadCommand = async ( @@ -4667,25 +4448,19 @@ const deserializeAws_restJson1MalformedAcceptWithPayloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedBlobCommand = async ( @@ -4710,25 +4485,19 @@ const deserializeAws_restJson1MalformedBlobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedBooleanCommand = async ( @@ -4753,25 +4522,19 @@ const deserializeAws_restJson1MalformedBooleanCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedByteCommand = async ( @@ -4796,25 +4559,19 @@ const deserializeAws_restJson1MalformedByteCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedContentTypeWithBodyCommand = async ( @@ -4839,25 +4596,19 @@ const deserializeAws_restJson1MalformedContentTypeWithBodyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedContentTypeWithGenericStringCommand = async ( @@ -4882,25 +4633,19 @@ const deserializeAws_restJson1MalformedContentTypeWithGenericStringCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedContentTypeWithoutBodyCommand = async ( @@ -4925,25 +4670,19 @@ const deserializeAws_restJson1MalformedContentTypeWithoutBodyCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedContentTypeWithPayloadCommand = async ( @@ -4968,25 +4707,19 @@ const deserializeAws_restJson1MalformedContentTypeWithPayloadCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedDoubleCommand = async ( @@ -5011,25 +4744,19 @@ const deserializeAws_restJson1MalformedDoubleCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedFloatCommand = async ( @@ -5054,25 +4781,19 @@ const deserializeAws_restJson1MalformedFloatCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedIntegerCommand = async ( @@ -5097,25 +4818,19 @@ const deserializeAws_restJson1MalformedIntegerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedListCommand = async ( @@ -5140,25 +4855,19 @@ const deserializeAws_restJson1MalformedListCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedLongCommand = async ( @@ -5183,25 +4892,19 @@ const deserializeAws_restJson1MalformedLongCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedMapCommand = async ( @@ -5226,25 +4929,19 @@ const deserializeAws_restJson1MalformedMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedRequestBodyCommand = async ( @@ -5269,25 +4966,19 @@ const deserializeAws_restJson1MalformedRequestBodyCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedSetCommand = async ( @@ -5312,25 +5003,19 @@ const deserializeAws_restJson1MalformedSetCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedShortCommand = async ( @@ -5355,25 +5040,19 @@ const deserializeAws_restJson1MalformedShortCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedStringCommand = async ( @@ -5398,25 +5077,19 @@ const deserializeAws_restJson1MalformedStringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampBodyDateTimeCommand = async ( @@ -5441,25 +5114,19 @@ const deserializeAws_restJson1MalformedTimestampBodyDateTimeCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampBodyDefaultCommand = async ( @@ -5484,25 +5151,19 @@ const deserializeAws_restJson1MalformedTimestampBodyDefaultCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampBodyHttpDateCommand = async ( @@ -5527,25 +5188,19 @@ const deserializeAws_restJson1MalformedTimestampBodyHttpDateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampHeaderDateTimeCommand = async ( @@ -5570,25 +5225,19 @@ const deserializeAws_restJson1MalformedTimestampHeaderDateTimeCommandError = asy ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampHeaderDefaultCommand = async ( @@ -5613,25 +5262,19 @@ const deserializeAws_restJson1MalformedTimestampHeaderDefaultCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampHeaderEpochCommand = async ( @@ -5656,25 +5299,19 @@ const deserializeAws_restJson1MalformedTimestampHeaderEpochCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampPathDefaultCommand = async ( @@ -5699,25 +5336,19 @@ const deserializeAws_restJson1MalformedTimestampPathDefaultCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampPathEpochCommand = async ( @@ -5742,25 +5373,19 @@ const deserializeAws_restJson1MalformedTimestampPathEpochCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampPathHttpDateCommand = async ( @@ -5785,25 +5410,19 @@ const deserializeAws_restJson1MalformedTimestampPathHttpDateCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampQueryDefaultCommand = async ( @@ -5828,25 +5447,19 @@ const deserializeAws_restJson1MalformedTimestampQueryDefaultCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampQueryEpochCommand = async ( @@ -5871,25 +5484,19 @@ const deserializeAws_restJson1MalformedTimestampQueryEpochCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedTimestampQueryHttpDateCommand = async ( @@ -5914,25 +5521,19 @@ const deserializeAws_restJson1MalformedTimestampQueryHttpDateCommandError = asyn ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MalformedUnionCommand = async ( @@ -5957,25 +5558,19 @@ const deserializeAws_restJson1MalformedUnionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1MediaTypeHeaderCommand = async ( @@ -6004,25 +5599,19 @@ const deserializeAws_restJson1MediaTypeHeaderCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1NoInputAndNoOutputCommand = async ( @@ -6047,25 +5636,19 @@ const deserializeAws_restJson1NoInputAndNoOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1NoInputAndOutputCommand = async ( @@ -6090,25 +5673,19 @@ const deserializeAws_restJson1NoInputAndOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1NullAndEmptyHeadersClientCommand = async ( @@ -6145,25 +5722,19 @@ const deserializeAws_restJson1NullAndEmptyHeadersClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1NullAndEmptyHeadersServerCommand = async ( @@ -6200,25 +5771,19 @@ const deserializeAws_restJson1NullAndEmptyHeadersServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1OmitsNullSerializesEmptyStringCommand = async ( @@ -6243,25 +5808,19 @@ const deserializeAws_restJson1OmitsNullSerializesEmptyStringCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1PostPlayerActionCommand = async ( @@ -6290,25 +5849,19 @@ const deserializeAws_restJson1PostPlayerActionCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1QueryIdempotencyTokenAutoFillCommand = async ( @@ -6333,25 +5886,19 @@ const deserializeAws_restJson1QueryIdempotencyTokenAutoFillCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1QueryParamsAsStringListMapCommand = async ( @@ -6376,25 +5923,19 @@ const deserializeAws_restJson1QueryParamsAsStringListMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1QueryPrecedenceCommand = async ( @@ -6419,25 +5960,19 @@ const deserializeAws_restJson1QueryPrecedenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1RecursiveShapesCommand = async ( @@ -6466,25 +6001,19 @@ const deserializeAws_restJson1RecursiveShapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1SimpleScalarPropertiesCommand = async ( @@ -6549,25 +6078,19 @@ const deserializeAws_restJson1SimpleScalarPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StreamingTraitsCommand = async ( @@ -6598,25 +6121,19 @@ const deserializeAws_restJson1StreamingTraitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StreamingTraitsRequireLengthCommand = async ( @@ -6647,25 +6164,19 @@ const deserializeAws_restJson1StreamingTraitsRequireLengthCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1StreamingTraitsWithMediaTypeCommand = async ( @@ -6696,25 +6207,19 @@ const deserializeAws_restJson1StreamingTraitsWithMediaTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestBodyStructureCommand = async ( @@ -6747,25 +6252,19 @@ const deserializeAws_restJson1TestBodyStructureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestNoPayloadCommand = async ( @@ -6794,25 +6293,19 @@ const deserializeAws_restJson1TestNoPayloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestPayloadBlobCommand = async ( @@ -6843,25 +6336,19 @@ const deserializeAws_restJson1TestPayloadBlobCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TestPayloadStructureCommand = async ( @@ -6892,25 +6379,19 @@ const deserializeAws_restJson1TestPayloadStructureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1TimestampFormatHeadersCommand = async ( @@ -6963,25 +6444,19 @@ const deserializeAws_restJson1TimestampFormatHeadersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restJson1UnitInputAndOutputCommand = async ( @@ -7006,39 +6481,26 @@ const deserializeAws_restJson1UnitInputAndOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.code || parsedBody.Code || errorCode; - response = { - ...parsedBody, - name: `${errorCode}`, - message: parsedBody.message || parsedBody.Message || errorCode, + response = new __BaseException({ + name: parsedBody.code || parsedBody.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restJson1ComplexErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ComplexError = { - name: "ComplexError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Header: undefined, - Nested: undefined, - TopLevel: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["x-header"] !== undefined) { contents.Header = parsedOutput.headers["x-header"]; } @@ -7049,37 +6511,40 @@ const deserializeAws_restJson1ComplexErrorResponse = async ( if (data.TopLevel !== undefined && data.TopLevel !== null) { contents.TopLevel = __expectString(data.TopLevel); } - return contents; + const exception = new ComplexError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1FooErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: FooError = { - name: "FooError", - $fault: "server", - $metadata: deserializeMetadata(parsedOutput), - }; + const contents: any = {}; const data: any = parsedOutput.body; - return contents; + const exception = new FooError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const deserializeAws_restJson1InvalidGreetingResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidGreeting = { - name: "InvalidGreeting", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body; if (data.Message !== undefined && data.Message !== null) { contents.Message = __expectString(data.Message); } - return contents; + const exception = new InvalidGreeting({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); }; const serializeAws_restJson1DenseBooleanMap = (input: { [key: string]: boolean }, context: __SerdeContext): any => { diff --git a/private/aws-protocoltests-restxml/src/index.ts b/private/aws-protocoltests-restxml/src/index.ts index 59ad9430b7499..17cbcde5450d8 100644 --- a/private/aws-protocoltests-restxml/src/index.ts +++ b/private/aws-protocoltests-restxml/src/index.ts @@ -2,3 +2,4 @@ export * from "./RestXmlProtocol"; export * from "./RestXmlProtocolClient"; export * from "./commands"; export * from "./models"; +export { RestXmlProtocolServiceException } from "./models/RestXmlProtocolServiceException"; diff --git a/private/aws-protocoltests-restxml/src/models/RestXmlProtocolServiceException.ts b/private/aws-protocoltests-restxml/src/models/RestXmlProtocolServiceException.ts new file mode 100644 index 0000000000000..f936ee560fce5 --- /dev/null +++ b/private/aws-protocoltests-restxml/src/models/RestXmlProtocolServiceException.ts @@ -0,0 +1,17 @@ +import { + ServiceException as __ServiceException, + ServiceExceptionOptions as __ServiceExceptionOptions, +} from "@aws-sdk/smithy-client"; + +/** + * Base exception class for all service exceptions from RestXmlProtocol service. + */ +export class RestXmlProtocolServiceException extends __ServiceException { + /** + * @internal + */ + constructor(options: __ServiceExceptionOptions) { + super(options); + Object.setPrototypeOf(this, RestXmlProtocolServiceException.prototype); + } +} diff --git a/private/aws-protocoltests-restxml/src/models/models_0.ts b/private/aws-protocoltests-restxml/src/models/models_0.ts index 85ac7d3f0ba11..4f61a7c6f95c7 100644 --- a/private/aws-protocoltests-restxml/src/models/models_0.ts +++ b/private/aws-protocoltests-restxml/src/models/models_0.ts @@ -1,4 +1,7 @@ -import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types"; +import { ExceptionOptionType as __ExceptionOptionType } from "@aws-sdk/smithy-client"; +import { MetadataBearer as $MetadataBearer } from "@aws-sdk/types"; + +import { RestXmlProtocolServiceException as __BaseException } from "./RestXmlProtocolServiceException"; export enum FooEnum { BAR = "Bar", @@ -81,12 +84,26 @@ export namespace ComplexNestedErrorData { /** * This error is thrown when a request is invalid. */ -export interface ComplexError extends __SmithyException, $MetadataBearer { - name: "ComplexError"; - $fault: "client"; +export class ComplexError extends __BaseException { + readonly name: "ComplexError" = "ComplexError"; + readonly $fault: "client" = "client"; Header?: string; TopLevel?: string; Nested?: ComplexNestedErrorData; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ComplexError", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ComplexError.prototype); + this.Header = opts.Header; + this.TopLevel = opts.TopLevel; + this.Nested = opts.Nested; + } } export interface ConstantAndVariableQueryStringInput { @@ -219,10 +236,22 @@ export namespace GreetingWithErrorsOutput { /** * This error is thrown when an invalid greeting value is provided. */ -export interface InvalidGreeting extends __SmithyException, $MetadataBearer { - name: "InvalidGreeting"; - $fault: "client"; +export class InvalidGreeting extends __BaseException { + readonly name: "InvalidGreeting" = "InvalidGreeting"; + readonly $fault: "client" = "client"; Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "InvalidGreeting", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, InvalidGreeting.prototype); + this.Message = opts.Message; + } } export interface HttpPayloadTraitsInputOutput { diff --git a/private/aws-protocoltests-restxml/src/protocols/Aws_restXml.ts b/private/aws-protocoltests-restxml/src/protocols/Aws_restXml.ts index b969d18f04e93..dfb644390982d 100644 --- a/private/aws-protocoltests-restxml/src/protocols/Aws_restXml.ts +++ b/private/aws-protocoltests-restxml/src/protocols/Aws_restXml.ts @@ -5,6 +5,7 @@ import { } from "@aws-sdk/protocol-http"; import { dateToUtcString as __dateToUtcString, + decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, @@ -26,10 +27,8 @@ import { } from "@aws-sdk/smithy-client"; import { Endpoint as __Endpoint, - MetadataBearer as __MetadataBearer, ResponseMetadata as __ResponseMetadata, SerdeContext as __SerdeContext, - SmithyException as __SmithyException, } from "@aws-sdk/types"; import { XmlNode as __XmlNode, XmlText as __XmlText } from "@aws-sdk/xml-builder"; import { decodeHTML } from "entities"; @@ -191,6 +190,7 @@ import { XmlNestedUnionStruct, XmlUnionShape, } from "../models/models_0"; +import { RestXmlProtocolServiceException as __BaseException } from "../models/RestXmlProtocolServiceException"; export const serializeAws_restXmlAllQueryStringTypesCommand = async ( input: AllQueryStringTypesCommandInput, @@ -2247,25 +2247,19 @@ const deserializeAws_restXmlAllQueryStringTypesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlBodyWithXmlNameCommand = async ( @@ -2294,25 +2288,19 @@ const deserializeAws_restXmlBodyWithXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlConstantAndVariableQueryStringCommand = async ( @@ -2337,25 +2325,19 @@ const deserializeAws_restXmlConstantAndVariableQueryStringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlConstantQueryStringCommand = async ( @@ -2380,25 +2362,19 @@ const deserializeAws_restXmlConstantQueryStringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlEmptyInputAndEmptyOutputCommand = async ( @@ -2423,25 +2399,19 @@ const deserializeAws_restXmlEmptyInputAndEmptyOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlEndpointOperationCommand = async ( @@ -2466,25 +2436,19 @@ const deserializeAws_restXmlEndpointOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlEndpointWithHostLabelHeaderOperationCommand = async ( @@ -2509,25 +2473,19 @@ const deserializeAws_restXmlEndpointWithHostLabelHeaderOperationCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlEndpointWithHostLabelOperationCommand = async ( @@ -2552,25 +2510,19 @@ const deserializeAws_restXmlEndpointWithHostLabelOperationCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlFlattenedXmlMapCommand = async ( @@ -2602,25 +2554,19 @@ const deserializeAws_restXmlFlattenedXmlMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlFlattenedXmlMapWithXmlNameCommand = async ( @@ -2655,25 +2601,19 @@ const deserializeAws_restXmlFlattenedXmlMapWithXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlFlattenedXmlMapWithXmlNamespaceCommand = async ( @@ -2708,25 +2648,19 @@ const deserializeAws_restXmlFlattenedXmlMapWithXmlNamespaceCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlGreetingWithErrorsCommand = async ( @@ -2755,41 +2689,25 @@ const deserializeAws_restXmlGreetingWithErrorsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { case "ComplexError": case "aws.protocoltests.restxml#ComplexError": - response = { - ...(await deserializeAws_restXmlComplexErrorResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlComplexErrorResponse(parsedOutput, context); case "InvalidGreeting": case "aws.protocoltests.restxml#InvalidGreeting": - response = { - ...(await deserializeAws_restXmlInvalidGreetingResponse(parsedOutput, context)), - name: errorCode, - $metadata: deserializeMetadata(output), - }; - break; + throw await deserializeAws_restXmlInvalidGreetingResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadTraitsCommand = async ( @@ -2820,25 +2738,19 @@ const deserializeAws_restXmlHttpPayloadTraitsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadTraitsWithMediaTypeCommand = async ( @@ -2869,25 +2781,19 @@ const deserializeAws_restXmlHttpPayloadTraitsWithMediaTypeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadWithMemberXmlNameCommand = async ( @@ -2914,25 +2820,19 @@ const deserializeAws_restXmlHttpPayloadWithMemberXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadWithStructureCommand = async ( @@ -2959,25 +2859,19 @@ const deserializeAws_restXmlHttpPayloadWithStructureCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadWithXmlNameCommand = async ( @@ -3004,25 +2898,19 @@ const deserializeAws_restXmlHttpPayloadWithXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadWithXmlNamespaceCommand = async ( @@ -3049,25 +2937,19 @@ const deserializeAws_restXmlHttpPayloadWithXmlNamespaceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPayloadWithXmlNamespaceAndPrefixCommand = async ( @@ -3094,25 +2976,19 @@ const deserializeAws_restXmlHttpPayloadWithXmlNamespaceAndPrefixCommandError = a ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpPrefixHeadersCommand = async ( @@ -3150,25 +3026,19 @@ const deserializeAws_restXmlHttpPrefixHeadersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpRequestWithFloatLabelsCommand = async ( @@ -3193,25 +3063,19 @@ const deserializeAws_restXmlHttpRequestWithFloatLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpRequestWithGreedyLabelInPathCommand = async ( @@ -3236,25 +3100,19 @@ const deserializeAws_restXmlHttpRequestWithGreedyLabelInPathCommandError = async ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpRequestWithLabelsCommand = async ( @@ -3279,25 +3137,19 @@ const deserializeAws_restXmlHttpRequestWithLabelsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpRequestWithLabelsAndTimestampFormatCommand = async ( @@ -3322,25 +3174,19 @@ const deserializeAws_restXmlHttpRequestWithLabelsAndTimestampFormatCommandError ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlHttpResponseCodeCommand = async ( @@ -3369,25 +3215,19 @@ const deserializeAws_restXmlHttpResponseCodeCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlIgnoreQueryParamsInResponseCommand = async ( @@ -3416,25 +3256,19 @@ const deserializeAws_restXmlIgnoreQueryParamsInResponseCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlInputAndOutputWithHeadersCommand = async ( @@ -3529,25 +3363,19 @@ const deserializeAws_restXmlInputAndOutputWithHeadersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlNestedXmlMapsCommand = async ( @@ -3586,25 +3414,19 @@ const deserializeAws_restXmlNestedXmlMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlNoInputAndNoOutputCommand = async ( @@ -3629,25 +3451,19 @@ const deserializeAws_restXmlNoInputAndNoOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlNoInputAndOutputCommand = async ( @@ -3672,25 +3488,19 @@ const deserializeAws_restXmlNoInputAndOutputCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlNullAndEmptyHeadersClientCommand = async ( @@ -3727,25 +3537,19 @@ const deserializeAws_restXmlNullAndEmptyHeadersClientCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlNullAndEmptyHeadersServerCommand = async ( @@ -3782,25 +3586,19 @@ const deserializeAws_restXmlNullAndEmptyHeadersServerCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlOmitsNullSerializesEmptyStringCommand = async ( @@ -3825,25 +3623,19 @@ const deserializeAws_restXmlOmitsNullSerializesEmptyStringCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlQueryIdempotencyTokenAutoFillCommand = async ( @@ -3868,25 +3660,19 @@ const deserializeAws_restXmlQueryIdempotencyTokenAutoFillCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlQueryParamsAsStringListMapCommand = async ( @@ -3911,25 +3697,19 @@ const deserializeAws_restXmlQueryParamsAsStringListMapCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlQueryPrecedenceCommand = async ( @@ -3954,25 +3734,19 @@ const deserializeAws_restXmlQueryPrecedenceCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlRecursiveShapesCommand = async ( @@ -4001,25 +3775,19 @@ const deserializeAws_restXmlRecursiveShapesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlSimpleScalarPropertiesCommand = async ( @@ -4084,25 +3852,19 @@ const deserializeAws_restXmlSimpleScalarPropertiesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlTimestampFormatHeadersCommand = async ( @@ -4155,25 +3917,19 @@ const deserializeAws_restXmlTimestampFormatHeadersCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlAttributesCommand = async ( @@ -4206,25 +3962,19 @@ const deserializeAws_restXmlXmlAttributesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlAttributesOnPayloadCommand = async ( @@ -4251,25 +4001,19 @@ const deserializeAws_restXmlXmlAttributesOnPayloadCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlBlobsCommand = async ( @@ -4298,25 +4042,19 @@ const deserializeAws_restXmlXmlBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlEmptyBlobsCommand = async ( @@ -4345,25 +4083,19 @@ const deserializeAws_restXmlXmlEmptyBlobsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlEmptyListsCommand = async ( @@ -4522,25 +4254,19 @@ const deserializeAws_restXmlXmlEmptyListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlEmptyMapsCommand = async ( @@ -4575,25 +4301,19 @@ const deserializeAws_restXmlXmlEmptyMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlEmptyStringsCommand = async ( @@ -4622,25 +4342,19 @@ const deserializeAws_restXmlXmlEmptyStringsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlEnumsCommand = async ( @@ -4707,25 +4421,19 @@ const deserializeAws_restXmlXmlEnumsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlListsCommand = async ( @@ -4884,25 +4592,19 @@ const deserializeAws_restXmlXmlListsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlMapsCommand = async ( @@ -4937,25 +4639,19 @@ const deserializeAws_restXmlXmlMapsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlMapsXmlNameCommand = async ( @@ -4990,25 +4686,19 @@ const deserializeAws_restXmlXmlMapsXmlNameCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlNamespacesCommand = async ( @@ -5037,25 +4727,19 @@ const deserializeAws_restXmlXmlNamespacesCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlTimestampsCommand = async ( @@ -5096,25 +4780,19 @@ const deserializeAws_restXmlXmlTimestampsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; export const deserializeAws_restXmlXmlUnionsCommand = async ( @@ -5143,39 +4821,26 @@ const deserializeAws_restXmlXmlUnionsCommandError = async ( ...output, body: await parseBody(output.body, context), }; - let response: __SmithyException & __MetadataBearer & { [key: string]: any }; + let response: __BaseException; let errorCode = "UnknownError"; errorCode = loadRestXmlErrorCode(output, parsedOutput.body); switch (errorCode) { default: const parsedBody = parsedOutput.body; - errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; - response = { - ...parsedBody.Error, - name: `${errorCode}`, - message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, + response = new __BaseException({ + name: parsedBody.Error.code || parsedBody.Error.Code || errorCode, $fault: "client", $metadata: deserializeMetadata(output), - } as any; + }); + throw __decorateServiceException(response, parsedBody.Error); } - const message = response.message || response.Message || errorCode; - response.message = message; - delete response.Message; - return Promise.reject(Object.assign(new Error(message), response)); }; const deserializeAws_restXmlComplexErrorResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: ComplexError = { - name: "ComplexError", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Header: undefined, - Nested: undefined, - TopLevel: undefined, - }; + const contents: any = {}; if (parsedOutput.headers["x-header"] !== undefined) { contents.Header = parsedOutput.headers["x-header"]; } @@ -5186,24 +4851,27 @@ const deserializeAws_restXmlComplexErrorResponse = async ( if (data["TopLevel"] !== undefined) { contents.TopLevel = __expectString(data["TopLevel"]); } - return contents; + const exception = new ComplexError({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const deserializeAws_restXmlInvalidGreetingResponse = async ( parsedOutput: any, context: __SerdeContext ): Promise => { - const contents: InvalidGreeting = { - name: "InvalidGreeting", - $fault: "client", - $metadata: deserializeMetadata(parsedOutput), - Message: undefined, - }; + const contents: any = {}; const data: any = parsedOutput.body.Error; if (data["Message"] !== undefined) { contents.Message = __expectString(data["Message"]); } - return contents; + const exception = new InvalidGreeting({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body.Error); }; const serializeAws_restXmlFlattenedXmlMapWithXmlNameInputOutputMap = (